"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""
import builtins
import google.protobuf.descriptor
import google.protobuf.internal.containers
import google.protobuf.message
import typing
import typing_extensions

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

class AddFileRequest(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor
    FILE_NAME_FIELD_NUMBER: builtins.int
    HASH_FIELD_NUMBER: builtins.int
    URL_FIELD_NUMBER: builtins.int
    FULL_PATH_FIELD_NUMBER: builtins.int
    file_name: typing.Text
    hash: typing.Text
    """hash of the file"""

    url: typing.Text
    full_path: typing.Text
    """full_path is the full path of the file on the local filesystem"""

    def __init__(self,
        *,
        file_name: typing.Text = ...,
        hash: typing.Text = ...,
        url: typing.Optional[typing.Text] = ...,
        full_path: typing.Text = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["_url",b"_url","url",b"url"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["_url",b"_url","file_name",b"file_name","full_path",b"full_path","hash",b"hash","url",b"url"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions.Literal["_url",b"_url"]) -> typing.Optional[typing_extensions.Literal["url"]]: ...
global___AddFileRequest = AddFileRequest

class AddChildFile(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor
    FILE_NAME_FIELD_NUMBER: builtins.int
    HASH_FIELD_NUMBER: builtins.int
    URL_FIELD_NUMBER: builtins.int
    FULL_PATH_FIELD_NUMBER: builtins.int
    PARENT_ID_FIELD_NUMBER: builtins.int
    file_name: typing.Text
    hash: typing.Text
    """hash of the file"""

    url: typing.Text
    full_path: typing.Text
    """full_path is the full path of the file on the local filesystem"""

    parent_id: builtins.int
    def __init__(self,
        *,
        file_name: typing.Text = ...,
        hash: typing.Text = ...,
        url: typing.Optional[typing.Text] = ...,
        full_path: typing.Text = ...,
        parent_id: builtins.int = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["_url",b"_url","url",b"url"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["_url",b"_url","file_name",b"file_name","full_path",b"full_path","hash",b"hash","parent_id",b"parent_id","url",b"url"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions.Literal["_url",b"_url"]) -> typing.Optional[typing_extensions.Literal["url"]]: ...
global___AddChildFile = AddChildFile

class CheckText(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor
    IS_GOOGLE_ON_FIELD_NUMBER: builtins.int
    DOCUMENT_FIELD_NUMBER: builtins.int
    USER_ID_FIELD_NUMBER: builtins.int
    is_google_on: builtins.bool
    document: typing.Text
    user_id: builtins.int
    def __init__(self,
        *,
        is_google_on: builtins.bool = ...,
        document: typing.Text = ...,
        user_id: builtins.int = ...,
        ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["document",b"document","is_google_on",b"is_google_on","user_id",b"user_id"]) -> None: ...
global___CheckText = CheckText

class CheckTextResult(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor
    class CheckResult(google.protobuf.message.Message):
        DESCRIPTOR: google.protobuf.descriptor.Descriptor
        class PlagiarismExtendedData(google.protobuf.message.Message):
            DESCRIPTOR: google.protobuf.descriptor.Descriptor
            class StartEndPair(google.protobuf.message.Message):
                DESCRIPTOR: google.protobuf.descriptor.Descriptor
                START_FIELD_NUMBER: builtins.int
                END_FIELD_NUMBER: builtins.int
                start: builtins.int
                end: builtins.int
                def __init__(self,
                    *,
                    start: builtins.int = ...,
                    end: builtins.int = ...,
                    ) -> None: ...
                def ClearField(self, field_name: typing_extensions.Literal["end",b"end","start",b"start"]) -> None: ...

            FILE_NAMES_FIELD_NUMBER: builtins.int
            TEXT_FIELD_NUMBER: builtins.int
            URLS_FIELD_NUMBER: builtins.int
            SEQUENCES_FIELD_NUMBER: builtins.int
            @property
            def file_names(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[typing.Text]: ...
            text: typing.Text
            @property
            def urls(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[typing.Text]: ...
            @property
            def sequences(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___CheckTextResult.CheckResult.PlagiarismExtendedData.StartEndPair]: ...
            def __init__(self,
                *,
                file_names: typing.Optional[typing.Iterable[typing.Text]] = ...,
                text: typing.Text = ...,
                urls: typing.Optional[typing.Iterable[typing.Text]] = ...,
                sequences: typing.Optional[typing.Iterable[global___CheckTextResult.CheckResult.PlagiarismExtendedData.StartEndPair]] = ...,
                ) -> None: ...
            def ClearField(self, field_name: typing_extensions.Literal["file_names",b"file_names","sequences",b"sequences","text",b"text","urls",b"urls"]) -> None: ...

        FILE_HASH_FIELD_NUMBER: builtins.int
        FILE_NAME_FIELD_NUMBER: builtins.int
        PLAGIARISM_PERCENTAGE_FIELD_NUMBER: builtins.int
        EXTENDED_DATA_FIELD_NUMBER: builtins.int
        file_hash: typing.Text
        file_name: typing.Text
        plagiarism_percentage: builtins.float
        @property
        def extended_data(self) -> global___CheckTextResult.CheckResult.PlagiarismExtendedData: ...
        def __init__(self,
            *,
            file_hash: typing.Text = ...,
            file_name: typing.Text = ...,
            plagiarism_percentage: builtins.float = ...,
            extended_data: typing.Optional[global___CheckTextResult.CheckResult.PlagiarismExtendedData] = ...,
            ) -> None: ...
        def HasField(self, field_name: typing_extensions.Literal["extended_data",b"extended_data"]) -> builtins.bool: ...
        def ClearField(self, field_name: typing_extensions.Literal["extended_data",b"extended_data","file_hash",b"file_hash","file_name",b"file_name","plagiarism_percentage",b"plagiarism_percentage"]) -> None: ...

    USER_ID_FIELD_NUMBER: builtins.int
    CHECK_RESULT_ID_FIELD_NUMBER: builtins.int
    CHECK_RESULTS_FIELD_NUMBER: builtins.int
    user_id: builtins.int
    check_result_id: builtins.int
    @property
    def check_results(self) -> global___CheckTextResult.CheckResult: ...
    def __init__(self,
        *,
        user_id: builtins.int = ...,
        check_result_id: builtins.int = ...,
        check_results: typing.Optional[global___CheckTextResult.CheckResult] = ...,
        ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["_check_results",b"_check_results","check_results",b"check_results"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["_check_results",b"_check_results","check_result_id",b"check_result_id","check_results",b"check_results","user_id",b"user_id"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions.Literal["_check_results",b"_check_results"]) -> typing.Optional[typing_extensions.Literal["check_results"]]: ...
global___CheckTextResult = CheckTextResult
