"""
@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 ConnectorDefinitionConnector(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

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

        KEY_FIELD_NUMBER: builtins.int
        VALUE_FIELD_NUMBER: builtins.int
        key: builtins.str
        value: builtins.str
        def __init__(
            self,
            *,
            key: builtins.str = ...,
            value: builtins.str = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "value", b"value"]) -> None: ...

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    CONNECTOR_ARN_FIELD_NUMBER: builtins.int
    PARAMETERS_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    connector_arn: builtins.str
    @property
    def parameters(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    id: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        connector_arn: builtins.str = ...,
        parameters: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        id: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["connector_arn", b"connector_arn", "id", b"id", "parameters", b"parameters", "resource_info", b"resource_info"]) -> None: ...

global___ConnectorDefinitionConnector = ConnectorDefinitionConnector

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    CONNECTORS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def connectors(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ConnectorDefinitionConnector]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        connectors: collections.abc.Iterable[global___ConnectorDefinitionConnector] | 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["connectors", b"connectors", "resource_info", b"resource_info"]) -> None: ...

global___ConnectorDefinitionConnectorDefinitionVersion = ConnectorDefinitionConnectorDefinitionVersion

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

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

        KEY_FIELD_NUMBER: builtins.int
        VALUE_FIELD_NUMBER: builtins.int
        key: builtins.str
        value: builtins.str
        def __init__(
            self,
            *,
            key: builtins.str = ...,
            value: builtins.str = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "value", b"value"]) -> None: ...

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    INITIAL_VERSION_FIELD_NUMBER: builtins.int
    TAGS_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def initial_version(self) -> global___ConnectorDefinitionConnectorDefinitionVersion: ...
    @property
    def tags(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    name: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        initial_version: global___ConnectorDefinitionConnectorDefinitionVersion | None = ...,
        tags: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        name: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["initial_version", b"initial_version", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["initial_version", b"initial_version", "name", b"name", "resource_info", b"resource_info", "tags", b"tags"]) -> None: ...

global___ConnectorDefinition = ConnectorDefinition

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

    CONNECTOR_DEFINITION_FIELD_NUMBER: builtins.int
    CONNECTOR_DEFINITION_VERSION_FIELD_NUMBER: builtins.int
    CORE_DEFINITION_FIELD_NUMBER: builtins.int
    CORE_DEFINITION_VERSION_FIELD_NUMBER: builtins.int
    DEVICE_DEFINITION_FIELD_NUMBER: builtins.int
    DEVICE_DEFINITION_VERSION_FIELD_NUMBER: builtins.int
    FUNCTION_DEFINITION_FIELD_NUMBER: builtins.int
    FUNCTION_DEFINITION_VERSION_FIELD_NUMBER: builtins.int
    GROUP_FIELD_NUMBER: builtins.int
    GROUP_VERSION_FIELD_NUMBER: builtins.int
    LOGGER_DEFINITION_FIELD_NUMBER: builtins.int
    LOGGER_DEFINITION_VERSION_FIELD_NUMBER: builtins.int
    RESOURCE_DEFINITION_FIELD_NUMBER: builtins.int
    RESOURCE_DEFINITION_VERSION_FIELD_NUMBER: builtins.int
    SUBSCRIPTION_DEFINITION_FIELD_NUMBER: builtins.int
    SUBSCRIPTION_DEFINITION_VERSION_FIELD_NUMBER: builtins.int
    @property
    def connector_definition(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ConnectorDefinition]: ...
    @property
    def connector_definition_version(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ConnectorDefinitionVersion]: ...
    @property
    def core_definition(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___CoreDefinition]: ...
    @property
    def core_definition_version(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___CoreDefinitionVersion]: ...
    @property
    def device_definition(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___DeviceDefinition]: ...
    @property
    def device_definition_version(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___DeviceDefinitionVersion]: ...
    @property
    def function_definition(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___FunctionDefinition]: ...
    @property
    def function_definition_version(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___FunctionDefinitionVersion]: ...
    @property
    def group(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Group]: ...
    @property
    def group_version(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___GroupVersion]: ...
    @property
    def logger_definition(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___LoggerDefinition]: ...
    @property
    def logger_definition_version(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___LoggerDefinitionVersion]: ...
    @property
    def resource_definition(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ResourceDefinition]: ...
    @property
    def resource_definition_version(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ResourceDefinitionVersion]: ...
    @property
    def subscription_definition(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___SubscriptionDefinition]: ...
    @property
    def subscription_definition_version(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___SubscriptionDefinitionVersion]: ...
    def __init__(
        self,
        *,
        connector_definition: collections.abc.Iterable[global___ConnectorDefinition] | None = ...,
        connector_definition_version: collections.abc.Iterable[global___ConnectorDefinitionVersion] | None = ...,
        core_definition: collections.abc.Iterable[global___CoreDefinition] | None = ...,
        core_definition_version: collections.abc.Iterable[global___CoreDefinitionVersion] | None = ...,
        device_definition: collections.abc.Iterable[global___DeviceDefinition] | None = ...,
        device_definition_version: collections.abc.Iterable[global___DeviceDefinitionVersion] | None = ...,
        function_definition: collections.abc.Iterable[global___FunctionDefinition] | None = ...,
        function_definition_version: collections.abc.Iterable[global___FunctionDefinitionVersion] | None = ...,
        group: collections.abc.Iterable[global___Group] | None = ...,
        group_version: collections.abc.Iterable[global___GroupVersion] | None = ...,
        logger_definition: collections.abc.Iterable[global___LoggerDefinition] | None = ...,
        logger_definition_version: collections.abc.Iterable[global___LoggerDefinitionVersion] | None = ...,
        resource_definition: collections.abc.Iterable[global___ResourceDefinition] | None = ...,
        resource_definition_version: collections.abc.Iterable[global___ResourceDefinitionVersion] | None = ...,
        subscription_definition: collections.abc.Iterable[global___SubscriptionDefinition] | None = ...,
        subscription_definition_version: collections.abc.Iterable[global___SubscriptionDefinitionVersion] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["connector_definition", b"connector_definition", "connector_definition_version", b"connector_definition_version", "core_definition", b"core_definition", "core_definition_version", b"core_definition_version", "device_definition", b"device_definition", "device_definition_version", b"device_definition_version", "function_definition", b"function_definition", "function_definition_version", b"function_definition_version", "group", b"group", "group_version", b"group_version", "logger_definition", b"logger_definition", "logger_definition_version", b"logger_definition_version", "resource_definition", b"resource_definition", "resource_definition_version", b"resource_definition_version", "subscription_definition", b"subscription_definition", "subscription_definition_version", b"subscription_definition_version"]) -> None: ...

global___Greengrass = Greengrass

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

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

        KEY_FIELD_NUMBER: builtins.int
        VALUE_FIELD_NUMBER: builtins.int
        key: builtins.str
        value: builtins.str
        def __init__(
            self,
            *,
            key: builtins.str = ...,
            value: builtins.str = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "value", b"value"]) -> None: ...

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    CONNECTOR_ARN_FIELD_NUMBER: builtins.int
    PARAMETERS_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    connector_arn: builtins.str
    @property
    def parameters(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    id: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        connector_arn: builtins.str = ...,
        parameters: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        id: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["connector_arn", b"connector_arn", "id", b"id", "parameters", b"parameters", "resource_info", b"resource_info"]) -> None: ...

global___ConnectorDefinitionVersionConnector = ConnectorDefinitionVersionConnector

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    CONNECTORS_FIELD_NUMBER: builtins.int
    CONNECTOR_DEFINITION_ID_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def connectors(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ConnectorDefinitionVersionConnector]: ...
    connector_definition_id: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        connectors: collections.abc.Iterable[global___ConnectorDefinitionVersionConnector] | None = ...,
        connector_definition_id: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["connector_definition_id", b"connector_definition_id", "connectors", b"connectors", "resource_info", b"resource_info"]) -> None: ...

global___ConnectorDefinitionVersion = ConnectorDefinitionVersion

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    SYNC_SHADOW_FIELD_NUMBER: builtins.int
    THING_ARN_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    CERTIFICATE_ARN_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    sync_shadow: builtins.bool
    thing_arn: builtins.str
    id: builtins.str
    certificate_arn: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        sync_shadow: builtins.bool = ...,
        thing_arn: builtins.str = ...,
        id: builtins.str = ...,
        certificate_arn: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["certificate_arn", b"certificate_arn", "id", b"id", "resource_info", b"resource_info", "sync_shadow", b"sync_shadow", "thing_arn", b"thing_arn"]) -> None: ...

global___CoreDefinitionCore = CoreDefinitionCore

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    CORES_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def cores(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___CoreDefinitionCore]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        cores: collections.abc.Iterable[global___CoreDefinitionCore] | 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["cores", b"cores", "resource_info", b"resource_info"]) -> None: ...

global___CoreDefinitionCoreDefinitionVersion = CoreDefinitionCoreDefinitionVersion

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

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

        KEY_FIELD_NUMBER: builtins.int
        VALUE_FIELD_NUMBER: builtins.int
        key: builtins.str
        value: builtins.str
        def __init__(
            self,
            *,
            key: builtins.str = ...,
            value: builtins.str = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "value", b"value"]) -> None: ...

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    INITIAL_VERSION_FIELD_NUMBER: builtins.int
    TAGS_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def initial_version(self) -> global___CoreDefinitionCoreDefinitionVersion: ...
    @property
    def tags(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    name: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        initial_version: global___CoreDefinitionCoreDefinitionVersion | None = ...,
        tags: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        name: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["initial_version", b"initial_version", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["initial_version", b"initial_version", "name", b"name", "resource_info", b"resource_info", "tags", b"tags"]) -> None: ...

global___CoreDefinition = CoreDefinition

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    SYNC_SHADOW_FIELD_NUMBER: builtins.int
    THING_ARN_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    CERTIFICATE_ARN_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    sync_shadow: builtins.bool
    thing_arn: builtins.str
    id: builtins.str
    certificate_arn: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        sync_shadow: builtins.bool = ...,
        thing_arn: builtins.str = ...,
        id: builtins.str = ...,
        certificate_arn: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["certificate_arn", b"certificate_arn", "id", b"id", "resource_info", b"resource_info", "sync_shadow", b"sync_shadow", "thing_arn", b"thing_arn"]) -> None: ...

global___CoreDefinitionVersionCore = CoreDefinitionVersionCore

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    CORES_FIELD_NUMBER: builtins.int
    CORE_DEFINITION_ID_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def cores(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___CoreDefinitionVersionCore]: ...
    core_definition_id: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        cores: collections.abc.Iterable[global___CoreDefinitionVersionCore] | None = ...,
        core_definition_id: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["core_definition_id", b"core_definition_id", "cores", b"cores", "resource_info", b"resource_info"]) -> None: ...

global___CoreDefinitionVersion = CoreDefinitionVersion

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    SYNC_SHADOW_FIELD_NUMBER: builtins.int
    THING_ARN_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    CERTIFICATE_ARN_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    sync_shadow: builtins.bool
    thing_arn: builtins.str
    id: builtins.str
    certificate_arn: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        sync_shadow: builtins.bool = ...,
        thing_arn: builtins.str = ...,
        id: builtins.str = ...,
        certificate_arn: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["certificate_arn", b"certificate_arn", "id", b"id", "resource_info", b"resource_info", "sync_shadow", b"sync_shadow", "thing_arn", b"thing_arn"]) -> None: ...

global___DeviceDefinitionDevice = DeviceDefinitionDevice

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    DEVICES_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def devices(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___DeviceDefinitionDevice]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        devices: collections.abc.Iterable[global___DeviceDefinitionDevice] | 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["devices", b"devices", "resource_info", b"resource_info"]) -> None: ...

global___DeviceDefinitionDeviceDefinitionVersion = DeviceDefinitionDeviceDefinitionVersion

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

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

        KEY_FIELD_NUMBER: builtins.int
        VALUE_FIELD_NUMBER: builtins.int
        key: builtins.str
        value: builtins.str
        def __init__(
            self,
            *,
            key: builtins.str = ...,
            value: builtins.str = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "value", b"value"]) -> None: ...

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    INITIAL_VERSION_FIELD_NUMBER: builtins.int
    TAGS_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def initial_version(self) -> global___DeviceDefinitionDeviceDefinitionVersion: ...
    @property
    def tags(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    name: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        initial_version: global___DeviceDefinitionDeviceDefinitionVersion | None = ...,
        tags: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        name: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["initial_version", b"initial_version", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["initial_version", b"initial_version", "name", b"name", "resource_info", b"resource_info", "tags", b"tags"]) -> None: ...

global___DeviceDefinition = DeviceDefinition

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    SYNC_SHADOW_FIELD_NUMBER: builtins.int
    THING_ARN_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    CERTIFICATE_ARN_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    sync_shadow: builtins.bool
    thing_arn: builtins.str
    id: builtins.str
    certificate_arn: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        sync_shadow: builtins.bool = ...,
        thing_arn: builtins.str = ...,
        id: builtins.str = ...,
        certificate_arn: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["certificate_arn", b"certificate_arn", "id", b"id", "resource_info", b"resource_info", "sync_shadow", b"sync_shadow", "thing_arn", b"thing_arn"]) -> None: ...

global___DeviceDefinitionVersionDevice = DeviceDefinitionVersionDevice

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    DEVICE_DEFINITION_ID_FIELD_NUMBER: builtins.int
    DEVICES_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    device_definition_id: builtins.str
    @property
    def devices(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___DeviceDefinitionVersionDevice]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        device_definition_id: builtins.str = ...,
        devices: collections.abc.Iterable[global___DeviceDefinitionVersionDevice] | 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["device_definition_id", b"device_definition_id", "devices", b"devices", "resource_info", b"resource_info"]) -> None: ...

global___DeviceDefinitionVersion = DeviceDefinitionVersion

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    UID_FIELD_NUMBER: builtins.int
    GID_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    uid: builtins.int
    gid: builtins.int
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        uid: builtins.int = ...,
        gid: builtins.int = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["gid", b"gid", "resource_info", b"resource_info", "uid", b"uid"]) -> None: ...

global___FunctionDefinitionRunAs = FunctionDefinitionRunAs

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    ISOLATION_MODE_FIELD_NUMBER: builtins.int
    RUN_AS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    isolation_mode: builtins.str
    @property
    def run_as(self) -> global___FunctionDefinitionRunAs: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        isolation_mode: builtins.str = ...,
        run_as: global___FunctionDefinitionRunAs | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "run_as", b"run_as"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["isolation_mode", b"isolation_mode", "resource_info", b"resource_info", "run_as", b"run_as"]) -> None: ...

global___FunctionDefinitionExecution = FunctionDefinitionExecution

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    EXECUTION_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def execution(self) -> global___FunctionDefinitionExecution: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        execution: global___FunctionDefinitionExecution | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["execution", b"execution", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["execution", b"execution", "resource_info", b"resource_info"]) -> None: ...

global___FunctionDefinitionDefaultConfig = FunctionDefinitionDefaultConfig

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    RESOURCE_ID_FIELD_NUMBER: builtins.int
    PERMISSION_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    resource_id: builtins.str
    permission: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        resource_id: builtins.str = ...,
        permission: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["permission", b"permission", "resource_id", b"resource_id", "resource_info", b"resource_info"]) -> None: ...

global___FunctionDefinitionResourceAccessPolicy = FunctionDefinitionResourceAccessPolicy

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

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

        KEY_FIELD_NUMBER: builtins.int
        VALUE_FIELD_NUMBER: builtins.int
        key: builtins.str
        value: builtins.str
        def __init__(
            self,
            *,
            key: builtins.str = ...,
            value: builtins.str = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "value", b"value"]) -> None: ...

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    VARIABLES_FIELD_NUMBER: builtins.int
    EXECUTION_FIELD_NUMBER: builtins.int
    RESOURCE_ACCESS_POLICIES_FIELD_NUMBER: builtins.int
    ACCESS_SYSFS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def variables(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    @property
    def execution(self) -> global___FunctionDefinitionExecution: ...
    @property
    def resource_access_policies(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___FunctionDefinitionResourceAccessPolicy]: ...
    access_sysfs: builtins.bool
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        variables: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        execution: global___FunctionDefinitionExecution | None = ...,
        resource_access_policies: collections.abc.Iterable[global___FunctionDefinitionResourceAccessPolicy] | None = ...,
        access_sysfs: builtins.bool = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["execution", b"execution", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["access_sysfs", b"access_sysfs", "execution", b"execution", "resource_access_policies", b"resource_access_policies", "resource_info", b"resource_info", "variables", b"variables"]) -> None: ...

global___FunctionDefinitionEnvironment = FunctionDefinitionEnvironment

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    MEMORY_SIZE_FIELD_NUMBER: builtins.int
    PINNED_FIELD_NUMBER: builtins.int
    EXEC_ARGS_FIELD_NUMBER: builtins.int
    TIMEOUT_FIELD_NUMBER: builtins.int
    ENCODING_TYPE_FIELD_NUMBER: builtins.int
    ENVIRONMENT_FIELD_NUMBER: builtins.int
    EXECUTABLE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    memory_size: builtins.int
    pinned: builtins.bool
    exec_args: builtins.str
    timeout: builtins.int
    encoding_type: builtins.str
    @property
    def environment(self) -> global___FunctionDefinitionEnvironment: ...
    executable: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        memory_size: builtins.int = ...,
        pinned: builtins.bool = ...,
        exec_args: builtins.str = ...,
        timeout: builtins.int = ...,
        encoding_type: builtins.str = ...,
        environment: global___FunctionDefinitionEnvironment | None = ...,
        executable: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["environment", b"environment", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["encoding_type", b"encoding_type", "environment", b"environment", "exec_args", b"exec_args", "executable", b"executable", "memory_size", b"memory_size", "pinned", b"pinned", "resource_info", b"resource_info", "timeout", b"timeout"]) -> None: ...

global___FunctionDefinitionFunctionConfiguration = FunctionDefinitionFunctionConfiguration

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    FUNCTION_ARN_FIELD_NUMBER: builtins.int
    FUNCTION_CONFIGURATION_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    function_arn: builtins.str
    @property
    def function_configuration(self) -> global___FunctionDefinitionFunctionConfiguration: ...
    id: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        function_arn: builtins.str = ...,
        function_configuration: global___FunctionDefinitionFunctionConfiguration | None = ...,
        id: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["function_configuration", b"function_configuration", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["function_arn", b"function_arn", "function_configuration", b"function_configuration", "id", b"id", "resource_info", b"resource_info"]) -> None: ...

global___FunctionDefinitionFunction = FunctionDefinitionFunction

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    DEFAULT_CONFIG_FIELD_NUMBER: builtins.int
    FUNCTIONS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def default_config(self) -> global___FunctionDefinitionDefaultConfig: ...
    @property
    def functions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___FunctionDefinitionFunction]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        default_config: global___FunctionDefinitionDefaultConfig | None = ...,
        functions: collections.abc.Iterable[global___FunctionDefinitionFunction] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["default_config", b"default_config", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["default_config", b"default_config", "functions", b"functions", "resource_info", b"resource_info"]) -> None: ...

global___FunctionDefinitionFunctionDefinitionVersion = FunctionDefinitionFunctionDefinitionVersion

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

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

        KEY_FIELD_NUMBER: builtins.int
        VALUE_FIELD_NUMBER: builtins.int
        key: builtins.str
        value: builtins.str
        def __init__(
            self,
            *,
            key: builtins.str = ...,
            value: builtins.str = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "value", b"value"]) -> None: ...

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    INITIAL_VERSION_FIELD_NUMBER: builtins.int
    TAGS_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def initial_version(self) -> global___FunctionDefinitionFunctionDefinitionVersion: ...
    @property
    def tags(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    name: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        initial_version: global___FunctionDefinitionFunctionDefinitionVersion | None = ...,
        tags: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        name: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["initial_version", b"initial_version", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["initial_version", b"initial_version", "name", b"name", "resource_info", b"resource_info", "tags", b"tags"]) -> None: ...

global___FunctionDefinition = FunctionDefinition

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    UID_FIELD_NUMBER: builtins.int
    GID_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    uid: builtins.int
    gid: builtins.int
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        uid: builtins.int = ...,
        gid: builtins.int = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["gid", b"gid", "resource_info", b"resource_info", "uid", b"uid"]) -> None: ...

global___FunctionDefinitionVersionRunAs = FunctionDefinitionVersionRunAs

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    ISOLATION_MODE_FIELD_NUMBER: builtins.int
    RUN_AS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    isolation_mode: builtins.str
    @property
    def run_as(self) -> global___FunctionDefinitionVersionRunAs: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        isolation_mode: builtins.str = ...,
        run_as: global___FunctionDefinitionVersionRunAs | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "run_as", b"run_as"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["isolation_mode", b"isolation_mode", "resource_info", b"resource_info", "run_as", b"run_as"]) -> None: ...

global___FunctionDefinitionVersionExecution = FunctionDefinitionVersionExecution

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    EXECUTION_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def execution(self) -> global___FunctionDefinitionVersionExecution: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        execution: global___FunctionDefinitionVersionExecution | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["execution", b"execution", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["execution", b"execution", "resource_info", b"resource_info"]) -> None: ...

global___FunctionDefinitionVersionDefaultConfig = FunctionDefinitionVersionDefaultConfig

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    RESOURCE_ID_FIELD_NUMBER: builtins.int
    PERMISSION_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    resource_id: builtins.str
    permission: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        resource_id: builtins.str = ...,
        permission: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["permission", b"permission", "resource_id", b"resource_id", "resource_info", b"resource_info"]) -> None: ...

global___FunctionDefinitionVersionResourceAccessPolicy = FunctionDefinitionVersionResourceAccessPolicy

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

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

        KEY_FIELD_NUMBER: builtins.int
        VALUE_FIELD_NUMBER: builtins.int
        key: builtins.str
        value: builtins.str
        def __init__(
            self,
            *,
            key: builtins.str = ...,
            value: builtins.str = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "value", b"value"]) -> None: ...

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    VARIABLES_FIELD_NUMBER: builtins.int
    EXECUTION_FIELD_NUMBER: builtins.int
    RESOURCE_ACCESS_POLICIES_FIELD_NUMBER: builtins.int
    ACCESS_SYSFS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def variables(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    @property
    def execution(self) -> global___FunctionDefinitionVersionExecution: ...
    @property
    def resource_access_policies(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___FunctionDefinitionVersionResourceAccessPolicy]: ...
    access_sysfs: builtins.bool
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        variables: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        execution: global___FunctionDefinitionVersionExecution | None = ...,
        resource_access_policies: collections.abc.Iterable[global___FunctionDefinitionVersionResourceAccessPolicy] | None = ...,
        access_sysfs: builtins.bool = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["execution", b"execution", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["access_sysfs", b"access_sysfs", "execution", b"execution", "resource_access_policies", b"resource_access_policies", "resource_info", b"resource_info", "variables", b"variables"]) -> None: ...

global___FunctionDefinitionVersionEnvironment = FunctionDefinitionVersionEnvironment

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    MEMORY_SIZE_FIELD_NUMBER: builtins.int
    PINNED_FIELD_NUMBER: builtins.int
    EXEC_ARGS_FIELD_NUMBER: builtins.int
    TIMEOUT_FIELD_NUMBER: builtins.int
    ENCODING_TYPE_FIELD_NUMBER: builtins.int
    ENVIRONMENT_FIELD_NUMBER: builtins.int
    EXECUTABLE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    memory_size: builtins.int
    pinned: builtins.bool
    exec_args: builtins.str
    timeout: builtins.int
    encoding_type: builtins.str
    @property
    def environment(self) -> global___FunctionDefinitionVersionEnvironment: ...
    executable: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        memory_size: builtins.int = ...,
        pinned: builtins.bool = ...,
        exec_args: builtins.str = ...,
        timeout: builtins.int = ...,
        encoding_type: builtins.str = ...,
        environment: global___FunctionDefinitionVersionEnvironment | None = ...,
        executable: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["environment", b"environment", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["encoding_type", b"encoding_type", "environment", b"environment", "exec_args", b"exec_args", "executable", b"executable", "memory_size", b"memory_size", "pinned", b"pinned", "resource_info", b"resource_info", "timeout", b"timeout"]) -> None: ...

global___FunctionDefinitionVersionFunctionConfiguration = FunctionDefinitionVersionFunctionConfiguration

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    FUNCTION_ARN_FIELD_NUMBER: builtins.int
    FUNCTION_CONFIGURATION_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    function_arn: builtins.str
    @property
    def function_configuration(self) -> global___FunctionDefinitionVersionFunctionConfiguration: ...
    id: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        function_arn: builtins.str = ...,
        function_configuration: global___FunctionDefinitionVersionFunctionConfiguration | None = ...,
        id: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["function_configuration", b"function_configuration", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["function_arn", b"function_arn", "function_configuration", b"function_configuration", "id", b"id", "resource_info", b"resource_info"]) -> None: ...

global___FunctionDefinitionVersionFunction = FunctionDefinitionVersionFunction

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    DEFAULT_CONFIG_FIELD_NUMBER: builtins.int
    FUNCTIONS_FIELD_NUMBER: builtins.int
    FUNCTION_DEFINITION_ID_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def default_config(self) -> global___FunctionDefinitionVersionDefaultConfig: ...
    @property
    def functions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___FunctionDefinitionVersionFunction]: ...
    function_definition_id: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        default_config: global___FunctionDefinitionVersionDefaultConfig | None = ...,
        functions: collections.abc.Iterable[global___FunctionDefinitionVersionFunction] | None = ...,
        function_definition_id: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["default_config", b"default_config", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["default_config", b"default_config", "function_definition_id", b"function_definition_id", "functions", b"functions", "resource_info", b"resource_info"]) -> None: ...

global___FunctionDefinitionVersion = FunctionDefinitionVersion

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    LOGGER_DEFINITION_VERSION_ARN_FIELD_NUMBER: builtins.int
    DEVICE_DEFINITION_VERSION_ARN_FIELD_NUMBER: builtins.int
    FUNCTION_DEFINITION_VERSION_ARN_FIELD_NUMBER: builtins.int
    CORE_DEFINITION_VERSION_ARN_FIELD_NUMBER: builtins.int
    RESOURCE_DEFINITION_VERSION_ARN_FIELD_NUMBER: builtins.int
    CONNECTOR_DEFINITION_VERSION_ARN_FIELD_NUMBER: builtins.int
    SUBSCRIPTION_DEFINITION_VERSION_ARN_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    logger_definition_version_arn: builtins.str
    device_definition_version_arn: builtins.str
    function_definition_version_arn: builtins.str
    core_definition_version_arn: builtins.str
    resource_definition_version_arn: builtins.str
    connector_definition_version_arn: builtins.str
    subscription_definition_version_arn: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        logger_definition_version_arn: builtins.str = ...,
        device_definition_version_arn: builtins.str = ...,
        function_definition_version_arn: builtins.str = ...,
        core_definition_version_arn: builtins.str = ...,
        resource_definition_version_arn: builtins.str = ...,
        connector_definition_version_arn: builtins.str = ...,
        subscription_definition_version_arn: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["connector_definition_version_arn", b"connector_definition_version_arn", "core_definition_version_arn", b"core_definition_version_arn", "device_definition_version_arn", b"device_definition_version_arn", "function_definition_version_arn", b"function_definition_version_arn", "logger_definition_version_arn", b"logger_definition_version_arn", "resource_definition_version_arn", b"resource_definition_version_arn", "resource_info", b"resource_info", "subscription_definition_version_arn", b"subscription_definition_version_arn"]) -> None: ...

global___GroupGroupVersion = GroupGroupVersion

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

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

        KEY_FIELD_NUMBER: builtins.int
        VALUE_FIELD_NUMBER: builtins.int
        key: builtins.str
        value: builtins.str
        def __init__(
            self,
            *,
            key: builtins.str = ...,
            value: builtins.str = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "value", b"value"]) -> None: ...

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    INITIAL_VERSION_FIELD_NUMBER: builtins.int
    ROLE_ARN_FIELD_NUMBER: builtins.int
    TAGS_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def initial_version(self) -> global___GroupGroupVersion: ...
    role_arn: builtins.str
    @property
    def tags(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    name: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        initial_version: global___GroupGroupVersion | None = ...,
        role_arn: builtins.str = ...,
        tags: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        name: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["initial_version", b"initial_version", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["initial_version", b"initial_version", "name", b"name", "resource_info", b"resource_info", "role_arn", b"role_arn", "tags", b"tags"]) -> None: ...

global___Group = Group

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    LOGGER_DEFINITION_VERSION_ARN_FIELD_NUMBER: builtins.int
    DEVICE_DEFINITION_VERSION_ARN_FIELD_NUMBER: builtins.int
    FUNCTION_DEFINITION_VERSION_ARN_FIELD_NUMBER: builtins.int
    CORE_DEFINITION_VERSION_ARN_FIELD_NUMBER: builtins.int
    RESOURCE_DEFINITION_VERSION_ARN_FIELD_NUMBER: builtins.int
    CONNECTOR_DEFINITION_VERSION_ARN_FIELD_NUMBER: builtins.int
    SUBSCRIPTION_DEFINITION_VERSION_ARN_FIELD_NUMBER: builtins.int
    GROUP_ID_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    logger_definition_version_arn: builtins.str
    device_definition_version_arn: builtins.str
    function_definition_version_arn: builtins.str
    core_definition_version_arn: builtins.str
    resource_definition_version_arn: builtins.str
    connector_definition_version_arn: builtins.str
    subscription_definition_version_arn: builtins.str
    group_id: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        logger_definition_version_arn: builtins.str = ...,
        device_definition_version_arn: builtins.str = ...,
        function_definition_version_arn: builtins.str = ...,
        core_definition_version_arn: builtins.str = ...,
        resource_definition_version_arn: builtins.str = ...,
        connector_definition_version_arn: builtins.str = ...,
        subscription_definition_version_arn: builtins.str = ...,
        group_id: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["connector_definition_version_arn", b"connector_definition_version_arn", "core_definition_version_arn", b"core_definition_version_arn", "device_definition_version_arn", b"device_definition_version_arn", "function_definition_version_arn", b"function_definition_version_arn", "group_id", b"group_id", "logger_definition_version_arn", b"logger_definition_version_arn", "resource_definition_version_arn", b"resource_definition_version_arn", "resource_info", b"resource_info", "subscription_definition_version_arn", b"subscription_definition_version_arn"]) -> None: ...

global___GroupVersion = GroupVersion

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    SPACE_FIELD_NUMBER: builtins.int
    LEVEL_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    COMPONENT_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    space: builtins.int
    level: builtins.str
    id: builtins.str
    component: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        space: builtins.int = ...,
        level: builtins.str = ...,
        id: builtins.str = ...,
        component: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["component", b"component", "id", b"id", "level", b"level", "resource_info", b"resource_info", "space", b"space"]) -> None: ...

global___LoggerDefinitionLogger = LoggerDefinitionLogger

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    LOGGERS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def loggers(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___LoggerDefinitionLogger]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        loggers: collections.abc.Iterable[global___LoggerDefinitionLogger] | 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["loggers", b"loggers", "resource_info", b"resource_info"]) -> None: ...

global___LoggerDefinitionLoggerDefinitionVersion = LoggerDefinitionLoggerDefinitionVersion

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

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

        KEY_FIELD_NUMBER: builtins.int
        VALUE_FIELD_NUMBER: builtins.int
        key: builtins.str
        value: builtins.str
        def __init__(
            self,
            *,
            key: builtins.str = ...,
            value: builtins.str = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "value", b"value"]) -> None: ...

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    INITIAL_VERSION_FIELD_NUMBER: builtins.int
    TAGS_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def initial_version(self) -> global___LoggerDefinitionLoggerDefinitionVersion: ...
    @property
    def tags(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    name: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        initial_version: global___LoggerDefinitionLoggerDefinitionVersion | None = ...,
        tags: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        name: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["initial_version", b"initial_version", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["initial_version", b"initial_version", "name", b"name", "resource_info", b"resource_info", "tags", b"tags"]) -> None: ...

global___LoggerDefinition = LoggerDefinition

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    SPACE_FIELD_NUMBER: builtins.int
    LEVEL_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    COMPONENT_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    space: builtins.int
    level: builtins.str
    id: builtins.str
    component: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        space: builtins.int = ...,
        level: builtins.str = ...,
        id: builtins.str = ...,
        component: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["component", b"component", "id", b"id", "level", b"level", "resource_info", b"resource_info", "space", b"space"]) -> None: ...

global___LoggerDefinitionVersionLogger = LoggerDefinitionVersionLogger

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    LOGGER_DEFINITION_ID_FIELD_NUMBER: builtins.int
    LOGGERS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    logger_definition_id: builtins.str
    @property
    def loggers(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___LoggerDefinitionVersionLogger]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        logger_definition_id: builtins.str = ...,
        loggers: collections.abc.Iterable[global___LoggerDefinitionVersionLogger] | 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["logger_definition_id", b"logger_definition_id", "loggers", b"loggers", "resource_info", b"resource_info"]) -> None: ...

global___LoggerDefinitionVersion = LoggerDefinitionVersion

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    ARN_FIELD_NUMBER: builtins.int
    ADDITIONAL_STAGING_LABELS_TO_DOWNLOAD_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    arn: builtins.str
    @property
    def additional_staging_labels_to_download(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        arn: builtins.str = ...,
        additional_staging_labels_to_download: collections.abc.Iterable[builtins.str] | 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["additional_staging_labels_to_download", b"additional_staging_labels_to_download", "arn", b"arn", "resource_info", b"resource_info"]) -> None: ...

global___ResourceDefinitionSecretsManagerSecretResourceData = ResourceDefinitionSecretsManagerSecretResourceData

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    GROUP_OWNER_FIELD_NUMBER: builtins.int
    GROUP_PERMISSION_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    group_owner: builtins.str
    group_permission: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        group_owner: builtins.str = ...,
        group_permission: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["group_owner", b"group_owner", "group_permission", b"group_permission", "resource_info", b"resource_info"]) -> None: ...

global___ResourceDefinitionResourceDownloadOwnerSetting = ResourceDefinitionResourceDownloadOwnerSetting

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    OWNER_SETTING_FIELD_NUMBER: builtins.int
    DESTINATION_PATH_FIELD_NUMBER: builtins.int
    SAGE_MAKER_JOB_ARN_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def owner_setting(self) -> global___ResourceDefinitionResourceDownloadOwnerSetting: ...
    destination_path: builtins.str
    sage_maker_job_arn: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        owner_setting: global___ResourceDefinitionResourceDownloadOwnerSetting | None = ...,
        destination_path: builtins.str = ...,
        sage_maker_job_arn: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["owner_setting", b"owner_setting", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["destination_path", b"destination_path", "owner_setting", b"owner_setting", "resource_info", b"resource_info", "sage_maker_job_arn", b"sage_maker_job_arn"]) -> None: ...

global___ResourceDefinitionSageMakerMachineLearningModelResourceData = ResourceDefinitionSageMakerMachineLearningModelResourceData

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    AUTO_ADD_GROUP_OWNER_FIELD_NUMBER: builtins.int
    GROUP_OWNER_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    auto_add_group_owner: builtins.bool
    group_owner: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        auto_add_group_owner: builtins.bool = ...,
        group_owner: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["auto_add_group_owner", b"auto_add_group_owner", "group_owner", b"group_owner", "resource_info", b"resource_info"]) -> None: ...

global___ResourceDefinitionGroupOwnerSetting = ResourceDefinitionGroupOwnerSetting

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    SOURCE_PATH_FIELD_NUMBER: builtins.int
    DESTINATION_PATH_FIELD_NUMBER: builtins.int
    GROUP_OWNER_SETTING_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    source_path: builtins.str
    destination_path: builtins.str
    @property
    def group_owner_setting(self) -> global___ResourceDefinitionGroupOwnerSetting: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        source_path: builtins.str = ...,
        destination_path: builtins.str = ...,
        group_owner_setting: global___ResourceDefinitionGroupOwnerSetting | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["group_owner_setting", b"group_owner_setting", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["destination_path", b"destination_path", "group_owner_setting", b"group_owner_setting", "resource_info", b"resource_info", "source_path", b"source_path"]) -> None: ...

global___ResourceDefinitionLocalVolumeResourceData = ResourceDefinitionLocalVolumeResourceData

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    SOURCE_PATH_FIELD_NUMBER: builtins.int
    GROUP_OWNER_SETTING_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    source_path: builtins.str
    @property
    def group_owner_setting(self) -> global___ResourceDefinitionGroupOwnerSetting: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        source_path: builtins.str = ...,
        group_owner_setting: global___ResourceDefinitionGroupOwnerSetting | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["group_owner_setting", b"group_owner_setting", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["group_owner_setting", b"group_owner_setting", "resource_info", b"resource_info", "source_path", b"source_path"]) -> None: ...

global___ResourceDefinitionLocalDeviceResourceData = ResourceDefinitionLocalDeviceResourceData

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    OWNER_SETTING_FIELD_NUMBER: builtins.int
    DESTINATION_PATH_FIELD_NUMBER: builtins.int
    S3_URI_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def owner_setting(self) -> global___ResourceDefinitionResourceDownloadOwnerSetting: ...
    destination_path: builtins.str
    s3_uri: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        owner_setting: global___ResourceDefinitionResourceDownloadOwnerSetting | None = ...,
        destination_path: builtins.str = ...,
        s3_uri: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["owner_setting", b"owner_setting", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["destination_path", b"destination_path", "owner_setting", b"owner_setting", "resource_info", b"resource_info", "s3_uri", b"s3_uri"]) -> None: ...

global___ResourceDefinitionS3MachineLearningModelResourceData = ResourceDefinitionS3MachineLearningModelResourceData

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    SECRETS_MANAGER_SECRET_RESOURCE_DATA_FIELD_NUMBER: builtins.int
    SAGE_MAKER_MACHINE_LEARNING_MODEL_RESOURCE_DATA_FIELD_NUMBER: builtins.int
    LOCAL_VOLUME_RESOURCE_DATA_FIELD_NUMBER: builtins.int
    LOCAL_DEVICE_RESOURCE_DATA_FIELD_NUMBER: builtins.int
    S3_MACHINE_LEARNING_MODEL_RESOURCE_DATA_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def secrets_manager_secret_resource_data(self) -> global___ResourceDefinitionSecretsManagerSecretResourceData: ...
    @property
    def sage_maker_machine_learning_model_resource_data(self) -> global___ResourceDefinitionSageMakerMachineLearningModelResourceData: ...
    @property
    def local_volume_resource_data(self) -> global___ResourceDefinitionLocalVolumeResourceData: ...
    @property
    def local_device_resource_data(self) -> global___ResourceDefinitionLocalDeviceResourceData: ...
    @property
    def s3_machine_learning_model_resource_data(self) -> global___ResourceDefinitionS3MachineLearningModelResourceData: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        secrets_manager_secret_resource_data: global___ResourceDefinitionSecretsManagerSecretResourceData | None = ...,
        sage_maker_machine_learning_model_resource_data: global___ResourceDefinitionSageMakerMachineLearningModelResourceData | None = ...,
        local_volume_resource_data: global___ResourceDefinitionLocalVolumeResourceData | None = ...,
        local_device_resource_data: global___ResourceDefinitionLocalDeviceResourceData | None = ...,
        s3_machine_learning_model_resource_data: global___ResourceDefinitionS3MachineLearningModelResourceData | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["local_device_resource_data", b"local_device_resource_data", "local_volume_resource_data", b"local_volume_resource_data", "resource_info", b"resource_info", "s3_machine_learning_model_resource_data", b"s3_machine_learning_model_resource_data", "sage_maker_machine_learning_model_resource_data", b"sage_maker_machine_learning_model_resource_data", "secrets_manager_secret_resource_data", b"secrets_manager_secret_resource_data"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["local_device_resource_data", b"local_device_resource_data", "local_volume_resource_data", b"local_volume_resource_data", "resource_info", b"resource_info", "s3_machine_learning_model_resource_data", b"s3_machine_learning_model_resource_data", "sage_maker_machine_learning_model_resource_data", b"sage_maker_machine_learning_model_resource_data", "secrets_manager_secret_resource_data", b"secrets_manager_secret_resource_data"]) -> None: ...

global___ResourceDefinitionResourceDataContainer = ResourceDefinitionResourceDataContainer

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

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

global___ResourceDefinitionResourceInstance = ResourceDefinitionResourceInstance

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    RESOURCES_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def resources(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ResourceDefinitionResourceInstance]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        resources: collections.abc.Iterable[global___ResourceDefinitionResourceInstance] | 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["resource_info", b"resource_info", "resources", b"resources"]) -> None: ...

global___ResourceDefinitionResourceDefinitionVersion = ResourceDefinitionResourceDefinitionVersion

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

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

        KEY_FIELD_NUMBER: builtins.int
        VALUE_FIELD_NUMBER: builtins.int
        key: builtins.str
        value: builtins.str
        def __init__(
            self,
            *,
            key: builtins.str = ...,
            value: builtins.str = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "value", b"value"]) -> None: ...

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    INITIAL_VERSION_FIELD_NUMBER: builtins.int
    TAGS_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def initial_version(self) -> global___ResourceDefinitionResourceDefinitionVersion: ...
    @property
    def tags(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    name: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        initial_version: global___ResourceDefinitionResourceDefinitionVersion | None = ...,
        tags: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        name: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["initial_version", b"initial_version", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["initial_version", b"initial_version", "name", b"name", "resource_info", b"resource_info", "tags", b"tags"]) -> None: ...

global___ResourceDefinition = ResourceDefinition

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    ARN_FIELD_NUMBER: builtins.int
    ADDITIONAL_STAGING_LABELS_TO_DOWNLOAD_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    arn: builtins.str
    @property
    def additional_staging_labels_to_download(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        arn: builtins.str = ...,
        additional_staging_labels_to_download: collections.abc.Iterable[builtins.str] | 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["additional_staging_labels_to_download", b"additional_staging_labels_to_download", "arn", b"arn", "resource_info", b"resource_info"]) -> None: ...

global___ResourceDefinitionVersionSecretsManagerSecretResourceData = ResourceDefinitionVersionSecretsManagerSecretResourceData

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    GROUP_OWNER_FIELD_NUMBER: builtins.int
    GROUP_PERMISSION_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    group_owner: builtins.str
    group_permission: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        group_owner: builtins.str = ...,
        group_permission: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["group_owner", b"group_owner", "group_permission", b"group_permission", "resource_info", b"resource_info"]) -> None: ...

global___ResourceDefinitionVersionResourceDownloadOwnerSetting = ResourceDefinitionVersionResourceDownloadOwnerSetting

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    OWNER_SETTING_FIELD_NUMBER: builtins.int
    DESTINATION_PATH_FIELD_NUMBER: builtins.int
    SAGE_MAKER_JOB_ARN_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def owner_setting(self) -> global___ResourceDefinitionVersionResourceDownloadOwnerSetting: ...
    destination_path: builtins.str
    sage_maker_job_arn: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        owner_setting: global___ResourceDefinitionVersionResourceDownloadOwnerSetting | None = ...,
        destination_path: builtins.str = ...,
        sage_maker_job_arn: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["owner_setting", b"owner_setting", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["destination_path", b"destination_path", "owner_setting", b"owner_setting", "resource_info", b"resource_info", "sage_maker_job_arn", b"sage_maker_job_arn"]) -> None: ...

global___ResourceDefinitionVersionSageMakerMachineLearningModelResourceData = ResourceDefinitionVersionSageMakerMachineLearningModelResourceData

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    AUTO_ADD_GROUP_OWNER_FIELD_NUMBER: builtins.int
    GROUP_OWNER_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    auto_add_group_owner: builtins.bool
    group_owner: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        auto_add_group_owner: builtins.bool = ...,
        group_owner: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["auto_add_group_owner", b"auto_add_group_owner", "group_owner", b"group_owner", "resource_info", b"resource_info"]) -> None: ...

global___ResourceDefinitionVersionGroupOwnerSetting = ResourceDefinitionVersionGroupOwnerSetting

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    SOURCE_PATH_FIELD_NUMBER: builtins.int
    DESTINATION_PATH_FIELD_NUMBER: builtins.int
    GROUP_OWNER_SETTING_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    source_path: builtins.str
    destination_path: builtins.str
    @property
    def group_owner_setting(self) -> global___ResourceDefinitionVersionGroupOwnerSetting: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        source_path: builtins.str = ...,
        destination_path: builtins.str = ...,
        group_owner_setting: global___ResourceDefinitionVersionGroupOwnerSetting | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["group_owner_setting", b"group_owner_setting", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["destination_path", b"destination_path", "group_owner_setting", b"group_owner_setting", "resource_info", b"resource_info", "source_path", b"source_path"]) -> None: ...

global___ResourceDefinitionVersionLocalVolumeResourceData = ResourceDefinitionVersionLocalVolumeResourceData

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    SOURCE_PATH_FIELD_NUMBER: builtins.int
    GROUP_OWNER_SETTING_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    source_path: builtins.str
    @property
    def group_owner_setting(self) -> global___ResourceDefinitionVersionGroupOwnerSetting: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        source_path: builtins.str = ...,
        group_owner_setting: global___ResourceDefinitionVersionGroupOwnerSetting | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["group_owner_setting", b"group_owner_setting", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["group_owner_setting", b"group_owner_setting", "resource_info", b"resource_info", "source_path", b"source_path"]) -> None: ...

global___ResourceDefinitionVersionLocalDeviceResourceData = ResourceDefinitionVersionLocalDeviceResourceData

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    OWNER_SETTING_FIELD_NUMBER: builtins.int
    DESTINATION_PATH_FIELD_NUMBER: builtins.int
    S3_URI_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def owner_setting(self) -> global___ResourceDefinitionVersionResourceDownloadOwnerSetting: ...
    destination_path: builtins.str
    s3_uri: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        owner_setting: global___ResourceDefinitionVersionResourceDownloadOwnerSetting | None = ...,
        destination_path: builtins.str = ...,
        s3_uri: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["owner_setting", b"owner_setting", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["destination_path", b"destination_path", "owner_setting", b"owner_setting", "resource_info", b"resource_info", "s3_uri", b"s3_uri"]) -> None: ...

global___ResourceDefinitionVersionS3MachineLearningModelResourceData = ResourceDefinitionVersionS3MachineLearningModelResourceData

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    SECRETS_MANAGER_SECRET_RESOURCE_DATA_FIELD_NUMBER: builtins.int
    SAGE_MAKER_MACHINE_LEARNING_MODEL_RESOURCE_DATA_FIELD_NUMBER: builtins.int
    LOCAL_VOLUME_RESOURCE_DATA_FIELD_NUMBER: builtins.int
    LOCAL_DEVICE_RESOURCE_DATA_FIELD_NUMBER: builtins.int
    S3_MACHINE_LEARNING_MODEL_RESOURCE_DATA_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def secrets_manager_secret_resource_data(self) -> global___ResourceDefinitionVersionSecretsManagerSecretResourceData: ...
    @property
    def sage_maker_machine_learning_model_resource_data(self) -> global___ResourceDefinitionVersionSageMakerMachineLearningModelResourceData: ...
    @property
    def local_volume_resource_data(self) -> global___ResourceDefinitionVersionLocalVolumeResourceData: ...
    @property
    def local_device_resource_data(self) -> global___ResourceDefinitionVersionLocalDeviceResourceData: ...
    @property
    def s3_machine_learning_model_resource_data(self) -> global___ResourceDefinitionVersionS3MachineLearningModelResourceData: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        secrets_manager_secret_resource_data: global___ResourceDefinitionVersionSecretsManagerSecretResourceData | None = ...,
        sage_maker_machine_learning_model_resource_data: global___ResourceDefinitionVersionSageMakerMachineLearningModelResourceData | None = ...,
        local_volume_resource_data: global___ResourceDefinitionVersionLocalVolumeResourceData | None = ...,
        local_device_resource_data: global___ResourceDefinitionVersionLocalDeviceResourceData | None = ...,
        s3_machine_learning_model_resource_data: global___ResourceDefinitionVersionS3MachineLearningModelResourceData | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["local_device_resource_data", b"local_device_resource_data", "local_volume_resource_data", b"local_volume_resource_data", "resource_info", b"resource_info", "s3_machine_learning_model_resource_data", b"s3_machine_learning_model_resource_data", "sage_maker_machine_learning_model_resource_data", b"sage_maker_machine_learning_model_resource_data", "secrets_manager_secret_resource_data", b"secrets_manager_secret_resource_data"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["local_device_resource_data", b"local_device_resource_data", "local_volume_resource_data", b"local_volume_resource_data", "resource_info", b"resource_info", "s3_machine_learning_model_resource_data", b"s3_machine_learning_model_resource_data", "sage_maker_machine_learning_model_resource_data", b"sage_maker_machine_learning_model_resource_data", "secrets_manager_secret_resource_data", b"secrets_manager_secret_resource_data"]) -> None: ...

global___ResourceDefinitionVersionResourceDataContainer = ResourceDefinitionVersionResourceDataContainer

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

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

global___ResourceDefinitionVersionResourceInstance = ResourceDefinitionVersionResourceInstance

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    RESOURCES_FIELD_NUMBER: builtins.int
    RESOURCE_DEFINITION_ID_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def resources(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ResourceDefinitionVersionResourceInstance]: ...
    resource_definition_id: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        resources: collections.abc.Iterable[global___ResourceDefinitionVersionResourceInstance] | None = ...,
        resource_definition_id: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["resource_definition_id", b"resource_definition_id", "resource_info", b"resource_info", "resources", b"resources"]) -> None: ...

global___ResourceDefinitionVersion = ResourceDefinitionVersion

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    TARGET_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    SOURCE_FIELD_NUMBER: builtins.int
    SUBJECT_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    target: builtins.str
    id: builtins.str
    source: builtins.str
    subject: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        target: builtins.str = ...,
        id: builtins.str = ...,
        source: builtins.str = ...,
        subject: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["id", b"id", "resource_info", b"resource_info", "source", b"source", "subject", b"subject", "target", b"target"]) -> None: ...

global___SubscriptionDefinitionSubscription = SubscriptionDefinitionSubscription

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    SUBSCRIPTIONS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def subscriptions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___SubscriptionDefinitionSubscription]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        subscriptions: collections.abc.Iterable[global___SubscriptionDefinitionSubscription] | 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["resource_info", b"resource_info", "subscriptions", b"subscriptions"]) -> None: ...

global___SubscriptionDefinitionSubscriptionDefinitionVersion = SubscriptionDefinitionSubscriptionDefinitionVersion

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

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

        KEY_FIELD_NUMBER: builtins.int
        VALUE_FIELD_NUMBER: builtins.int
        key: builtins.str
        value: builtins.str
        def __init__(
            self,
            *,
            key: builtins.str = ...,
            value: builtins.str = ...,
        ) -> None: ...
        def ClearField(self, field_name: typing_extensions.Literal["key", b"key", "value", b"value"]) -> None: ...

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    INITIAL_VERSION_FIELD_NUMBER: builtins.int
    TAGS_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def initial_version(self) -> global___SubscriptionDefinitionSubscriptionDefinitionVersion: ...
    @property
    def tags(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    name: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        initial_version: global___SubscriptionDefinitionSubscriptionDefinitionVersion | None = ...,
        tags: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        name: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["initial_version", b"initial_version", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["initial_version", b"initial_version", "name", b"name", "resource_info", b"resource_info", "tags", b"tags"]) -> None: ...

global___SubscriptionDefinition = SubscriptionDefinition

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    TARGET_FIELD_NUMBER: builtins.int
    ID_FIELD_NUMBER: builtins.int
    SOURCE_FIELD_NUMBER: builtins.int
    SUBJECT_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    target: builtins.str
    id: builtins.str
    source: builtins.str
    subject: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        target: builtins.str = ...,
        id: builtins.str = ...,
        source: builtins.str = ...,
        subject: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["id", b"id", "resource_info", b"resource_info", "source", b"source", "subject", b"subject", "target", b"target"]) -> None: ...

global___SubscriptionDefinitionVersionSubscription = SubscriptionDefinitionVersionSubscription

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    SUBSCRIPTION_DEFINITION_ID_FIELD_NUMBER: builtins.int
    SUBSCRIPTIONS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    subscription_definition_id: builtins.str
    @property
    def subscriptions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___SubscriptionDefinitionVersionSubscription]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        subscription_definition_id: builtins.str = ...,
        subscriptions: collections.abc.Iterable[global___SubscriptionDefinitionVersionSubscription] | 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["resource_info", b"resource_info", "subscription_definition_id", b"subscription_definition_id", "subscriptions", b"subscriptions"]) -> None: ...

global___SubscriptionDefinitionVersion = SubscriptionDefinitionVersion
