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

from __future__ import annotations
from .elasticsearch_resultsnodeinfo_clustercombinedinfo_filesystem import (
    ElasticSearchResultsNodeInfoClusterCombinedInfoFilesystem,
    ElasticSearchResultsNodeInfoClusterCombinedInfoFilesystemTypedDict,
)
from .elasticsearch_resultsnodeinfo_clustercombinedinfo_indices import (
    ElasticSearchResultsNodeInfoClusterCombinedInfoIndices,
    ElasticSearchResultsNodeInfoClusterCombinedInfoIndicesTypedDict,
)
from censys_platform.types import BaseModel
from typing import Optional
from typing_extensions import NotRequired, TypedDict


class ElasticSearchResultsNodeInfoClusterCombinedInfoTypedDict(TypedDict):
    filesystem: NotRequired[
        ElasticSearchResultsNodeInfoClusterCombinedInfoFilesystemTypedDict
    ]
    indices: NotRequired[
        ElasticSearchResultsNodeInfoClusterCombinedInfoIndicesTypedDict
    ]
    name: NotRequired[str]
    status: NotRequired[str]
    timestamp: NotRequired[int]
    uuid: NotRequired[str]


class ElasticSearchResultsNodeInfoClusterCombinedInfo(BaseModel):
    filesystem: Optional[ElasticSearchResultsNodeInfoClusterCombinedInfoFilesystem] = (
        None
    )

    indices: Optional[ElasticSearchResultsNodeInfoClusterCombinedInfoIndices] = None

    name: Optional[str] = None

    status: Optional[str] = None

    timestamp: Optional[int] = None

    uuid: Optional[str] = None
