# 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 DashboardTemplateResponse(Model):
    """DashboardTemplateResponse.

    All required parameters must be populated in order to send to Azure.

    :param id: Required.
    :type id: int
    :param name: Required.
    :type name: str
    :param description:
    :type description: str
    :param dashboard_type_id:
    :type dashboard_type_id: int
    :param widget_templates:
    :type widget_templates:
     list[~smartdiagnostics_sdk.models.WidgetTemplateChild]
    """

    _validation = {
        'id': {'required': True},
        'name': {'required': True},
    }

    _attribute_map = {
        'id': {'key': 'Id', 'type': 'int'},
        'name': {'key': 'Name', 'type': 'str'},
        'description': {'key': 'Description', 'type': 'str'},
        'dashboard_type_id': {'key': 'DashboardTypeId', 'type': 'int'},
        'widget_templates': {'key': 'WidgetTemplates', 'type': '[WidgetTemplateChild]'},
    }

    def __init__(self, **kwargs):
        super(DashboardTemplateResponse, self).__init__(**kwargs)
        self.id = kwargs.get('id', None)
        self.name = kwargs.get('name', None)
        self.description = kwargs.get('description', None)
        self.dashboard_type_id = kwargs.get('dashboard_type_id', None)
        self.widget_templates = kwargs.get('widget_templates', None)
