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

from __future__ import annotations
from .elasticsearch_errormessage import (
    ElasticSearchErrorMessage,
    ElasticSearchErrorMessageTypedDict,
)
from .elasticsearch_resultsnodeinfo import (
    ElasticSearchResultsNodeInfo,
    ElasticSearchResultsNodeInfoTypedDict,
)
from .elasticsearch_systeminfo import (
    ElasticSearchSystemInfo,
    ElasticSearchSystemInfoTypedDict,
)
from censys_platform.types import BaseModel
from typing import Optional
from typing_extensions import NotRequired, TypedDict


class ElasticSearchTypedDict(TypedDict):
    error_message: NotRequired[ElasticSearchErrorMessageTypedDict]
    results_node_info: NotRequired[ElasticSearchResultsNodeInfoTypedDict]
    system_info: NotRequired[ElasticSearchSystemInfoTypedDict]


class ElasticSearch(BaseModel):
    error_message: Optional[ElasticSearchErrorMessage] = None

    results_node_info: Optional[ElasticSearchResultsNodeInfo] = None

    system_info: Optional[ElasticSearchSystemInfo] = None
