# coding=utf-8
# --------------------------------------------------------------------------
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------

from msrest.serialization import Model


class TrendDataResponse(Model):
    """This DTO is used for the Trend Widget.

    :param target:
    :type target: ~energycap.sdk.models.TrendTarget
    :param period_range:
    :type period_range: ~energycap.sdk.models.PeriodRange
    :param current_year: The latest calendar or fiscal year, denotes the YTD
     year
    :type current_year: int
    :param calendar_type: The type of calendar periods being returned, either
     "Calendar" or "Fiscal".
     This applies to CurrentYear, PeriodRange, and dates in the Values array
    :type calendar_type: str
    :param entities:
    :type entities: list[~energycap.sdk.models.TimeSeriesEntity]
    :param values:
    :type values: list[~energycap.sdk.models.TimeSeriesValue]
    """

    _attribute_map = {
        'target': {'key': 'target', 'type': 'TrendTarget'},
        'period_range': {'key': 'periodRange', 'type': 'PeriodRange'},
        'current_year': {'key': 'currentYear', 'type': 'int'},
        'calendar_type': {'key': 'calendarType', 'type': 'str'},
        'entities': {'key': 'entities', 'type': '[TimeSeriesEntity]'},
        'values': {'key': 'values', 'type': '[TimeSeriesValue]'},
    }

    def __init__(self, *, target=None, period_range=None, current_year: int=None, calendar_type: str=None, entities=None, values=None, **kwargs) -> None:
        super(TrendDataResponse, self).__init__(**kwargs)
        self.target = target
        self.period_range = period_range
        self.current_year = current_year
        self.calendar_type = calendar_type
        self.entities = entities
        self.values = values
