# Path: google/monitoring/dashboard_v1/types/metrics.py
# class SparkChartType(proto.Enum):
# class TimeSeriesQuery(proto.Message):
# class TimeSeriesFilter(proto.Message):
# class TimeSeriesFilterRatio(proto.Message):
#     class RatioPart(proto.Message):
# class Threshold(proto.Message):
#     class Color(proto.Enum):
#     class Direction(proto.Enum):
#     SPARK_CHART_TYPE_UNSPECIFIED = 0
#     SPARK_LINE = 1
#     SPARK_BAR = 2
#         COLOR_UNSPECIFIED = 0
#         YELLOW = 4
#         RED = 6
#         DIRECTION_UNSPECIFIED = 0
#         ABOVE = 1
#         BELOW = 2


import proto  # type: ignore
from google.monitoring.dashboard_v1.types import metrics
from google.protobuf import duration_pb2 as duration  # type: ignore
            min_alignment_period (~.duration.Duration):
                Optional. The lower bound on data point frequency for this
                data set, implemented by specifying the minimum alignment
                period to use in a time series query For example, if the
                data is published once every 10 minutes, the
                ``min_alignment_period`` should be at least 10 minutes. It
                would not make sense to fetch and align data at one minute
                intervals.
        """

        class PlotType(proto.Enum):
            r"""The types of plotting strategies for data sets."""
            PLOT_TYPE_UNSPECIFIED = 0
            LINE = 1
            STACKED_AREA = 2
            STACKED_BAR = 3
            HEATMAP = 4

        time_series_query = proto.Field(
            proto.MESSAGE, number=1, message=metrics.TimeSeriesQuery,
        )

        plot_type = proto.Field(proto.ENUM, number=2, enum="XyChart.DataSet.PlotType",)

        legend_template = proto.Field(proto.STRING, number=3)

        min_alignment_period = proto.Field(
            proto.MESSAGE, number=4, message=duration.Duration,
        )


# Path: google/monitoring/dashboard_v1/types/metrics.py
# class SparkChartType(proto.Enum):
# class TimeSeriesQuery(proto.Message):
# class TimeSeriesFilter(proto.Message):
# class TimeSeriesFilterRatio(proto.Message):
#     class RatioPart(proto.Message):
# class Threshold(proto.Message):
#     class Color(proto.Enum):
#     class Direction(proto.Enum):
#     SPARK_CHART_TYPE_UNSPECIFIED = 0
#     SPARK_LINE = 1
#     SPARK_BAR = 2
#         COLOR_UNSPECIFIED = 0
#         YELLOW = 4
#         RED = 6
#         DIRECTION_UNSPECIFIED = 0
#         ABOVE = 1
#         BELOW = 2


# Path: google/monitoring/dashboard_v1/types/xychart.py
import proto  # type: ignore
from google.monitoring.dashboard_v1.types import metrics
from google.protobuf import duration_pb2 as duration  # type: ignore

            min_alignment_period (~.duration.Duration):
                Optional. The lower bound on data point frequency for this
                data set, implemented by specifying the minimum alignment
                period to use in a time series query For example, if the
                data is published once every 10 minutes, the
                ``min_alignment_period`` should be at least 10 minutes. It
                would not make sense to fetch and align data at one minute
                intervals.
        """

        class PlotType(proto.Enum):
            r"""The types of plotting strategies for data sets."""
            PLOT_TYPE_UNSPECIFIED = 0
            LINE = 1
            STACKED_AREA = 2
            STACKED_BAR = 3
            HEATMAP = 4

        time_series_query = proto.Field(
            proto.MESSAGE, number=1, message=metrics.TimeSeriesQuery,
        )

        plot_type = proto.Field(proto.ENUM, number=2, enum="XyChart.DataSet.PlotType",)

        legend_template = proto.Field(proto.STRING, number=3)

        min_alignment_period = proto.Field(
            proto.MESSAGE, number=4, message=duration.Duration,
        )


    class Axis(proto.Message):