diff --git a/src/Piwigo.Client/Albums/IAlbumApi.cs b/src/Piwigo.Client/Albums/IAlbumApi.cs
index 5c5c85f..a9fa74f 100644
--- a/src/Piwigo.Client/Albums/IAlbumApi.cs
+++ b/src/Piwigo.Client/Albums/IAlbumApi.cs
@@ -2,24 +2,124 @@ namespace Piwigo.Client.Albums;
public interface IAlbumApi
{
+ ///
+ /// Calculates the number of orphans for a given album
+ ///
+ /// the album id
+ ///
+ ///
+ ///
+ /// Information about images that would become orphan
Task CalculateOrphansAsync(int albumId, CancellationToken cancellationToken = default);
+ ///
+ /// Deletes an album
+ ///
+ /// album id to delete
+ /// The API token that can be read from
+ ///
+ ///
+ ///
+ ///
Task DeleteAsync(int albumId, string apiToken, CancellationToken cancellationToken = default);
+ ///
+ /// Moves an album into another album as a sub-album
+ ///
+ /// album id to move
+ /// new parent album id
+ /// The API token that can be read from
+ ///
+ ///
+ ///
+ ///
Task MoveAsync(int albumId, int parentAlbumId, string apiToken, CancellationToken cancellationToken = default);
+ ///
+ /// deletes the album image used in the album overview
+ ///
+ /// album id that should get cleared
+ ///
+ ///
+ ///
+ ///
Task DeleteRepresentativeAsync(int albumId, CancellationToken cancellationToken = default);
+ ///
+ /// performs a refresh of the album title image.
+ ///
+ /// album id to refresh
+ ///
+ ///
+ ///
+ ///
Task RefreshRepresentativeAsync(int albumId, CancellationToken cancellationToken = default);
+ ///
+ /// Sets the representative image for the given album id
+ ///
+ /// album id that gets a new representative image
+ /// image id to use for the given album
+ ///
+ ///
+ ///
+ ///
Task SetRepresentativeAsync(int albumId, int imageId, CancellationToken cancellationToken = default);
+ ///
+ /// Sets the rank of a given album
+ ///
+ /// album id
+ ///
+ ///
+ ///
+ ///
+ ///
Task SetRankAsync(int albumId, int rank, CancellationToken cancellationToken = default);
+ ///
+ /// sets album information
+ ///
+ /// the album id to update
+ /// the album name
+ /// a comment to describe the album
+ /// the status
+ ///
+ ///
+ ///
+ ///
Task SetInfoAsync(int albumId, string name, string? comment, AlbumStatus? status, CancellationToken cancellationToken = default);
+ ///
+ /// adds an album to the gallery
+ ///
+ /// name of the album
+ /// an optional parent album id if you create a new sub album
+ /// a comment to describe the album
+ /// true if the album is visible; false to hide it
+ /// the status
+ /// true to enable comments on the images; false otherwise
+ /// the position of the album
+ ///
+ ///
+ ///
+ ///
Task AddAsync(string name, int? parentId = null, string? comment = null, bool? visible = null, AlbumStatus? status = null, bool? commentable = null,
AlbumPosition? position = null, CancellationToken cancellationToken = default);
+ ///
+ /// Gets a list of albums
+ ///
+ /// provides an album as a starting point to get sub-albums
+ /// tells if the sub albums should get recursively
+ ///
+ /// ture to get the full name of an album e.g. 'UnitTestMain / UnitTestSub1' while false only
+ /// returns 'UnitTestSub1'
+ ///
+ /// defines the size of the album thumbnail
+ ///
+ ///
+ ///
+ ///
Task> GetListAsync(int? albumId, bool? recursive, bool? fullName, ThumbnailSize? thumbnailSize, CancellationToken cancellationToken = default);
}
\ No newline at end of file