using System;
namespace Octokit
{
///
/// A Client for the GitHub API v3. You can read more about the API here: http://developer.github.com.
///
public interface IGitHubClient : IApiInfoProvider
{
///
/// Sets the timeout for the connection between the client and the server.
/// GitHub will terminate the request if it takes more than 10 seconds to process the request
/// Useful to set a specific timeout for lengthy operations, such as uploading release assets
///
///
/// See more information here: https://technet.microsoft.com/library/system.net.http.httpclient.timeout(v=vs.110).aspx
///
/// The Timeout value
void SetRequestTimeout(TimeSpan timeout);
///
/// Provides a client connection to make rest requests to HTTP endpoints.
///
IConnection Connection { get; }
///
/// Access GitHub's Authorization API.
///
///
/// Refer to the API documentation for more information: https://developer.github.com/v3/oauth_authorizations/
///
IAuthorizationsClient Authorization { get; }
///
/// Access GitHub's Activity API.
///
///
/// Refer to the API documentation for more information: https://developer.github.com/v3/activity/
///
IActivitiesClient Activity { get; }
///
/// Access GitHub's Actions API.
///
///
/// Refer to the API documentation for more information: https://developer.github.com/v3/actions/
///
IActionsClient Actions { get; }
///
/// Access GitHub's Application API.
///
///
/// Refer to the API documentation for more information: https://developer.github.com/v3/apps/
///
IGitHubAppsClient GitHubApps { get; }
///
/// Access GitHub's Issue API.
///
///
/// Refer to the API documentation for more information: https://developer.github.com/v3/issues/
///
IIssuesClient Issue { get; }
///
/// Access GitHub's Migration API.
///
///
/// Refer to the API documentation for more information: https://developer.github.com/v3/migration/
///
IMigrationClient Migration { get; }
///
/// Access GitHub's Miscellaneous API.
///
///
/// Refer to the API documentation for more information: https://developer.github.com/v3/misc/
///
IMiscellaneousClient Miscellaneous { get; }
///
/// Access GitHub's OAuth API.
///
///
/// Refer to the API documentation for more information: https://developer.github.com/v3/oauth/
///
IOauthClient Oauth { get; }
///
/// Access GitHub's Organizations API.
///
///
/// Refer to the API documentation for more information: https://developer.github.com/v3/orgs/
///
IOrganizationsClient Organization { get; }
///
/// Access GitHub's Packages API.
///
///
/// Refer to the API documentation for more information: https://docs.github.com/rest/packages
///
IPackagesClient Packages { get; }
///
/// Access GitHub's Pull Requests API.
///
///
/// Refer to the API documentation for more information: https://developer.github.com/v3/pulls/
///
IPullRequestsClient PullRequest { get; }
///
/// Access GitHub's Repositories API.
///
///
/// Refer to the API documentation for more information: https://developer.github.com/v3/repos/
///
IRepositoriesClient Repository { get; }
///
/// Access GitHub's Gists API.
///
///
/// Refer to the API documentation for more information: https://developer.github.com/v3/gists/
///
IGistsClient Gist { get; }
///
/// Access GitHub's Users API.
///
///
/// Refer to the API documentation for more information: https://developer.github.com/v3/users/
///
IUsersClient User { get; }
///
/// Access GitHub's Git Data API.
///
///
/// Refer to the API documentation for more information: https://developer.github.com/v3/git/
///
IGitDatabaseClient Git { get; }
///
/// Access GitHub's Search API.
///
///
/// Refer to the API documentation for more information: https://developer.github.com/v3/search/
///
ISearchClient Search { get; }
///
/// Access GitHub's Enterprise API
///
///
/// Refer to the API documentation for more information: https://developer.github.com/v3/enterprise/
///
IEnterpriseClient Enterprise { get; }
///
/// Access GitHub's Reactions API
///
///
/// Refer to the API documentation for more information: https://developer.github.com/v3/reactions/
///
IReactionsClient Reaction { get; }
///
/// Access GitHub's Checks API.
///
///
/// Refer to the API documentation for more information: https://developer.github.com/v3/checks/
///
IChecksClient Check { get; }
///
/// Access GitHub's Meta API.
///
///
/// Refer to the API documentation for more information: https://docs.github.com/rest/meta
///
IMetaClient Meta { get; }
///
/// Access GitHub's Rate Limit API
///
///
/// Refer to the API documentation for more information: https://docs.github.com/rest/rate-limit
///
IRateLimitClient RateLimit { get; }
///
/// Access GitHub's Markdown API
///
///
/// Refer to the API documentation for more information: https://docs.github.com/rest/markdown
///
IMarkdownClient Markdown { get; }
///
/// Access GitHub's Git Ignore API
///
///
/// Refer to the API documentation for more information: https://docs.github.com/rest/gitignore
///
IGitIgnoreClient GitIgnore { get; }
///
/// Access GitHub's Licenses API
///
///
/// Refer to the API documentation for more information: https://docs.github.com/rest/licenses
///
ILicensesClient Licenses { get; }
IEmojisClient Emojis { get; }
ICodespacesClient Codespaces { get; }
///
/// Access to the GitHub Copilot for Business API
///
ICopilotClient Copilot { get; }
///
/// Access GitHub's Dependency Graph API
///
IDependencyGraphClient DependencyGraph { get; }
}
}