using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; namespace SpotifyAPI.Web { /// /// Endpoints for managing the artists, users, and playlists that a Spotify user follows. /// public interface IFollowClient { /// /// Check to see if the current user is following one or more artists or other Spotify users. /// /// The request-model which contains required and optional parameters. /// The cancellation-token to allow to cancel the request. /// /// https://developer.spotify.com/documentation/web-api/reference-beta/#endpoint-check-current-user-follows /// /// Task> CheckCurrentUser(FollowCheckCurrentUserRequest request, CancellationToken cancel = default); /// /// Check to see if one or more Spotify users are following a specified playlist. /// /// The Spotify ID of the playlist. /// The request-model which contains required and optional parameters. /// The cancellation-token to allow to cancel the request. /// /// https://developer.spotify.com/documentation/web-api/reference-beta/#endpoint-check-if-user-follows-playlist /// /// Task> CheckPlaylist(string playlistId, FollowCheckPlaylistRequest request, CancellationToken cancel = default); /// /// Add the current user as a follower of one or more artists or other Spotify users. /// /// The request-model which contains required and optional parameters. /// The cancellation-token to allow to cancel the request. /// /// https://developer.spotify.com/documentation/web-api/reference-beta/#endpoint-follow-artists-users /// /// Task Follow(FollowRequest request, CancellationToken cancel = default); /// /// Add the current user as a follower of a playlist. /// /// /// The Spotify ID of the playlist. /// Any playlist can be followed, regardless of its public/private status, /// as long as you know its playlist ID. /// /// The cancellation-token to allow to cancel the request. /// /// https://developer.spotify.com/documentation/web-api/reference-beta/#endpoint-follow-playlist /// /// Task FollowPlaylist(string playlistId, CancellationToken cancel = default); /// /// Add the current user as a follower of a playlist. /// /// /// The Spotify ID of the playlist. /// Any playlist can be followed, regardless of its public/private status, /// as long as you know its playlist ID. /// /// The request-model which contains required and optional parameters. /// The cancellation-token to allow to cancel the request. /// /// https://developer.spotify.com/documentation/web-api/reference-beta/#endpoint-follow-playlist /// /// Task FollowPlaylist(string playlistId, FollowPlaylistRequest request, CancellationToken cancel = default); /// /// Get the current user’s followed artists. /// /// The cancellation-token to allow to cancel the request. /// /// https://developer.spotify.com/documentation/web-api/reference-beta/#endpoint-get-followed /// /// Task OfCurrentUser(CancellationToken cancel = default); /// /// Get the current user’s followed artists. /// /// The request-model which contains required and optional parameters. /// The cancellation-token to allow to cancel the request. /// /// https://developer.spotify.com/documentation/web-api/reference-beta/#endpoint-get-followed /// /// Task OfCurrentUser(FollowOfCurrentUserRequest request, CancellationToken cancel = default); /// /// Remove the current user as a follower of one or more artists or other Spotify users. /// /// The request-model which contains required and optional parameters. /// The cancellation-token to allow to cancel the request. /// /// https://developer.spotify.com/documentation/web-api/reference-beta/#endpoint-unfollow-artists-users /// /// Task Unfollow(UnfollowRequest request, CancellationToken cancel = default); /// /// Remove the current user as a follower of a playlist. /// /// The Spotify ID of the playlist that is to be no longer followed. /// The cancellation-token to allow to cancel the request. /// /// /// https://developer.spotify.com/documentation/web-api/reference-beta/#endpoint-unfollow-playlist /// Task UnfollowPlaylist(string playlistId, CancellationToken cancel = default); } }