"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""
import builtins
import collections.abc
import google.protobuf.descriptor
import google.protobuf.internal.containers
import google.protobuf.message
import shared.shared_pb2
import sys

if sys.version_info >= (3, 8):
    import typing as typing_extensions
else:
    import typing_extensions

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

@typing_extensions.final
class AccessContextManagerAccessLevelXBasicXConditionsXDevicePolicyXOsConstraints(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    MINIMUM_VERSION_FIELD_NUMBER: builtins.int
    OS_TYPE_FIELD_NUMBER: builtins.int
    REQUIRE_VERIFIED_CHROME_OS_FIELD_NUMBER: builtins.int
    minimum_version: builtins.str
    os_type: builtins.str
    require_verified_chrome_os: builtins.bool
    def __init__(
        self,
        *,
        minimum_version: builtins.str = ...,
        os_type: builtins.str = ...,
        require_verified_chrome_os: builtins.bool = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["minimum_version", b"minimum_version", "os_type", b"os_type", "require_verified_chrome_os", b"require_verified_chrome_os"]) -> None: ...

global___AccessContextManagerAccessLevelXBasicXConditionsXDevicePolicyXOsConstraints = AccessContextManagerAccessLevelXBasicXConditionsXDevicePolicyXOsConstraints

@typing_extensions.final
class AccessContextManagerAccessLevelXBasicXConditionsXDevicePolicy(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ALLOWED_DEVICE_MANAGEMENT_LEVELS_FIELD_NUMBER: builtins.int
    ALLOWED_ENCRYPTION_STATUSES_FIELD_NUMBER: builtins.int
    REQUIRE_ADMIN_APPROVAL_FIELD_NUMBER: builtins.int
    REQUIRE_CORP_OWNED_FIELD_NUMBER: builtins.int
    REQUIRE_SCREEN_LOCK_FIELD_NUMBER: builtins.int
    OS_CONSTRAINTS_FIELD_NUMBER: builtins.int
    @property
    def allowed_device_management_levels(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def allowed_encryption_statuses(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    require_admin_approval: builtins.bool
    require_corp_owned: builtins.bool
    require_screen_lock: builtins.bool
    @property
    def os_constraints(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AccessContextManagerAccessLevelXBasicXConditionsXDevicePolicyXOsConstraints]: ...
    def __init__(
        self,
        *,
        allowed_device_management_levels: collections.abc.Iterable[builtins.str] | None = ...,
        allowed_encryption_statuses: collections.abc.Iterable[builtins.str] | None = ...,
        require_admin_approval: builtins.bool = ...,
        require_corp_owned: builtins.bool = ...,
        require_screen_lock: builtins.bool = ...,
        os_constraints: collections.abc.Iterable[global___AccessContextManagerAccessLevelXBasicXConditionsXDevicePolicyXOsConstraints] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["allowed_device_management_levels", b"allowed_device_management_levels", "allowed_encryption_statuses", b"allowed_encryption_statuses", "os_constraints", b"os_constraints", "require_admin_approval", b"require_admin_approval", "require_corp_owned", b"require_corp_owned", "require_screen_lock", b"require_screen_lock"]) -> None: ...

global___AccessContextManagerAccessLevelXBasicXConditionsXDevicePolicy = AccessContextManagerAccessLevelXBasicXConditionsXDevicePolicy

@typing_extensions.final
class AccessContextManagerAccessLevelXBasicXConditions(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    IP_SUBNETWORKS_FIELD_NUMBER: builtins.int
    MEMBERS_FIELD_NUMBER: builtins.int
    NEGATE_FIELD_NUMBER: builtins.int
    REGIONS_FIELD_NUMBER: builtins.int
    REQUIRED_ACCESS_LEVELS_FIELD_NUMBER: builtins.int
    DEVICE_POLICY_FIELD_NUMBER: builtins.int
    @property
    def ip_subnetworks(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def members(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    negate: builtins.bool
    @property
    def regions(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def required_access_levels(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def device_policy(self) -> global___AccessContextManagerAccessLevelXBasicXConditionsXDevicePolicy: ...
    def __init__(
        self,
        *,
        ip_subnetworks: collections.abc.Iterable[builtins.str] | None = ...,
        members: collections.abc.Iterable[builtins.str] | None = ...,
        negate: builtins.bool = ...,
        regions: collections.abc.Iterable[builtins.str] | None = ...,
        required_access_levels: collections.abc.Iterable[builtins.str] | None = ...,
        device_policy: global___AccessContextManagerAccessLevelXBasicXConditionsXDevicePolicy | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["device_policy", b"device_policy"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["device_policy", b"device_policy", "ip_subnetworks", b"ip_subnetworks", "members", b"members", "negate", b"negate", "regions", b"regions", "required_access_levels", b"required_access_levels"]) -> None: ...

global___AccessContextManagerAccessLevelXBasicXConditions = AccessContextManagerAccessLevelXBasicXConditions

@typing_extensions.final
class AccessContextManagerAccessLevelXBasic(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    COMBINING_FUNCTION_FIELD_NUMBER: builtins.int
    CONDITIONS_FIELD_NUMBER: builtins.int
    combining_function: builtins.str
    @property
    def conditions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AccessContextManagerAccessLevelXBasicXConditions]: ...
    def __init__(
        self,
        *,
        combining_function: builtins.str = ...,
        conditions: collections.abc.Iterable[global___AccessContextManagerAccessLevelXBasicXConditions] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["combining_function", b"combining_function", "conditions", b"conditions"]) -> None: ...

global___AccessContextManagerAccessLevelXBasic = AccessContextManagerAccessLevelXBasic

@typing_extensions.final
class AccessContextManagerAccessLevelXCustomXExpr(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DESCRIPTION_FIELD_NUMBER: builtins.int
    EXPRESSION_FIELD_NUMBER: builtins.int
    LOCATION_FIELD_NUMBER: builtins.int
    TITLE_FIELD_NUMBER: builtins.int
    description: builtins.str
    expression: builtins.str
    location: builtins.str
    title: builtins.str
    def __init__(
        self,
        *,
        description: builtins.str = ...,
        expression: builtins.str = ...,
        location: builtins.str = ...,
        title: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["description", b"description", "expression", b"expression", "location", b"location", "title", b"title"]) -> None: ...

global___AccessContextManagerAccessLevelXCustomXExpr = AccessContextManagerAccessLevelXCustomXExpr

@typing_extensions.final
class AccessContextManagerAccessLevelXCustom(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    EXPR_FIELD_NUMBER: builtins.int
    @property
    def expr(self) -> global___AccessContextManagerAccessLevelXCustomXExpr: ...
    def __init__(
        self,
        *,
        expr: global___AccessContextManagerAccessLevelXCustomXExpr | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["expr", b"expr"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["expr", b"expr"]) -> None: ...

global___AccessContextManagerAccessLevelXCustom = AccessContextManagerAccessLevelXCustom

@typing_extensions.final
class AccessContextManagerAccessLevelXTimeouts(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CREATE_FIELD_NUMBER: builtins.int
    DELETE_FIELD_NUMBER: builtins.int
    UPDATE_FIELD_NUMBER: builtins.int
    create: builtins.str
    delete: builtins.str
    update: builtins.str
    def __init__(
        self,
        *,
        create: builtins.str = ...,
        delete: builtins.str = ...,
        update: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["create", b"create", "delete", b"delete", "update", b"update"]) -> None: ...

global___AccessContextManagerAccessLevelXTimeouts = AccessContextManagerAccessLevelXTimeouts

@typing_extensions.final
class AccessContextManagerAccessLevel(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DESCRIPTION_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    PARENT_FIELD_NUMBER: builtins.int
    TITLE_FIELD_NUMBER: builtins.int
    BASIC_FIELD_NUMBER: builtins.int
    CUSTOM_FIELD_NUMBER: builtins.int
    TIMEOUTS_FIELD_NUMBER: builtins.int
    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    description: builtins.str
    id: builtins.str
    name: builtins.str
    parent: builtins.str
    title: builtins.str
    @property
    def basic(self) -> global___AccessContextManagerAccessLevelXBasic: ...
    @property
    def custom(self) -> global___AccessContextManagerAccessLevelXCustom: ...
    @property
    def timeouts(self) -> global___AccessContextManagerAccessLevelXTimeouts: ...
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    def __init__(
        self,
        *,
        description: builtins.str = ...,
        id: builtins.str = ...,
        name: builtins.str = ...,
        parent: builtins.str = ...,
        title: builtins.str = ...,
        basic: global___AccessContextManagerAccessLevelXBasic | None = ...,
        custom: global___AccessContextManagerAccessLevelXCustom | None = ...,
        timeouts: global___AccessContextManagerAccessLevelXTimeouts | None = ...,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["basic", b"basic", "custom", b"custom", "resource_info", b"resource_info", "timeouts", b"timeouts"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["basic", b"basic", "custom", b"custom", "description", b"description", "id", b"id", "name", b"name", "parent", b"parent", "resource_info", b"resource_info", "timeouts", b"timeouts", "title", b"title"]) -> None: ...

global___AccessContextManagerAccessLevel = AccessContextManagerAccessLevel

@typing_extensions.final
class AccessContextManagerAccessLevelConditionXDevicePolicyXOsConstraints(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    MINIMUM_VERSION_FIELD_NUMBER: builtins.int
    OS_TYPE_FIELD_NUMBER: builtins.int
    minimum_version: builtins.str
    os_type: builtins.str
    def __init__(
        self,
        *,
        minimum_version: builtins.str = ...,
        os_type: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["minimum_version", b"minimum_version", "os_type", b"os_type"]) -> None: ...

global___AccessContextManagerAccessLevelConditionXDevicePolicyXOsConstraints = AccessContextManagerAccessLevelConditionXDevicePolicyXOsConstraints

@typing_extensions.final
class AccessContextManagerAccessLevelConditionXDevicePolicy(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ALLOWED_DEVICE_MANAGEMENT_LEVELS_FIELD_NUMBER: builtins.int
    ALLOWED_ENCRYPTION_STATUSES_FIELD_NUMBER: builtins.int
    REQUIRE_ADMIN_APPROVAL_FIELD_NUMBER: builtins.int
    REQUIRE_CORP_OWNED_FIELD_NUMBER: builtins.int
    REQUIRE_SCREEN_LOCK_FIELD_NUMBER: builtins.int
    OS_CONSTRAINTS_FIELD_NUMBER: builtins.int
    @property
    def allowed_device_management_levels(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def allowed_encryption_statuses(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    require_admin_approval: builtins.bool
    require_corp_owned: builtins.bool
    require_screen_lock: builtins.bool
    @property
    def os_constraints(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AccessContextManagerAccessLevelConditionXDevicePolicyXOsConstraints]: ...
    def __init__(
        self,
        *,
        allowed_device_management_levels: collections.abc.Iterable[builtins.str] | None = ...,
        allowed_encryption_statuses: collections.abc.Iterable[builtins.str] | None = ...,
        require_admin_approval: builtins.bool = ...,
        require_corp_owned: builtins.bool = ...,
        require_screen_lock: builtins.bool = ...,
        os_constraints: collections.abc.Iterable[global___AccessContextManagerAccessLevelConditionXDevicePolicyXOsConstraints] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["allowed_device_management_levels", b"allowed_device_management_levels", "allowed_encryption_statuses", b"allowed_encryption_statuses", "os_constraints", b"os_constraints", "require_admin_approval", b"require_admin_approval", "require_corp_owned", b"require_corp_owned", "require_screen_lock", b"require_screen_lock"]) -> None: ...

global___AccessContextManagerAccessLevelConditionXDevicePolicy = AccessContextManagerAccessLevelConditionXDevicePolicy

@typing_extensions.final
class AccessContextManagerAccessLevelConditionXTimeouts(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CREATE_FIELD_NUMBER: builtins.int
    DELETE_FIELD_NUMBER: builtins.int
    create: builtins.str
    delete: builtins.str
    def __init__(
        self,
        *,
        create: builtins.str = ...,
        delete: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["create", b"create", "delete", b"delete"]) -> None: ...

global___AccessContextManagerAccessLevelConditionXTimeouts = AccessContextManagerAccessLevelConditionXTimeouts

@typing_extensions.final
class AccessContextManagerAccessLevelCondition(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ACCESS_LEVEL_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    IP_SUBNETWORKS_FIELD_NUMBER: builtins.int
    MEMBERS_FIELD_NUMBER: builtins.int
    NEGATE_FIELD_NUMBER: builtins.int
    REGIONS_FIELD_NUMBER: builtins.int
    REQUIRED_ACCESS_LEVELS_FIELD_NUMBER: builtins.int
    DEVICE_POLICY_FIELD_NUMBER: builtins.int
    TIMEOUTS_FIELD_NUMBER: builtins.int
    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    access_level: builtins.str
    id: builtins.str
    @property
    def ip_subnetworks(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def members(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    negate: builtins.bool
    @property
    def regions(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def required_access_levels(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def device_policy(self) -> global___AccessContextManagerAccessLevelConditionXDevicePolicy: ...
    @property
    def timeouts(self) -> global___AccessContextManagerAccessLevelConditionXTimeouts: ...
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    def __init__(
        self,
        *,
        access_level: builtins.str = ...,
        id: builtins.str = ...,
        ip_subnetworks: collections.abc.Iterable[builtins.str] | None = ...,
        members: collections.abc.Iterable[builtins.str] | None = ...,
        negate: builtins.bool = ...,
        regions: collections.abc.Iterable[builtins.str] | None = ...,
        required_access_levels: collections.abc.Iterable[builtins.str] | None = ...,
        device_policy: global___AccessContextManagerAccessLevelConditionXDevicePolicy | None = ...,
        timeouts: global___AccessContextManagerAccessLevelConditionXTimeouts | None = ...,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["device_policy", b"device_policy", "resource_info", b"resource_info", "timeouts", b"timeouts"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["access_level", b"access_level", "device_policy", b"device_policy", "id", b"id", "ip_subnetworks", b"ip_subnetworks", "members", b"members", "negate", b"negate", "regions", b"regions", "required_access_levels", b"required_access_levels", "resource_info", b"resource_info", "timeouts", b"timeouts"]) -> None: ...

global___AccessContextManagerAccessLevelCondition = AccessContextManagerAccessLevelCondition

@typing_extensions.final
class AccessContextManagerAccessLevelsXAccessLevelsXBasicXConditionsXDevicePolicyXOsConstraints(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    MINIMUM_VERSION_FIELD_NUMBER: builtins.int
    OS_TYPE_FIELD_NUMBER: builtins.int
    minimum_version: builtins.str
    os_type: builtins.str
    def __init__(
        self,
        *,
        minimum_version: builtins.str = ...,
        os_type: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["minimum_version", b"minimum_version", "os_type", b"os_type"]) -> None: ...

global___AccessContextManagerAccessLevelsXAccessLevelsXBasicXConditionsXDevicePolicyXOsConstraints = AccessContextManagerAccessLevelsXAccessLevelsXBasicXConditionsXDevicePolicyXOsConstraints

@typing_extensions.final
class AccessContextManagerAccessLevelsXAccessLevelsXBasicXConditionsXDevicePolicy(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ALLOWED_DEVICE_MANAGEMENT_LEVELS_FIELD_NUMBER: builtins.int
    ALLOWED_ENCRYPTION_STATUSES_FIELD_NUMBER: builtins.int
    REQUIRE_ADMIN_APPROVAL_FIELD_NUMBER: builtins.int
    REQUIRE_CORP_OWNED_FIELD_NUMBER: builtins.int
    REQUIRE_SCREEN_LOCK_FIELD_NUMBER: builtins.int
    OS_CONSTRAINTS_FIELD_NUMBER: builtins.int
    @property
    def allowed_device_management_levels(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def allowed_encryption_statuses(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    require_admin_approval: builtins.bool
    require_corp_owned: builtins.bool
    require_screen_lock: builtins.bool
    @property
    def os_constraints(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AccessContextManagerAccessLevelsXAccessLevelsXBasicXConditionsXDevicePolicyXOsConstraints]: ...
    def __init__(
        self,
        *,
        allowed_device_management_levels: collections.abc.Iterable[builtins.str] | None = ...,
        allowed_encryption_statuses: collections.abc.Iterable[builtins.str] | None = ...,
        require_admin_approval: builtins.bool = ...,
        require_corp_owned: builtins.bool = ...,
        require_screen_lock: builtins.bool = ...,
        os_constraints: collections.abc.Iterable[global___AccessContextManagerAccessLevelsXAccessLevelsXBasicXConditionsXDevicePolicyXOsConstraints] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["allowed_device_management_levels", b"allowed_device_management_levels", "allowed_encryption_statuses", b"allowed_encryption_statuses", "os_constraints", b"os_constraints", "require_admin_approval", b"require_admin_approval", "require_corp_owned", b"require_corp_owned", "require_screen_lock", b"require_screen_lock"]) -> None: ...

global___AccessContextManagerAccessLevelsXAccessLevelsXBasicXConditionsXDevicePolicy = AccessContextManagerAccessLevelsXAccessLevelsXBasicXConditionsXDevicePolicy

@typing_extensions.final
class AccessContextManagerAccessLevelsXAccessLevelsXBasicXConditions(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    IP_SUBNETWORKS_FIELD_NUMBER: builtins.int
    MEMBERS_FIELD_NUMBER: builtins.int
    NEGATE_FIELD_NUMBER: builtins.int
    REGIONS_FIELD_NUMBER: builtins.int
    REQUIRED_ACCESS_LEVELS_FIELD_NUMBER: builtins.int
    DEVICE_POLICY_FIELD_NUMBER: builtins.int
    @property
    def ip_subnetworks(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def members(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    negate: builtins.bool
    @property
    def regions(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def required_access_levels(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def device_policy(self) -> global___AccessContextManagerAccessLevelsXAccessLevelsXBasicXConditionsXDevicePolicy: ...
    def __init__(
        self,
        *,
        ip_subnetworks: collections.abc.Iterable[builtins.str] | None = ...,
        members: collections.abc.Iterable[builtins.str] | None = ...,
        negate: builtins.bool = ...,
        regions: collections.abc.Iterable[builtins.str] | None = ...,
        required_access_levels: collections.abc.Iterable[builtins.str] | None = ...,
        device_policy: global___AccessContextManagerAccessLevelsXAccessLevelsXBasicXConditionsXDevicePolicy | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["device_policy", b"device_policy"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["device_policy", b"device_policy", "ip_subnetworks", b"ip_subnetworks", "members", b"members", "negate", b"negate", "regions", b"regions", "required_access_levels", b"required_access_levels"]) -> None: ...

global___AccessContextManagerAccessLevelsXAccessLevelsXBasicXConditions = AccessContextManagerAccessLevelsXAccessLevelsXBasicXConditions

@typing_extensions.final
class AccessContextManagerAccessLevelsXAccessLevelsXBasic(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    COMBINING_FUNCTION_FIELD_NUMBER: builtins.int
    CONDITIONS_FIELD_NUMBER: builtins.int
    combining_function: builtins.str
    @property
    def conditions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AccessContextManagerAccessLevelsXAccessLevelsXBasicXConditions]: ...
    def __init__(
        self,
        *,
        combining_function: builtins.str = ...,
        conditions: collections.abc.Iterable[global___AccessContextManagerAccessLevelsXAccessLevelsXBasicXConditions] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["combining_function", b"combining_function", "conditions", b"conditions"]) -> None: ...

global___AccessContextManagerAccessLevelsXAccessLevelsXBasic = AccessContextManagerAccessLevelsXAccessLevelsXBasic

@typing_extensions.final
class AccessContextManagerAccessLevelsXAccessLevelsXCustomXExpr(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DESCRIPTION_FIELD_NUMBER: builtins.int
    EXPRESSION_FIELD_NUMBER: builtins.int
    LOCATION_FIELD_NUMBER: builtins.int
    TITLE_FIELD_NUMBER: builtins.int
    description: builtins.str
    expression: builtins.str
    location: builtins.str
    title: builtins.str
    def __init__(
        self,
        *,
        description: builtins.str = ...,
        expression: builtins.str = ...,
        location: builtins.str = ...,
        title: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["description", b"description", "expression", b"expression", "location", b"location", "title", b"title"]) -> None: ...

global___AccessContextManagerAccessLevelsXAccessLevelsXCustomXExpr = AccessContextManagerAccessLevelsXAccessLevelsXCustomXExpr

@typing_extensions.final
class AccessContextManagerAccessLevelsXAccessLevelsXCustom(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    EXPR_FIELD_NUMBER: builtins.int
    @property
    def expr(self) -> global___AccessContextManagerAccessLevelsXAccessLevelsXCustomXExpr: ...
    def __init__(
        self,
        *,
        expr: global___AccessContextManagerAccessLevelsXAccessLevelsXCustomXExpr | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["expr", b"expr"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["expr", b"expr"]) -> None: ...

global___AccessContextManagerAccessLevelsXAccessLevelsXCustom = AccessContextManagerAccessLevelsXAccessLevelsXCustom

@typing_extensions.final
class AccessContextManagerAccessLevelsXAccessLevels(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DESCRIPTION_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    TITLE_FIELD_NUMBER: builtins.int
    BASIC_FIELD_NUMBER: builtins.int
    CUSTOM_FIELD_NUMBER: builtins.int
    description: builtins.str
    name: builtins.str
    title: builtins.str
    @property
    def basic(self) -> global___AccessContextManagerAccessLevelsXAccessLevelsXBasic: ...
    @property
    def custom(self) -> global___AccessContextManagerAccessLevelsXAccessLevelsXCustom: ...
    def __init__(
        self,
        *,
        description: builtins.str = ...,
        name: builtins.str = ...,
        title: builtins.str = ...,
        basic: global___AccessContextManagerAccessLevelsXAccessLevelsXBasic | None = ...,
        custom: global___AccessContextManagerAccessLevelsXAccessLevelsXCustom | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["basic", b"basic", "custom", b"custom"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["basic", b"basic", "custom", b"custom", "description", b"description", "name", b"name", "title", b"title"]) -> None: ...

global___AccessContextManagerAccessLevelsXAccessLevels = AccessContextManagerAccessLevelsXAccessLevels

@typing_extensions.final
class AccessContextManagerAccessLevelsXTimeouts(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CREATE_FIELD_NUMBER: builtins.int
    DELETE_FIELD_NUMBER: builtins.int
    UPDATE_FIELD_NUMBER: builtins.int
    create: builtins.str
    delete: builtins.str
    update: builtins.str
    def __init__(
        self,
        *,
        create: builtins.str = ...,
        delete: builtins.str = ...,
        update: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["create", b"create", "delete", b"delete", "update", b"update"]) -> None: ...

global___AccessContextManagerAccessLevelsXTimeouts = AccessContextManagerAccessLevelsXTimeouts

@typing_extensions.final
class AccessContextManagerAccessLevels(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ID_FIELD_NUMBER: builtins.int
    PARENT_FIELD_NUMBER: builtins.int
    ACCESS_LEVELS_FIELD_NUMBER: builtins.int
    TIMEOUTS_FIELD_NUMBER: builtins.int
    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    id: builtins.str
    parent: builtins.str
    @property
    def access_levels(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AccessContextManagerAccessLevelsXAccessLevels]: ...
    @property
    def timeouts(self) -> global___AccessContextManagerAccessLevelsXTimeouts: ...
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    def __init__(
        self,
        *,
        id: builtins.str = ...,
        parent: builtins.str = ...,
        access_levels: collections.abc.Iterable[global___AccessContextManagerAccessLevelsXAccessLevels] | None = ...,
        timeouts: global___AccessContextManagerAccessLevelsXTimeouts | None = ...,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "timeouts", b"timeouts"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["access_levels", b"access_levels", "id", b"id", "parent", b"parent", "resource_info", b"resource_info", "timeouts", b"timeouts"]) -> None: ...

global___AccessContextManagerAccessLevels = AccessContextManagerAccessLevels

@typing_extensions.final
class AccessContextManagerAccessPolicyXTimeouts(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CREATE_FIELD_NUMBER: builtins.int
    DELETE_FIELD_NUMBER: builtins.int
    UPDATE_FIELD_NUMBER: builtins.int
    create: builtins.str
    delete: builtins.str
    update: builtins.str
    def __init__(
        self,
        *,
        create: builtins.str = ...,
        delete: builtins.str = ...,
        update: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["create", b"create", "delete", b"delete", "update", b"update"]) -> None: ...

global___AccessContextManagerAccessPolicyXTimeouts = AccessContextManagerAccessPolicyXTimeouts

@typing_extensions.final
class AccessContextManagerAccessPolicy(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CREATE_TIME_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    PARENT_FIELD_NUMBER: builtins.int
    SCOPES_FIELD_NUMBER: builtins.int
    TITLE_FIELD_NUMBER: builtins.int
    UPDATE_TIME_FIELD_NUMBER: builtins.int
    TIMEOUTS_FIELD_NUMBER: builtins.int
    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    create_time: builtins.str
    id: builtins.str
    name: builtins.str
    parent: builtins.str
    @property
    def scopes(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    title: builtins.str
    update_time: builtins.str
    @property
    def timeouts(self) -> global___AccessContextManagerAccessPolicyXTimeouts: ...
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    def __init__(
        self,
        *,
        create_time: builtins.str = ...,
        id: builtins.str = ...,
        name: builtins.str = ...,
        parent: builtins.str = ...,
        scopes: collections.abc.Iterable[builtins.str] | None = ...,
        title: builtins.str = ...,
        update_time: builtins.str = ...,
        timeouts: global___AccessContextManagerAccessPolicyXTimeouts | None = ...,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "timeouts", b"timeouts"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["create_time", b"create_time", "id", b"id", "name", b"name", "parent", b"parent", "resource_info", b"resource_info", "scopes", b"scopes", "timeouts", b"timeouts", "title", b"title", "update_time", b"update_time"]) -> None: ...

global___AccessContextManagerAccessPolicy = AccessContextManagerAccessPolicy

@typing_extensions.final
class AccessContextManagerAccessPolicyIamBindingXCondition(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DESCRIPTION_FIELD_NUMBER: builtins.int
    EXPRESSION_FIELD_NUMBER: builtins.int
    TITLE_FIELD_NUMBER: builtins.int
    description: builtins.str
    expression: builtins.str
    title: builtins.str
    def __init__(
        self,
        *,
        description: builtins.str = ...,
        expression: builtins.str = ...,
        title: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["description", b"description", "expression", b"expression", "title", b"title"]) -> None: ...

global___AccessContextManagerAccessPolicyIamBindingXCondition = AccessContextManagerAccessPolicyIamBindingXCondition

@typing_extensions.final
class AccessContextManagerAccessPolicyIamBinding(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ETAG_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    MEMBERS_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    ROLE_FIELD_NUMBER: builtins.int
    CONDITION_FIELD_NUMBER: builtins.int
    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    etag: builtins.str
    id: builtins.str
    @property
    def members(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    name: builtins.str
    role: builtins.str
    @property
    def condition(self) -> global___AccessContextManagerAccessPolicyIamBindingXCondition: ...
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    def __init__(
        self,
        *,
        etag: builtins.str = ...,
        id: builtins.str = ...,
        members: collections.abc.Iterable[builtins.str] | None = ...,
        name: builtins.str = ...,
        role: builtins.str = ...,
        condition: global___AccessContextManagerAccessPolicyIamBindingXCondition | None = ...,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["condition", b"condition", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["condition", b"condition", "etag", b"etag", "id", b"id", "members", b"members", "name", b"name", "resource_info", b"resource_info", "role", b"role"]) -> None: ...

global___AccessContextManagerAccessPolicyIamBinding = AccessContextManagerAccessPolicyIamBinding

@typing_extensions.final
class AccessContextManagerAccessPolicyIamMemberXCondition(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    DESCRIPTION_FIELD_NUMBER: builtins.int
    EXPRESSION_FIELD_NUMBER: builtins.int
    TITLE_FIELD_NUMBER: builtins.int
    description: builtins.str
    expression: builtins.str
    title: builtins.str
    def __init__(
        self,
        *,
        description: builtins.str = ...,
        expression: builtins.str = ...,
        title: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["description", b"description", "expression", b"expression", "title", b"title"]) -> None: ...

global___AccessContextManagerAccessPolicyIamMemberXCondition = AccessContextManagerAccessPolicyIamMemberXCondition

@typing_extensions.final
class AccessContextManagerAccessPolicyIamMember(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ETAG_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    MEMBER_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    ROLE_FIELD_NUMBER: builtins.int
    CONDITION_FIELD_NUMBER: builtins.int
    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    etag: builtins.str
    id: builtins.str
    member: builtins.str
    name: builtins.str
    role: builtins.str
    @property
    def condition(self) -> global___AccessContextManagerAccessPolicyIamMemberXCondition: ...
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    def __init__(
        self,
        *,
        etag: builtins.str = ...,
        id: builtins.str = ...,
        member: builtins.str = ...,
        name: builtins.str = ...,
        role: builtins.str = ...,
        condition: global___AccessContextManagerAccessPolicyIamMemberXCondition | None = ...,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["condition", b"condition", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["condition", b"condition", "etag", b"etag", "id", b"id", "member", b"member", "name", b"name", "resource_info", b"resource_info", "role", b"role"]) -> None: ...

global___AccessContextManagerAccessPolicyIamMember = AccessContextManagerAccessPolicyIamMember

@typing_extensions.final
class AccessContextManagerAccessPolicyIamPolicy(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ETAG_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    POLICY_DATA_FIELD_NUMBER: builtins.int
    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    etag: builtins.str
    id: builtins.str
    name: builtins.str
    policy_data: builtins.str
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    def __init__(
        self,
        *,
        etag: builtins.str = ...,
        id: builtins.str = ...,
        name: builtins.str = ...,
        policy_data: builtins.str = ...,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["etag", b"etag", "id", b"id", "name", b"name", "policy_data", b"policy_data", "resource_info", b"resource_info"]) -> None: ...

global___AccessContextManagerAccessPolicyIamPolicy = AccessContextManagerAccessPolicyIamPolicy

@typing_extensions.final
class AccessContextManagerGcpUserAccessBindingXTimeouts(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CREATE_FIELD_NUMBER: builtins.int
    DELETE_FIELD_NUMBER: builtins.int
    UPDATE_FIELD_NUMBER: builtins.int
    create: builtins.str
    delete: builtins.str
    update: builtins.str
    def __init__(
        self,
        *,
        create: builtins.str = ...,
        delete: builtins.str = ...,
        update: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["create", b"create", "delete", b"delete", "update", b"update"]) -> None: ...

global___AccessContextManagerGcpUserAccessBindingXTimeouts = AccessContextManagerGcpUserAccessBindingXTimeouts

@typing_extensions.final
class AccessContextManagerGcpUserAccessBinding(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ACCESS_LEVELS_FIELD_NUMBER: builtins.int
    GROUP_KEY_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    ORGANIZATION_ID_FIELD_NUMBER: builtins.int
    TIMEOUTS_FIELD_NUMBER: builtins.int
    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    @property
    def access_levels(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    group_key: builtins.str
    id: builtins.str
    name: builtins.str
    organization_id: builtins.str
    @property
    def timeouts(self) -> global___AccessContextManagerGcpUserAccessBindingXTimeouts: ...
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    def __init__(
        self,
        *,
        access_levels: collections.abc.Iterable[builtins.str] | None = ...,
        group_key: builtins.str = ...,
        id: builtins.str = ...,
        name: builtins.str = ...,
        organization_id: builtins.str = ...,
        timeouts: global___AccessContextManagerGcpUserAccessBindingXTimeouts | None = ...,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "timeouts", b"timeouts"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["access_levels", b"access_levels", "group_key", b"group_key", "id", b"id", "name", b"name", "organization_id", b"organization_id", "resource_info", b"resource_info", "timeouts", b"timeouts"]) -> None: ...

global___AccessContextManagerGcpUserAccessBinding = AccessContextManagerGcpUserAccessBinding

@typing_extensions.final
class AccessContextManagerServicePerimeterXSpecXEgressPoliciesXEgressFrom(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    IDENTITIES_FIELD_NUMBER: builtins.int
    IDENTITY_TYPE_FIELD_NUMBER: builtins.int
    @property
    def identities(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    identity_type: builtins.str
    def __init__(
        self,
        *,
        identities: collections.abc.Iterable[builtins.str] | None = ...,
        identity_type: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["identities", b"identities", "identity_type", b"identity_type"]) -> None: ...

global___AccessContextManagerServicePerimeterXSpecXEgressPoliciesXEgressFrom = AccessContextManagerServicePerimeterXSpecXEgressPoliciesXEgressFrom

@typing_extensions.final
class AccessContextManagerServicePerimeterXSpecXEgressPoliciesXEgressToXOperationsXMethodSelectors(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    METHOD_FIELD_NUMBER: builtins.int
    PERMISSION_FIELD_NUMBER: builtins.int
    method: builtins.str
    permission: builtins.str
    def __init__(
        self,
        *,
        method: builtins.str = ...,
        permission: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["method", b"method", "permission", b"permission"]) -> None: ...

global___AccessContextManagerServicePerimeterXSpecXEgressPoliciesXEgressToXOperationsXMethodSelectors = AccessContextManagerServicePerimeterXSpecXEgressPoliciesXEgressToXOperationsXMethodSelectors

@typing_extensions.final
class AccessContextManagerServicePerimeterXSpecXEgressPoliciesXEgressToXOperations(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    SERVICE_NAME_FIELD_NUMBER: builtins.int
    METHOD_SELECTORS_FIELD_NUMBER: builtins.int
    service_name: builtins.str
    @property
    def method_selectors(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AccessContextManagerServicePerimeterXSpecXEgressPoliciesXEgressToXOperationsXMethodSelectors]: ...
    def __init__(
        self,
        *,
        service_name: builtins.str = ...,
        method_selectors: collections.abc.Iterable[global___AccessContextManagerServicePerimeterXSpecXEgressPoliciesXEgressToXOperationsXMethodSelectors] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["method_selectors", b"method_selectors", "service_name", b"service_name"]) -> None: ...

global___AccessContextManagerServicePerimeterXSpecXEgressPoliciesXEgressToXOperations = AccessContextManagerServicePerimeterXSpecXEgressPoliciesXEgressToXOperations

@typing_extensions.final
class AccessContextManagerServicePerimeterXSpecXEgressPoliciesXEgressTo(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    EXTERNAL_RESOURCES_FIELD_NUMBER: builtins.int
    RESOURCES_FIELD_NUMBER: builtins.int
    OPERATIONS_FIELD_NUMBER: builtins.int
    @property
    def external_resources(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def resources(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def operations(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AccessContextManagerServicePerimeterXSpecXEgressPoliciesXEgressToXOperations]: ...
    def __init__(
        self,
        *,
        external_resources: collections.abc.Iterable[builtins.str] | None = ...,
        resources: collections.abc.Iterable[builtins.str] | None = ...,
        operations: collections.abc.Iterable[global___AccessContextManagerServicePerimeterXSpecXEgressPoliciesXEgressToXOperations] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["external_resources", b"external_resources", "operations", b"operations", "resources", b"resources"]) -> None: ...

global___AccessContextManagerServicePerimeterXSpecXEgressPoliciesXEgressTo = AccessContextManagerServicePerimeterXSpecXEgressPoliciesXEgressTo

@typing_extensions.final
class AccessContextManagerServicePerimeterXSpecXEgressPolicies(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    EGRESS_FROM_FIELD_NUMBER: builtins.int
    EGRESS_TO_FIELD_NUMBER: builtins.int
    @property
    def egress_from(self) -> global___AccessContextManagerServicePerimeterXSpecXEgressPoliciesXEgressFrom: ...
    @property
    def egress_to(self) -> global___AccessContextManagerServicePerimeterXSpecXEgressPoliciesXEgressTo: ...
    def __init__(
        self,
        *,
        egress_from: global___AccessContextManagerServicePerimeterXSpecXEgressPoliciesXEgressFrom | None = ...,
        egress_to: global___AccessContextManagerServicePerimeterXSpecXEgressPoliciesXEgressTo | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["egress_from", b"egress_from", "egress_to", b"egress_to"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["egress_from", b"egress_from", "egress_to", b"egress_to"]) -> None: ...

global___AccessContextManagerServicePerimeterXSpecXEgressPolicies = AccessContextManagerServicePerimeterXSpecXEgressPolicies

@typing_extensions.final
class AccessContextManagerServicePerimeterXSpecXIngressPoliciesXIngressFromXSources(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ACCESS_LEVEL_FIELD_NUMBER: builtins.int
    RESOURCE_FIELD_NUMBER: builtins.int
    access_level: builtins.str
    resource: builtins.str
    def __init__(
        self,
        *,
        access_level: builtins.str = ...,
        resource: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["access_level", b"access_level", "resource", b"resource"]) -> None: ...

global___AccessContextManagerServicePerimeterXSpecXIngressPoliciesXIngressFromXSources = AccessContextManagerServicePerimeterXSpecXIngressPoliciesXIngressFromXSources

@typing_extensions.final
class AccessContextManagerServicePerimeterXSpecXIngressPoliciesXIngressFrom(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    IDENTITIES_FIELD_NUMBER: builtins.int
    IDENTITY_TYPE_FIELD_NUMBER: builtins.int
    SOURCES_FIELD_NUMBER: builtins.int
    @property
    def identities(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    identity_type: builtins.str
    @property
    def sources(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AccessContextManagerServicePerimeterXSpecXIngressPoliciesXIngressFromXSources]: ...
    def __init__(
        self,
        *,
        identities: collections.abc.Iterable[builtins.str] | None = ...,
        identity_type: builtins.str = ...,
        sources: collections.abc.Iterable[global___AccessContextManagerServicePerimeterXSpecXIngressPoliciesXIngressFromXSources] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["identities", b"identities", "identity_type", b"identity_type", "sources", b"sources"]) -> None: ...

global___AccessContextManagerServicePerimeterXSpecXIngressPoliciesXIngressFrom = AccessContextManagerServicePerimeterXSpecXIngressPoliciesXIngressFrom

@typing_extensions.final
class AccessContextManagerServicePerimeterXSpecXIngressPoliciesXIngressToXOperationsXMethodSelectors(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    METHOD_FIELD_NUMBER: builtins.int
    PERMISSION_FIELD_NUMBER: builtins.int
    method: builtins.str
    permission: builtins.str
    def __init__(
        self,
        *,
        method: builtins.str = ...,
        permission: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["method", b"method", "permission", b"permission"]) -> None: ...

global___AccessContextManagerServicePerimeterXSpecXIngressPoliciesXIngressToXOperationsXMethodSelectors = AccessContextManagerServicePerimeterXSpecXIngressPoliciesXIngressToXOperationsXMethodSelectors

@typing_extensions.final
class AccessContextManagerServicePerimeterXSpecXIngressPoliciesXIngressToXOperations(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    SERVICE_NAME_FIELD_NUMBER: builtins.int
    METHOD_SELECTORS_FIELD_NUMBER: builtins.int
    service_name: builtins.str
    @property
    def method_selectors(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AccessContextManagerServicePerimeterXSpecXIngressPoliciesXIngressToXOperationsXMethodSelectors]: ...
    def __init__(
        self,
        *,
        service_name: builtins.str = ...,
        method_selectors: collections.abc.Iterable[global___AccessContextManagerServicePerimeterXSpecXIngressPoliciesXIngressToXOperationsXMethodSelectors] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["method_selectors", b"method_selectors", "service_name", b"service_name"]) -> None: ...

global___AccessContextManagerServicePerimeterXSpecXIngressPoliciesXIngressToXOperations = AccessContextManagerServicePerimeterXSpecXIngressPoliciesXIngressToXOperations

@typing_extensions.final
class AccessContextManagerServicePerimeterXSpecXIngressPoliciesXIngressTo(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCES_FIELD_NUMBER: builtins.int
    OPERATIONS_FIELD_NUMBER: builtins.int
    @property
    def resources(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def operations(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AccessContextManagerServicePerimeterXSpecXIngressPoliciesXIngressToXOperations]: ...
    def __init__(
        self,
        *,
        resources: collections.abc.Iterable[builtins.str] | None = ...,
        operations: collections.abc.Iterable[global___AccessContextManagerServicePerimeterXSpecXIngressPoliciesXIngressToXOperations] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["operations", b"operations", "resources", b"resources"]) -> None: ...

global___AccessContextManagerServicePerimeterXSpecXIngressPoliciesXIngressTo = AccessContextManagerServicePerimeterXSpecXIngressPoliciesXIngressTo

@typing_extensions.final
class AccessContextManagerServicePerimeterXSpecXIngressPolicies(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    INGRESS_FROM_FIELD_NUMBER: builtins.int
    INGRESS_TO_FIELD_NUMBER: builtins.int
    @property
    def ingress_from(self) -> global___AccessContextManagerServicePerimeterXSpecXIngressPoliciesXIngressFrom: ...
    @property
    def ingress_to(self) -> global___AccessContextManagerServicePerimeterXSpecXIngressPoliciesXIngressTo: ...
    def __init__(
        self,
        *,
        ingress_from: global___AccessContextManagerServicePerimeterXSpecXIngressPoliciesXIngressFrom | None = ...,
        ingress_to: global___AccessContextManagerServicePerimeterXSpecXIngressPoliciesXIngressTo | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["ingress_from", b"ingress_from", "ingress_to", b"ingress_to"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["ingress_from", b"ingress_from", "ingress_to", b"ingress_to"]) -> None: ...

global___AccessContextManagerServicePerimeterXSpecXIngressPolicies = AccessContextManagerServicePerimeterXSpecXIngressPolicies

@typing_extensions.final
class AccessContextManagerServicePerimeterXSpecXVpcAccessibleServices(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ALLOWED_SERVICES_FIELD_NUMBER: builtins.int
    ENABLE_RESTRICTION_FIELD_NUMBER: builtins.int
    @property
    def allowed_services(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    enable_restriction: builtins.bool
    def __init__(
        self,
        *,
        allowed_services: collections.abc.Iterable[builtins.str] | None = ...,
        enable_restriction: builtins.bool = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["allowed_services", b"allowed_services", "enable_restriction", b"enable_restriction"]) -> None: ...

global___AccessContextManagerServicePerimeterXSpecXVpcAccessibleServices = AccessContextManagerServicePerimeterXSpecXVpcAccessibleServices

@typing_extensions.final
class AccessContextManagerServicePerimeterXSpec(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ACCESS_LEVELS_FIELD_NUMBER: builtins.int
    RESOURCES_FIELD_NUMBER: builtins.int
    RESTRICTED_SERVICES_FIELD_NUMBER: builtins.int
    EGRESS_POLICIES_FIELD_NUMBER: builtins.int
    INGRESS_POLICIES_FIELD_NUMBER: builtins.int
    VPC_ACCESSIBLE_SERVICES_FIELD_NUMBER: builtins.int
    @property
    def access_levels(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def resources(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def restricted_services(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def egress_policies(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AccessContextManagerServicePerimeterXSpecXEgressPolicies]: ...
    @property
    def ingress_policies(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AccessContextManagerServicePerimeterXSpecXIngressPolicies]: ...
    @property
    def vpc_accessible_services(self) -> global___AccessContextManagerServicePerimeterXSpecXVpcAccessibleServices: ...
    def __init__(
        self,
        *,
        access_levels: collections.abc.Iterable[builtins.str] | None = ...,
        resources: collections.abc.Iterable[builtins.str] | None = ...,
        restricted_services: collections.abc.Iterable[builtins.str] | None = ...,
        egress_policies: collections.abc.Iterable[global___AccessContextManagerServicePerimeterXSpecXEgressPolicies] | None = ...,
        ingress_policies: collections.abc.Iterable[global___AccessContextManagerServicePerimeterXSpecXIngressPolicies] | None = ...,
        vpc_accessible_services: global___AccessContextManagerServicePerimeterXSpecXVpcAccessibleServices | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["vpc_accessible_services", b"vpc_accessible_services"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["access_levels", b"access_levels", "egress_policies", b"egress_policies", "ingress_policies", b"ingress_policies", "resources", b"resources", "restricted_services", b"restricted_services", "vpc_accessible_services", b"vpc_accessible_services"]) -> None: ...

global___AccessContextManagerServicePerimeterXSpec = AccessContextManagerServicePerimeterXSpec

@typing_extensions.final
class AccessContextManagerServicePerimeterXStatusXEgressPoliciesXEgressFrom(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    IDENTITIES_FIELD_NUMBER: builtins.int
    IDENTITY_TYPE_FIELD_NUMBER: builtins.int
    @property
    def identities(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    identity_type: builtins.str
    def __init__(
        self,
        *,
        identities: collections.abc.Iterable[builtins.str] | None = ...,
        identity_type: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["identities", b"identities", "identity_type", b"identity_type"]) -> None: ...

global___AccessContextManagerServicePerimeterXStatusXEgressPoliciesXEgressFrom = AccessContextManagerServicePerimeterXStatusXEgressPoliciesXEgressFrom

@typing_extensions.final
class AccessContextManagerServicePerimeterXStatusXEgressPoliciesXEgressToXOperationsXMethodSelectors(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    METHOD_FIELD_NUMBER: builtins.int
    PERMISSION_FIELD_NUMBER: builtins.int
    method: builtins.str
    permission: builtins.str
    def __init__(
        self,
        *,
        method: builtins.str = ...,
        permission: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["method", b"method", "permission", b"permission"]) -> None: ...

global___AccessContextManagerServicePerimeterXStatusXEgressPoliciesXEgressToXOperationsXMethodSelectors = AccessContextManagerServicePerimeterXStatusXEgressPoliciesXEgressToXOperationsXMethodSelectors

@typing_extensions.final
class AccessContextManagerServicePerimeterXStatusXEgressPoliciesXEgressToXOperations(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    SERVICE_NAME_FIELD_NUMBER: builtins.int
    METHOD_SELECTORS_FIELD_NUMBER: builtins.int
    service_name: builtins.str
    @property
    def method_selectors(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AccessContextManagerServicePerimeterXStatusXEgressPoliciesXEgressToXOperationsXMethodSelectors]: ...
    def __init__(
        self,
        *,
        service_name: builtins.str = ...,
        method_selectors: collections.abc.Iterable[global___AccessContextManagerServicePerimeterXStatusXEgressPoliciesXEgressToXOperationsXMethodSelectors] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["method_selectors", b"method_selectors", "service_name", b"service_name"]) -> None: ...

global___AccessContextManagerServicePerimeterXStatusXEgressPoliciesXEgressToXOperations = AccessContextManagerServicePerimeterXStatusXEgressPoliciesXEgressToXOperations

@typing_extensions.final
class AccessContextManagerServicePerimeterXStatusXEgressPoliciesXEgressTo(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    EXTERNAL_RESOURCES_FIELD_NUMBER: builtins.int
    RESOURCES_FIELD_NUMBER: builtins.int
    OPERATIONS_FIELD_NUMBER: builtins.int
    @property
    def external_resources(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def resources(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def operations(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AccessContextManagerServicePerimeterXStatusXEgressPoliciesXEgressToXOperations]: ...
    def __init__(
        self,
        *,
        external_resources: collections.abc.Iterable[builtins.str] | None = ...,
        resources: collections.abc.Iterable[builtins.str] | None = ...,
        operations: collections.abc.Iterable[global___AccessContextManagerServicePerimeterXStatusXEgressPoliciesXEgressToXOperations] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["external_resources", b"external_resources", "operations", b"operations", "resources", b"resources"]) -> None: ...

global___AccessContextManagerServicePerimeterXStatusXEgressPoliciesXEgressTo = AccessContextManagerServicePerimeterXStatusXEgressPoliciesXEgressTo

@typing_extensions.final
class AccessContextManagerServicePerimeterXStatusXEgressPolicies(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    EGRESS_FROM_FIELD_NUMBER: builtins.int
    EGRESS_TO_FIELD_NUMBER: builtins.int
    @property
    def egress_from(self) -> global___AccessContextManagerServicePerimeterXStatusXEgressPoliciesXEgressFrom: ...
    @property
    def egress_to(self) -> global___AccessContextManagerServicePerimeterXStatusXEgressPoliciesXEgressTo: ...
    def __init__(
        self,
        *,
        egress_from: global___AccessContextManagerServicePerimeterXStatusXEgressPoliciesXEgressFrom | None = ...,
        egress_to: global___AccessContextManagerServicePerimeterXStatusXEgressPoliciesXEgressTo | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["egress_from", b"egress_from", "egress_to", b"egress_to"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["egress_from", b"egress_from", "egress_to", b"egress_to"]) -> None: ...

global___AccessContextManagerServicePerimeterXStatusXEgressPolicies = AccessContextManagerServicePerimeterXStatusXEgressPolicies

@typing_extensions.final
class AccessContextManagerServicePerimeterXStatusXIngressPoliciesXIngressFromXSources(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ACCESS_LEVEL_FIELD_NUMBER: builtins.int
    RESOURCE_FIELD_NUMBER: builtins.int
    access_level: builtins.str
    resource: builtins.str
    def __init__(
        self,
        *,
        access_level: builtins.str = ...,
        resource: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["access_level", b"access_level", "resource", b"resource"]) -> None: ...

global___AccessContextManagerServicePerimeterXStatusXIngressPoliciesXIngressFromXSources = AccessContextManagerServicePerimeterXStatusXIngressPoliciesXIngressFromXSources

@typing_extensions.final
class AccessContextManagerServicePerimeterXStatusXIngressPoliciesXIngressFrom(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    IDENTITIES_FIELD_NUMBER: builtins.int
    IDENTITY_TYPE_FIELD_NUMBER: builtins.int
    SOURCES_FIELD_NUMBER: builtins.int
    @property
    def identities(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    identity_type: builtins.str
    @property
    def sources(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AccessContextManagerServicePerimeterXStatusXIngressPoliciesXIngressFromXSources]: ...
    def __init__(
        self,
        *,
        identities: collections.abc.Iterable[builtins.str] | None = ...,
        identity_type: builtins.str = ...,
        sources: collections.abc.Iterable[global___AccessContextManagerServicePerimeterXStatusXIngressPoliciesXIngressFromXSources] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["identities", b"identities", "identity_type", b"identity_type", "sources", b"sources"]) -> None: ...

global___AccessContextManagerServicePerimeterXStatusXIngressPoliciesXIngressFrom = AccessContextManagerServicePerimeterXStatusXIngressPoliciesXIngressFrom

@typing_extensions.final
class AccessContextManagerServicePerimeterXStatusXIngressPoliciesXIngressToXOperationsXMethodSelectors(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    METHOD_FIELD_NUMBER: builtins.int
    PERMISSION_FIELD_NUMBER: builtins.int
    method: builtins.str
    permission: builtins.str
    def __init__(
        self,
        *,
        method: builtins.str = ...,
        permission: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["method", b"method", "permission", b"permission"]) -> None: ...

global___AccessContextManagerServicePerimeterXStatusXIngressPoliciesXIngressToXOperationsXMethodSelectors = AccessContextManagerServicePerimeterXStatusXIngressPoliciesXIngressToXOperationsXMethodSelectors

@typing_extensions.final
class AccessContextManagerServicePerimeterXStatusXIngressPoliciesXIngressToXOperations(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    SERVICE_NAME_FIELD_NUMBER: builtins.int
    METHOD_SELECTORS_FIELD_NUMBER: builtins.int
    service_name: builtins.str
    @property
    def method_selectors(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AccessContextManagerServicePerimeterXStatusXIngressPoliciesXIngressToXOperationsXMethodSelectors]: ...
    def __init__(
        self,
        *,
        service_name: builtins.str = ...,
        method_selectors: collections.abc.Iterable[global___AccessContextManagerServicePerimeterXStatusXIngressPoliciesXIngressToXOperationsXMethodSelectors] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["method_selectors", b"method_selectors", "service_name", b"service_name"]) -> None: ...

global___AccessContextManagerServicePerimeterXStatusXIngressPoliciesXIngressToXOperations = AccessContextManagerServicePerimeterXStatusXIngressPoliciesXIngressToXOperations

@typing_extensions.final
class AccessContextManagerServicePerimeterXStatusXIngressPoliciesXIngressTo(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCES_FIELD_NUMBER: builtins.int
    OPERATIONS_FIELD_NUMBER: builtins.int
    @property
    def resources(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def operations(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AccessContextManagerServicePerimeterXStatusXIngressPoliciesXIngressToXOperations]: ...
    def __init__(
        self,
        *,
        resources: collections.abc.Iterable[builtins.str] | None = ...,
        operations: collections.abc.Iterable[global___AccessContextManagerServicePerimeterXStatusXIngressPoliciesXIngressToXOperations] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["operations", b"operations", "resources", b"resources"]) -> None: ...

global___AccessContextManagerServicePerimeterXStatusXIngressPoliciesXIngressTo = AccessContextManagerServicePerimeterXStatusXIngressPoliciesXIngressTo

@typing_extensions.final
class AccessContextManagerServicePerimeterXStatusXIngressPolicies(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    INGRESS_FROM_FIELD_NUMBER: builtins.int
    INGRESS_TO_FIELD_NUMBER: builtins.int
    @property
    def ingress_from(self) -> global___AccessContextManagerServicePerimeterXStatusXIngressPoliciesXIngressFrom: ...
    @property
    def ingress_to(self) -> global___AccessContextManagerServicePerimeterXStatusXIngressPoliciesXIngressTo: ...
    def __init__(
        self,
        *,
        ingress_from: global___AccessContextManagerServicePerimeterXStatusXIngressPoliciesXIngressFrom | None = ...,
        ingress_to: global___AccessContextManagerServicePerimeterXStatusXIngressPoliciesXIngressTo | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["ingress_from", b"ingress_from", "ingress_to", b"ingress_to"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["ingress_from", b"ingress_from", "ingress_to", b"ingress_to"]) -> None: ...

global___AccessContextManagerServicePerimeterXStatusXIngressPolicies = AccessContextManagerServicePerimeterXStatusXIngressPolicies

@typing_extensions.final
class AccessContextManagerServicePerimeterXStatusXVpcAccessibleServices(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ALLOWED_SERVICES_FIELD_NUMBER: builtins.int
    ENABLE_RESTRICTION_FIELD_NUMBER: builtins.int
    @property
    def allowed_services(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    enable_restriction: builtins.bool
    def __init__(
        self,
        *,
        allowed_services: collections.abc.Iterable[builtins.str] | None = ...,
        enable_restriction: builtins.bool = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["allowed_services", b"allowed_services", "enable_restriction", b"enable_restriction"]) -> None: ...

global___AccessContextManagerServicePerimeterXStatusXVpcAccessibleServices = AccessContextManagerServicePerimeterXStatusXVpcAccessibleServices

@typing_extensions.final
class AccessContextManagerServicePerimeterXStatus(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ACCESS_LEVELS_FIELD_NUMBER: builtins.int
    RESOURCES_FIELD_NUMBER: builtins.int
    RESTRICTED_SERVICES_FIELD_NUMBER: builtins.int
    EGRESS_POLICIES_FIELD_NUMBER: builtins.int
    INGRESS_POLICIES_FIELD_NUMBER: builtins.int
    VPC_ACCESSIBLE_SERVICES_FIELD_NUMBER: builtins.int
    @property
    def access_levels(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def resources(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def restricted_services(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def egress_policies(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AccessContextManagerServicePerimeterXStatusXEgressPolicies]: ...
    @property
    def ingress_policies(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AccessContextManagerServicePerimeterXStatusXIngressPolicies]: ...
    @property
    def vpc_accessible_services(self) -> global___AccessContextManagerServicePerimeterXStatusXVpcAccessibleServices: ...
    def __init__(
        self,
        *,
        access_levels: collections.abc.Iterable[builtins.str] | None = ...,
        resources: collections.abc.Iterable[builtins.str] | None = ...,
        restricted_services: collections.abc.Iterable[builtins.str] | None = ...,
        egress_policies: collections.abc.Iterable[global___AccessContextManagerServicePerimeterXStatusXEgressPolicies] | None = ...,
        ingress_policies: collections.abc.Iterable[global___AccessContextManagerServicePerimeterXStatusXIngressPolicies] | None = ...,
        vpc_accessible_services: global___AccessContextManagerServicePerimeterXStatusXVpcAccessibleServices | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["vpc_accessible_services", b"vpc_accessible_services"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["access_levels", b"access_levels", "egress_policies", b"egress_policies", "ingress_policies", b"ingress_policies", "resources", b"resources", "restricted_services", b"restricted_services", "vpc_accessible_services", b"vpc_accessible_services"]) -> None: ...

global___AccessContextManagerServicePerimeterXStatus = AccessContextManagerServicePerimeterXStatus

@typing_extensions.final
class AccessContextManagerServicePerimeterXTimeouts(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CREATE_FIELD_NUMBER: builtins.int
    DELETE_FIELD_NUMBER: builtins.int
    UPDATE_FIELD_NUMBER: builtins.int
    create: builtins.str
    delete: builtins.str
    update: builtins.str
    def __init__(
        self,
        *,
        create: builtins.str = ...,
        delete: builtins.str = ...,
        update: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["create", b"create", "delete", b"delete", "update", b"update"]) -> None: ...

global___AccessContextManagerServicePerimeterXTimeouts = AccessContextManagerServicePerimeterXTimeouts

@typing_extensions.final
class AccessContextManagerServicePerimeter(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CREATE_TIME_FIELD_NUMBER: builtins.int
    DESCRIPTION_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    PARENT_FIELD_NUMBER: builtins.int
    PERIMETER_TYPE_FIELD_NUMBER: builtins.int
    TITLE_FIELD_NUMBER: builtins.int
    UPDATE_TIME_FIELD_NUMBER: builtins.int
    USE_EXPLICIT_DRY_RUN_SPEC_FIELD_NUMBER: builtins.int
    SPEC_FIELD_NUMBER: builtins.int
    STATUS_FIELD_NUMBER: builtins.int
    TIMEOUTS_FIELD_NUMBER: builtins.int
    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    create_time: builtins.str
    description: builtins.str
    id: builtins.str
    name: builtins.str
    parent: builtins.str
    perimeter_type: builtins.str
    title: builtins.str
    update_time: builtins.str
    use_explicit_dry_run_spec: builtins.bool
    @property
    def spec(self) -> global___AccessContextManagerServicePerimeterXSpec: ...
    @property
    def status(self) -> global___AccessContextManagerServicePerimeterXStatus: ...
    @property
    def timeouts(self) -> global___AccessContextManagerServicePerimeterXTimeouts: ...
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    def __init__(
        self,
        *,
        create_time: builtins.str = ...,
        description: builtins.str = ...,
        id: builtins.str = ...,
        name: builtins.str = ...,
        parent: builtins.str = ...,
        perimeter_type: builtins.str = ...,
        title: builtins.str = ...,
        update_time: builtins.str = ...,
        use_explicit_dry_run_spec: builtins.bool = ...,
        spec: global___AccessContextManagerServicePerimeterXSpec | None = ...,
        status: global___AccessContextManagerServicePerimeterXStatus | None = ...,
        timeouts: global___AccessContextManagerServicePerimeterXTimeouts | None = ...,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "spec", b"spec", "status", b"status", "timeouts", b"timeouts"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["create_time", b"create_time", "description", b"description", "id", b"id", "name", b"name", "parent", b"parent", "perimeter_type", b"perimeter_type", "resource_info", b"resource_info", "spec", b"spec", "status", b"status", "timeouts", b"timeouts", "title", b"title", "update_time", b"update_time", "use_explicit_dry_run_spec", b"use_explicit_dry_run_spec"]) -> None: ...

global___AccessContextManagerServicePerimeter = AccessContextManagerServicePerimeter

@typing_extensions.final
class AccessContextManagerServicePerimeterResourceXTimeouts(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CREATE_FIELD_NUMBER: builtins.int
    DELETE_FIELD_NUMBER: builtins.int
    create: builtins.str
    delete: builtins.str
    def __init__(
        self,
        *,
        create: builtins.str = ...,
        delete: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["create", b"create", "delete", b"delete"]) -> None: ...

global___AccessContextManagerServicePerimeterResourceXTimeouts = AccessContextManagerServicePerimeterResourceXTimeouts

@typing_extensions.final
class AccessContextManagerServicePerimeterResource(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ID_FIELD_NUMBER: builtins.int
    PERIMETER_NAME_FIELD_NUMBER: builtins.int
    RESOURCE_FIELD_NUMBER: builtins.int
    TIMEOUTS_FIELD_NUMBER: builtins.int
    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    id: builtins.str
    perimeter_name: builtins.str
    resource: builtins.str
    @property
    def timeouts(self) -> global___AccessContextManagerServicePerimeterResourceXTimeouts: ...
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    def __init__(
        self,
        *,
        id: builtins.str = ...,
        perimeter_name: builtins.str = ...,
        resource: builtins.str = ...,
        timeouts: global___AccessContextManagerServicePerimeterResourceXTimeouts | None = ...,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "timeouts", b"timeouts"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["id", b"id", "perimeter_name", b"perimeter_name", "resource", b"resource", "resource_info", b"resource_info", "timeouts", b"timeouts"]) -> None: ...

global___AccessContextManagerServicePerimeterResource = AccessContextManagerServicePerimeterResource

@typing_extensions.final
class AccessContextManagerServicePerimetersXServicePerimetersXSpecXEgressPoliciesXEgressFrom(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    IDENTITIES_FIELD_NUMBER: builtins.int
    IDENTITY_TYPE_FIELD_NUMBER: builtins.int
    @property
    def identities(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    identity_type: builtins.str
    def __init__(
        self,
        *,
        identities: collections.abc.Iterable[builtins.str] | None = ...,
        identity_type: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["identities", b"identities", "identity_type", b"identity_type"]) -> None: ...

global___AccessContextManagerServicePerimetersXServicePerimetersXSpecXEgressPoliciesXEgressFrom = AccessContextManagerServicePerimetersXServicePerimetersXSpecXEgressPoliciesXEgressFrom

@typing_extensions.final
class AccessContextManagerServicePerimetersXServicePerimetersXSpecXEgressPoliciesXEgressToXOperationsXMethodSelectors(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    METHOD_FIELD_NUMBER: builtins.int
    PERMISSION_FIELD_NUMBER: builtins.int
    method: builtins.str
    permission: builtins.str
    def __init__(
        self,
        *,
        method: builtins.str = ...,
        permission: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["method", b"method", "permission", b"permission"]) -> None: ...

global___AccessContextManagerServicePerimetersXServicePerimetersXSpecXEgressPoliciesXEgressToXOperationsXMethodSelectors = AccessContextManagerServicePerimetersXServicePerimetersXSpecXEgressPoliciesXEgressToXOperationsXMethodSelectors

@typing_extensions.final
class AccessContextManagerServicePerimetersXServicePerimetersXSpecXEgressPoliciesXEgressToXOperations(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    SERVICE_NAME_FIELD_NUMBER: builtins.int
    METHOD_SELECTORS_FIELD_NUMBER: builtins.int
    service_name: builtins.str
    @property
    def method_selectors(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AccessContextManagerServicePerimetersXServicePerimetersXSpecXEgressPoliciesXEgressToXOperationsXMethodSelectors]: ...
    def __init__(
        self,
        *,
        service_name: builtins.str = ...,
        method_selectors: collections.abc.Iterable[global___AccessContextManagerServicePerimetersXServicePerimetersXSpecXEgressPoliciesXEgressToXOperationsXMethodSelectors] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["method_selectors", b"method_selectors", "service_name", b"service_name"]) -> None: ...

global___AccessContextManagerServicePerimetersXServicePerimetersXSpecXEgressPoliciesXEgressToXOperations = AccessContextManagerServicePerimetersXServicePerimetersXSpecXEgressPoliciesXEgressToXOperations

@typing_extensions.final
class AccessContextManagerServicePerimetersXServicePerimetersXSpecXEgressPoliciesXEgressTo(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    EXTERNAL_RESOURCES_FIELD_NUMBER: builtins.int
    RESOURCES_FIELD_NUMBER: builtins.int
    OPERATIONS_FIELD_NUMBER: builtins.int
    @property
    def external_resources(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def resources(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def operations(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AccessContextManagerServicePerimetersXServicePerimetersXSpecXEgressPoliciesXEgressToXOperations]: ...
    def __init__(
        self,
        *,
        external_resources: collections.abc.Iterable[builtins.str] | None = ...,
        resources: collections.abc.Iterable[builtins.str] | None = ...,
        operations: collections.abc.Iterable[global___AccessContextManagerServicePerimetersXServicePerimetersXSpecXEgressPoliciesXEgressToXOperations] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["external_resources", b"external_resources", "operations", b"operations", "resources", b"resources"]) -> None: ...

global___AccessContextManagerServicePerimetersXServicePerimetersXSpecXEgressPoliciesXEgressTo = AccessContextManagerServicePerimetersXServicePerimetersXSpecXEgressPoliciesXEgressTo

@typing_extensions.final
class AccessContextManagerServicePerimetersXServicePerimetersXSpecXEgressPolicies(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    EGRESS_FROM_FIELD_NUMBER: builtins.int
    EGRESS_TO_FIELD_NUMBER: builtins.int
    @property
    def egress_from(self) -> global___AccessContextManagerServicePerimetersXServicePerimetersXSpecXEgressPoliciesXEgressFrom: ...
    @property
    def egress_to(self) -> global___AccessContextManagerServicePerimetersXServicePerimetersXSpecXEgressPoliciesXEgressTo: ...
    def __init__(
        self,
        *,
        egress_from: global___AccessContextManagerServicePerimetersXServicePerimetersXSpecXEgressPoliciesXEgressFrom | None = ...,
        egress_to: global___AccessContextManagerServicePerimetersXServicePerimetersXSpecXEgressPoliciesXEgressTo | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["egress_from", b"egress_from", "egress_to", b"egress_to"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["egress_from", b"egress_from", "egress_to", b"egress_to"]) -> None: ...

global___AccessContextManagerServicePerimetersXServicePerimetersXSpecXEgressPolicies = AccessContextManagerServicePerimetersXServicePerimetersXSpecXEgressPolicies

@typing_extensions.final
class AccessContextManagerServicePerimetersXServicePerimetersXSpecXIngressPoliciesXIngressFromXSources(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ACCESS_LEVEL_FIELD_NUMBER: builtins.int
    RESOURCE_FIELD_NUMBER: builtins.int
    access_level: builtins.str
    resource: builtins.str
    def __init__(
        self,
        *,
        access_level: builtins.str = ...,
        resource: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["access_level", b"access_level", "resource", b"resource"]) -> None: ...

global___AccessContextManagerServicePerimetersXServicePerimetersXSpecXIngressPoliciesXIngressFromXSources = AccessContextManagerServicePerimetersXServicePerimetersXSpecXIngressPoliciesXIngressFromXSources

@typing_extensions.final
class AccessContextManagerServicePerimetersXServicePerimetersXSpecXIngressPoliciesXIngressFrom(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    IDENTITIES_FIELD_NUMBER: builtins.int
    IDENTITY_TYPE_FIELD_NUMBER: builtins.int
    SOURCES_FIELD_NUMBER: builtins.int
    @property
    def identities(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    identity_type: builtins.str
    @property
    def sources(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AccessContextManagerServicePerimetersXServicePerimetersXSpecXIngressPoliciesXIngressFromXSources]: ...
    def __init__(
        self,
        *,
        identities: collections.abc.Iterable[builtins.str] | None = ...,
        identity_type: builtins.str = ...,
        sources: collections.abc.Iterable[global___AccessContextManagerServicePerimetersXServicePerimetersXSpecXIngressPoliciesXIngressFromXSources] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["identities", b"identities", "identity_type", b"identity_type", "sources", b"sources"]) -> None: ...

global___AccessContextManagerServicePerimetersXServicePerimetersXSpecXIngressPoliciesXIngressFrom = AccessContextManagerServicePerimetersXServicePerimetersXSpecXIngressPoliciesXIngressFrom

@typing_extensions.final
class AccessContextManagerServicePerimetersXServicePerimetersXSpecXIngressPoliciesXIngressToXOperationsXMethodSelectors(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    METHOD_FIELD_NUMBER: builtins.int
    PERMISSION_FIELD_NUMBER: builtins.int
    method: builtins.str
    permission: builtins.str
    def __init__(
        self,
        *,
        method: builtins.str = ...,
        permission: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["method", b"method", "permission", b"permission"]) -> None: ...

global___AccessContextManagerServicePerimetersXServicePerimetersXSpecXIngressPoliciesXIngressToXOperationsXMethodSelectors = AccessContextManagerServicePerimetersXServicePerimetersXSpecXIngressPoliciesXIngressToXOperationsXMethodSelectors

@typing_extensions.final
class AccessContextManagerServicePerimetersXServicePerimetersXSpecXIngressPoliciesXIngressToXOperations(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    SERVICE_NAME_FIELD_NUMBER: builtins.int
    METHOD_SELECTORS_FIELD_NUMBER: builtins.int
    service_name: builtins.str
    @property
    def method_selectors(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AccessContextManagerServicePerimetersXServicePerimetersXSpecXIngressPoliciesXIngressToXOperationsXMethodSelectors]: ...
    def __init__(
        self,
        *,
        service_name: builtins.str = ...,
        method_selectors: collections.abc.Iterable[global___AccessContextManagerServicePerimetersXServicePerimetersXSpecXIngressPoliciesXIngressToXOperationsXMethodSelectors] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["method_selectors", b"method_selectors", "service_name", b"service_name"]) -> None: ...

global___AccessContextManagerServicePerimetersXServicePerimetersXSpecXIngressPoliciesXIngressToXOperations = AccessContextManagerServicePerimetersXServicePerimetersXSpecXIngressPoliciesXIngressToXOperations

@typing_extensions.final
class AccessContextManagerServicePerimetersXServicePerimetersXSpecXIngressPoliciesXIngressTo(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCES_FIELD_NUMBER: builtins.int
    OPERATIONS_FIELD_NUMBER: builtins.int
    @property
    def resources(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def operations(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AccessContextManagerServicePerimetersXServicePerimetersXSpecXIngressPoliciesXIngressToXOperations]: ...
    def __init__(
        self,
        *,
        resources: collections.abc.Iterable[builtins.str] | None = ...,
        operations: collections.abc.Iterable[global___AccessContextManagerServicePerimetersXServicePerimetersXSpecXIngressPoliciesXIngressToXOperations] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["operations", b"operations", "resources", b"resources"]) -> None: ...

global___AccessContextManagerServicePerimetersXServicePerimetersXSpecXIngressPoliciesXIngressTo = AccessContextManagerServicePerimetersXServicePerimetersXSpecXIngressPoliciesXIngressTo

@typing_extensions.final
class AccessContextManagerServicePerimetersXServicePerimetersXSpecXIngressPolicies(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    INGRESS_FROM_FIELD_NUMBER: builtins.int
    INGRESS_TO_FIELD_NUMBER: builtins.int
    @property
    def ingress_from(self) -> global___AccessContextManagerServicePerimetersXServicePerimetersXSpecXIngressPoliciesXIngressFrom: ...
    @property
    def ingress_to(self) -> global___AccessContextManagerServicePerimetersXServicePerimetersXSpecXIngressPoliciesXIngressTo: ...
    def __init__(
        self,
        *,
        ingress_from: global___AccessContextManagerServicePerimetersXServicePerimetersXSpecXIngressPoliciesXIngressFrom | None = ...,
        ingress_to: global___AccessContextManagerServicePerimetersXServicePerimetersXSpecXIngressPoliciesXIngressTo | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["ingress_from", b"ingress_from", "ingress_to", b"ingress_to"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["ingress_from", b"ingress_from", "ingress_to", b"ingress_to"]) -> None: ...

global___AccessContextManagerServicePerimetersXServicePerimetersXSpecXIngressPolicies = AccessContextManagerServicePerimetersXServicePerimetersXSpecXIngressPolicies

@typing_extensions.final
class AccessContextManagerServicePerimetersXServicePerimetersXSpecXVpcAccessibleServices(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ALLOWED_SERVICES_FIELD_NUMBER: builtins.int
    ENABLE_RESTRICTION_FIELD_NUMBER: builtins.int
    @property
    def allowed_services(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    enable_restriction: builtins.bool
    def __init__(
        self,
        *,
        allowed_services: collections.abc.Iterable[builtins.str] | None = ...,
        enable_restriction: builtins.bool = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["allowed_services", b"allowed_services", "enable_restriction", b"enable_restriction"]) -> None: ...

global___AccessContextManagerServicePerimetersXServicePerimetersXSpecXVpcAccessibleServices = AccessContextManagerServicePerimetersXServicePerimetersXSpecXVpcAccessibleServices

@typing_extensions.final
class AccessContextManagerServicePerimetersXServicePerimetersXSpec(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ACCESS_LEVELS_FIELD_NUMBER: builtins.int
    RESOURCES_FIELD_NUMBER: builtins.int
    RESTRICTED_SERVICES_FIELD_NUMBER: builtins.int
    EGRESS_POLICIES_FIELD_NUMBER: builtins.int
    INGRESS_POLICIES_FIELD_NUMBER: builtins.int
    VPC_ACCESSIBLE_SERVICES_FIELD_NUMBER: builtins.int
    @property
    def access_levels(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def resources(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def restricted_services(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def egress_policies(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AccessContextManagerServicePerimetersXServicePerimetersXSpecXEgressPolicies]: ...
    @property
    def ingress_policies(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AccessContextManagerServicePerimetersXServicePerimetersXSpecXIngressPolicies]: ...
    @property
    def vpc_accessible_services(self) -> global___AccessContextManagerServicePerimetersXServicePerimetersXSpecXVpcAccessibleServices: ...
    def __init__(
        self,
        *,
        access_levels: collections.abc.Iterable[builtins.str] | None = ...,
        resources: collections.abc.Iterable[builtins.str] | None = ...,
        restricted_services: collections.abc.Iterable[builtins.str] | None = ...,
        egress_policies: collections.abc.Iterable[global___AccessContextManagerServicePerimetersXServicePerimetersXSpecXEgressPolicies] | None = ...,
        ingress_policies: collections.abc.Iterable[global___AccessContextManagerServicePerimetersXServicePerimetersXSpecXIngressPolicies] | None = ...,
        vpc_accessible_services: global___AccessContextManagerServicePerimetersXServicePerimetersXSpecXVpcAccessibleServices | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["vpc_accessible_services", b"vpc_accessible_services"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["access_levels", b"access_levels", "egress_policies", b"egress_policies", "ingress_policies", b"ingress_policies", "resources", b"resources", "restricted_services", b"restricted_services", "vpc_accessible_services", b"vpc_accessible_services"]) -> None: ...

global___AccessContextManagerServicePerimetersXServicePerimetersXSpec = AccessContextManagerServicePerimetersXServicePerimetersXSpec

@typing_extensions.final
class AccessContextManagerServicePerimetersXServicePerimetersXStatusXEgressPoliciesXEgressFrom(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    IDENTITIES_FIELD_NUMBER: builtins.int
    IDENTITY_TYPE_FIELD_NUMBER: builtins.int
    @property
    def identities(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    identity_type: builtins.str
    def __init__(
        self,
        *,
        identities: collections.abc.Iterable[builtins.str] | None = ...,
        identity_type: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["identities", b"identities", "identity_type", b"identity_type"]) -> None: ...

global___AccessContextManagerServicePerimetersXServicePerimetersXStatusXEgressPoliciesXEgressFrom = AccessContextManagerServicePerimetersXServicePerimetersXStatusXEgressPoliciesXEgressFrom

@typing_extensions.final
class AccessContextManagerServicePerimetersXServicePerimetersXStatusXEgressPoliciesXEgressToXOperationsXMethodSelectors(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    METHOD_FIELD_NUMBER: builtins.int
    PERMISSION_FIELD_NUMBER: builtins.int
    method: builtins.str
    permission: builtins.str
    def __init__(
        self,
        *,
        method: builtins.str = ...,
        permission: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["method", b"method", "permission", b"permission"]) -> None: ...

global___AccessContextManagerServicePerimetersXServicePerimetersXStatusXEgressPoliciesXEgressToXOperationsXMethodSelectors = AccessContextManagerServicePerimetersXServicePerimetersXStatusXEgressPoliciesXEgressToXOperationsXMethodSelectors

@typing_extensions.final
class AccessContextManagerServicePerimetersXServicePerimetersXStatusXEgressPoliciesXEgressToXOperations(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    SERVICE_NAME_FIELD_NUMBER: builtins.int
    METHOD_SELECTORS_FIELD_NUMBER: builtins.int
    service_name: builtins.str
    @property
    def method_selectors(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AccessContextManagerServicePerimetersXServicePerimetersXStatusXEgressPoliciesXEgressToXOperationsXMethodSelectors]: ...
    def __init__(
        self,
        *,
        service_name: builtins.str = ...,
        method_selectors: collections.abc.Iterable[global___AccessContextManagerServicePerimetersXServicePerimetersXStatusXEgressPoliciesXEgressToXOperationsXMethodSelectors] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["method_selectors", b"method_selectors", "service_name", b"service_name"]) -> None: ...

global___AccessContextManagerServicePerimetersXServicePerimetersXStatusXEgressPoliciesXEgressToXOperations = AccessContextManagerServicePerimetersXServicePerimetersXStatusXEgressPoliciesXEgressToXOperations

@typing_extensions.final
class AccessContextManagerServicePerimetersXServicePerimetersXStatusXEgressPoliciesXEgressTo(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    EXTERNAL_RESOURCES_FIELD_NUMBER: builtins.int
    RESOURCES_FIELD_NUMBER: builtins.int
    OPERATIONS_FIELD_NUMBER: builtins.int
    @property
    def external_resources(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def resources(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def operations(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AccessContextManagerServicePerimetersXServicePerimetersXStatusXEgressPoliciesXEgressToXOperations]: ...
    def __init__(
        self,
        *,
        external_resources: collections.abc.Iterable[builtins.str] | None = ...,
        resources: collections.abc.Iterable[builtins.str] | None = ...,
        operations: collections.abc.Iterable[global___AccessContextManagerServicePerimetersXServicePerimetersXStatusXEgressPoliciesXEgressToXOperations] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["external_resources", b"external_resources", "operations", b"operations", "resources", b"resources"]) -> None: ...

global___AccessContextManagerServicePerimetersXServicePerimetersXStatusXEgressPoliciesXEgressTo = AccessContextManagerServicePerimetersXServicePerimetersXStatusXEgressPoliciesXEgressTo

@typing_extensions.final
class AccessContextManagerServicePerimetersXServicePerimetersXStatusXEgressPolicies(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    EGRESS_FROM_FIELD_NUMBER: builtins.int
    EGRESS_TO_FIELD_NUMBER: builtins.int
    @property
    def egress_from(self) -> global___AccessContextManagerServicePerimetersXServicePerimetersXStatusXEgressPoliciesXEgressFrom: ...
    @property
    def egress_to(self) -> global___AccessContextManagerServicePerimetersXServicePerimetersXStatusXEgressPoliciesXEgressTo: ...
    def __init__(
        self,
        *,
        egress_from: global___AccessContextManagerServicePerimetersXServicePerimetersXStatusXEgressPoliciesXEgressFrom | None = ...,
        egress_to: global___AccessContextManagerServicePerimetersXServicePerimetersXStatusXEgressPoliciesXEgressTo | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["egress_from", b"egress_from", "egress_to", b"egress_to"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["egress_from", b"egress_from", "egress_to", b"egress_to"]) -> None: ...

global___AccessContextManagerServicePerimetersXServicePerimetersXStatusXEgressPolicies = AccessContextManagerServicePerimetersXServicePerimetersXStatusXEgressPolicies

@typing_extensions.final
class AccessContextManagerServicePerimetersXServicePerimetersXStatusXIngressPoliciesXIngressFromXSources(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ACCESS_LEVEL_FIELD_NUMBER: builtins.int
    RESOURCE_FIELD_NUMBER: builtins.int
    access_level: builtins.str
    resource: builtins.str
    def __init__(
        self,
        *,
        access_level: builtins.str = ...,
        resource: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["access_level", b"access_level", "resource", b"resource"]) -> None: ...

global___AccessContextManagerServicePerimetersXServicePerimetersXStatusXIngressPoliciesXIngressFromXSources = AccessContextManagerServicePerimetersXServicePerimetersXStatusXIngressPoliciesXIngressFromXSources

@typing_extensions.final
class AccessContextManagerServicePerimetersXServicePerimetersXStatusXIngressPoliciesXIngressFrom(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    IDENTITIES_FIELD_NUMBER: builtins.int
    IDENTITY_TYPE_FIELD_NUMBER: builtins.int
    SOURCES_FIELD_NUMBER: builtins.int
    @property
    def identities(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    identity_type: builtins.str
    @property
    def sources(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AccessContextManagerServicePerimetersXServicePerimetersXStatusXIngressPoliciesXIngressFromXSources]: ...
    def __init__(
        self,
        *,
        identities: collections.abc.Iterable[builtins.str] | None = ...,
        identity_type: builtins.str = ...,
        sources: collections.abc.Iterable[global___AccessContextManagerServicePerimetersXServicePerimetersXStatusXIngressPoliciesXIngressFromXSources] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["identities", b"identities", "identity_type", b"identity_type", "sources", b"sources"]) -> None: ...

global___AccessContextManagerServicePerimetersXServicePerimetersXStatusXIngressPoliciesXIngressFrom = AccessContextManagerServicePerimetersXServicePerimetersXStatusXIngressPoliciesXIngressFrom

@typing_extensions.final
class AccessContextManagerServicePerimetersXServicePerimetersXStatusXIngressPoliciesXIngressToXOperationsXMethodSelectors(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    METHOD_FIELD_NUMBER: builtins.int
    PERMISSION_FIELD_NUMBER: builtins.int
    method: builtins.str
    permission: builtins.str
    def __init__(
        self,
        *,
        method: builtins.str = ...,
        permission: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["method", b"method", "permission", b"permission"]) -> None: ...

global___AccessContextManagerServicePerimetersXServicePerimetersXStatusXIngressPoliciesXIngressToXOperationsXMethodSelectors = AccessContextManagerServicePerimetersXServicePerimetersXStatusXIngressPoliciesXIngressToXOperationsXMethodSelectors

@typing_extensions.final
class AccessContextManagerServicePerimetersXServicePerimetersXStatusXIngressPoliciesXIngressToXOperations(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    SERVICE_NAME_FIELD_NUMBER: builtins.int
    METHOD_SELECTORS_FIELD_NUMBER: builtins.int
    service_name: builtins.str
    @property
    def method_selectors(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AccessContextManagerServicePerimetersXServicePerimetersXStatusXIngressPoliciesXIngressToXOperationsXMethodSelectors]: ...
    def __init__(
        self,
        *,
        service_name: builtins.str = ...,
        method_selectors: collections.abc.Iterable[global___AccessContextManagerServicePerimetersXServicePerimetersXStatusXIngressPoliciesXIngressToXOperationsXMethodSelectors] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["method_selectors", b"method_selectors", "service_name", b"service_name"]) -> None: ...

global___AccessContextManagerServicePerimetersXServicePerimetersXStatusXIngressPoliciesXIngressToXOperations = AccessContextManagerServicePerimetersXServicePerimetersXStatusXIngressPoliciesXIngressToXOperations

@typing_extensions.final
class AccessContextManagerServicePerimetersXServicePerimetersXStatusXIngressPoliciesXIngressTo(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCES_FIELD_NUMBER: builtins.int
    OPERATIONS_FIELD_NUMBER: builtins.int
    @property
    def resources(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def operations(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AccessContextManagerServicePerimetersXServicePerimetersXStatusXIngressPoliciesXIngressToXOperations]: ...
    def __init__(
        self,
        *,
        resources: collections.abc.Iterable[builtins.str] | None = ...,
        operations: collections.abc.Iterable[global___AccessContextManagerServicePerimetersXServicePerimetersXStatusXIngressPoliciesXIngressToXOperations] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["operations", b"operations", "resources", b"resources"]) -> None: ...

global___AccessContextManagerServicePerimetersXServicePerimetersXStatusXIngressPoliciesXIngressTo = AccessContextManagerServicePerimetersXServicePerimetersXStatusXIngressPoliciesXIngressTo

@typing_extensions.final
class AccessContextManagerServicePerimetersXServicePerimetersXStatusXIngressPolicies(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    INGRESS_FROM_FIELD_NUMBER: builtins.int
    INGRESS_TO_FIELD_NUMBER: builtins.int
    @property
    def ingress_from(self) -> global___AccessContextManagerServicePerimetersXServicePerimetersXStatusXIngressPoliciesXIngressFrom: ...
    @property
    def ingress_to(self) -> global___AccessContextManagerServicePerimetersXServicePerimetersXStatusXIngressPoliciesXIngressTo: ...
    def __init__(
        self,
        *,
        ingress_from: global___AccessContextManagerServicePerimetersXServicePerimetersXStatusXIngressPoliciesXIngressFrom | None = ...,
        ingress_to: global___AccessContextManagerServicePerimetersXServicePerimetersXStatusXIngressPoliciesXIngressTo | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["ingress_from", b"ingress_from", "ingress_to", b"ingress_to"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["ingress_from", b"ingress_from", "ingress_to", b"ingress_to"]) -> None: ...

global___AccessContextManagerServicePerimetersXServicePerimetersXStatusXIngressPolicies = AccessContextManagerServicePerimetersXServicePerimetersXStatusXIngressPolicies

@typing_extensions.final
class AccessContextManagerServicePerimetersXServicePerimetersXStatusXVpcAccessibleServices(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ALLOWED_SERVICES_FIELD_NUMBER: builtins.int
    ENABLE_RESTRICTION_FIELD_NUMBER: builtins.int
    @property
    def allowed_services(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    enable_restriction: builtins.bool
    def __init__(
        self,
        *,
        allowed_services: collections.abc.Iterable[builtins.str] | None = ...,
        enable_restriction: builtins.bool = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["allowed_services", b"allowed_services", "enable_restriction", b"enable_restriction"]) -> None: ...

global___AccessContextManagerServicePerimetersXServicePerimetersXStatusXVpcAccessibleServices = AccessContextManagerServicePerimetersXServicePerimetersXStatusXVpcAccessibleServices

@typing_extensions.final
class AccessContextManagerServicePerimetersXServicePerimetersXStatus(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ACCESS_LEVELS_FIELD_NUMBER: builtins.int
    RESOURCES_FIELD_NUMBER: builtins.int
    RESTRICTED_SERVICES_FIELD_NUMBER: builtins.int
    EGRESS_POLICIES_FIELD_NUMBER: builtins.int
    INGRESS_POLICIES_FIELD_NUMBER: builtins.int
    VPC_ACCESSIBLE_SERVICES_FIELD_NUMBER: builtins.int
    @property
    def access_levels(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def resources(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def restricted_services(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    @property
    def egress_policies(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AccessContextManagerServicePerimetersXServicePerimetersXStatusXEgressPolicies]: ...
    @property
    def ingress_policies(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AccessContextManagerServicePerimetersXServicePerimetersXStatusXIngressPolicies]: ...
    @property
    def vpc_accessible_services(self) -> global___AccessContextManagerServicePerimetersXServicePerimetersXStatusXVpcAccessibleServices: ...
    def __init__(
        self,
        *,
        access_levels: collections.abc.Iterable[builtins.str] | None = ...,
        resources: collections.abc.Iterable[builtins.str] | None = ...,
        restricted_services: collections.abc.Iterable[builtins.str] | None = ...,
        egress_policies: collections.abc.Iterable[global___AccessContextManagerServicePerimetersXServicePerimetersXStatusXEgressPolicies] | None = ...,
        ingress_policies: collections.abc.Iterable[global___AccessContextManagerServicePerimetersXServicePerimetersXStatusXIngressPolicies] | None = ...,
        vpc_accessible_services: global___AccessContextManagerServicePerimetersXServicePerimetersXStatusXVpcAccessibleServices | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["vpc_accessible_services", b"vpc_accessible_services"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["access_levels", b"access_levels", "egress_policies", b"egress_policies", "ingress_policies", b"ingress_policies", "resources", b"resources", "restricted_services", b"restricted_services", "vpc_accessible_services", b"vpc_accessible_services"]) -> None: ...

global___AccessContextManagerServicePerimetersXServicePerimetersXStatus = AccessContextManagerServicePerimetersXServicePerimetersXStatus

@typing_extensions.final
class AccessContextManagerServicePerimetersXServicePerimeters(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CREATE_TIME_FIELD_NUMBER: builtins.int
    DESCRIPTION_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    PERIMETER_TYPE_FIELD_NUMBER: builtins.int
    TITLE_FIELD_NUMBER: builtins.int
    UPDATE_TIME_FIELD_NUMBER: builtins.int
    USE_EXPLICIT_DRY_RUN_SPEC_FIELD_NUMBER: builtins.int
    SPEC_FIELD_NUMBER: builtins.int
    STATUS_FIELD_NUMBER: builtins.int
    create_time: builtins.str
    description: builtins.str
    name: builtins.str
    perimeter_type: builtins.str
    title: builtins.str
    update_time: builtins.str
    use_explicit_dry_run_spec: builtins.bool
    @property
    def spec(self) -> global___AccessContextManagerServicePerimetersXServicePerimetersXSpec: ...
    @property
    def status(self) -> global___AccessContextManagerServicePerimetersXServicePerimetersXStatus: ...
    def __init__(
        self,
        *,
        create_time: builtins.str = ...,
        description: builtins.str = ...,
        name: builtins.str = ...,
        perimeter_type: builtins.str = ...,
        title: builtins.str = ...,
        update_time: builtins.str = ...,
        use_explicit_dry_run_spec: builtins.bool = ...,
        spec: global___AccessContextManagerServicePerimetersXServicePerimetersXSpec | None = ...,
        status: global___AccessContextManagerServicePerimetersXServicePerimetersXStatus | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["spec", b"spec", "status", b"status"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["create_time", b"create_time", "description", b"description", "name", b"name", "perimeter_type", b"perimeter_type", "spec", b"spec", "status", b"status", "title", b"title", "update_time", b"update_time", "use_explicit_dry_run_spec", b"use_explicit_dry_run_spec"]) -> None: ...

global___AccessContextManagerServicePerimetersXServicePerimeters = AccessContextManagerServicePerimetersXServicePerimeters

@typing_extensions.final
class AccessContextManagerServicePerimetersXTimeouts(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    CREATE_FIELD_NUMBER: builtins.int
    DELETE_FIELD_NUMBER: builtins.int
    UPDATE_FIELD_NUMBER: builtins.int
    create: builtins.str
    delete: builtins.str
    update: builtins.str
    def __init__(
        self,
        *,
        create: builtins.str = ...,
        delete: builtins.str = ...,
        update: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["create", b"create", "delete", b"delete", "update", b"update"]) -> None: ...

global___AccessContextManagerServicePerimetersXTimeouts = AccessContextManagerServicePerimetersXTimeouts

@typing_extensions.final
class AccessContextManagerServicePerimeters(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ID_FIELD_NUMBER: builtins.int
    PARENT_FIELD_NUMBER: builtins.int
    SERVICE_PERIMETERS_FIELD_NUMBER: builtins.int
    TIMEOUTS_FIELD_NUMBER: builtins.int
    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    id: builtins.str
    parent: builtins.str
    @property
    def service_perimeters(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___AccessContextManagerServicePerimetersXServicePerimeters]: ...
    @property
    def timeouts(self) -> global___AccessContextManagerServicePerimetersXTimeouts: ...
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    def __init__(
        self,
        *,
        id: builtins.str = ...,
        parent: builtins.str = ...,
        service_perimeters: collections.abc.Iterable[global___AccessContextManagerServicePerimetersXServicePerimeters] | None = ...,
        timeouts: global___AccessContextManagerServicePerimetersXTimeouts | None = ...,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "timeouts", b"timeouts"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["id", b"id", "parent", b"parent", "resource_info", b"resource_info", "service_perimeters", b"service_perimeters", "timeouts", b"timeouts"]) -> None: ...

global___AccessContextManagerServicePerimeters = AccessContextManagerServicePerimeters
