"""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 SecurityCapabilitiesTypedDict(TypedDict):
    access_policy_config: NotRequired[bool]
    default_access_policy: NotRequired[bool]
    dot1x: NotRequired[bool]
    http_digest: NotRequired[bool]
    kerberos_token: NotRequired[bool]
    max_password_length: NotRequired[int]
    max_username_length: NotRequired[int]
    max_users: NotRequired[int]
    onboard_key_generation: NotRequired[bool]
    rel_token: NotRequired[bool]
    remote_user_handling: NotRequired[bool]
    saml_token: NotRequired[bool]
    supported_eap_methods: NotRequired[int]
    tls_1_0: NotRequired[bool]
    tls_1_1: NotRequired[bool]
    tls_1_2: NotRequired[bool]
    username_token: NotRequired[bool]
    x509_token: NotRequired[bool]


class SecurityCapabilities(BaseModel):
    access_policy_config: Optional[bool] = None

    default_access_policy: Optional[bool] = None

    dot1x: Optional[bool] = None

    http_digest: Optional[bool] = None

    kerberos_token: Optional[bool] = None

    max_password_length: Optional[int] = None

    max_username_length: Optional[int] = None

    max_users: Optional[int] = None

    onboard_key_generation: Optional[bool] = None

    rel_token: Optional[bool] = None

    remote_user_handling: Optional[bool] = None

    saml_token: Optional[bool] = None

    supported_eap_methods: Optional[int] = None

    tls_1_0: Optional[bool] = None

    tls_1_1: Optional[bool] = None

    tls_1_2: Optional[bool] = None

    username_token: Optional[bool] = None

    x509_token: Optional[bool] = None
