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

    :param specific_audit_info: Name used to refer to this audit <span
     class='property-internal'>Required</span> <span
     class='property-internal'>Must be between 0 and 64 characters</span>
    :type specific_audit_info: str
    :param alert_severity_info: The alert severity <span
     class='property-internal'>Required</span>
    :type alert_severity_info: str
    :param skip_zero_comparison: Skip Zero Comparison <span
     class='property-internal'>Required</span>
    :type skip_zero_comparison: bool
    :param properties: List of properties and values to assign to the specific
     audit
    :type properties: list[~energycap.sdk.models.SpecificAuditPropertyChild]
    """

    _validation = {
        'specific_audit_info': {'required': True, 'max_length': 64, 'min_length': 0},
        'alert_severity_info': {'required': True},
        'skip_zero_comparison': {'required': True},
    }

    _attribute_map = {
        'specific_audit_info': {'key': 'specificAuditInfo', 'type': 'str'},
        'alert_severity_info': {'key': 'alertSeverityInfo', 'type': 'str'},
        'skip_zero_comparison': {'key': 'skipZeroComparison', 'type': 'bool'},
        'properties': {'key': 'properties', 'type': '[SpecificAuditPropertyChild]'},
    }

    def __init__(self, specific_audit_info, alert_severity_info, skip_zero_comparison, properties=None):
        super(SpecificAuditPropertyEdit, self).__init__()
        self.specific_audit_info = specific_audit_info
        self.alert_severity_info = alert_severity_info
        self.skip_zero_comparison = skip_zero_comparison
        self.properties = properties
