using System; using System.Diagnostics.CodeAnalysis; using System.Reactive; namespace Octokit.Reactive { public interface IObservableMilestonesClient { /// /// Gets a single Milestone by number. /// /// /// http://developer.github.com/v3/issues/milestones/#get-a-single-milestone /// /// [SuppressMessage("Microsoft.Naming", "CA1716:IdentifiersShouldNotMatchKeywords", MessageId = "Get", Justification = "Method makes a network request")] IObservable Get(string owner, string name, int number); /// /// Gets all open milestones for the repository. /// /// /// http://developer.github.com/v3/issues/milestones/#list-milestones-for-a-repository /// /// The owner of the repository /// The name of the repository /// IObservable GetForRepository(string owner, string name); /// /// Gets all open milestones for the repository. /// /// /// http://developer.github.com/v3/issues/milestones/#list-milestones-for-a-repository /// /// The owner of the repository /// The name of the repository /// Used to filter and sort the list of Milestones returned /// IObservable GetForRepository(string owner, string name, MilestoneRequest request); /// /// Creates a milestone for the specified repository. Any user with pull access to a repository can create an /// Milestone. /// /// http://developer.github.com/v3/issues/milestones/#create-a-milestone /// The owner of the repository /// The name of the repository /// A instance describing the new Milestone to create /// IObservable Create(string owner, string name, NewMilestone newMilestone); /// /// Creates a milestone for the specified repository. Any user with pull access to a repository can create an /// Milestone. /// /// http://developer.github.com/v3/issues/milestones/#update-a-milestone /// The owner of the repository /// The name of the repository /// The Milestone number /// An instance describing the changes to make to the Milestone /// /// IObservable Update(string owner, string name, int number, MilestoneUpdate milestoneUpdate); /// /// Deletes a milestone for the specified repository. Any user with pull access to a repository can create an /// Milestone. /// /// http://developer.github.com/v3/issues/milestones/#delete-a-milestone /// The owner of the repository /// The name of the repository /// The milestone number /// IObservable Delete(string owner, string name, int number); } }