"""
@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.internal.enum_type_wrapper
import google.protobuf.message
import sys
import typing

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

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

class _S3Provider:
    ValueType = typing.NewType("ValueType", builtins.int)
    V: typing_extensions.TypeAlias = ValueType

class _S3ProviderEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[_S3Provider.ValueType], builtins.type):
    DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
    AWS: _S3Provider.ValueType  # 0
    GCS: _S3Provider.ValueType  # 1

class S3Provider(_S3Provider, metaclass=_S3ProviderEnumTypeWrapper): ...

AWS: S3Provider.ValueType  # 0
GCS: S3Provider.ValueType  # 1
global___S3Provider = S3Provider

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

    ENDPOINT_FIELD_NUMBER: builtins.int
    REGION_FIELD_NUMBER: builtins.int
    CREDENTIALSDEPENDENCY_FIELD_NUMBER: builtins.int
    OBJECTS_FIELD_NUMBER: builtins.int
    S3PROVIDER_FIELD_NUMBER: builtins.int
    endpoint: builtins.str
    region: builtins.str
    """S3 region can be left empty for a GCS sink worker"""
    credentialsDependency: builtins.str
    @property
    def objects(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___S3Object]: ...
    s3Provider: global___S3Provider.ValueType
    def __init__(
        self,
        *,
        endpoint: builtins.str = ...,
        region: builtins.str = ...,
        credentialsDependency: builtins.str = ...,
        objects: collections.abc.Iterable[global___S3Object] | None = ...,
        s3Provider: global___S3Provider.ValueType = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["credentialsDependency", b"credentialsDependency", "endpoint", b"endpoint", "objects", b"objects", "region", b"region", "s3Provider", b"s3Provider"]) -> None: ...

global___S3SinkWorkerConfiguration = S3SinkWorkerConfiguration

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

    DEPENDENCY_FIELD_NUMBER: builtins.int
    ZIP_FIELD_NUMBER: builtins.int
    RAW_FIELD_NUMBER: builtins.int
    dependency: builtins.str
    @property
    def zip(self) -> global___ZipObject: ...
    @property
    def raw(self) -> global___RawObject: ...
    def __init__(
        self,
        *,
        dependency: builtins.str = ...,
        zip: global___ZipObject | None = ...,
        raw: global___RawObject | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["format", b"format", "raw", b"raw", "zip", b"zip"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["dependency", b"dependency", "format", b"format", "raw", b"raw", "zip", b"zip"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions.Literal["format", b"format"]) -> typing_extensions.Literal["zip", "raw"] | None: ...

global___S3Object = S3Object

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

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

global___RawObject = RawObject

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

    SINGLEFILE_FIELD_NUMBER: builtins.int
    FULLCONTENT_FIELD_NUMBER: builtins.int
    @property
    def singleFile(self) -> global___SingleFile: ...
    @property
    def fullContent(self) -> global___FullContent: ...
    def __init__(
        self,
        *,
        singleFile: global___SingleFile | None = ...,
        fullContent: global___FullContent | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["fullContent", b"fullContent", "kind", b"kind", "singleFile", b"singleFile"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["fullContent", b"fullContent", "kind", b"kind", "singleFile", b"singleFile"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions.Literal["kind", b"kind"]) -> typing_extensions.Literal["singleFile", "fullContent"] | None: ...

global___ZipObject = ZipObject

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

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

global___SingleFile = SingleFile

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

    def __init__(
        self,
    ) -> None: ...

global___FullContent = FullContent

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

    ACCESSKEY_FIELD_NUMBER: builtins.int
    SECRETKEY_FIELD_NUMBER: builtins.int
    accessKey: builtins.str
    secretKey: builtins.str
    def __init__(
        self,
        *,
        accessKey: builtins.str = ...,
        secretKey: builtins.str = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["accessKey", b"accessKey", "secretKey", b"secretKey"]) -> None: ...

global___S3Credentials = S3Credentials
