from enum import Enum
from typing import Optional

from pydantic import BaseModel


class FaultCategory(BaseModel):
    no_problems_found: Optional[bool] = False
    control_logic_err: Optional[bool] = False
    over_constrained: Optional[bool] = False
    insufficient_heating: Optional[bool] = False
    insufficient_cooling: Optional[bool] = False
    excessive_heating: Optional[bool] = False
    excessive_cooling: Optional[bool] = False
    controller_err: Optional[bool] = False
    sensor_err: Optional[bool] = False
    unreasonable_vav_flow_limit: Optional[bool] = False
    obj_info_err: Optional[bool] = False
    undefined_err: Optional[bool] = True
    hardware_err: Optional[bool] = False