"""
@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 pyatv.protocols.mrp.protobuf.ContentItemMetadata_pb2
import pyatv.protocols.mrp.protobuf.LanguageOption_pb2
import typing

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

@typing.final
class LanguageOptionGroup(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    ALLOWEMPTYSELECTION_FIELD_NUMBER: builtins.int
    DEFAULTLANGUAGEOPTION_FIELD_NUMBER: builtins.int
    LANGUAGEOPTIONS_FIELD_NUMBER: builtins.int
    allowEmptySelection: builtins.bool
    @property
    def defaultLanguageOption(self) -> pyatv.protocols.mrp.protobuf.LanguageOption_pb2.LanguageOption: ...
    @property
    def languageOptions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[pyatv.protocols.mrp.protobuf.LanguageOption_pb2.LanguageOption]: ...
    def __init__(
        self,
        *,
        allowEmptySelection: builtins.bool | None = ...,
        defaultLanguageOption: pyatv.protocols.mrp.protobuf.LanguageOption_pb2.LanguageOption | None = ...,
        languageOptions: collections.abc.Iterable[pyatv.protocols.mrp.protobuf.LanguageOption_pb2.LanguageOption] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["allowEmptySelection", b"allowEmptySelection", "defaultLanguageOption", b"defaultLanguageOption"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["allowEmptySelection", b"allowEmptySelection", "defaultLanguageOption", b"defaultLanguageOption", "languageOptions", b"languageOptions"]) -> None: ...

global___LanguageOptionGroup = LanguageOptionGroup

@typing.final
class ContentItem(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    IDENTIFIER_FIELD_NUMBER: builtins.int
    METADATA_FIELD_NUMBER: builtins.int
    ARTWORKDATA_FIELD_NUMBER: builtins.int
    INFO_FIELD_NUMBER: builtins.int
    AVAILABLELANGUAGEOPTIONS_FIELD_NUMBER: builtins.int
    CURRENTLANGUAGEOPTIONS_FIELD_NUMBER: builtins.int
    PARENTIDENTIFIER_FIELD_NUMBER: builtins.int
    ANCESTORIDENTIFIER_FIELD_NUMBER: builtins.int
    QUEUEIDENTIFIER_FIELD_NUMBER: builtins.int
    REQUESTIDENTIFIER_FIELD_NUMBER: builtins.int
    ARTWORKDATAWIDTH_FIELD_NUMBER: builtins.int
    ARTWORKDATAHEIGHT_FIELD_NUMBER: builtins.int
    identifier: builtins.str
    artworkData: builtins.bytes
    info: builtins.str
    parentIdentifier: builtins.str
    """ optional Lyrics lyrics = 7;
     repeated Sections sections = 8;
    """
    ancestorIdentifier: builtins.str
    queueIdentifier: builtins.str
    requestIdentifier: builtins.str
    artworkDataWidth: builtins.int
    artworkDataHeight: builtins.int
    @property
    def metadata(self) -> pyatv.protocols.mrp.protobuf.ContentItemMetadata_pb2.ContentItemMetadata: ...
    @property
    def availableLanguageOptions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___LanguageOptionGroup]: ...
    @property
    def currentLanguageOptions(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[pyatv.protocols.mrp.protobuf.LanguageOption_pb2.LanguageOption]: ...
    def __init__(
        self,
        *,
        identifier: builtins.str | None = ...,
        metadata: pyatv.protocols.mrp.protobuf.ContentItemMetadata_pb2.ContentItemMetadata | None = ...,
        artworkData: builtins.bytes | None = ...,
        info: builtins.str | None = ...,
        availableLanguageOptions: collections.abc.Iterable[global___LanguageOptionGroup] | None = ...,
        currentLanguageOptions: collections.abc.Iterable[pyatv.protocols.mrp.protobuf.LanguageOption_pb2.LanguageOption] | None = ...,
        parentIdentifier: builtins.str | None = ...,
        ancestorIdentifier: builtins.str | None = ...,
        queueIdentifier: builtins.str | None = ...,
        requestIdentifier: builtins.str | None = ...,
        artworkDataWidth: builtins.int | None = ...,
        artworkDataHeight: builtins.int | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing.Literal["ancestorIdentifier", b"ancestorIdentifier", "artworkData", b"artworkData", "artworkDataHeight", b"artworkDataHeight", "artworkDataWidth", b"artworkDataWidth", "identifier", b"identifier", "info", b"info", "metadata", b"metadata", "parentIdentifier", b"parentIdentifier", "queueIdentifier", b"queueIdentifier", "requestIdentifier", b"requestIdentifier"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing.Literal["ancestorIdentifier", b"ancestorIdentifier", "artworkData", b"artworkData", "artworkDataHeight", b"artworkDataHeight", "artworkDataWidth", b"artworkDataWidth", "availableLanguageOptions", b"availableLanguageOptions", "currentLanguageOptions", b"currentLanguageOptions", "identifier", b"identifier", "info", b"info", "metadata", b"metadata", "parentIdentifier", b"parentIdentifier", "queueIdentifier", b"queueIdentifier", "requestIdentifier", b"requestIdentifier"]) -> None: ...

global___ContentItem = ContentItem
