# This file was generated by liblab | https://liblab.com/

from __future__ import annotations
from .utils.json_map import JsonMap
from .base import BaseModel
from .alert_detail_element_level_information import AlertDetailElementLevelInformation


@JsonMap(
    {
        "code": "Code",
        "description": "Description",
        "element_level_information": "ElementLevelInformation",
    }
)
class ResponseAlertDetail(BaseModel):
    """ResponseAlertDetail

    :param code: Warning code returned by the system.
    :type code: str
    :param description: Warning messages returned by the system.
    :type description: str
    :param element_level_information: Provides more information about the element that represents the alert., defaults to None
    :type element_level_information: AlertDetailElementLevelInformation, optional
    """

    def __init__(
        self,
        code: str,
        description: str,
        element_level_information: AlertDetailElementLevelInformation = None,
    ):
        self.code = code
        self.description = description
        if element_level_information is not None:
            self.element_level_information = self._define_object(
                element_level_information, AlertDetailElementLevelInformation
            )
