from kubernetes_asyncio.client.models import V1AppArmorProfile
from kubernetes_asyncio.client.models import V1Capabilities
from kubernetes_asyncio.client.models import V1SELinuxOptions
from kubernetes_asyncio.client.models import V1SeccompProfile
from kubernetes_asyncio.client.models import V1WindowsSecurityContextOptions
from typing import Any

class V1SecurityContext:
    def __eq__(self, other: Any) -> bool: ...
    def __init__(self, allow_privilege_escalation: bool | None = None, app_armor_profile: V1AppArmorProfile | None = None, capabilities: V1Capabilities | None = None, privileged: bool | None = None, proc_mount: str | None = None, read_only_root_filesystem: bool | None = None, run_as_group: int | None = None, run_as_non_root: bool | None = None, run_as_user: int | None = None, se_linux_options: V1SELinuxOptions | None = None, seccomp_profile: V1SeccompProfile | None = None, windows_options: V1WindowsSecurityContextOptions | None = None, local_vars_configuration: Any | None = None) -> None: ...
    def __ne__(self, other: Any) -> bool: ...
    def __repr__(self) -> str: ...
    def to_dict(self, serialize: bool = False) -> dict[str, Any]: ...
    def to_str(self) -> str: ...
    @property
    def allow_privilege_escalation(self) -> bool: ...
    @allow_privilege_escalation.setter
    def allow_privilege_escalation(self, allow_privilege_escalation: bool) -> None: ...
    @property
    def app_armor_profile(self) -> V1AppArmorProfile: ...
    @app_armor_profile.setter
    def app_armor_profile(self, app_armor_profile: V1AppArmorProfile) -> None: ...
    @property
    def capabilities(self) -> V1Capabilities: ...
    @capabilities.setter
    def capabilities(self, capabilities: V1Capabilities) -> None: ...
    @property
    def privileged(self) -> bool: ...
    @privileged.setter
    def privileged(self, privileged: bool) -> None: ...
    @property
    def proc_mount(self) -> str: ...
    @proc_mount.setter
    def proc_mount(self, proc_mount: str) -> None: ...
    @property
    def read_only_root_filesystem(self) -> bool: ...
    @read_only_root_filesystem.setter
    def read_only_root_filesystem(self, read_only_root_filesystem: bool) -> None: ...
    @property
    def run_as_group(self) -> int: ...
    @run_as_group.setter
    def run_as_group(self, run_as_group: int) -> None: ...
    @property
    def run_as_non_root(self) -> bool: ...
    @run_as_non_root.setter
    def run_as_non_root(self, run_as_non_root: bool) -> None: ...
    @property
    def run_as_user(self) -> int: ...
    @run_as_user.setter
    def run_as_user(self, run_as_user: int) -> None: ...
    @property
    def se_linux_options(self) -> V1SELinuxOptions: ...
    @se_linux_options.setter
    def se_linux_options(self, se_linux_options: V1SELinuxOptions) -> None: ...
    @property
    def seccomp_profile(self) -> V1SeccompProfile: ...
    @seccomp_profile.setter
    def seccomp_profile(self, seccomp_profile: V1SeccompProfile) -> None: ...
    @property
    def windows_options(self) -> V1WindowsSecurityContextOptions: ...
    @windows_options.setter
    def windows_options(self, windows_options: V1WindowsSecurityContextOptions) -> None: ...
