using System; using System.Diagnostics.CodeAnalysis; using System.Collections.Generic; namespace Octokit.Reactive { public interface IObservableRepositoryInvitationsClient { /// /// Accept a repository invitation. /// /// /// See the API documentation for more information. /// /// The id of the invitation. IObservable Accept(long invitationId); /// /// Decline a repository invitation. /// /// /// See the API documentation for more information. /// /// The id of the invitation. IObservable Decline(long invitationId); /// /// Deletes a repository invitation. /// /// /// See the API documentation for more information. /// /// The id of the repository. /// The id of the invitation. IObservable Delete(long repositoryId, long invitationId); /// /// Gets all invitations for the current user. /// /// /// See the API documentation for more information. /// [SuppressMessage("Microsoft.Design", "CA1024:UsePropertiesWhereAppropriate")] IObservable GetAllForCurrent(); /// /// Gets all invitations for the current user. /// /// /// See the API documentation for more information. /// /// Options for changing the API response [SuppressMessage("Microsoft.Design", "CA1024:UsePropertiesWhereAppropriate")] IObservable GetAllForCurrent(ApiOptions options); /// /// Gets all the invitations on a repository. /// /// /// See the API documentation for more information. /// /// The id of the repository IObservable GetAllForRepository(long repositoryId); /// /// Gets all the invitations on a repository. /// /// /// See the API documentation for more information. /// /// The id of the repository /// /// Options for changing the API response IObservable GetAllForRepository(long repositoryId, ApiOptions options); /// /// Updates a repository invitation. /// /// /// See the API documentation for more information. /// /// The id of the repository. /// The id of the invitation. /// The permission to set. /// IObservable Edit(long repositoryId, long invitationId, InvitationUpdate permissions); } }