using System; using System.Diagnostics.CodeAnalysis; using System.Reactive; namespace Octokit.Reactive { /// /// A client for GitHub's Repository Deploy Keys API. /// /// /// See the Deploy Keys API documentation for more information. /// public interface IObservableRepositoryDeployKeysClient { /// /// Get a single deploy key by number for a repository. /// /// /// See the API documentation for more information. /// /// The owner of the repository. /// The name of the repository. /// The id of the deploy key. [SuppressMessage("Microsoft.Naming", "CA1716:IdentifiersShouldNotMatchKeywords", MessageId = "Get")] IObservable Get(string owner, string name, int number); /// /// Get a single deploy key by number for a repository. /// /// /// See the API documentation for more information. /// /// The Id of the repository. /// The id of the deploy key. [SuppressMessage("Microsoft.Naming", "CA1716:IdentifiersShouldNotMatchKeywords", MessageId = "Get")] IObservable Get(long repositoryId, int number); /// /// Get all deploy keys for a repository. /// /// /// See the API documentation for more information. /// /// The owner of the repository. /// The name of the repository. IObservable GetAll(string owner, string name); /// /// Get all deploy keys for a repository. /// /// /// See the API documentation for more information. /// /// The Id of the repository. IObservable GetAll(long repositoryId); /// /// Get all deploy keys for a repository. /// /// /// See the API documentation for more information. /// /// The owner of the repository. /// The name of the repository. /// Options for changing the API response IObservable GetAll(string owner, string name, ApiOptions options); /// /// Get all deploy keys for a repository. /// /// /// See the API documentation for more information. /// /// The Id of the repository. /// Options for changing the API response IObservable GetAll(long repositoryId, ApiOptions options); /// /// Creates a new deploy key for a repository. /// /// /// See the API documentation for more information. /// /// The owner of the repository. /// The name of the repository. /// The deploy key to create for the repository. IObservable Create(string owner, string name, NewDeployKey newDeployKey); /// /// Creates a new deploy key for a repository. /// /// /// See the API documentation for more information. /// /// The Id of the repository. /// The deploy key to create for the repository. IObservable Create(long repositoryId, NewDeployKey newDeployKey); /// /// Deletes a deploy key from a repository. /// /// /// See the API documentation for more information. /// /// The owner of the repository. /// The name of the repository. /// The id of the deploy key to delete. IObservable Delete(string owner, string name, int number); /// /// Deletes a deploy key from a repository. /// /// /// See the API documentation for more information. /// /// The Id of the repository. /// The id of the deploy key to delete. IObservable Delete(long repositoryId, int number); } }