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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    BUCKET_FIELD_NUMBER: builtins.int
    ROLE_ARN_FIELD_NUMBER: builtins.int
    KEY_PREFIX_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    bucket: builtins.str
    role_arn: builtins.str
    key_prefix: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        bucket: builtins.str = ...,
        role_arn: builtins.str = ...,
        key_prefix: 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["bucket", b"bucket", "key_prefix", b"key_prefix", "resource_info", b"resource_info", "role_arn", b"role_arn"]) -> None: ...

global___ChannelCustomerManagedS3 = ChannelCustomerManagedS3

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

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

global___ChannelServiceManagedS3 = ChannelServiceManagedS3

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    CUSTOMER_MANAGED_S3_FIELD_NUMBER: builtins.int
    SERVICE_MANAGED_S3_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def customer_managed_s3(self) -> global___ChannelCustomerManagedS3: ...
    @property
    def service_managed_s3(self) -> global___ChannelServiceManagedS3: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        customer_managed_s3: global___ChannelCustomerManagedS3 | None = ...,
        service_managed_s3: global___ChannelServiceManagedS3 | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["customer_managed_s3", b"customer_managed_s3", "resource_info", b"resource_info", "service_managed_s3", b"service_managed_s3"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["customer_managed_s3", b"customer_managed_s3", "resource_info", b"resource_info", "service_managed_s3", b"service_managed_s3"]) -> None: ...

global___ChannelChannelStorage = ChannelChannelStorage

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

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

global___ChannelRetentionPeriod = ChannelRetentionPeriod

@typing_extensions.final
class Channel(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
    CHANNEL_NAME_FIELD_NUMBER: builtins.int
    CHANNEL_STORAGE_FIELD_NUMBER: builtins.int
    RETENTION_PERIOD_FIELD_NUMBER: builtins.int
    TAGS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    channel_name: builtins.str
    @property
    def channel_storage(self) -> global___ChannelChannelStorage: ...
    @property
    def retention_period(self) -> global___ChannelRetentionPeriod: ...
    @property
    def tags(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        channel_name: builtins.str = ...,
        channel_storage: global___ChannelChannelStorage | None = ...,
        retention_period: global___ChannelRetentionPeriod | None = ...,
        tags: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["channel_storage", b"channel_storage", "resource_info", b"resource_info", "retention_period", b"retention_period"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["channel_name", b"channel_name", "channel_storage", b"channel_storage", "resource_info", b"resource_info", "retention_period", b"retention_period", "tags", b"tags"]) -> None: ...

global___Channel = Channel

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

    CHANNEL_FIELD_NUMBER: builtins.int
    DATASET_FIELD_NUMBER: builtins.int
    DATASTORE_FIELD_NUMBER: builtins.int
    PIPELINE_FIELD_NUMBER: builtins.int
    @property
    def channel(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Channel]: ...
    @property
    def dataset(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Dataset]: ...
    @property
    def datastore(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Datastore]: ...
    @property
    def pipeline(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Pipeline]: ...
    def __init__(
        self,
        *,
        channel: collections.abc.Iterable[global___Channel] | None = ...,
        dataset: collections.abc.Iterable[global___Dataset] | None = ...,
        datastore: collections.abc.Iterable[global___Datastore] | None = ...,
        pipeline: collections.abc.Iterable[global___Pipeline] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["channel", b"channel", "dataset", b"dataset", "datastore", b"datastore", "pipeline", b"pipeline"]) -> None: ...

global___IoTAnalytics = IoTAnalytics

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    DATASET_NAME_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    dataset_name: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        dataset_name: 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["dataset_name", b"dataset_name", "resource_info", b"resource_info"]) -> None: ...

global___DatasetDatasetContentVersionValue = DatasetDatasetContentVersionValue

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    FILE_NAME_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    file_name: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        file_name: 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["file_name", b"file_name", "resource_info", b"resource_info"]) -> None: ...

global___DatasetOutputFileUriValue = DatasetOutputFileUriValue

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    DATASET_CONTENT_VERSION_VALUE_FIELD_NUMBER: builtins.int
    DOUBLE_VALUE_FIELD_NUMBER: builtins.int
    OUTPUT_FILE_URI_VALUE_FIELD_NUMBER: builtins.int
    VARIABLE_NAME_FIELD_NUMBER: builtins.int
    STRING_VALUE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def dataset_content_version_value(self) -> global___DatasetDatasetContentVersionValue: ...
    double_value: builtins.float
    @property
    def output_file_uri_value(self) -> global___DatasetOutputFileUriValue: ...
    variable_name: builtins.str
    string_value: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        dataset_content_version_value: global___DatasetDatasetContentVersionValue | None = ...,
        double_value: builtins.float = ...,
        output_file_uri_value: global___DatasetOutputFileUriValue | None = ...,
        variable_name: builtins.str = ...,
        string_value: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["dataset_content_version_value", b"dataset_content_version_value", "output_file_uri_value", b"output_file_uri_value", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["dataset_content_version_value", b"dataset_content_version_value", "double_value", b"double_value", "output_file_uri_value", b"output_file_uri_value", "resource_info", b"resource_info", "string_value", b"string_value", "variable_name", b"variable_name"]) -> None: ...

global___DatasetVariable = DatasetVariable

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    VOLUME_SIZE_IN_GB_FIELD_NUMBER: builtins.int
    COMPUTE_TYPE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    volume_size_in_gb: builtins.int
    compute_type: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        volume_size_in_gb: builtins.int = ...,
        compute_type: 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["compute_type", b"compute_type", "resource_info", b"resource_info", "volume_size_in_gb", b"volume_size_in_gb"]) -> None: ...

global___DatasetResourceConfiguration = DatasetResourceConfiguration

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    VARIABLES_FIELD_NUMBER: builtins.int
    EXECUTION_ROLE_ARN_FIELD_NUMBER: builtins.int
    IMAGE_FIELD_NUMBER: builtins.int
    RESOURCE_CONFIGURATION_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def variables(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___DatasetVariable]: ...
    execution_role_arn: builtins.str
    image: builtins.str
    @property
    def resource_configuration(self) -> global___DatasetResourceConfiguration: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        variables: collections.abc.Iterable[global___DatasetVariable] | None = ...,
        execution_role_arn: builtins.str = ...,
        image: builtins.str = ...,
        resource_configuration: global___DatasetResourceConfiguration | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_configuration", b"resource_configuration", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["execution_role_arn", b"execution_role_arn", "image", b"image", "resource_configuration", b"resource_configuration", "resource_info", b"resource_info", "variables", b"variables"]) -> None: ...

global___DatasetContainerAction = DatasetContainerAction

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    TIME_EXPRESSION_FIELD_NUMBER: builtins.int
    OFFSET_SECONDS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    time_expression: builtins.str
    offset_seconds: builtins.int
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        time_expression: builtins.str = ...,
        offset_seconds: 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["offset_seconds", b"offset_seconds", "resource_info", b"resource_info", "time_expression", b"time_expression"]) -> None: ...

global___DatasetDeltaTime = DatasetDeltaTime

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

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

global___DatasetFilter = DatasetFilter

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

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

global___DatasetQueryAction = DatasetQueryAction

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    ACTION_NAME_FIELD_NUMBER: builtins.int
    CONTAINER_ACTION_FIELD_NUMBER: builtins.int
    QUERY_ACTION_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    action_name: builtins.str
    @property
    def container_action(self) -> global___DatasetContainerAction: ...
    @property
    def query_action(self) -> global___DatasetQueryAction: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        action_name: builtins.str = ...,
        container_action: global___DatasetContainerAction | None = ...,
        query_action: global___DatasetQueryAction | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["container_action", b"container_action", "query_action", b"query_action", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["action_name", b"action_name", "container_action", b"container_action", "query_action", b"query_action", "resource_info", b"resource_info"]) -> None: ...

global___DatasetAction = DatasetAction

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    INPUT_NAME_FIELD_NUMBER: builtins.int
    ROLE_ARN_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    input_name: builtins.str
    role_arn: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        input_name: builtins.str = ...,
        role_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["input_name", b"input_name", "resource_info", b"resource_info", "role_arn", b"role_arn"]) -> None: ...

global___DatasetIotEventsDestinationConfiguration = DatasetIotEventsDestinationConfiguration

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    TABLE_NAME_FIELD_NUMBER: builtins.int
    DATABASE_NAME_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    table_name: builtins.str
    database_name: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        table_name: builtins.str = ...,
        database_name: 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["database_name", b"database_name", "resource_info", b"resource_info", "table_name", b"table_name"]) -> None: ...

global___DatasetGlueConfiguration = DatasetGlueConfiguration

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    GLUE_CONFIGURATION_FIELD_NUMBER: builtins.int
    BUCKET_FIELD_NUMBER: builtins.int
    KEY_FIELD_NUMBER: builtins.int
    ROLE_ARN_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def glue_configuration(self) -> global___DatasetGlueConfiguration: ...
    bucket: builtins.str
    key: builtins.str
    role_arn: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        glue_configuration: global___DatasetGlueConfiguration | None = ...,
        bucket: builtins.str = ...,
        key: builtins.str = ...,
        role_arn: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["glue_configuration", b"glue_configuration", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["bucket", b"bucket", "glue_configuration", b"glue_configuration", "key", b"key", "resource_info", b"resource_info", "role_arn", b"role_arn"]) -> None: ...

global___DatasetS3DestinationConfiguration = DatasetS3DestinationConfiguration

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    IOT_EVENTS_DESTINATION_CONFIGURATION_FIELD_NUMBER: builtins.int
    S3_DESTINATION_CONFIGURATION_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def iot_events_destination_configuration(self) -> global___DatasetIotEventsDestinationConfiguration: ...
    @property
    def s3_destination_configuration(self) -> global___DatasetS3DestinationConfiguration: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        iot_events_destination_configuration: global___DatasetIotEventsDestinationConfiguration | None = ...,
        s3_destination_configuration: global___DatasetS3DestinationConfiguration | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["iot_events_destination_configuration", b"iot_events_destination_configuration", "resource_info", b"resource_info", "s3_destination_configuration", b"s3_destination_configuration"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["iot_events_destination_configuration", b"iot_events_destination_configuration", "resource_info", b"resource_info", "s3_destination_configuration", b"s3_destination_configuration"]) -> None: ...

global___DatasetDatasetContentDeliveryRuleDestination = DatasetDatasetContentDeliveryRuleDestination

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    DESTINATION_FIELD_NUMBER: builtins.int
    ENTRY_NAME_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def destination(self) -> global___DatasetDatasetContentDeliveryRuleDestination: ...
    entry_name: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        destination: global___DatasetDatasetContentDeliveryRuleDestination | None = ...,
        entry_name: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["destination", b"destination", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["destination", b"destination", "entry_name", b"entry_name", "resource_info", b"resource_info"]) -> None: ...

global___DatasetDatasetContentDeliveryRule = DatasetDatasetContentDeliveryRule

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    SCHEDULE_EXPRESSION_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    schedule_expression: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        schedule_expression: 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_info", b"resource_info", "schedule_expression", b"schedule_expression"]) -> None: ...

global___DatasetSchedule = DatasetSchedule

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    DATASET_NAME_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    dataset_name: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        dataset_name: 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["dataset_name", b"dataset_name", "resource_info", b"resource_info"]) -> None: ...

global___DatasetTriggeringDataset = DatasetTriggeringDataset

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    SCHEDULE_FIELD_NUMBER: builtins.int
    TRIGGERING_DATASET_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def schedule(self) -> global___DatasetSchedule: ...
    @property
    def triggering_dataset(self) -> global___DatasetTriggeringDataset: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        schedule: global___DatasetSchedule | None = ...,
        triggering_dataset: global___DatasetTriggeringDataset | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "schedule", b"schedule", "triggering_dataset", b"triggering_dataset"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "schedule", b"schedule", "triggering_dataset", b"triggering_dataset"]) -> None: ...

global___DatasetTrigger = DatasetTrigger

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

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

global___DatasetVersioningConfiguration = DatasetVersioningConfiguration

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

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

global___DatasetRetentionPeriod = DatasetRetentionPeriod

@typing_extensions.final
class Dataset(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
    ACTIONS_FIELD_NUMBER: builtins.int
    DATASET_NAME_FIELD_NUMBER: builtins.int
    CONTENT_DELIVERY_RULES_FIELD_NUMBER: builtins.int
    TRIGGERS_FIELD_NUMBER: builtins.int
    VERSIONING_CONFIGURATION_FIELD_NUMBER: builtins.int
    RETENTION_PERIOD_FIELD_NUMBER: builtins.int
    TAGS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def actions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___DatasetAction]: ...
    dataset_name: builtins.str
    @property
    def content_delivery_rules(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___DatasetDatasetContentDeliveryRule]: ...
    @property
    def triggers(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___DatasetTrigger]: ...
    @property
    def versioning_configuration(self) -> global___DatasetVersioningConfiguration: ...
    @property
    def retention_period(self) -> global___DatasetRetentionPeriod: ...
    @property
    def tags(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        actions: collections.abc.Iterable[global___DatasetAction] | None = ...,
        dataset_name: builtins.str = ...,
        content_delivery_rules: collections.abc.Iterable[global___DatasetDatasetContentDeliveryRule] | None = ...,
        triggers: collections.abc.Iterable[global___DatasetTrigger] | None = ...,
        versioning_configuration: global___DatasetVersioningConfiguration | None = ...,
        retention_period: global___DatasetRetentionPeriod | None = ...,
        tags: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "retention_period", b"retention_period", "versioning_configuration", b"versioning_configuration"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["actions", b"actions", "content_delivery_rules", b"content_delivery_rules", "dataset_name", b"dataset_name", "resource_info", b"resource_info", "retention_period", b"retention_period", "tags", b"tags", "triggers", b"triggers", "versioning_configuration", b"versioning_configuration"]) -> None: ...

global___Dataset = Dataset

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    BUCKET_FIELD_NUMBER: builtins.int
    ROLE_ARN_FIELD_NUMBER: builtins.int
    KEY_PREFIX_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    bucket: builtins.str
    role_arn: builtins.str
    key_prefix: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        bucket: builtins.str = ...,
        role_arn: builtins.str = ...,
        key_prefix: 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["bucket", b"bucket", "key_prefix", b"key_prefix", "resource_info", b"resource_info", "role_arn", b"role_arn"]) -> None: ...

global___DatastoreCustomerManagedS3 = DatastoreCustomerManagedS3

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

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

global___DatastoreServiceManagedS3 = DatastoreServiceManagedS3

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    CUSTOMER_MANAGED_S3_FIELD_NUMBER: builtins.int
    SERVICE_MANAGED_S3_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def customer_managed_s3(self) -> global___DatastoreCustomerManagedS3: ...
    @property
    def service_managed_s3(self) -> global___DatastoreServiceManagedS3: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        customer_managed_s3: global___DatastoreCustomerManagedS3 | None = ...,
        service_managed_s3: global___DatastoreServiceManagedS3 | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["customer_managed_s3", b"customer_managed_s3", "resource_info", b"resource_info", "service_managed_s3", b"service_managed_s3"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["customer_managed_s3", b"customer_managed_s3", "resource_info", b"resource_info", "service_managed_s3", b"service_managed_s3"]) -> None: ...

global___DatastoreDatastoreStorage = DatastoreDatastoreStorage

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

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

global___DatastoreRetentionPeriod = DatastoreRetentionPeriod

@typing_extensions.final
class Datastore(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
    DATASTORE_STORAGE_FIELD_NUMBER: builtins.int
    DATASTORE_NAME_FIELD_NUMBER: builtins.int
    RETENTION_PERIOD_FIELD_NUMBER: builtins.int
    TAGS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def datastore_storage(self) -> global___DatastoreDatastoreStorage: ...
    datastore_name: builtins.str
    @property
    def retention_period(self) -> global___DatastoreRetentionPeriod: ...
    @property
    def tags(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        datastore_storage: global___DatastoreDatastoreStorage | None = ...,
        datastore_name: builtins.str = ...,
        retention_period: global___DatastoreRetentionPeriod | None = ...,
        tags: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["datastore_storage", b"datastore_storage", "resource_info", b"resource_info", "retention_period", b"retention_period"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["datastore_name", b"datastore_name", "datastore_storage", b"datastore_storage", "resource_info", b"resource_info", "retention_period", b"retention_period", "tags", b"tags"]) -> None: ...

global___Datastore = Datastore

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

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

global___PipelineSelectAttributes = PipelineSelectAttributes

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    DATASTORE_NAME_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    datastore_name: builtins.str
    name: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        datastore_name: builtins.str = ...,
        name: 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["datastore_name", b"datastore_name", "name", b"name", "resource_info", b"resource_info"]) -> None: ...

global___PipelineDatastore = PipelineDatastore

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    FILTER_FIELD_NUMBER: builtins.int
    NEXT_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    filter: builtins.str
    next: builtins.str
    name: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        filter: builtins.str = ...,
        next: builtins.str = ...,
        name: 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["filter", b"filter", "name", b"name", "next", b"next", "resource_info", b"resource_info"]) -> None: ...

global___PipelineFilter = PipelineFilter

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

    @typing_extensions.final
    class AttributesEntry(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
    NEXT_FIELD_NUMBER: builtins.int
    ATTRIBUTES_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    next: builtins.str
    @property
    def attributes(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    name: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        next: builtins.str = ...,
        attributes: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        name: 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["attributes", b"attributes", "name", b"name", "next", b"next", "resource_info", b"resource_info"]) -> None: ...

global___PipelineAddAttributes = PipelineAddAttributes

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    CHANNEL_NAME_FIELD_NUMBER: builtins.int
    NEXT_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    channel_name: builtins.str
    next: builtins.str
    name: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        channel_name: builtins.str = ...,
        next: builtins.str = ...,
        name: 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["channel_name", b"channel_name", "name", b"name", "next", b"next", "resource_info", b"resource_info"]) -> None: ...

global___PipelineChannel = PipelineChannel

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    ATTRIBUTE_FIELD_NUMBER: builtins.int
    NEXT_FIELD_NUMBER: builtins.int
    THING_NAME_FIELD_NUMBER: builtins.int
    ROLE_ARN_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    attribute: builtins.str
    next: builtins.str
    thing_name: builtins.str
    role_arn: builtins.str
    name: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        attribute: builtins.str = ...,
        next: builtins.str = ...,
        thing_name: builtins.str = ...,
        role_arn: builtins.str = ...,
        name: 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["attribute", b"attribute", "name", b"name", "next", b"next", "resource_info", b"resource_info", "role_arn", b"role_arn", "thing_name", b"thing_name"]) -> None: ...

global___PipelineDeviceShadowEnrich = PipelineDeviceShadowEnrich

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    ATTRIBUTE_FIELD_NUMBER: builtins.int
    NEXT_FIELD_NUMBER: builtins.int
    MATH_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    attribute: builtins.str
    next: builtins.str
    math: builtins.str
    name: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        attribute: builtins.str = ...,
        next: builtins.str = ...,
        math: builtins.str = ...,
        name: 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["attribute", b"attribute", "math", b"math", "name", b"name", "next", b"next", "resource_info", b"resource_info"]) -> None: ...

global___PipelineMath = PipelineMath

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    BATCH_SIZE_FIELD_NUMBER: builtins.int
    NEXT_FIELD_NUMBER: builtins.int
    LAMBDA_NAME_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    batch_size: builtins.int
    next: builtins.str
    lambda_name: builtins.str
    name: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        batch_size: builtins.int = ...,
        next: builtins.str = ...,
        lambda_name: builtins.str = ...,
        name: 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["batch_size", b"batch_size", "lambda_name", b"lambda_name", "name", b"name", "next", b"next", "resource_info", b"resource_info"]) -> None: ...

global___PipelineLambda = PipelineLambda

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    ATTRIBUTE_FIELD_NUMBER: builtins.int
    NEXT_FIELD_NUMBER: builtins.int
    THING_NAME_FIELD_NUMBER: builtins.int
    ROLE_ARN_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    attribute: builtins.str
    next: builtins.str
    thing_name: builtins.str
    role_arn: builtins.str
    name: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        attribute: builtins.str = ...,
        next: builtins.str = ...,
        thing_name: builtins.str = ...,
        role_arn: builtins.str = ...,
        name: 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["attribute", b"attribute", "name", b"name", "next", b"next", "resource_info", b"resource_info", "role_arn", b"role_arn", "thing_name", b"thing_name"]) -> None: ...

global___PipelineDeviceRegistryEnrich = PipelineDeviceRegistryEnrich

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

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

global___PipelineRemoveAttributes = PipelineRemoveAttributes

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    SELECT_ATTRIBUTES_FIELD_NUMBER: builtins.int
    DATASTORE_FIELD_NUMBER: builtins.int
    FILTER_FIELD_NUMBER: builtins.int
    ADD_ATTRIBUTES_FIELD_NUMBER: builtins.int
    CHANNEL_FIELD_NUMBER: builtins.int
    DEVICE_SHADOW_ENRICH_FIELD_NUMBER: builtins.int
    MATH_FIELD_NUMBER: builtins.int
    LAMBDA_FIELD_NUMBER: builtins.int
    DEVICE_REGISTRY_ENRICH_FIELD_NUMBER: builtins.int
    REMOVE_ATTRIBUTES_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def select_attributes(self) -> global___PipelineSelectAttributes: ...
    @property
    def datastore(self) -> global___PipelineDatastore: ...
    @property
    def filter(self) -> global___PipelineFilter: ...
    @property
    def add_attributes(self) -> global___PipelineAddAttributes: ...
    @property
    def channel(self) -> global___PipelineChannel: ...
    @property
    def device_shadow_enrich(self) -> global___PipelineDeviceShadowEnrich: ...
    @property
    def math(self) -> global___PipelineMath: ...
    @property
    def device_registry_enrich(self) -> global___PipelineDeviceRegistryEnrich: ...
    @property
    def remove_attributes(self) -> global___PipelineRemoveAttributes: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        select_attributes: global___PipelineSelectAttributes | None = ...,
        datastore: global___PipelineDatastore | None = ...,
        filter: global___PipelineFilter | None = ...,
        add_attributes: global___PipelineAddAttributes | None = ...,
        channel: global___PipelineChannel | None = ...,
        device_shadow_enrich: global___PipelineDeviceShadowEnrich | None = ...,
        math: global___PipelineMath | None = ...,
        device_registry_enrich: global___PipelineDeviceRegistryEnrich | None = ...,
        remove_attributes: global___PipelineRemoveAttributes | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["add_attributes", b"add_attributes", "channel", b"channel", "datastore", b"datastore", "device_registry_enrich", b"device_registry_enrich", "device_shadow_enrich", b"device_shadow_enrich", "filter", b"filter", "lambda", b"lambda", "math", b"math", "remove_attributes", b"remove_attributes", "resource_info", b"resource_info", "select_attributes", b"select_attributes"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["add_attributes", b"add_attributes", "channel", b"channel", "datastore", b"datastore", "device_registry_enrich", b"device_registry_enrich", "device_shadow_enrich", b"device_shadow_enrich", "filter", b"filter", "lambda", b"lambda", "math", b"math", "remove_attributes", b"remove_attributes", "resource_info", b"resource_info", "select_attributes", b"select_attributes"]) -> None: ...

global___PipelineActivity = PipelineActivity

@typing_extensions.final
class Pipeline(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
    PIPELINE_NAME_FIELD_NUMBER: builtins.int
    TAGS_FIELD_NUMBER: builtins.int
    PIPELINE_ACTIVITIES_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    pipeline_name: builtins.str
    @property
    def tags(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
    @property
    def pipeline_activities(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___PipelineActivity]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        pipeline_name: builtins.str = ...,
        tags: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
        pipeline_activities: collections.abc.Iterable[global___PipelineActivity] | 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["pipeline_activities", b"pipeline_activities", "pipeline_name", b"pipeline_name", "resource_info", b"resource_info", "tags", b"tags"]) -> None: ...

global___Pipeline = Pipeline
