-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Spotify Web API -- -- Bindings for interacting with the Spotify Web API @package spotify @version 0.1.0.1 module Spotify class (MonadIO m) => MonadSpotify m getAuth :: MonadSpotify m => m Auth getManager :: MonadSpotify m => m Manager getToken :: MonadSpotify m => m AccessToken putToken :: MonadSpotify m => AccessToken -> m () throwClientError :: MonadSpotify m => ClientError -> m a monadSpotifyIOTokenPath :: IO FilePath newtype Spotify a Spotify :: StateT AccessToken (ReaderT (Auth, Manager) (ExceptT ClientError IO)) a -> Spotify a [$sel:unwrap:Spotify] :: Spotify a -> StateT AccessToken (ReaderT (Auth, Manager) (ExceptT ClientError IO)) a runSpotify :: Auth -> Spotify a -> IO (Either ClientError a) runSpotify' :: Maybe Manager -> Maybe AccessToken -> Auth -> Spotify a -> IO (Either ClientError (a, AccessToken)) liftEitherSpot :: MonadSpotify m => Either ClientError a -> m a inSpot :: forall m a. MonadSpotify m => (AccessToken -> ClientM a) -> m a newtype Error' Error' :: Error -> Error' [$sel:error:Error'] :: Error' -> Error data Auth Auth :: RefreshToken -> ClientId -> ClientSecret -> Auth [$sel:refreshToken:Auth] :: Auth -> RefreshToken [$sel:clientId:Auth] :: Auth -> ClientId [$sel:clientSecret:Auth] :: Auth -> ClientSecret mainBase :: BaseUrl accountsBase :: BaseUrl cli :: forall api. HasClient ClientM api => Client ClientM api noContent :: Functor f => f NoContent -> f () marketFromToken :: Maybe Market withPagingParams :: PagingParams -> (Maybe Int -> Maybe Int -> t) -> t data PagingParams PagingParams :: Maybe Int -> Maybe Int -> PagingParams [$sel:limit:PagingParams] :: PagingParams -> Maybe Int [$sel:offset:PagingParams] :: PagingParams -> Maybe Int noPagingParams :: PagingParams newToken :: MonadSpotify m => m TokenResponse newTokenIO :: Auth -> Manager -> IO (Either ClientError TokenResponse) newTokenIO' :: MonadIO m => Manager -> ClientId -> ClientSecret -> URL -> AuthCode -> m (Either ClientError TokenResponse') getAuthCodeInteractive :: ClientId -> URL -> Maybe (Set Scope) -> IO (Maybe AuthCode) authorizeUrl :: ClientId -> URL -> Maybe (Set Scope) -> URL getAlbum :: MonadSpotify m => AlbumID -> m Album getAlbumTracks :: MonadSpotify m => AlbumID -> PagingParams -> m (Paging TrackSimple) removeAlbums :: MonadSpotify m => [AlbumID] -> m () getArtist :: MonadSpotify m => ArtistID -> m Artist getTrack :: MonadSpotify m => TrackID -> m Track getSavedTracks :: MonadSpotify m => PagingParams -> m (Paging SavedTrack) saveTracks :: MonadSpotify m => [TrackID] -> m () removeTracks :: MonadSpotify m => [TrackID] -> m () search :: MonadSpotify m => Text -> [SearchType] -> Maybe Text -> Maybe Market -> PagingParams -> m SearchResult getMe :: MonadSpotify m => m User getUser :: MonadSpotify m => UserID -> m User unfollowPlaylist :: MonadSpotify m => PlaylistID -> m () getPlaylist :: MonadSpotify m => PlaylistID -> m Playlist addToPlaylist :: MonadSpotify m => PlaylistID -> Maybe Int -> [URI] -> m Text getMyPlaylists :: MonadSpotify m => PagingParams -> m (Paging PlaylistSimple) createPlaylist :: MonadSpotify m => UserID -> CreatePlaylistOpts -> m PlaylistSimple getCategories :: MonadSpotify m => CategoryID -> Maybe Country -> Maybe Locale -> m Category getPlaybackState :: MonadSpotify m => Maybe Market -> m PlaybackState transferPlayback :: MonadSpotify m => [DeviceID] -> Bool -> m () getAvailableDevices :: MonadSpotify m => m [Device] getCurrentlyPlayingTrack :: MonadSpotify m => Maybe Market -> m CurrentlyPlayingTrack startPlayback :: MonadSpotify m => Maybe DeviceID -> StartPlaybackOpts -> m () pausePlayback :: MonadSpotify m => Maybe DeviceID -> m () skipToNext :: MonadSpotify m => Maybe DeviceID -> m () skipToPrevious :: MonadSpotify m => Maybe DeviceID -> m () seekToPosition :: MonadSpotify m => Int -> Maybe DeviceID -> m () allPages :: Monad m => Maybe (Paging a -> m Bool) -> (PagingParams -> m (Paging a)) -> m [a] instance Data.Aeson.Types.FromJSON.FromJSON Spotify.Error' instance GHC.Generics.Generic Spotify.Error' instance GHC.Show.Show Spotify.Error' instance GHC.Classes.Ord Spotify.Error' instance GHC.Classes.Eq Spotify.Error' instance GHC.Show.Show Spotify.Auth instance Control.Monad.Error.Class.MonadError Servant.Client.Core.ClientError.ClientError Spotify.Spotify instance Control.Monad.Reader.Class.MonadReader (Spotify.Auth, Network.HTTP.Client.Types.Manager) Spotify.Spotify instance Control.Monad.State.Class.MonadState Spotify.Types.Auth.AccessToken Spotify.Spotify instance Control.Monad.IO.Class.MonadIO Spotify.Spotify instance GHC.Base.Monad Spotify.Spotify instance GHC.Base.Applicative Spotify.Spotify instance GHC.Base.Functor Spotify.Spotify instance Spotify.MonadSpotify GHC.Types.IO instance Spotify.MonadSpotify Spotify.Spotify