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

from __future__ import annotations
from censys_platform.types import BaseModel
from typing import Optional
from typing_extensions import NotRequired, TypedDict


class IpmiCapabilitiesAuthStatusTypedDict(TypedDict):
    anonymous_login_enabled: NotRequired[bool]
    r"""If true, the server allows anonymous login."""
    auth_each_message: NotRequired[bool]
    r"""If true, each message must be authenticated."""
    has_anonymous_users: NotRequired[bool]
    r"""If true, the server has anonymous users."""
    has_named_users: NotRequired[bool]
    r"""If true, the server supports named users."""
    two_key_login_required: NotRequired[bool]
    r"""The KG field."""
    user_auth_disabled: NotRequired[bool]
    r"""If true, user authentication is disabled."""


class IpmiCapabilitiesAuthStatus(BaseModel):
    anonymous_login_enabled: Optional[bool] = None
    r"""If true, the server allows anonymous login."""

    auth_each_message: Optional[bool] = None
    r"""If true, each message must be authenticated."""

    has_anonymous_users: Optional[bool] = None
    r"""If true, the server has anonymous users."""

    has_named_users: Optional[bool] = None
    r"""If true, the server supports named users."""

    two_key_login_required: Optional[bool] = None
    r"""The KG field."""

    user_auth_disabled: Optional[bool] = None
    r"""If true, user authentication is disabled."""
