# generated by datamodel-codegen:
#   filename:  swagger.json
#   timestamp: 2023-03-19T19:24:29+00:00

from __future__ import annotations

from enum import Enum
from typing import Optional

import cherwell_pydantic_api.types as ct
from cherwell_pydantic_api.generated_api_utils import ApiBaseModel


class AddItemToQueueRequest(ApiBaseModel):
    busObId: Optional[ct.BusObID] = None
    busObRecId: Optional[ct.BusObRecID] = None
    queueStandInKey: Optional[str] = None


import cherwell_pydantic_api.types as ct
from cherwell_pydantic_api.generated_api_utils import HttpStatusCode


class AddItemToQueueResponse(ApiBaseModel):
    historyRecId: Optional[str] = None
    historyText: Optional[str] = None
    historyTypeId: Optional[str] = None
    errorCode: Optional[str] = None
    errorMessage: Optional[str] = None
    hasError: Optional[bool] = None
    httpStatusCode: Optional[HttpStatusCode] = None


import cherwell_pydantic_api.types as ct


class CheckInQueueItemRequest(ApiBaseModel):
    busObId: Optional[ct.BusObID] = None
    busObRecId: Optional[ct.BusObRecID] = None
    historyNotes: Optional[str] = None
    queueStandInKey: Optional[str] = None


import cherwell_pydantic_api.types as ct


class CheckInQueueItemResponse(ApiBaseModel):
    historyRecId: Optional[str] = None
    historyText: Optional[str] = None
    historyTypeId: Optional[str] = None
    errorCode: Optional[str] = None
    errorMessage: Optional[str] = None
    hasError: Optional[bool] = None
    httpStatusCode: Optional[HttpStatusCode] = None


import cherwell_pydantic_api.types as ct


class CheckOutQueueItemRequest(ApiBaseModel):
    busObId: Optional[ct.BusObID] = None
    busObRecId: Optional[ct.BusObRecID] = None
    historyNotes: Optional[str] = None
    queueStandInKey: Optional[str] = None


import cherwell_pydantic_api.types as ct


class CheckOutQueueItemResponse(ApiBaseModel):
    historyRecId: Optional[str] = None
    historyText: Optional[str] = None
    historyTypeId: Optional[str] = None
    errorCode: Optional[str] = None
    errorMessage: Optional[str] = None
    hasError: Optional[bool] = None
    httpStatusCode: Optional[HttpStatusCode] = None


import cherwell_pydantic_api.types as ct


class RemoveItemFromQueueRequest(ApiBaseModel):
    busObId: Optional[ct.BusObID] = None
    busObRecId: Optional[ct.BusObRecID] = None
    historyNotes: Optional[str] = None
    queueStandInKey: Optional[str] = None


import cherwell_pydantic_api.types as ct


class RemoveItemFromQueueResponse(ApiBaseModel):
    historyRecId: Optional[str] = None
    historyText: Optional[str] = None
    historyTypeId: Optional[str] = None
    errorCode: Optional[str] = None
    errorMessage: Optional[str] = None
    hasError: Optional[bool] = None
    httpStatusCode: Optional[HttpStatusCode] = None
