/**@class android.media.session.PlaybackState.Builder
@extends java.lang.Object

 Builder for {@link android.media.session.PlaybackState} objects.
*/
var Builder = {

/**Set the current state of playback.
 <p>
 The position must be in ms and indicates the current playback
 position within the item. If the position is unknown use
 {@link #PLAYBACK_POSITION_UNKNOWN}. When not using an unknown
 position the time at which the position was updated must be provided.
 It is okay to use {@link SystemClock#elapsedRealtime()} if the
 current position was just retrieved.
 <p>
 The speed is a multiple of normal playback and should be 0 when
 paused and negative when rewinding. Normal playback speed is 1.0.
 <p>
 The state must be one of the following:
 <ul>
 <li> {@link android.media.session.PlaybackState#STATE_NONE}</li>
 <li> {@link android.media.session.PlaybackState#STATE_STOPPED}</li>
 <li> {@link android.media.session.PlaybackState#STATE_PLAYING}</li>
 <li> {@link android.media.session.PlaybackState#STATE_PAUSED}</li>
 <li> {@link android.media.session.PlaybackState#STATE_FAST_FORWARDING}</li>
 <li> {@link android.media.session.PlaybackState#STATE_REWINDING}</li>
 <li> {@link android.media.session.PlaybackState#STATE_BUFFERING}</li>
 <li> {@link android.media.session.PlaybackState#STATE_ERROR}</li>
 <li> {@link android.media.session.PlaybackState#STATE_CONNECTING}</li>
 <li> {@link android.media.session.PlaybackState#STATE_SKIPPING_TO_PREVIOUS}</li>
 <li> {@link android.media.session.PlaybackState#STATE_SKIPPING_TO_NEXT}</li>
 <li> {@link android.media.session.PlaybackState#STATE_SKIPPING_TO_QUEUE_ITEM}</li>
 </ul>
@param {Number} state The current state of playback.
@param {Number} position The position in the current item in ms.
@param {Number} playbackSpeed The current speed of playback as a multiple of
            normal playback.
@param {Number} updateTime The time in the {@link SystemClock#elapsedRealtime}
            timebase that the position was updated at.
@return {Object {android.media.session.PlaybackState.Builder}} this
*/
setState : function(  ) {},

/**Set the current state of playback.
 <p>
 The position must be in ms and indicates the current playback
 position within the item. If the position is unknown use
 {@link #PLAYBACK_POSITION_UNKNOWN}. The update time will be set to
 the current {@link SystemClock#elapsedRealtime()}.
 <p>
 The speed is a multiple of normal playback and should be 0 when
 paused and negative when rewinding. Normal playback speed is 1.0.
 <p>
 The state must be one of the following:
 <ul>
 <li> {@link android.media.session.PlaybackState#STATE_NONE}</li>
 <li> {@link android.media.session.PlaybackState#STATE_STOPPED}</li>
 <li> {@link android.media.session.PlaybackState#STATE_PLAYING}</li>
 <li> {@link android.media.session.PlaybackState#STATE_PAUSED}</li>
 <li> {@link android.media.session.PlaybackState#STATE_FAST_FORWARDING}</li>
 <li> {@link android.media.session.PlaybackState#STATE_REWINDING}</li>
 <li> {@link android.media.session.PlaybackState#STATE_BUFFERING}</li>
 <li> {@link android.media.session.PlaybackState#STATE_ERROR}</li>
 <li> {@link android.media.session.PlaybackState#STATE_CONNECTING}</li>
 <li> {@link android.media.session.PlaybackState#STATE_SKIPPING_TO_PREVIOUS}</li>
 <li> {@link android.media.session.PlaybackState#STATE_SKIPPING_TO_NEXT}</li>
 <li> {@link android.media.session.PlaybackState#STATE_SKIPPING_TO_QUEUE_ITEM}</li>
 </ul>
@param {Number} state The current state of playback.
@param {Number} position The position in the current item in ms.
@param {Number} playbackSpeed The current speed of playback as a multiple of
            normal playback.
@return {Object {android.media.session.PlaybackState.Builder}} this
*/
setState : function(  ) {},

/**Set the current actions available on this session. This should use a
 bitmask of possible actions.
 <ul>
 <li> {@link android.media.session.PlaybackState#ACTION_SKIP_TO_PREVIOUS}</li>
 <li> {@link android.media.session.PlaybackState#ACTION_REWIND}</li>
 <li> {@link android.media.session.PlaybackState#ACTION_PLAY}</li>
 <li> {@link android.media.session.PlaybackState#ACTION_PAUSE}</li>
 <li> {@link android.media.session.PlaybackState#ACTION_STOP}</li>
 <li> {@link android.media.session.PlaybackState#ACTION_FAST_FORWARD}</li>
 <li> {@link android.media.session.PlaybackState#ACTION_SKIP_TO_NEXT}</li>
 <li> {@link android.media.session.PlaybackState#ACTION_SEEK_TO}</li>
 <li> {@link android.media.session.PlaybackState#ACTION_SET_RATING}</li>
 <li> {@link android.media.session.PlaybackState#ACTION_PLAY_PAUSE}</li>
 <li> {@link android.media.session.PlaybackState#ACTION_PLAY_FROM_MEDIA_ID}</li>
 <li> {@link android.media.session.PlaybackState#ACTION_PLAY_FROM_SEARCH}</li>
 <li> {@link android.media.session.PlaybackState#ACTION_SKIP_TO_QUEUE_ITEM}</li>
 <li> {@link android.media.session.PlaybackState#ACTION_PLAY_FROM_URI}</li>
 <li> {@link android.media.session.PlaybackState#ACTION_PREPARE}</li>
 <li> {@link android.media.session.PlaybackState#ACTION_PREPARE_FROM_MEDIA_ID}</li>
 <li> {@link android.media.session.PlaybackState#ACTION_PREPARE_FROM_SEARCH}</li>
 <li> {@link android.media.session.PlaybackState#ACTION_PREPARE_FROM_URI}</li>
 </ul>
@param {Number} actions The set of actions allowed.
@return {Object {android.media.session.PlaybackState.Builder}} this
*/
setActions : function(  ) {},

/**Add a custom action to the playback state. Actions can be used to
 expose additional functionality to {@link android.media.session.MediaController
 android.media.session.MediaControllers} beyond what is offered by the standard transport
 controls.
 <p>
 e.g. start a radio station based on the current item or skip ahead by
 30 seconds.
@param {String} action An identifier for this action. It can be sent back to
            the {@link MediaSession} through
            {@link MediaController.TransportControls#sendCustomAction(String, Bundle)}.
@param {String} name The display name for the action. If text is shown with
            the action or used for accessibility, this is what should
            be used.
@param {Number} icon The resource action of the icon that should be displayed
            for the action. The resource should be in the package of
            the {@link MediaSession}.
@return {Object {android.media.session.PlaybackState.Builder}} this
*/
addCustomAction : function(  ) {},

/**Add a custom action to the playback state. Actions can be used to expose additional
 functionality to {@link android.media.session.MediaController android.media.session.MediaControllers} beyond what is offered by the
 standard transport controls.
 <p>
 An example of an action would be to start a radio station based on the current item
 or to skip ahead by 30 seconds.
@param {Object {PlaybackState.CustomAction}} customAction The custom action to add to the {@link PlaybackState}.
@return {Object {android.media.session.PlaybackState.Builder}} this
*/
addCustomAction : function(  ) {},

/**Set the current buffered position in ms. This is the farthest
 playback point that can be reached from the current position using
 only buffered content.
@param {Number} bufferedPosition The position in ms that playback is buffered
            to.
@return {Object {android.media.session.PlaybackState.Builder}} this
*/
setBufferedPosition : function(  ) {},

/**Set the active item in the play queue by specifying its id. The
 default value is {@link android.media.session.MediaSession.QueueItem#UNKNOWN_ID}
@param {Number} id The id of the active item.
@return {Object {android.media.session.PlaybackState.Builder}} this
*/
setActiveQueueItemId : function(  ) {},

/**Set a user readable error message. This should be set when the state
 is {@link android.media.session.PlaybackState#STATE_ERROR}.
@param {Object {CharSequence}} error The error message for display to the user.
@return {Object {android.media.session.PlaybackState.Builder}} this
*/
setErrorMessage : function(  ) {},

/**Set any custom extras to be included with the playback state.
@param {Object {Bundle}} extras The extras to include.
@return {Object {android.media.session.PlaybackState.Builder}} this
*/
setExtras : function(  ) {},

/**Build and return the {@link android.media.session.PlaybackState} instance with these
 values.
@return {Object {android.media.session.PlaybackState}} A new state instance.
*/
build : function(  ) {},


};