using System; using System.Diagnostics.CodeAnalysis; namespace Octokit.Reactive { public interface IObservableMiscellaneousClient { /// /// Gets all the emojis available to use on GitHub. /// /// Thrown when a general API error occurs. /// An of emoji and their URI. [SuppressMessage("Microsoft.Design", "CA1024:UsePropertiesWhereAppropriate", Justification = "Makes a network request")] IObservable GetAllEmojis(); /// /// Gets the rendered Markdown for an arbitrary markdown document. /// /// An arbitrary Markdown document /// Thrown when a general API error occurs. /// The rendered Markdown. IObservable RenderArbitraryMarkdown(NewArbitraryMarkdown markdown); /// /// Gets the rendered Markdown for the specified plain-text Markdown document. /// /// A plain-text Markdown document /// Thrown when a general API error occurs. /// The rendered Markdown. IObservable RenderRawMarkdown(string markdown); /// /// List all templates available to pass as an option when creating a repository. /// /// An observable list of gitignore template names. [SuppressMessage("Microsoft.Design", "CA1024:UsePropertiesWhereAppropriate")] IObservable GetAllGitIgnoreTemplates(); /// /// Retrieves the source for a single GitIgnore template /// /// Returns the template source for the given template IObservable GetGitIgnoreTemplate(string templateName); /// /// Returns a list of the licenses shown in the license picker on GitHub.com. This is not a comprehensive /// list of all possible OSS licenses. /// /// A list of licenses available on the site [SuppressMessage("Microsoft.Design", "CA1024:UsePropertiesWhereAppropriate")] IObservable GetAllLicenses(); /// /// Returns a list of the licenses shown in the license picker on GitHub.com. This is not a comprehensive /// list of all possible OSS licenses. /// /// Options for changing the API response /// A list of licenses available on the site IObservable GetAllLicenses(ApiOptions options); /// /// Retrieves a license based on the license key such as "MIT" /// /// /// A that includes the license key, text, and attributes of the license. IObservable GetLicense(string key); /// /// Gets API Rate Limits (API service rather than header info). /// /// Thrown when a general API error occurs. /// An of Rate Limits. [SuppressMessage("Microsoft.Design", "CA1024:UsePropertiesWhereAppropriate")] IObservable GetRateLimits(); /// /// Retrieves information about GitHub.com, the service or a GitHub Enterprise installation. /// /// Thrown when a general API error occurs. /// An containing metadata about the GitHub instance. [SuppressMessage("Microsoft.Design", "CA1024:UsePropertiesWhereAppropriate")] IObservable GetMetadata(); } }