"""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 SnmpSystemServicesTypedDict(TypedDict):
    layer_1: NotRequired[bool]
    r"""Physical (e.g. repeaters)"""
    layer_2: NotRequired[bool]
    r"""Datalink/subnetwork (e.g. bridges)"""
    layer_3: NotRequired[bool]
    r"""Internet (e.g. IP gateways)"""
    layer_4: NotRequired[bool]
    r"""End-to-end (e.g. IP hosts)"""
    layer_5: NotRequired[bool]
    r"""OSI layer 5"""
    layer_6: NotRequired[bool]
    r"""OSI layer 6"""
    layer_7: NotRequired[bool]
    r"""Applications (e.g. mail relays)"""


class SnmpSystemServices(BaseModel):
    layer_1: Optional[bool] = None
    r"""Physical (e.g. repeaters)"""

    layer_2: Optional[bool] = None
    r"""Datalink/subnetwork (e.g. bridges)"""

    layer_3: Optional[bool] = None
    r"""Internet (e.g. IP gateways)"""

    layer_4: Optional[bool] = None
    r"""End-to-end (e.g. IP hosts)"""

    layer_5: Optional[bool] = None
    r"""OSI layer 5"""

    layer_6: Optional[bool] = None
    r"""OSI layer 6"""

    layer_7: Optional[bool] = None
    r"""Applications (e.g. mail relays)"""
