# @generated by generate_proto_mypy_stubs.py.  Do not edit!
import sys
from google.protobuf.descriptor import (
    Descriptor as google___protobuf___descriptor___Descriptor,
)

from google.protobuf.message import (
    Message as google___protobuf___message___Message,
)

from typing import (
    Optional as typing___Optional,
    Text as typing___Text,
)

from typing_extensions import (
    Literal as typing_extensions___Literal,
)


class CommandOptions(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    sourceId = ... # type: typing___Text
    mediaType = ... # type: typing___Text
    externalPlayerCommand = ... # type: bool
    skipInterval = ... # type: float
    playbackRate = ... # type: float
    rating = ... # type: float
    negative = ... # type: bool
    playbackPosition = ... # type: float
    repeatMode = ... # type: int
    shuffleMode = ... # type: int
    trackID = ... # type: int
    radioStationID = ... # type: int
    radioStationHash = ... # type: typing___Text
    systemAppPlaybackQueueData = ... # type: bytes
    destinationAppDisplayID = ... # type: typing___Text
    sendOptions = ... # type: int
    requestDefermentToPlaybackQueuePosition = ... # type: bool
    contextID = ... # type: typing___Text
    shouldOverrideManuallyCuratedQueue = ... # type: bool
    stationURL = ... # type: typing___Text
    shouldBeginRadioPlayback = ... # type: bool
    playbackQueueInsertionPosition = ... # type: int
    contentItemID = ... # type: typing___Text
    playbackQueueOffset = ... # type: int
    playbackQueueDestinationOffset = ... # type: int
    languageOption = ... # type: bytes
    playbackQueueContext = ... # type: bytes
    insertAfterContentItemID = ... # type: typing___Text
    nowPlayingContentItemID = ... # type: typing___Text
    replaceIntent = ... # type: int

    def __init__(self,
        *,
        sourceId : typing___Optional[typing___Text] = None,
        mediaType : typing___Optional[typing___Text] = None,
        externalPlayerCommand : typing___Optional[bool] = None,
        skipInterval : typing___Optional[float] = None,
        playbackRate : typing___Optional[float] = None,
        rating : typing___Optional[float] = None,
        negative : typing___Optional[bool] = None,
        playbackPosition : typing___Optional[float] = None,
        repeatMode : typing___Optional[int] = None,
        shuffleMode : typing___Optional[int] = None,
        trackID : typing___Optional[int] = None,
        radioStationID : typing___Optional[int] = None,
        radioStationHash : typing___Optional[typing___Text] = None,
        systemAppPlaybackQueueData : typing___Optional[bytes] = None,
        destinationAppDisplayID : typing___Optional[typing___Text] = None,
        sendOptions : typing___Optional[int] = None,
        requestDefermentToPlaybackQueuePosition : typing___Optional[bool] = None,
        contextID : typing___Optional[typing___Text] = None,
        shouldOverrideManuallyCuratedQueue : typing___Optional[bool] = None,
        stationURL : typing___Optional[typing___Text] = None,
        shouldBeginRadioPlayback : typing___Optional[bool] = None,
        playbackQueueInsertionPosition : typing___Optional[int] = None,
        contentItemID : typing___Optional[typing___Text] = None,
        playbackQueueOffset : typing___Optional[int] = None,
        playbackQueueDestinationOffset : typing___Optional[int] = None,
        languageOption : typing___Optional[bytes] = None,
        playbackQueueContext : typing___Optional[bytes] = None,
        insertAfterContentItemID : typing___Optional[typing___Text] = None,
        nowPlayingContentItemID : typing___Optional[typing___Text] = None,
        replaceIntent : typing___Optional[int] = None,
        ) -> None: ...
    @classmethod
    def FromString(cls, s: bytes) -> CommandOptions: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    if sys.version_info >= (3,):
        def HasField(self, field_name: typing_extensions___Literal[u"contentItemID",u"contextID",u"destinationAppDisplayID",u"externalPlayerCommand",u"insertAfterContentItemID",u"languageOption",u"mediaType",u"negative",u"nowPlayingContentItemID",u"playbackPosition",u"playbackQueueContext",u"playbackQueueDestinationOffset",u"playbackQueueInsertionPosition",u"playbackQueueOffset",u"playbackRate",u"radioStationHash",u"radioStationID",u"rating",u"repeatMode",u"replaceIntent",u"requestDefermentToPlaybackQueuePosition",u"sendOptions",u"shouldBeginRadioPlayback",u"shouldOverrideManuallyCuratedQueue",u"shuffleMode",u"skipInterval",u"sourceId",u"stationURL",u"systemAppPlaybackQueueData",u"trackID"]) -> bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"contentItemID",u"contextID",u"destinationAppDisplayID",u"externalPlayerCommand",u"insertAfterContentItemID",u"languageOption",u"mediaType",u"negative",u"nowPlayingContentItemID",u"playbackPosition",u"playbackQueueContext",u"playbackQueueDestinationOffset",u"playbackQueueInsertionPosition",u"playbackQueueOffset",u"playbackRate",u"radioStationHash",u"radioStationID",u"rating",u"repeatMode",u"replaceIntent",u"requestDefermentToPlaybackQueuePosition",u"sendOptions",u"shouldBeginRadioPlayback",u"shouldOverrideManuallyCuratedQueue",u"shuffleMode",u"skipInterval",u"sourceId",u"stationURL",u"systemAppPlaybackQueueData",u"trackID"]) -> None: ...
    else:
        def HasField(self, field_name: typing_extensions___Literal[u"contentItemID",b"contentItemID",u"contextID",b"contextID",u"destinationAppDisplayID",b"destinationAppDisplayID",u"externalPlayerCommand",b"externalPlayerCommand",u"insertAfterContentItemID",b"insertAfterContentItemID",u"languageOption",b"languageOption",u"mediaType",b"mediaType",u"negative",b"negative",u"nowPlayingContentItemID",b"nowPlayingContentItemID",u"playbackPosition",b"playbackPosition",u"playbackQueueContext",b"playbackQueueContext",u"playbackQueueDestinationOffset",b"playbackQueueDestinationOffset",u"playbackQueueInsertionPosition",b"playbackQueueInsertionPosition",u"playbackQueueOffset",b"playbackQueueOffset",u"playbackRate",b"playbackRate",u"radioStationHash",b"radioStationHash",u"radioStationID",b"radioStationID",u"rating",b"rating",u"repeatMode",b"repeatMode",u"replaceIntent",b"replaceIntent",u"requestDefermentToPlaybackQueuePosition",b"requestDefermentToPlaybackQueuePosition",u"sendOptions",b"sendOptions",u"shouldBeginRadioPlayback",b"shouldBeginRadioPlayback",u"shouldOverrideManuallyCuratedQueue",b"shouldOverrideManuallyCuratedQueue",u"shuffleMode",b"shuffleMode",u"skipInterval",b"skipInterval",u"sourceId",b"sourceId",u"stationURL",b"stationURL",u"systemAppPlaybackQueueData",b"systemAppPlaybackQueueData",u"trackID",b"trackID"]) -> bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"contentItemID",b"contentItemID",u"contextID",b"contextID",u"destinationAppDisplayID",b"destinationAppDisplayID",u"externalPlayerCommand",b"externalPlayerCommand",u"insertAfterContentItemID",b"insertAfterContentItemID",u"languageOption",b"languageOption",u"mediaType",b"mediaType",u"negative",b"negative",u"nowPlayingContentItemID",b"nowPlayingContentItemID",u"playbackPosition",b"playbackPosition",u"playbackQueueContext",b"playbackQueueContext",u"playbackQueueDestinationOffset",b"playbackQueueDestinationOffset",u"playbackQueueInsertionPosition",b"playbackQueueInsertionPosition",u"playbackQueueOffset",b"playbackQueueOffset",u"playbackRate",b"playbackRate",u"radioStationHash",b"radioStationHash",u"radioStationID",b"radioStationID",u"rating",b"rating",u"repeatMode",b"repeatMode",u"replaceIntent",b"replaceIntent",u"requestDefermentToPlaybackQueuePosition",b"requestDefermentToPlaybackQueuePosition",u"sendOptions",b"sendOptions",u"shouldBeginRadioPlayback",b"shouldBeginRadioPlayback",u"shouldOverrideManuallyCuratedQueue",b"shouldOverrideManuallyCuratedQueue",u"shuffleMode",b"shuffleMode",u"skipInterval",b"skipInterval",u"sourceId",b"sourceId",u"stationURL",b"stationURL",u"systemAppPlaybackQueueData",b"systemAppPlaybackQueueData",u"trackID",b"trackID"]) -> None: ...
