"""
@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 AlarmDimension(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    VALUE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    name: builtins.str
    value: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        name: builtins.str = ...,
        value: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["name", b"name", "resource_info", b"resource_info", "value", b"value"]) -> None: ...

global___AlarmDimension = AlarmDimension

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    DIMENSIONS_FIELD_NUMBER: builtins.int
    METRIC_NAME_FIELD_NUMBER: builtins.int
    NAMESPACE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def dimensions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AlarmDimension]: ...
    metric_name: builtins.str
    namespace: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        dimensions: collections.abc.Iterable[global___AlarmDimension] | None = ...,
        metric_name: builtins.str = ...,
        namespace: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["dimensions", b"dimensions", "metric_name", b"metric_name", "namespace", b"namespace", "resource_info", b"resource_info"]) -> None: ...

global___AlarmMetric = AlarmMetric

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    METRIC_FIELD_NUMBER: builtins.int
    PERIOD_FIELD_NUMBER: builtins.int
    STAT_FIELD_NUMBER: builtins.int
    UNIT_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def metric(self) -> global___AlarmMetric: ...
    period: builtins.int
    stat: builtins.str
    unit: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        metric: global___AlarmMetric | None = ...,
        period: builtins.int = ...,
        stat: builtins.str = ...,
        unit: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["metric", b"metric", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["metric", b"metric", "period", b"period", "resource_info", b"resource_info", "stat", b"stat", "unit", b"unit"]) -> None: ...

global___AlarmMetricStat = AlarmMetricStat

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    EXPRESSION_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    LABEL_FIELD_NUMBER: builtins.int
    METRIC_STAT_FIELD_NUMBER: builtins.int
    PERIOD_FIELD_NUMBER: builtins.int
    RETURN_DATA_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    expression: builtins.str
    id: builtins.str
    label: builtins.str
    @property
    def metric_stat(self) -> global___AlarmMetricStat: ...
    period: builtins.int
    return_data: builtins.bool
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        expression: builtins.str = ...,
        id: builtins.str = ...,
        label: builtins.str = ...,
        metric_stat: global___AlarmMetricStat | None = ...,
        period: builtins.int = ...,
        return_data: builtins.bool = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["metric_stat", b"metric_stat", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["expression", b"expression", "id", b"id", "label", b"label", "metric_stat", b"metric_stat", "period", b"period", "resource_info", b"resource_info", "return_data", b"return_data"]) -> None: ...

global___AlarmMetricDataQuery = AlarmMetricDataQuery

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    ACTIONS_ENABLED_FIELD_NUMBER: builtins.int
    ALARM_ACTIONS_FIELD_NUMBER: builtins.int
    ALARM_DESCRIPTION_FIELD_NUMBER: builtins.int
    ALARM_NAME_FIELD_NUMBER: builtins.int
    COMPARISON_OPERATOR_FIELD_NUMBER: builtins.int
    DATAPOINTS_TO_ALARM_FIELD_NUMBER: builtins.int
    DIMENSIONS_FIELD_NUMBER: builtins.int
    EVALUATE_LOW_SAMPLE_COUNT_PERCENTILE_FIELD_NUMBER: builtins.int
    EVALUATION_PERIODS_FIELD_NUMBER: builtins.int
    EXTENDED_STATISTIC_FIELD_NUMBER: builtins.int
    INSUFFICIENT_DATA_ACTIONS_FIELD_NUMBER: builtins.int
    METRIC_NAME_FIELD_NUMBER: builtins.int
    METRICS_FIELD_NUMBER: builtins.int
    NAMESPACE_FIELD_NUMBER: builtins.int
    OK_ACTIONS_FIELD_NUMBER: builtins.int
    PERIOD_FIELD_NUMBER: builtins.int
    STATISTIC_FIELD_NUMBER: builtins.int
    THRESHOLD_FIELD_NUMBER: builtins.int
    THRESHOLD_METRIC_ID_FIELD_NUMBER: builtins.int
    TREAT_MISSING_DATA_FIELD_NUMBER: builtins.int
    UNIT_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    actions_enabled: builtins.bool
    @property
    def alarm_actions(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    alarm_description: builtins.str
    alarm_name: builtins.str
    comparison_operator: builtins.str
    datapoints_to_alarm: builtins.int
    @property
    def dimensions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AlarmDimension]: ...
    evaluate_low_sample_count_percentile: builtins.str
    evaluation_periods: builtins.int
    extended_statistic: builtins.str
    @property
    def insufficient_data_actions(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    metric_name: builtins.str
    @property
    def metrics(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AlarmMetricDataQuery]: ...
    namespace: builtins.str
    @property
    def ok_actions(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    period: builtins.int
    statistic: builtins.str
    threshold: builtins.float
    threshold_metric_id: builtins.str
    treat_missing_data: builtins.str
    unit: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        actions_enabled: builtins.bool = ...,
        alarm_actions: collections.abc.Iterable[builtins.str] | None = ...,
        alarm_description: builtins.str = ...,
        alarm_name: builtins.str = ...,
        comparison_operator: builtins.str = ...,
        datapoints_to_alarm: builtins.int = ...,
        dimensions: collections.abc.Iterable[global___AlarmDimension] | None = ...,
        evaluate_low_sample_count_percentile: builtins.str = ...,
        evaluation_periods: builtins.int = ...,
        extended_statistic: builtins.str = ...,
        insufficient_data_actions: collections.abc.Iterable[builtins.str] | None = ...,
        metric_name: builtins.str = ...,
        metrics: collections.abc.Iterable[global___AlarmMetricDataQuery] | None = ...,
        namespace: builtins.str = ...,
        ok_actions: collections.abc.Iterable[builtins.str] | None = ...,
        period: builtins.int = ...,
        statistic: builtins.str = ...,
        threshold: builtins.float = ...,
        threshold_metric_id: builtins.str = ...,
        treat_missing_data: builtins.str = ...,
        unit: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["actions_enabled", b"actions_enabled", "alarm_actions", b"alarm_actions", "alarm_description", b"alarm_description", "alarm_name", b"alarm_name", "comparison_operator", b"comparison_operator", "datapoints_to_alarm", b"datapoints_to_alarm", "dimensions", b"dimensions", "evaluate_low_sample_count_percentile", b"evaluate_low_sample_count_percentile", "evaluation_periods", b"evaluation_periods", "extended_statistic", b"extended_statistic", "insufficient_data_actions", b"insufficient_data_actions", "metric_name", b"metric_name", "metrics", b"metrics", "namespace", b"namespace", "ok_actions", b"ok_actions", "period", b"period", "resource_info", b"resource_info", "statistic", b"statistic", "threshold", b"threshold", "threshold_metric_id", b"threshold_metric_id", "treat_missing_data", b"treat_missing_data", "unit", b"unit"]) -> None: ...

global___Alarm = Alarm

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

    ALARM_FIELD_NUMBER: builtins.int
    ANOMALY_DETECTOR_FIELD_NUMBER: builtins.int
    COMPOSITE_ALARM_FIELD_NUMBER: builtins.int
    DASHBOARD_FIELD_NUMBER: builtins.int
    INSIGHT_RULE_FIELD_NUMBER: builtins.int
    @property
    def alarm(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Alarm]: ...
    @property
    def anomaly_detector(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AnomalyDetector]: ...
    @property
    def composite_alarm(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___CompositeAlarm]: ...
    @property
    def dashboard(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Dashboard]: ...
    @property
    def insight_rule(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___InsightRule]: ...
    def __init__(
        self,
        *,
        alarm: collections.abc.Iterable[global___Alarm] | None = ...,
        anomaly_detector: collections.abc.Iterable[global___AnomalyDetector] | None = ...,
        composite_alarm: collections.abc.Iterable[global___CompositeAlarm] | None = ...,
        dashboard: collections.abc.Iterable[global___Dashboard] | None = ...,
        insight_rule: collections.abc.Iterable[global___InsightRule] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["alarm", b"alarm", "anomaly_detector", b"anomaly_detector", "composite_alarm", b"composite_alarm", "dashboard", b"dashboard", "insight_rule", b"insight_rule"]) -> None: ...

global___CloudWatch = CloudWatch

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    END_TIME_FIELD_NUMBER: builtins.int
    START_TIME_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    end_time: builtins.str
    start_time: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        end_time: builtins.str = ...,
        start_time: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["end_time", b"end_time", "resource_info", b"resource_info", "start_time", b"start_time"]) -> None: ...

global___AnomalyDetectorRange = AnomalyDetectorRange

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    METRIC_TIME_ZONE_FIELD_NUMBER: builtins.int
    EXCLUDED_TIME_RANGES_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    metric_time_zone: builtins.str
    @property
    def excluded_time_ranges(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AnomalyDetectorRange]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        metric_time_zone: builtins.str = ...,
        excluded_time_ranges: collections.abc.Iterable[global___AnomalyDetectorRange] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["excluded_time_ranges", b"excluded_time_ranges", "metric_time_zone", b"metric_time_zone", "resource_info", b"resource_info"]) -> None: ...

global___AnomalyDetectorConfiguration = AnomalyDetectorConfiguration

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    VALUE_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    value: builtins.str
    name: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        value: builtins.str = ...,
        name: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["name", b"name", "resource_info", b"resource_info", "value", b"value"]) -> None: ...

global___AnomalyDetectorDimension = AnomalyDetectorDimension

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    METRIC_NAME_FIELD_NUMBER: builtins.int
    STAT_FIELD_NUMBER: builtins.int
    CONFIGURATION_FIELD_NUMBER: builtins.int
    DIMENSIONS_FIELD_NUMBER: builtins.int
    NAMESPACE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    metric_name: builtins.str
    stat: builtins.str
    @property
    def configuration(self) -> global___AnomalyDetectorConfiguration: ...
    @property
    def dimensions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AnomalyDetectorDimension]: ...
    namespace: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        metric_name: builtins.str = ...,
        stat: builtins.str = ...,
        configuration: global___AnomalyDetectorConfiguration | None = ...,
        dimensions: collections.abc.Iterable[global___AnomalyDetectorDimension] | None = ...,
        namespace: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["configuration", b"configuration", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["configuration", b"configuration", "dimensions", b"dimensions", "metric_name", b"metric_name", "namespace", b"namespace", "resource_info", b"resource_info", "stat", b"stat"]) -> None: ...

global___AnomalyDetector = AnomalyDetector

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    ALARM_NAME_FIELD_NUMBER: builtins.int
    ALARM_RULE_FIELD_NUMBER: builtins.int
    ALARM_DESCRIPTION_FIELD_NUMBER: builtins.int
    ACTIONS_ENABLED_FIELD_NUMBER: builtins.int
    OK_ACTIONS_FIELD_NUMBER: builtins.int
    ALARM_ACTIONS_FIELD_NUMBER: builtins.int
    INSUFFICIENT_DATA_ACTIONS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    alarm_name: builtins.str
    alarm_rule: builtins.str
    alarm_description: builtins.str
    actions_enabled: builtins.bool
    @property
    def ok_actions(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def alarm_actions(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def insufficient_data_actions(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        alarm_name: builtins.str = ...,
        alarm_rule: builtins.str = ...,
        alarm_description: builtins.str = ...,
        actions_enabled: builtins.bool = ...,
        ok_actions: collections.abc.Iterable[builtins.str] | None = ...,
        alarm_actions: collections.abc.Iterable[builtins.str] | None = ...,
        insufficient_data_actions: collections.abc.Iterable[builtins.str] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["actions_enabled", b"actions_enabled", "alarm_actions", b"alarm_actions", "alarm_description", b"alarm_description", "alarm_name", b"alarm_name", "alarm_rule", b"alarm_rule", "insufficient_data_actions", b"insufficient_data_actions", "ok_actions", b"ok_actions", "resource_info", b"resource_info"]) -> None: ...

global___CompositeAlarm = CompositeAlarm

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    DASHBOARD_NAME_FIELD_NUMBER: builtins.int
    DASHBOARD_BODY_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    dashboard_name: builtins.str
    dashboard_body: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        dashboard_name: builtins.str = ...,
        dashboard_body: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["dashboard_body", b"dashboard_body", "dashboard_name", b"dashboard_name", "resource_info", b"resource_info"]) -> None: ...

global___Dashboard = Dashboard

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> None: ...

global___InsightRuleTags = InsightRuleTags

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    RULE_STATE_FIELD_NUMBER: builtins.int
    RULE_BODY_FIELD_NUMBER: builtins.int
    RULE_NAME_FIELD_NUMBER: builtins.int
    TAGS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    rule_state: builtins.str
    rule_body: builtins.str
    rule_name: builtins.str
    @property
    def tags(self) -> global___InsightRuleTags: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        rule_state: builtins.str = ...,
        rule_body: builtins.str = ...,
        rule_name: builtins.str = ...,
        tags: global___InsightRuleTags | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "tags", b"tags"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "rule_body", b"rule_body", "rule_name", b"rule_name", "rule_state", b"rule_state", "tags", b"tags"]) -> None: ...

global___InsightRule = InsightRule
