#if NET_45
using System.Threading.Tasks;
using System.Collections.Generic;
#endif
using System.Diagnostics.CodeAnalysis;
namespace Octokit
{
///
/// A client for GitHub's miscellaneous APIs.
///
///
/// See the Miscellaneous API documentation for more details.
///
public interface IMiscellaneousClient
{
///
/// 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")]
Task> GetAllEmojis();
///
/// 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.
Task RenderRawMarkdown(string markdown);
///
/// Gets the rendered Markdown for an arbitrary markdown document.
///
/// An arbitrary Markdown document
/// Thrown when a general API error occurs.
/// The rendered Markdown.
Task RenderArbitraryMarkdown(NewArbitraryMarkdown markdown);
///
/// List all templates available to pass as an option when creating a repository.
///
/// A list of template names
[SuppressMessage("Microsoft.Design", "CA1024:UsePropertiesWhereAppropriate")]
Task> GetAllGitIgnoreTemplates();
///
/// Retrieves the source for a single GitIgnore template
///
///
/// A template and its source
Task 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.
///
/// This is a PREVIEW API! Use it at your own risk.
/// A list of licenses available on the site
[SuppressMessage("Microsoft.Design", "CA1024:UsePropertiesWhereAppropriate")]
Task> GetAllLicenses();
///
/// Retrieves a license based on the license key such as "mit"
///
///
/// A that includes the license key, text, and attributes of the license.
Task 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")]
Task 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")]
Task GetMetadata();
}
}