"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""

from __future__ import annotations
from .modbus_exceptionresponse import (
    ModbusExceptionResponse,
    ModbusExceptionResponseTypedDict,
)
from .modbus_meiresponse import ModbusMEIResponse, ModbusMEIResponseTypedDict
from censys_platform.types import BaseModel
from typing import Optional
from typing_extensions import NotRequired, TypedDict


class ModbusTypedDict(TypedDict):
    exception_response: NotRequired[ModbusExceptionResponseTypedDict]
    function: NotRequired[int]
    mei_response: NotRequired[ModbusMEIResponseTypedDict]
    unit_id: NotRequired[int]


class Modbus(BaseModel):
    exception_response: Optional[ModbusExceptionResponse] = None

    function: Optional[int] = None

    mei_response: Optional[ModbusMEIResponse] = None

    unit_id: Optional[int] = None
