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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    OBJECT_VERSION_FIELD_NUMBER: builtins.int
    BUCKET_FIELD_NUMBER: builtins.int
    KEY_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    object_version: builtins.str
    bucket: builtins.str
    key: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        object_version: builtins.str = ...,
        bucket: builtins.str = ...,
        key: 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", b"key", "object_version", b"object_version", "resource_info", b"resource_info"]) -> None: ...

global___GitHubRepositoryS3 = GitHubRepositoryS3

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

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

global___GitHubRepositoryCode = GitHubRepositoryCode

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

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    ENABLE_ISSUES_FIELD_NUMBER: builtins.int
    REPOSITORY_NAME_FIELD_NUMBER: builtins.int
    REPOSITORY_ACCESS_TOKEN_FIELD_NUMBER: builtins.int
    REPOSITORY_OWNER_FIELD_NUMBER: builtins.int
    IS_PRIVATE_FIELD_NUMBER: builtins.int
    CODE_FIELD_NUMBER: builtins.int
    REPOSITORY_DESCRIPTION_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    enable_issues: builtins.bool
    repository_name: builtins.str
    repository_access_token: builtins.str
    repository_owner: builtins.str
    is_private: builtins.bool
    @property
    def code(self) -> global___GitHubRepositoryCode: ...
    repository_description: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        enable_issues: builtins.bool = ...,
        repository_name: builtins.str = ...,
        repository_access_token: builtins.str = ...,
        repository_owner: builtins.str = ...,
        is_private: builtins.bool = ...,
        code: global___GitHubRepositoryCode | None = ...,
        repository_description: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["code", b"code", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["code", b"code", "enable_issues", b"enable_issues", "is_private", b"is_private", "repository_access_token", b"repository_access_token", "repository_description", b"repository_description", "repository_name", b"repository_name", "repository_owner", b"repository_owner", "resource_info", b"resource_info"]) -> None: ...

global___GitHubRepository = GitHubRepository

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

    GIT_HUB_REPOSITORY_FIELD_NUMBER: builtins.int
    @property
    def git_hub_repository(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___GitHubRepository]: ...
    def __init__(
        self,
        *,
        git_hub_repository: collections.abc.Iterable[global___GitHubRepository] | None = ...,
    ) -> None: ...
    def ClearField(self, field_name: typing_extensions.Literal["git_hub_repository", b"git_hub_repository"]) -> None: ...

global___CodeStar = CodeStar
