"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""
import builtins
import collections.abc
import google.protobuf.descriptor
import google.protobuf.internal.containers
import google.protobuf.message
import shared.shared_pb2
import sys

if sys.version_info >= (3, 8):
    import typing as typing_extensions
else:
    import typing_extensions

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

@typing_extensions.final
class MonitoringAlertPolicyXAlertStrategyXNotificationRateLimit(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    PERIOD_FIELD_NUMBER: builtins.int
    period: builtins.str
    def __init__(
        self,
        *,
        period: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["period", b"period"]) -> None: ...

global___MonitoringAlertPolicyXAlertStrategyXNotificationRateLimit = MonitoringAlertPolicyXAlertStrategyXNotificationRateLimit

@typing_extensions.final
class MonitoringAlertPolicyXAlertStrategy(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    AUTO_CLOSE_FIELD_NUMBER: builtins.int
    NOTIFICATION_RATE_LIMIT_FIELD_NUMBER: builtins.int
    auto_close: builtins.str
    @property
    def notification_rate_limit(self) -> global___MonitoringAlertPolicyXAlertStrategyXNotificationRateLimit: ...
    def __init__(
        self,
        *,
        auto_close: builtins.str = ...,
        notification_rate_limit: global___MonitoringAlertPolicyXAlertStrategyXNotificationRateLimit | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["notification_rate_limit", b"notification_rate_limit"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["auto_close", b"auto_close", "notification_rate_limit", b"notification_rate_limit"]) -> None: ...

global___MonitoringAlertPolicyXAlertStrategy = MonitoringAlertPolicyXAlertStrategy

@typing_extensions.final
class MonitoringAlertPolicyXConditionsXConditionAbsentXAggregations(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ALIGNMENT_PERIOD_FIELD_NUMBER: builtins.int
    CROSS_SERIES_REDUCER_FIELD_NUMBER: builtins.int
    GROUP_BY_FIELDS_FIELD_NUMBER: builtins.int
    PER_SERIES_ALIGNER_FIELD_NUMBER: builtins.int
    alignment_period: builtins.str
    cross_series_reducer: builtins.str
    @property
    def group_by_fields(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    per_series_aligner: builtins.str
    def __init__(
        self,
        *,
        alignment_period: builtins.str = ...,
        cross_series_reducer: builtins.str = ...,
        group_by_fields: collections.abc.Iterable[builtins.str] | None = ...,
        per_series_aligner: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["alignment_period", b"alignment_period", "cross_series_reducer", b"cross_series_reducer", "group_by_fields", b"group_by_fields", "per_series_aligner", b"per_series_aligner"]) -> None: ...

global___MonitoringAlertPolicyXConditionsXConditionAbsentXAggregations = MonitoringAlertPolicyXConditionsXConditionAbsentXAggregations

@typing_extensions.final
class MonitoringAlertPolicyXConditionsXConditionAbsentXTrigger(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    COUNT_FIELD_NUMBER: builtins.int
    PERCENT_FIELD_NUMBER: builtins.int
    count: builtins.float
    percent: builtins.float
    def __init__(
        self,
        *,
        count: builtins.float = ...,
        percent: builtins.float = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["count", b"count", "percent", b"percent"]) -> None: ...

global___MonitoringAlertPolicyXConditionsXConditionAbsentXTrigger = MonitoringAlertPolicyXConditionsXConditionAbsentXTrigger

@typing_extensions.final
class MonitoringAlertPolicyXConditionsXConditionAbsent(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DURATION_FIELD_NUMBER: builtins.int
    FILTER_FIELD_NUMBER: builtins.int
    AGGREGATIONS_FIELD_NUMBER: builtins.int
    TRIGGER_FIELD_NUMBER: builtins.int
    duration: builtins.str
    filter: builtins.str
    @property
    def aggregations(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___MonitoringAlertPolicyXConditionsXConditionAbsentXAggregations]: ...
    @property
    def trigger(self) -> global___MonitoringAlertPolicyXConditionsXConditionAbsentXTrigger: ...
    def __init__(
        self,
        *,
        duration: builtins.str = ...,
        filter: builtins.str = ...,
        aggregations: collections.abc.Iterable[global___MonitoringAlertPolicyXConditionsXConditionAbsentXAggregations] | None = ...,
        trigger: global___MonitoringAlertPolicyXConditionsXConditionAbsentXTrigger | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["trigger", b"trigger"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["aggregations", b"aggregations", "duration", b"duration", "filter", b"filter", "trigger", b"trigger"]) -> None: ...

global___MonitoringAlertPolicyXConditionsXConditionAbsent = MonitoringAlertPolicyXConditionsXConditionAbsent

@typing_extensions.final
class MonitoringAlertPolicyXConditionsXConditionMatchedLog(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing_extensions.final
    class LabelExtractorsEntry(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        KEY_FIELD_NUMBER: builtins.int
        VALUE_FIELD_NUMBER: builtins.int
        key: builtins.str
        value: builtins.str
        def __init__(
            self,
            *,
            key: builtins.str = ...,
            value: builtins.str = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "value", b"value"]) -> None: ...

    FILTER_FIELD_NUMBER: builtins.int
    LABEL_EXTRACTORS_FIELD_NUMBER: builtins.int
    filter: builtins.str
    @property
    def label_extractors(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    def __init__(
        self,
        *,
        filter: builtins.str = ...,
        label_extractors: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["filter", b"filter", "label_extractors", b"label_extractors"]) -> None: ...

global___MonitoringAlertPolicyXConditionsXConditionMatchedLog = MonitoringAlertPolicyXConditionsXConditionMatchedLog

@typing_extensions.final
class MonitoringAlertPolicyXConditionsXConditionMonitoringQueryLanguageXTrigger(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    COUNT_FIELD_NUMBER: builtins.int
    PERCENT_FIELD_NUMBER: builtins.int
    count: builtins.float
    percent: builtins.float
    def __init__(
        self,
        *,
        count: builtins.float = ...,
        percent: builtins.float = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["count", b"count", "percent", b"percent"]) -> None: ...

global___MonitoringAlertPolicyXConditionsXConditionMonitoringQueryLanguageXTrigger = MonitoringAlertPolicyXConditionsXConditionMonitoringQueryLanguageXTrigger

@typing_extensions.final
class MonitoringAlertPolicyXConditionsXConditionMonitoringQueryLanguage(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DURATION_FIELD_NUMBER: builtins.int
    EVALUATION_MISSING_DATA_FIELD_NUMBER: builtins.int
    QUERY_FIELD_NUMBER: builtins.int
    TRIGGER_FIELD_NUMBER: builtins.int
    duration: builtins.str
    evaluation_missing_data: builtins.str
    query: builtins.str
    @property
    def trigger(self) -> global___MonitoringAlertPolicyXConditionsXConditionMonitoringQueryLanguageXTrigger: ...
    def __init__(
        self,
        *,
        duration: builtins.str = ...,
        evaluation_missing_data: builtins.str = ...,
        query: builtins.str = ...,
        trigger: global___MonitoringAlertPolicyXConditionsXConditionMonitoringQueryLanguageXTrigger | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["trigger", b"trigger"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["duration", b"duration", "evaluation_missing_data", b"evaluation_missing_data", "query", b"query", "trigger", b"trigger"]) -> None: ...

global___MonitoringAlertPolicyXConditionsXConditionMonitoringQueryLanguage = MonitoringAlertPolicyXConditionsXConditionMonitoringQueryLanguage

@typing_extensions.final
class MonitoringAlertPolicyXConditionsXConditionThresholdXAggregations(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ALIGNMENT_PERIOD_FIELD_NUMBER: builtins.int
    CROSS_SERIES_REDUCER_FIELD_NUMBER: builtins.int
    GROUP_BY_FIELDS_FIELD_NUMBER: builtins.int
    PER_SERIES_ALIGNER_FIELD_NUMBER: builtins.int
    alignment_period: builtins.str
    cross_series_reducer: builtins.str
    @property
    def group_by_fields(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    per_series_aligner: builtins.str
    def __init__(
        self,
        *,
        alignment_period: builtins.str = ...,
        cross_series_reducer: builtins.str = ...,
        group_by_fields: collections.abc.Iterable[builtins.str] | None = ...,
        per_series_aligner: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["alignment_period", b"alignment_period", "cross_series_reducer", b"cross_series_reducer", "group_by_fields", b"group_by_fields", "per_series_aligner", b"per_series_aligner"]) -> None: ...

global___MonitoringAlertPolicyXConditionsXConditionThresholdXAggregations = MonitoringAlertPolicyXConditionsXConditionThresholdXAggregations

@typing_extensions.final
class MonitoringAlertPolicyXConditionsXConditionThresholdXDenominatorAggregations(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ALIGNMENT_PERIOD_FIELD_NUMBER: builtins.int
    CROSS_SERIES_REDUCER_FIELD_NUMBER: builtins.int
    GROUP_BY_FIELDS_FIELD_NUMBER: builtins.int
    PER_SERIES_ALIGNER_FIELD_NUMBER: builtins.int
    alignment_period: builtins.str
    cross_series_reducer: builtins.str
    @property
    def group_by_fields(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    per_series_aligner: builtins.str
    def __init__(
        self,
        *,
        alignment_period: builtins.str = ...,
        cross_series_reducer: builtins.str = ...,
        group_by_fields: collections.abc.Iterable[builtins.str] | None = ...,
        per_series_aligner: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["alignment_period", b"alignment_period", "cross_series_reducer", b"cross_series_reducer", "group_by_fields", b"group_by_fields", "per_series_aligner", b"per_series_aligner"]) -> None: ...

global___MonitoringAlertPolicyXConditionsXConditionThresholdXDenominatorAggregations = MonitoringAlertPolicyXConditionsXConditionThresholdXDenominatorAggregations

@typing_extensions.final
class MonitoringAlertPolicyXConditionsXConditionThresholdXTrigger(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    COUNT_FIELD_NUMBER: builtins.int
    PERCENT_FIELD_NUMBER: builtins.int
    count: builtins.float
    percent: builtins.float
    def __init__(
        self,
        *,
        count: builtins.float = ...,
        percent: builtins.float = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["count", b"count", "percent", b"percent"]) -> None: ...

global___MonitoringAlertPolicyXConditionsXConditionThresholdXTrigger = MonitoringAlertPolicyXConditionsXConditionThresholdXTrigger

@typing_extensions.final
class MonitoringAlertPolicyXConditionsXConditionThreshold(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    COMPARISON_FIELD_NUMBER: builtins.int
    DENOMINATOR_FILTER_FIELD_NUMBER: builtins.int
    DURATION_FIELD_NUMBER: builtins.int
    EVALUATION_MISSING_DATA_FIELD_NUMBER: builtins.int
    FILTER_FIELD_NUMBER: builtins.int
    THRESHOLD_VALUE_FIELD_NUMBER: builtins.int
    AGGREGATIONS_FIELD_NUMBER: builtins.int
    DENOMINATOR_AGGREGATIONS_FIELD_NUMBER: builtins.int
    TRIGGER_FIELD_NUMBER: builtins.int
    comparison: builtins.str
    denominator_filter: builtins.str
    duration: builtins.str
    evaluation_missing_data: builtins.str
    filter: builtins.str
    threshold_value: builtins.float
    @property
    def aggregations(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___MonitoringAlertPolicyXConditionsXConditionThresholdXAggregations]: ...
    @property
    def denominator_aggregations(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___MonitoringAlertPolicyXConditionsXConditionThresholdXDenominatorAggregations]: ...
    @property
    def trigger(self) -> global___MonitoringAlertPolicyXConditionsXConditionThresholdXTrigger: ...
    def __init__(
        self,
        *,
        comparison: builtins.str = ...,
        denominator_filter: builtins.str = ...,
        duration: builtins.str = ...,
        evaluation_missing_data: builtins.str = ...,
        filter: builtins.str = ...,
        threshold_value: builtins.float = ...,
        aggregations: collections.abc.Iterable[global___MonitoringAlertPolicyXConditionsXConditionThresholdXAggregations] | None = ...,
        denominator_aggregations: collections.abc.Iterable[global___MonitoringAlertPolicyXConditionsXConditionThresholdXDenominatorAggregations] | None = ...,
        trigger: global___MonitoringAlertPolicyXConditionsXConditionThresholdXTrigger | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["trigger", b"trigger"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["aggregations", b"aggregations", "comparison", b"comparison", "denominator_aggregations", b"denominator_aggregations", "denominator_filter", b"denominator_filter", "duration", b"duration", "evaluation_missing_data", b"evaluation_missing_data", "filter", b"filter", "threshold_value", b"threshold_value", "trigger", b"trigger"]) -> None: ...

global___MonitoringAlertPolicyXConditionsXConditionThreshold = MonitoringAlertPolicyXConditionsXConditionThreshold

@typing_extensions.final
class MonitoringAlertPolicyXConditions(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DISPLAY_NAME_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    CONDITION_ABSENT_FIELD_NUMBER: builtins.int
    CONDITION_MATCHED_LOG_FIELD_NUMBER: builtins.int
    CONDITION_MONITORING_QUERY_LANGUAGE_FIELD_NUMBER: builtins.int
    CONDITION_THRESHOLD_FIELD_NUMBER: builtins.int
    display_name: builtins.str
    name: builtins.str
    @property
    def condition_absent(self) -> global___MonitoringAlertPolicyXConditionsXConditionAbsent: ...
    @property
    def condition_matched_log(self) -> global___MonitoringAlertPolicyXConditionsXConditionMatchedLog: ...
    @property
    def condition_monitoring_query_language(self) -> global___MonitoringAlertPolicyXConditionsXConditionMonitoringQueryLanguage: ...
    @property
    def condition_threshold(self) -> global___MonitoringAlertPolicyXConditionsXConditionThreshold: ...
    def __init__(
        self,
        *,
        display_name: builtins.str = ...,
        name: builtins.str = ...,
        condition_absent: global___MonitoringAlertPolicyXConditionsXConditionAbsent | None = ...,
        condition_matched_log: global___MonitoringAlertPolicyXConditionsXConditionMatchedLog | None = ...,
        condition_monitoring_query_language: global___MonitoringAlertPolicyXConditionsXConditionMonitoringQueryLanguage | None = ...,
        condition_threshold: global___MonitoringAlertPolicyXConditionsXConditionThreshold | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["condition_absent", b"condition_absent", "condition_matched_log", b"condition_matched_log", "condition_monitoring_query_language", b"condition_monitoring_query_language", "condition_threshold", b"condition_threshold"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["condition_absent", b"condition_absent", "condition_matched_log", b"condition_matched_log", "condition_monitoring_query_language", b"condition_monitoring_query_language", "condition_threshold", b"condition_threshold", "display_name", b"display_name", "name", b"name"]) -> None: ...

global___MonitoringAlertPolicyXConditions = MonitoringAlertPolicyXConditions

@typing_extensions.final
class MonitoringAlertPolicyXDocumentation(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CONTENT_FIELD_NUMBER: builtins.int
    MIME_TYPE_FIELD_NUMBER: builtins.int
    content: builtins.str
    mime_type: builtins.str
    def __init__(
        self,
        *,
        content: builtins.str = ...,
        mime_type: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["content", b"content", "mime_type", b"mime_type"]) -> None: ...

global___MonitoringAlertPolicyXDocumentation = MonitoringAlertPolicyXDocumentation

@typing_extensions.final
class MonitoringAlertPolicyXTimeouts(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CREATE_FIELD_NUMBER: builtins.int
    DELETE_FIELD_NUMBER: builtins.int
    UPDATE_FIELD_NUMBER: builtins.int
    create: builtins.str
    delete: builtins.str
    update: builtins.str
    def __init__(
        self,
        *,
        create: builtins.str = ...,
        delete: builtins.str = ...,
        update: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["create", b"create", "delete", b"delete", "update", b"update"]) -> None: ...

global___MonitoringAlertPolicyXTimeouts = MonitoringAlertPolicyXTimeouts

@typing_extensions.final
class MonitoringAlertPolicy(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing_extensions.final
    class CreationRecordEntry(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        KEY_FIELD_NUMBER: builtins.int
        VALUE_FIELD_NUMBER: builtins.int
        key: builtins.str
        value: builtins.str
        def __init__(
            self,
            *,
            key: builtins.str = ...,
            value: builtins.str = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "value", b"value"]) -> None: ...

    @typing_extensions.final
    class UserLabelsEntry(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        KEY_FIELD_NUMBER: builtins.int
        VALUE_FIELD_NUMBER: builtins.int
        key: builtins.str
        value: builtins.str
        def __init__(
            self,
            *,
            key: builtins.str = ...,
            value: builtins.str = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "value", b"value"]) -> None: ...

    COMBINER_FIELD_NUMBER: builtins.int
    CREATION_RECORD_FIELD_NUMBER: builtins.int
    DISPLAY_NAME_FIELD_NUMBER: builtins.int
    ENABLED_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    NOTIFICATION_CHANNELS_FIELD_NUMBER: builtins.int
    PROJECT_FIELD_NUMBER: builtins.int
    USER_LABELS_FIELD_NUMBER: builtins.int
    ALERT_STRATEGY_FIELD_NUMBER: builtins.int
    CONDITIONS_FIELD_NUMBER: builtins.int
    DOCUMENTATION_FIELD_NUMBER: builtins.int
    TIMEOUTS_FIELD_NUMBER: builtins.int
    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    combiner: builtins.str
    @property
    def creation_record(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    display_name: builtins.str
    enabled: builtins.bool
    id: builtins.str
    name: builtins.str
    @property
    def notification_channels(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    project: builtins.str
    @property
    def user_labels(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    @property
    def alert_strategy(self) -> global___MonitoringAlertPolicyXAlertStrategy: ...
    @property
    def conditions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___MonitoringAlertPolicyXConditions]: ...
    @property
    def documentation(self) -> global___MonitoringAlertPolicyXDocumentation: ...
    @property
    def timeouts(self) -> global___MonitoringAlertPolicyXTimeouts: ...
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    def __init__(
        self,
        *,
        combiner: builtins.str = ...,
        creation_record: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        display_name: builtins.str = ...,
        enabled: builtins.bool = ...,
        id: builtins.str = ...,
        name: builtins.str = ...,
        notification_channels: collections.abc.Iterable[builtins.str] | None = ...,
        project: builtins.str = ...,
        user_labels: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        alert_strategy: global___MonitoringAlertPolicyXAlertStrategy | None = ...,
        conditions: collections.abc.Iterable[global___MonitoringAlertPolicyXConditions] | None = ...,
        documentation: global___MonitoringAlertPolicyXDocumentation | None = ...,
        timeouts: global___MonitoringAlertPolicyXTimeouts | None = ...,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["alert_strategy", b"alert_strategy", "documentation", b"documentation", "resource_info", b"resource_info", "timeouts", b"timeouts"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["alert_strategy", b"alert_strategy", "combiner", b"combiner", "conditions", b"conditions", "creation_record", b"creation_record", "display_name", b"display_name", "documentation", b"documentation", "enabled", b"enabled", "id", b"id", "name", b"name", "notification_channels", b"notification_channels", "project", b"project", "resource_info", b"resource_info", "timeouts", b"timeouts", "user_labels", b"user_labels"]) -> None: ...

global___MonitoringAlertPolicy = MonitoringAlertPolicy

@typing_extensions.final
class MonitoringCustomServiceXTelemetry(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_NAME_FIELD_NUMBER: builtins.int
    resource_name: builtins.str
    def __init__(
        self,
        *,
        resource_name: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["resource_name", b"resource_name"]) -> None: ...

global___MonitoringCustomServiceXTelemetry = MonitoringCustomServiceXTelemetry

@typing_extensions.final
class MonitoringCustomServiceXTimeouts(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CREATE_FIELD_NUMBER: builtins.int
    DELETE_FIELD_NUMBER: builtins.int
    UPDATE_FIELD_NUMBER: builtins.int
    create: builtins.str
    delete: builtins.str
    update: builtins.str
    def __init__(
        self,
        *,
        create: builtins.str = ...,
        delete: builtins.str = ...,
        update: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["create", b"create", "delete", b"delete", "update", b"update"]) -> None: ...

global___MonitoringCustomServiceXTimeouts = MonitoringCustomServiceXTimeouts

@typing_extensions.final
class MonitoringCustomService(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing_extensions.final
    class UserLabelsEntry(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        KEY_FIELD_NUMBER: builtins.int
        VALUE_FIELD_NUMBER: builtins.int
        key: builtins.str
        value: builtins.str
        def __init__(
            self,
            *,
            key: builtins.str = ...,
            value: builtins.str = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "value", b"value"]) -> None: ...

    DISPLAY_NAME_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    PROJECT_FIELD_NUMBER: builtins.int
    SERVICE_ID_FIELD_NUMBER: builtins.int
    USER_LABELS_FIELD_NUMBER: builtins.int
    TELEMETRY_FIELD_NUMBER: builtins.int
    TIMEOUTS_FIELD_NUMBER: builtins.int
    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    display_name: builtins.str
    id: builtins.str
    name: builtins.str
    project: builtins.str
    service_id: builtins.str
    @property
    def user_labels(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    @property
    def telemetry(self) -> global___MonitoringCustomServiceXTelemetry: ...
    @property
    def timeouts(self) -> global___MonitoringCustomServiceXTimeouts: ...
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    def __init__(
        self,
        *,
        display_name: builtins.str = ...,
        id: builtins.str = ...,
        name: builtins.str = ...,
        project: builtins.str = ...,
        service_id: builtins.str = ...,
        user_labels: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        telemetry: global___MonitoringCustomServiceXTelemetry | None = ...,
        timeouts: global___MonitoringCustomServiceXTimeouts | None = ...,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "telemetry", b"telemetry", "timeouts", b"timeouts"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["display_name", b"display_name", "id", b"id", "name", b"name", "project", b"project", "resource_info", b"resource_info", "service_id", b"service_id", "telemetry", b"telemetry", "timeouts", b"timeouts", "user_labels", b"user_labels"]) -> None: ...

global___MonitoringCustomService = MonitoringCustomService

@typing_extensions.final
class MonitoringDashboardXTimeouts(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CREATE_FIELD_NUMBER: builtins.int
    DELETE_FIELD_NUMBER: builtins.int
    UPDATE_FIELD_NUMBER: builtins.int
    create: builtins.str
    delete: builtins.str
    update: builtins.str
    def __init__(
        self,
        *,
        create: builtins.str = ...,
        delete: builtins.str = ...,
        update: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["create", b"create", "delete", b"delete", "update", b"update"]) -> None: ...

global___MonitoringDashboardXTimeouts = MonitoringDashboardXTimeouts

@typing_extensions.final
class MonitoringDashboard(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DASHBOARD_JSON_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    PROJECT_FIELD_NUMBER: builtins.int
    TIMEOUTS_FIELD_NUMBER: builtins.int
    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    dashboard_json: builtins.str
    id: builtins.str
    project: builtins.str
    @property
    def timeouts(self) -> global___MonitoringDashboardXTimeouts: ...
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    def __init__(
        self,
        *,
        dashboard_json: builtins.str = ...,
        id: builtins.str = ...,
        project: builtins.str = ...,
        timeouts: global___MonitoringDashboardXTimeouts | None = ...,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "timeouts", b"timeouts"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["dashboard_json", b"dashboard_json", "id", b"id", "project", b"project", "resource_info", b"resource_info", "timeouts", b"timeouts"]) -> None: ...

global___MonitoringDashboard = MonitoringDashboard

@typing_extensions.final
class MonitoringGroupXTimeouts(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CREATE_FIELD_NUMBER: builtins.int
    DELETE_FIELD_NUMBER: builtins.int
    UPDATE_FIELD_NUMBER: builtins.int
    create: builtins.str
    delete: builtins.str
    update: builtins.str
    def __init__(
        self,
        *,
        create: builtins.str = ...,
        delete: builtins.str = ...,
        update: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["create", b"create", "delete", b"delete", "update", b"update"]) -> None: ...

global___MonitoringGroupXTimeouts = MonitoringGroupXTimeouts

@typing_extensions.final
class MonitoringGroup(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DISPLAY_NAME_FIELD_NUMBER: builtins.int
    FILTER_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    IS_CLUSTER_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    PARENT_NAME_FIELD_NUMBER: builtins.int
    PROJECT_FIELD_NUMBER: builtins.int
    TIMEOUTS_FIELD_NUMBER: builtins.int
    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    display_name: builtins.str
    filter: builtins.str
    id: builtins.str
    is_cluster: builtins.bool
    name: builtins.str
    parent_name: builtins.str
    project: builtins.str
    @property
    def timeouts(self) -> global___MonitoringGroupXTimeouts: ...
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    def __init__(
        self,
        *,
        display_name: builtins.str = ...,
        filter: builtins.str = ...,
        id: builtins.str = ...,
        is_cluster: builtins.bool = ...,
        name: builtins.str = ...,
        parent_name: builtins.str = ...,
        project: builtins.str = ...,
        timeouts: global___MonitoringGroupXTimeouts | None = ...,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "timeouts", b"timeouts"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["display_name", b"display_name", "filter", b"filter", "id", b"id", "is_cluster", b"is_cluster", "name", b"name", "parent_name", b"parent_name", "project", b"project", "resource_info", b"resource_info", "timeouts", b"timeouts"]) -> None: ...

global___MonitoringGroup = MonitoringGroup

@typing_extensions.final
class MonitoringMetricDescriptorXLabels(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DESCRIPTION_FIELD_NUMBER: builtins.int
    KEY_FIELD_NUMBER: builtins.int
    VALUE_TYPE_FIELD_NUMBER: builtins.int
    description: builtins.str
    key: builtins.str
    value_type: builtins.str
    def __init__(
        self,
        *,
        description: builtins.str = ...,
        key: builtins.str = ...,
        value_type: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["description", b"description", "key", b"key", "value_type", b"value_type"]) -> None: ...

global___MonitoringMetricDescriptorXLabels = MonitoringMetricDescriptorXLabels

@typing_extensions.final
class MonitoringMetricDescriptorXMetadata(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    INGEST_DELAY_FIELD_NUMBER: builtins.int
    SAMPLE_PERIOD_FIELD_NUMBER: builtins.int
    ingest_delay: builtins.str
    sample_period: builtins.str
    def __init__(
        self,
        *,
        ingest_delay: builtins.str = ...,
        sample_period: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["ingest_delay", b"ingest_delay", "sample_period", b"sample_period"]) -> None: ...

global___MonitoringMetricDescriptorXMetadata = MonitoringMetricDescriptorXMetadata

@typing_extensions.final
class MonitoringMetricDescriptorXTimeouts(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CREATE_FIELD_NUMBER: builtins.int
    DELETE_FIELD_NUMBER: builtins.int
    UPDATE_FIELD_NUMBER: builtins.int
    create: builtins.str
    delete: builtins.str
    update: builtins.str
    def __init__(
        self,
        *,
        create: builtins.str = ...,
        delete: builtins.str = ...,
        update: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["create", b"create", "delete", b"delete", "update", b"update"]) -> None: ...

global___MonitoringMetricDescriptorXTimeouts = MonitoringMetricDescriptorXTimeouts

@typing_extensions.final
class MonitoringMetricDescriptor(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DESCRIPTION_FIELD_NUMBER: builtins.int
    DISPLAY_NAME_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    LAUNCH_STAGE_FIELD_NUMBER: builtins.int
    METRIC_KIND_FIELD_NUMBER: builtins.int
    MONITORED_RESOURCE_TYPES_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    PROJECT_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    UNIT_FIELD_NUMBER: builtins.int
    VALUE_TYPE_FIELD_NUMBER: builtins.int
    LABELS_FIELD_NUMBER: builtins.int
    METADATA_FIELD_NUMBER: builtins.int
    TIMEOUTS_FIELD_NUMBER: builtins.int
    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    description: builtins.str
    display_name: builtins.str
    id: builtins.str
    launch_stage: builtins.str
    metric_kind: builtins.str
    @property
    def monitored_resource_types(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    name: builtins.str
    project: builtins.str
    type: builtins.str
    unit: builtins.str
    value_type: builtins.str
    @property
    def labels(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___MonitoringMetricDescriptorXLabels]: ...
    @property
    def metadata(self) -> global___MonitoringMetricDescriptorXMetadata: ...
    @property
    def timeouts(self) -> global___MonitoringMetricDescriptorXTimeouts: ...
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    def __init__(
        self,
        *,
        description: builtins.str = ...,
        display_name: builtins.str = ...,
        id: builtins.str = ...,
        launch_stage: builtins.str = ...,
        metric_kind: builtins.str = ...,
        monitored_resource_types: collections.abc.Iterable[builtins.str] | None = ...,
        name: builtins.str = ...,
        project: builtins.str = ...,
        type: builtins.str = ...,
        unit: builtins.str = ...,
        value_type: builtins.str = ...,
        labels: collections.abc.Iterable[global___MonitoringMetricDescriptorXLabels] | None = ...,
        metadata: global___MonitoringMetricDescriptorXMetadata | None = ...,
        timeouts: global___MonitoringMetricDescriptorXTimeouts | None = ...,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["metadata", b"metadata", "resource_info", b"resource_info", "timeouts", b"timeouts"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["description", b"description", "display_name", b"display_name", "id", b"id", "labels", b"labels", "launch_stage", b"launch_stage", "metadata", b"metadata", "metric_kind", b"metric_kind", "monitored_resource_types", b"monitored_resource_types", "name", b"name", "project", b"project", "resource_info", b"resource_info", "timeouts", b"timeouts", "type", b"type", "unit", b"unit", "value_type", b"value_type"]) -> None: ...

global___MonitoringMetricDescriptor = MonitoringMetricDescriptor

@typing_extensions.final
class MonitoringMonitoredProjectXTimeouts(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CREATE_FIELD_NUMBER: builtins.int
    DELETE_FIELD_NUMBER: builtins.int
    create: builtins.str
    delete: builtins.str
    def __init__(
        self,
        *,
        create: builtins.str = ...,
        delete: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["create", b"create", "delete", b"delete"]) -> None: ...

global___MonitoringMonitoredProjectXTimeouts = MonitoringMonitoredProjectXTimeouts

@typing_extensions.final
class MonitoringMonitoredProject(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CREATE_TIME_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    METRICS_SCOPE_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    TIMEOUTS_FIELD_NUMBER: builtins.int
    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    create_time: builtins.str
    id: builtins.str
    metrics_scope: builtins.str
    name: builtins.str
    @property
    def timeouts(self) -> global___MonitoringMonitoredProjectXTimeouts: ...
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    def __init__(
        self,
        *,
        create_time: builtins.str = ...,
        id: builtins.str = ...,
        metrics_scope: builtins.str = ...,
        name: builtins.str = ...,
        timeouts: global___MonitoringMonitoredProjectXTimeouts | None = ...,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "timeouts", b"timeouts"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["create_time", b"create_time", "id", b"id", "metrics_scope", b"metrics_scope", "name", b"name", "resource_info", b"resource_info", "timeouts", b"timeouts"]) -> None: ...

global___MonitoringMonitoredProject = MonitoringMonitoredProject

@typing_extensions.final
class MonitoringNotificationChannelXSensitiveLabels(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    AUTH_TOKEN_FIELD_NUMBER: builtins.int
    PASSWORD_FIELD_NUMBER: builtins.int
    SERVICE_KEY_FIELD_NUMBER: builtins.int
    auth_token: builtins.str
    password: builtins.str
    service_key: builtins.str
    def __init__(
        self,
        *,
        auth_token: builtins.str = ...,
        password: builtins.str = ...,
        service_key: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["auth_token", b"auth_token", "password", b"password", "service_key", b"service_key"]) -> None: ...

global___MonitoringNotificationChannelXSensitiveLabels = MonitoringNotificationChannelXSensitiveLabels

@typing_extensions.final
class MonitoringNotificationChannelXTimeouts(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CREATE_FIELD_NUMBER: builtins.int
    DELETE_FIELD_NUMBER: builtins.int
    UPDATE_FIELD_NUMBER: builtins.int
    create: builtins.str
    delete: builtins.str
    update: builtins.str
    def __init__(
        self,
        *,
        create: builtins.str = ...,
        delete: builtins.str = ...,
        update: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["create", b"create", "delete", b"delete", "update", b"update"]) -> None: ...

global___MonitoringNotificationChannelXTimeouts = MonitoringNotificationChannelXTimeouts

@typing_extensions.final
class MonitoringNotificationChannel(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing_extensions.final
    class LabelsEntry(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        KEY_FIELD_NUMBER: builtins.int
        VALUE_FIELD_NUMBER: builtins.int
        key: builtins.str
        value: builtins.str
        def __init__(
            self,
            *,
            key: builtins.str = ...,
            value: builtins.str = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "value", b"value"]) -> None: ...

    @typing_extensions.final
    class UserLabelsEntry(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        KEY_FIELD_NUMBER: builtins.int
        VALUE_FIELD_NUMBER: builtins.int
        key: builtins.str
        value: builtins.str
        def __init__(
            self,
            *,
            key: builtins.str = ...,
            value: builtins.str = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "value", b"value"]) -> None: ...

    DESCRIPTION_FIELD_NUMBER: builtins.int
    DISPLAY_NAME_FIELD_NUMBER: builtins.int
    ENABLED_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    LABELS_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    PROJECT_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    USER_LABELS_FIELD_NUMBER: builtins.int
    VERIFICATION_STATUS_FIELD_NUMBER: builtins.int
    SENSITIVE_LABELS_FIELD_NUMBER: builtins.int
    TIMEOUTS_FIELD_NUMBER: builtins.int
    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    description: builtins.str
    display_name: builtins.str
    enabled: builtins.bool
    id: builtins.str
    @property
    def labels(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    name: builtins.str
    project: builtins.str
    type: builtins.str
    @property
    def user_labels(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    verification_status: builtins.str
    @property
    def sensitive_labels(self) -> global___MonitoringNotificationChannelXSensitiveLabels: ...
    @property
    def timeouts(self) -> global___MonitoringNotificationChannelXTimeouts: ...
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    def __init__(
        self,
        *,
        description: builtins.str = ...,
        display_name: builtins.str = ...,
        enabled: builtins.bool = ...,
        id: builtins.str = ...,
        labels: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        name: builtins.str = ...,
        project: builtins.str = ...,
        type: builtins.str = ...,
        user_labels: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        verification_status: builtins.str = ...,
        sensitive_labels: global___MonitoringNotificationChannelXSensitiveLabels | None = ...,
        timeouts: global___MonitoringNotificationChannelXTimeouts | None = ...,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "sensitive_labels", b"sensitive_labels", "timeouts", b"timeouts"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["description", b"description", "display_name", b"display_name", "enabled", b"enabled", "id", b"id", "labels", b"labels", "name", b"name", "project", b"project", "resource_info", b"resource_info", "sensitive_labels", b"sensitive_labels", "timeouts", b"timeouts", "type", b"type", "user_labels", b"user_labels", "verification_status", b"verification_status"]) -> None: ...

global___MonitoringNotificationChannel = MonitoringNotificationChannel

@typing_extensions.final
class MonitoringSloXBasicSliXAvailability(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ENABLED_FIELD_NUMBER: builtins.int
    enabled: builtins.bool
    def __init__(
        self,
        *,
        enabled: builtins.bool = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["enabled", b"enabled"]) -> None: ...

global___MonitoringSloXBasicSliXAvailability = MonitoringSloXBasicSliXAvailability

@typing_extensions.final
class MonitoringSloXBasicSliXLatency(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    THRESHOLD_FIELD_NUMBER: builtins.int
    threshold: builtins.str
    def __init__(
        self,
        *,
        threshold: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["threshold", b"threshold"]) -> None: ...

global___MonitoringSloXBasicSliXLatency = MonitoringSloXBasicSliXLatency

@typing_extensions.final
class MonitoringSloXBasicSli(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    LOCATION_FIELD_NUMBER: builtins.int
    METHOD_FIELD_NUMBER: builtins.int
    VERSION_FIELD_NUMBER: builtins.int
    AVAILABILITY_FIELD_NUMBER: builtins.int
    LATENCY_FIELD_NUMBER: builtins.int
    @property
    def location(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def method(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def version(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def availability(self) -> global___MonitoringSloXBasicSliXAvailability: ...
    @property
    def latency(self) -> global___MonitoringSloXBasicSliXLatency: ...
    def __init__(
        self,
        *,
        location: collections.abc.Iterable[builtins.str] | None = ...,
        method: collections.abc.Iterable[builtins.str] | None = ...,
        version: collections.abc.Iterable[builtins.str] | None = ...,
        availability: global___MonitoringSloXBasicSliXAvailability | None = ...,
        latency: global___MonitoringSloXBasicSliXLatency | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["availability", b"availability", "latency", b"latency"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["availability", b"availability", "latency", b"latency", "location", b"location", "method", b"method", "version", b"version"]) -> None: ...

global___MonitoringSloXBasicSli = MonitoringSloXBasicSli

@typing_extensions.final
class MonitoringSloXRequestBasedSliXDistributionCutXRange(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    MAX_FIELD_NUMBER: builtins.int
    MIN_FIELD_NUMBER: builtins.int
    max: builtins.float
    min: builtins.float
    def __init__(
        self,
        *,
        max: builtins.float = ...,
        min: builtins.float = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["max", b"max", "min", b"min"]) -> None: ...

global___MonitoringSloXRequestBasedSliXDistributionCutXRange = MonitoringSloXRequestBasedSliXDistributionCutXRange

@typing_extensions.final
class MonitoringSloXRequestBasedSliXDistributionCut(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DISTRIBUTION_FILTER_FIELD_NUMBER: builtins.int
    RANGE_FIELD_NUMBER: builtins.int
    distribution_filter: builtins.str
    @property
    def range(self) -> global___MonitoringSloXRequestBasedSliXDistributionCutXRange: ...
    def __init__(
        self,
        *,
        distribution_filter: builtins.str = ...,
        range: global___MonitoringSloXRequestBasedSliXDistributionCutXRange | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["range", b"range"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["distribution_filter", b"distribution_filter", "range", b"range"]) -> None: ...

global___MonitoringSloXRequestBasedSliXDistributionCut = MonitoringSloXRequestBasedSliXDistributionCut

@typing_extensions.final
class MonitoringSloXRequestBasedSliXGoodTotalRatio(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    BAD_SERVICE_FILTER_FIELD_NUMBER: builtins.int
    GOOD_SERVICE_FILTER_FIELD_NUMBER: builtins.int
    TOTAL_SERVICE_FILTER_FIELD_NUMBER: builtins.int
    bad_service_filter: builtins.str
    good_service_filter: builtins.str
    total_service_filter: builtins.str
    def __init__(
        self,
        *,
        bad_service_filter: builtins.str = ...,
        good_service_filter: builtins.str = ...,
        total_service_filter: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["bad_service_filter", b"bad_service_filter", "good_service_filter", b"good_service_filter", "total_service_filter", b"total_service_filter"]) -> None: ...

global___MonitoringSloXRequestBasedSliXGoodTotalRatio = MonitoringSloXRequestBasedSliXGoodTotalRatio

@typing_extensions.final
class MonitoringSloXRequestBasedSli(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DISTRIBUTION_CUT_FIELD_NUMBER: builtins.int
    GOOD_TOTAL_RATIO_FIELD_NUMBER: builtins.int
    @property
    def distribution_cut(self) -> global___MonitoringSloXRequestBasedSliXDistributionCut: ...
    @property
    def good_total_ratio(self) -> global___MonitoringSloXRequestBasedSliXGoodTotalRatio: ...
    def __init__(
        self,
        *,
        distribution_cut: global___MonitoringSloXRequestBasedSliXDistributionCut | None = ...,
        good_total_ratio: global___MonitoringSloXRequestBasedSliXGoodTotalRatio | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["distribution_cut", b"distribution_cut", "good_total_ratio", b"good_total_ratio"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["distribution_cut", b"distribution_cut", "good_total_ratio", b"good_total_ratio"]) -> None: ...

global___MonitoringSloXRequestBasedSli = MonitoringSloXRequestBasedSli

@typing_extensions.final
class MonitoringSloXTimeouts(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CREATE_FIELD_NUMBER: builtins.int
    DELETE_FIELD_NUMBER: builtins.int
    UPDATE_FIELD_NUMBER: builtins.int
    create: builtins.str
    delete: builtins.str
    update: builtins.str
    def __init__(
        self,
        *,
        create: builtins.str = ...,
        delete: builtins.str = ...,
        update: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["create", b"create", "delete", b"delete", "update", b"update"]) -> None: ...

global___MonitoringSloXTimeouts = MonitoringSloXTimeouts

@typing_extensions.final
class MonitoringSloXWindowsBasedSliXGoodTotalRatioThresholdXBasicSliPerformanceXAvailability(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ENABLED_FIELD_NUMBER: builtins.int
    enabled: builtins.bool
    def __init__(
        self,
        *,
        enabled: builtins.bool = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["enabled", b"enabled"]) -> None: ...

global___MonitoringSloXWindowsBasedSliXGoodTotalRatioThresholdXBasicSliPerformanceXAvailability = MonitoringSloXWindowsBasedSliXGoodTotalRatioThresholdXBasicSliPerformanceXAvailability

@typing_extensions.final
class MonitoringSloXWindowsBasedSliXGoodTotalRatioThresholdXBasicSliPerformanceXLatency(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    THRESHOLD_FIELD_NUMBER: builtins.int
    threshold: builtins.str
    def __init__(
        self,
        *,
        threshold: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["threshold", b"threshold"]) -> None: ...

global___MonitoringSloXWindowsBasedSliXGoodTotalRatioThresholdXBasicSliPerformanceXLatency = MonitoringSloXWindowsBasedSliXGoodTotalRatioThresholdXBasicSliPerformanceXLatency

@typing_extensions.final
class MonitoringSloXWindowsBasedSliXGoodTotalRatioThresholdXBasicSliPerformance(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    LOCATION_FIELD_NUMBER: builtins.int
    METHOD_FIELD_NUMBER: builtins.int
    VERSION_FIELD_NUMBER: builtins.int
    AVAILABILITY_FIELD_NUMBER: builtins.int
    LATENCY_FIELD_NUMBER: builtins.int
    @property
    def location(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def method(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def version(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def availability(self) -> global___MonitoringSloXWindowsBasedSliXGoodTotalRatioThresholdXBasicSliPerformanceXAvailability: ...
    @property
    def latency(self) -> global___MonitoringSloXWindowsBasedSliXGoodTotalRatioThresholdXBasicSliPerformanceXLatency: ...
    def __init__(
        self,
        *,
        location: collections.abc.Iterable[builtins.str] | None = ...,
        method: collections.abc.Iterable[builtins.str] | None = ...,
        version: collections.abc.Iterable[builtins.str] | None = ...,
        availability: global___MonitoringSloXWindowsBasedSliXGoodTotalRatioThresholdXBasicSliPerformanceXAvailability | None = ...,
        latency: global___MonitoringSloXWindowsBasedSliXGoodTotalRatioThresholdXBasicSliPerformanceXLatency | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["availability", b"availability", "latency", b"latency"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["availability", b"availability", "latency", b"latency", "location", b"location", "method", b"method", "version", b"version"]) -> None: ...

global___MonitoringSloXWindowsBasedSliXGoodTotalRatioThresholdXBasicSliPerformance = MonitoringSloXWindowsBasedSliXGoodTotalRatioThresholdXBasicSliPerformance

@typing_extensions.final
class MonitoringSloXWindowsBasedSliXGoodTotalRatioThresholdXPerformanceXDistributionCutXRange(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    MAX_FIELD_NUMBER: builtins.int
    MIN_FIELD_NUMBER: builtins.int
    max: builtins.float
    min: builtins.float
    def __init__(
        self,
        *,
        max: builtins.float = ...,
        min: builtins.float = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["max", b"max", "min", b"min"]) -> None: ...

global___MonitoringSloXWindowsBasedSliXGoodTotalRatioThresholdXPerformanceXDistributionCutXRange = MonitoringSloXWindowsBasedSliXGoodTotalRatioThresholdXPerformanceXDistributionCutXRange

@typing_extensions.final
class MonitoringSloXWindowsBasedSliXGoodTotalRatioThresholdXPerformanceXDistributionCut(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DISTRIBUTION_FILTER_FIELD_NUMBER: builtins.int
    RANGE_FIELD_NUMBER: builtins.int
    distribution_filter: builtins.str
    @property
    def range(self) -> global___MonitoringSloXWindowsBasedSliXGoodTotalRatioThresholdXPerformanceXDistributionCutXRange: ...
    def __init__(
        self,
        *,
        distribution_filter: builtins.str = ...,
        range: global___MonitoringSloXWindowsBasedSliXGoodTotalRatioThresholdXPerformanceXDistributionCutXRange | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["range", b"range"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["distribution_filter", b"distribution_filter", "range", b"range"]) -> None: ...

global___MonitoringSloXWindowsBasedSliXGoodTotalRatioThresholdXPerformanceXDistributionCut = MonitoringSloXWindowsBasedSliXGoodTotalRatioThresholdXPerformanceXDistributionCut

@typing_extensions.final
class MonitoringSloXWindowsBasedSliXGoodTotalRatioThresholdXPerformanceXGoodTotalRatio(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    BAD_SERVICE_FILTER_FIELD_NUMBER: builtins.int
    GOOD_SERVICE_FILTER_FIELD_NUMBER: builtins.int
    TOTAL_SERVICE_FILTER_FIELD_NUMBER: builtins.int
    bad_service_filter: builtins.str
    good_service_filter: builtins.str
    total_service_filter: builtins.str
    def __init__(
        self,
        *,
        bad_service_filter: builtins.str = ...,
        good_service_filter: builtins.str = ...,
        total_service_filter: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["bad_service_filter", b"bad_service_filter", "good_service_filter", b"good_service_filter", "total_service_filter", b"total_service_filter"]) -> None: ...

global___MonitoringSloXWindowsBasedSliXGoodTotalRatioThresholdXPerformanceXGoodTotalRatio = MonitoringSloXWindowsBasedSliXGoodTotalRatioThresholdXPerformanceXGoodTotalRatio

@typing_extensions.final
class MonitoringSloXWindowsBasedSliXGoodTotalRatioThresholdXPerformance(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DISTRIBUTION_CUT_FIELD_NUMBER: builtins.int
    GOOD_TOTAL_RATIO_FIELD_NUMBER: builtins.int
    @property
    def distribution_cut(self) -> global___MonitoringSloXWindowsBasedSliXGoodTotalRatioThresholdXPerformanceXDistributionCut: ...
    @property
    def good_total_ratio(self) -> global___MonitoringSloXWindowsBasedSliXGoodTotalRatioThresholdXPerformanceXGoodTotalRatio: ...
    def __init__(
        self,
        *,
        distribution_cut: global___MonitoringSloXWindowsBasedSliXGoodTotalRatioThresholdXPerformanceXDistributionCut | None = ...,
        good_total_ratio: global___MonitoringSloXWindowsBasedSliXGoodTotalRatioThresholdXPerformanceXGoodTotalRatio | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["distribution_cut", b"distribution_cut", "good_total_ratio", b"good_total_ratio"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["distribution_cut", b"distribution_cut", "good_total_ratio", b"good_total_ratio"]) -> None: ...

global___MonitoringSloXWindowsBasedSliXGoodTotalRatioThresholdXPerformance = MonitoringSloXWindowsBasedSliXGoodTotalRatioThresholdXPerformance

@typing_extensions.final
class MonitoringSloXWindowsBasedSliXGoodTotalRatioThreshold(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    THRESHOLD_FIELD_NUMBER: builtins.int
    BASIC_SLI_PERFORMANCE_FIELD_NUMBER: builtins.int
    PERFORMANCE_FIELD_NUMBER: builtins.int
    threshold: builtins.float
    @property
    def basic_sli_performance(self) -> global___MonitoringSloXWindowsBasedSliXGoodTotalRatioThresholdXBasicSliPerformance: ...
    @property
    def performance(self) -> global___MonitoringSloXWindowsBasedSliXGoodTotalRatioThresholdXPerformance: ...
    def __init__(
        self,
        *,
        threshold: builtins.float = ...,
        basic_sli_performance: global___MonitoringSloXWindowsBasedSliXGoodTotalRatioThresholdXBasicSliPerformance | None = ...,
        performance: global___MonitoringSloXWindowsBasedSliXGoodTotalRatioThresholdXPerformance | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["basic_sli_performance", b"basic_sli_performance", "performance", b"performance"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["basic_sli_performance", b"basic_sli_performance", "performance", b"performance", "threshold", b"threshold"]) -> None: ...

global___MonitoringSloXWindowsBasedSliXGoodTotalRatioThreshold = MonitoringSloXWindowsBasedSliXGoodTotalRatioThreshold

@typing_extensions.final
class MonitoringSloXWindowsBasedSliXMetricMeanInRangeXRange(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    MAX_FIELD_NUMBER: builtins.int
    MIN_FIELD_NUMBER: builtins.int
    max: builtins.float
    min: builtins.float
    def __init__(
        self,
        *,
        max: builtins.float = ...,
        min: builtins.float = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["max", b"max", "min", b"min"]) -> None: ...

global___MonitoringSloXWindowsBasedSliXMetricMeanInRangeXRange = MonitoringSloXWindowsBasedSliXMetricMeanInRangeXRange

@typing_extensions.final
class MonitoringSloXWindowsBasedSliXMetricMeanInRange(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    TIME_SERIES_FIELD_NUMBER: builtins.int
    RANGE_FIELD_NUMBER: builtins.int
    time_series: builtins.str
    @property
    def range(self) -> global___MonitoringSloXWindowsBasedSliXMetricMeanInRangeXRange: ...
    def __init__(
        self,
        *,
        time_series: builtins.str = ...,
        range: global___MonitoringSloXWindowsBasedSliXMetricMeanInRangeXRange | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["range", b"range"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["range", b"range", "time_series", b"time_series"]) -> None: ...

global___MonitoringSloXWindowsBasedSliXMetricMeanInRange = MonitoringSloXWindowsBasedSliXMetricMeanInRange

@typing_extensions.final
class MonitoringSloXWindowsBasedSliXMetricSumInRangeXRange(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    MAX_FIELD_NUMBER: builtins.int
    MIN_FIELD_NUMBER: builtins.int
    max: builtins.float
    min: builtins.float
    def __init__(
        self,
        *,
        max: builtins.float = ...,
        min: builtins.float = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["max", b"max", "min", b"min"]) -> None: ...

global___MonitoringSloXWindowsBasedSliXMetricSumInRangeXRange = MonitoringSloXWindowsBasedSliXMetricSumInRangeXRange

@typing_extensions.final
class MonitoringSloXWindowsBasedSliXMetricSumInRange(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    TIME_SERIES_FIELD_NUMBER: builtins.int
    RANGE_FIELD_NUMBER: builtins.int
    time_series: builtins.str
    @property
    def range(self) -> global___MonitoringSloXWindowsBasedSliXMetricSumInRangeXRange: ...
    def __init__(
        self,
        *,
        time_series: builtins.str = ...,
        range: global___MonitoringSloXWindowsBasedSliXMetricSumInRangeXRange | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["range", b"range"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["range", b"range", "time_series", b"time_series"]) -> None: ...

global___MonitoringSloXWindowsBasedSliXMetricSumInRange = MonitoringSloXWindowsBasedSliXMetricSumInRange

@typing_extensions.final
class MonitoringSloXWindowsBasedSli(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    GOOD_BAD_METRIC_FILTER_FIELD_NUMBER: builtins.int
    WINDOW_PERIOD_FIELD_NUMBER: builtins.int
    GOOD_TOTAL_RATIO_THRESHOLD_FIELD_NUMBER: builtins.int
    METRIC_MEAN_IN_RANGE_FIELD_NUMBER: builtins.int
    METRIC_SUM_IN_RANGE_FIELD_NUMBER: builtins.int
    good_bad_metric_filter: builtins.str
    window_period: builtins.str
    @property
    def good_total_ratio_threshold(self) -> global___MonitoringSloXWindowsBasedSliXGoodTotalRatioThreshold: ...
    @property
    def metric_mean_in_range(self) -> global___MonitoringSloXWindowsBasedSliXMetricMeanInRange: ...
    @property
    def metric_sum_in_range(self) -> global___MonitoringSloXWindowsBasedSliXMetricSumInRange: ...
    def __init__(
        self,
        *,
        good_bad_metric_filter: builtins.str = ...,
        window_period: builtins.str = ...,
        good_total_ratio_threshold: global___MonitoringSloXWindowsBasedSliXGoodTotalRatioThreshold | None = ...,
        metric_mean_in_range: global___MonitoringSloXWindowsBasedSliXMetricMeanInRange | None = ...,
        metric_sum_in_range: global___MonitoringSloXWindowsBasedSliXMetricSumInRange | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["good_total_ratio_threshold", b"good_total_ratio_threshold", "metric_mean_in_range", b"metric_mean_in_range", "metric_sum_in_range", b"metric_sum_in_range"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["good_bad_metric_filter", b"good_bad_metric_filter", "good_total_ratio_threshold", b"good_total_ratio_threshold", "metric_mean_in_range", b"metric_mean_in_range", "metric_sum_in_range", b"metric_sum_in_range", "window_period", b"window_period"]) -> None: ...

global___MonitoringSloXWindowsBasedSli = MonitoringSloXWindowsBasedSli

@typing_extensions.final
class MonitoringSlo(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing_extensions.final
    class UserLabelsEntry(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        KEY_FIELD_NUMBER: builtins.int
        VALUE_FIELD_NUMBER: builtins.int
        key: builtins.str
        value: builtins.str
        def __init__(
            self,
            *,
            key: builtins.str = ...,
            value: builtins.str = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "value", b"value"]) -> None: ...

    CALENDAR_PERIOD_FIELD_NUMBER: builtins.int
    DISPLAY_NAME_FIELD_NUMBER: builtins.int
    GOAL_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    PROJECT_FIELD_NUMBER: builtins.int
    ROLLING_PERIOD_DAYS_FIELD_NUMBER: builtins.int
    SERVICE_FIELD_NUMBER: builtins.int
    SLO_ID_FIELD_NUMBER: builtins.int
    USER_LABELS_FIELD_NUMBER: builtins.int
    BASIC_SLI_FIELD_NUMBER: builtins.int
    REQUEST_BASED_SLI_FIELD_NUMBER: builtins.int
    TIMEOUTS_FIELD_NUMBER: builtins.int
    WINDOWS_BASED_SLI_FIELD_NUMBER: builtins.int
    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    calendar_period: builtins.str
    display_name: builtins.str
    goal: builtins.float
    id: builtins.str
    name: builtins.str
    project: builtins.str
    rolling_period_days: builtins.float
    service: builtins.str
    slo_id: builtins.str
    @property
    def user_labels(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    @property
    def basic_sli(self) -> global___MonitoringSloXBasicSli: ...
    @property
    def request_based_sli(self) -> global___MonitoringSloXRequestBasedSli: ...
    @property
    def timeouts(self) -> global___MonitoringSloXTimeouts: ...
    @property
    def windows_based_sli(self) -> global___MonitoringSloXWindowsBasedSli: ...
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    def __init__(
        self,
        *,
        calendar_period: builtins.str = ...,
        display_name: builtins.str = ...,
        goal: builtins.float = ...,
        id: builtins.str = ...,
        name: builtins.str = ...,
        project: builtins.str = ...,
        rolling_period_days: builtins.float = ...,
        service: builtins.str = ...,
        slo_id: builtins.str = ...,
        user_labels: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        basic_sli: global___MonitoringSloXBasicSli | None = ...,
        request_based_sli: global___MonitoringSloXRequestBasedSli | None = ...,
        timeouts: global___MonitoringSloXTimeouts | None = ...,
        windows_based_sli: global___MonitoringSloXWindowsBasedSli | None = ...,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["basic_sli", b"basic_sli", "request_based_sli", b"request_based_sli", "resource_info", b"resource_info", "timeouts", b"timeouts", "windows_based_sli", b"windows_based_sli"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["basic_sli", b"basic_sli", "calendar_period", b"calendar_period", "display_name", b"display_name", "goal", b"goal", "id", b"id", "name", b"name", "project", b"project", "request_based_sli", b"request_based_sli", "resource_info", b"resource_info", "rolling_period_days", b"rolling_period_days", "service", b"service", "slo_id", b"slo_id", "timeouts", b"timeouts", "user_labels", b"user_labels", "windows_based_sli", b"windows_based_sli"]) -> None: ...

global___MonitoringSlo = MonitoringSlo

@typing_extensions.final
class MonitoringUptimeCheckConfigXContentMatchersXJsonPathMatcher(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    JSON_MATCHER_FIELD_NUMBER: builtins.int
    JSON_PATH_FIELD_NUMBER: builtins.int
    json_matcher: builtins.str
    json_path: builtins.str
    def __init__(
        self,
        *,
        json_matcher: builtins.str = ...,
        json_path: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["json_matcher", b"json_matcher", "json_path", b"json_path"]) -> None: ...

global___MonitoringUptimeCheckConfigXContentMatchersXJsonPathMatcher = MonitoringUptimeCheckConfigXContentMatchersXJsonPathMatcher

@typing_extensions.final
class MonitoringUptimeCheckConfigXContentMatchers(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CONTENT_FIELD_NUMBER: builtins.int
    MATCHER_FIELD_NUMBER: builtins.int
    JSON_PATH_MATCHER_FIELD_NUMBER: builtins.int
    content: builtins.str
    matcher: builtins.str
    @property
    def json_path_matcher(self) -> global___MonitoringUptimeCheckConfigXContentMatchersXJsonPathMatcher: ...
    def __init__(
        self,
        *,
        content: builtins.str = ...,
        matcher: builtins.str = ...,
        json_path_matcher: global___MonitoringUptimeCheckConfigXContentMatchersXJsonPathMatcher | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["json_path_matcher", b"json_path_matcher"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["content", b"content", "json_path_matcher", b"json_path_matcher", "matcher", b"matcher"]) -> None: ...

global___MonitoringUptimeCheckConfigXContentMatchers = MonitoringUptimeCheckConfigXContentMatchers

@typing_extensions.final
class MonitoringUptimeCheckConfigXHttpCheckXAuthInfo(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    PASSWORD_FIELD_NUMBER: builtins.int
    USERNAME_FIELD_NUMBER: builtins.int
    password: builtins.str
    username: builtins.str
    def __init__(
        self,
        *,
        password: builtins.str = ...,
        username: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["password", b"password", "username", b"username"]) -> None: ...

global___MonitoringUptimeCheckConfigXHttpCheckXAuthInfo = MonitoringUptimeCheckConfigXHttpCheckXAuthInfo

@typing_extensions.final
class MonitoringUptimeCheckConfigXHttpCheck(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing_extensions.final
    class HeadersEntry(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        KEY_FIELD_NUMBER: builtins.int
        VALUE_FIELD_NUMBER: builtins.int
        key: builtins.str
        value: builtins.str
        def __init__(
            self,
            *,
            key: builtins.str = ...,
            value: builtins.str = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "value", b"value"]) -> None: ...

    BODY_FIELD_NUMBER: builtins.int
    CONTENT_TYPE_FIELD_NUMBER: builtins.int
    HEADERS_FIELD_NUMBER: builtins.int
    MASK_HEADERS_FIELD_NUMBER: builtins.int
    PATH_FIELD_NUMBER: builtins.int
    PORT_FIELD_NUMBER: builtins.int
    REQUEST_METHOD_FIELD_NUMBER: builtins.int
    USE_SSL_FIELD_NUMBER: builtins.int
    VALIDATE_SSL_FIELD_NUMBER: builtins.int
    AUTH_INFO_FIELD_NUMBER: builtins.int
    body: builtins.str
    content_type: builtins.str
    @property
    def headers(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    mask_headers: builtins.bool
    path: builtins.str
    port: builtins.float
    request_method: builtins.str
    use_ssl: builtins.bool
    validate_ssl: builtins.bool
    @property
    def auth_info(self) -> global___MonitoringUptimeCheckConfigXHttpCheckXAuthInfo: ...
    def __init__(
        self,
        *,
        body: builtins.str = ...,
        content_type: builtins.str = ...,
        headers: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        mask_headers: builtins.bool = ...,
        path: builtins.str = ...,
        port: builtins.float = ...,
        request_method: builtins.str = ...,
        use_ssl: builtins.bool = ...,
        validate_ssl: builtins.bool = ...,
        auth_info: global___MonitoringUptimeCheckConfigXHttpCheckXAuthInfo | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["auth_info", b"auth_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["auth_info", b"auth_info", "body", b"body", "content_type", b"content_type", "headers", b"headers", "mask_headers", b"mask_headers", "path", b"path", "port", b"port", "request_method", b"request_method", "use_ssl", b"use_ssl", "validate_ssl", b"validate_ssl"]) -> None: ...

global___MonitoringUptimeCheckConfigXHttpCheck = MonitoringUptimeCheckConfigXHttpCheck

@typing_extensions.final
class MonitoringUptimeCheckConfigXMonitoredResource(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    @typing_extensions.final
    class LabelsEntry(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor

        KEY_FIELD_NUMBER: builtins.int
        VALUE_FIELD_NUMBER: builtins.int
        key: builtins.str
        value: builtins.str
        def __init__(
            self,
            *,
            key: builtins.str = ...,
            value: builtins.str = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "value", b"value"]) -> None: ...

    LABELS_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    @property
    def labels(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    type: builtins.str
    def __init__(
        self,
        *,
        labels: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        type: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["labels", b"labels", "type", b"type"]) -> None: ...

global___MonitoringUptimeCheckConfigXMonitoredResource = MonitoringUptimeCheckConfigXMonitoredResource

@typing_extensions.final
class MonitoringUptimeCheckConfigXResourceGroup(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    GROUP_ID_FIELD_NUMBER: builtins.int
    RESOURCE_TYPE_FIELD_NUMBER: builtins.int
    group_id: builtins.str
    resource_type: builtins.str
    def __init__(
        self,
        *,
        group_id: builtins.str = ...,
        resource_type: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["group_id", b"group_id", "resource_type", b"resource_type"]) -> None: ...

global___MonitoringUptimeCheckConfigXResourceGroup = MonitoringUptimeCheckConfigXResourceGroup

@typing_extensions.final
class MonitoringUptimeCheckConfigXTcpCheck(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    PORT_FIELD_NUMBER: builtins.int
    port: builtins.float
    def __init__(
        self,
        *,
        port: builtins.float = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["port", b"port"]) -> None: ...

global___MonitoringUptimeCheckConfigXTcpCheck = MonitoringUptimeCheckConfigXTcpCheck

@typing_extensions.final
class MonitoringUptimeCheckConfigXTimeouts(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CREATE_FIELD_NUMBER: builtins.int
    DELETE_FIELD_NUMBER: builtins.int
    UPDATE_FIELD_NUMBER: builtins.int
    create: builtins.str
    delete: builtins.str
    update: builtins.str
    def __init__(
        self,
        *,
        create: builtins.str = ...,
        delete: builtins.str = ...,
        update: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["create", b"create", "delete", b"delete", "update", b"update"]) -> None: ...

global___MonitoringUptimeCheckConfigXTimeouts = MonitoringUptimeCheckConfigXTimeouts

@typing_extensions.final
class MonitoringUptimeCheckConfig(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CHECKER_TYPE_FIELD_NUMBER: builtins.int
    DISPLAY_NAME_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    PERIOD_FIELD_NUMBER: builtins.int
    PROJECT_FIELD_NUMBER: builtins.int
    SELECTED_REGIONS_FIELD_NUMBER: builtins.int
    TIMEOUT_FIELD_NUMBER: builtins.int
    UPTIME_CHECK_ID_FIELD_NUMBER: builtins.int
    CONTENT_MATCHERS_FIELD_NUMBER: builtins.int
    HTTP_CHECK_FIELD_NUMBER: builtins.int
    MONITORED_RESOURCE_FIELD_NUMBER: builtins.int
    RESOURCE_GROUP_FIELD_NUMBER: builtins.int
    TCP_CHECK_FIELD_NUMBER: builtins.int
    TIMEOUTS_FIELD_NUMBER: builtins.int
    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    checker_type: builtins.str
    display_name: builtins.str
    id: builtins.str
    name: builtins.str
    period: builtins.str
    project: builtins.str
    @property
    def selected_regions(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    timeout: builtins.str
    uptime_check_id: builtins.str
    @property
    def content_matchers(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___MonitoringUptimeCheckConfigXContentMatchers]: ...
    @property
    def http_check(self) -> global___MonitoringUptimeCheckConfigXHttpCheck: ...
    @property
    def monitored_resource(self) -> global___MonitoringUptimeCheckConfigXMonitoredResource: ...
    @property
    def resource_group(self) -> global___MonitoringUptimeCheckConfigXResourceGroup: ...
    @property
    def tcp_check(self) -> global___MonitoringUptimeCheckConfigXTcpCheck: ...
    @property
    def timeouts(self) -> global___MonitoringUptimeCheckConfigXTimeouts: ...
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    def __init__(
        self,
        *,
        checker_type: builtins.str = ...,
        display_name: builtins.str = ...,
        id: builtins.str = ...,
        name: builtins.str = ...,
        period: builtins.str = ...,
        project: builtins.str = ...,
        selected_regions: collections.abc.Iterable[builtins.str] | None = ...,
        timeout: builtins.str = ...,
        uptime_check_id: builtins.str = ...,
        content_matchers: collections.abc.Iterable[global___MonitoringUptimeCheckConfigXContentMatchers] | None = ...,
        http_check: global___MonitoringUptimeCheckConfigXHttpCheck | None = ...,
        monitored_resource: global___MonitoringUptimeCheckConfigXMonitoredResource | None = ...,
        resource_group: global___MonitoringUptimeCheckConfigXResourceGroup | None = ...,
        tcp_check: global___MonitoringUptimeCheckConfigXTcpCheck | None = ...,
        timeouts: global___MonitoringUptimeCheckConfigXTimeouts | None = ...,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["http_check", b"http_check", "monitored_resource", b"monitored_resource", "resource_group", b"resource_group", "resource_info", b"resource_info", "tcp_check", b"tcp_check", "timeouts", b"timeouts"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["checker_type", b"checker_type", "content_matchers", b"content_matchers", "display_name", b"display_name", "http_check", b"http_check", "id", b"id", "monitored_resource", b"monitored_resource", "name", b"name", "period", b"period", "project", b"project", "resource_group", b"resource_group", "resource_info", b"resource_info", "selected_regions", b"selected_regions", "tcp_check", b"tcp_check", "timeout", b"timeout", "timeouts", b"timeouts", "uptime_check_id", b"uptime_check_id"]) -> None: ...

global___MonitoringUptimeCheckConfig = MonitoringUptimeCheckConfig
