using System; using System.Diagnostics.CodeAnalysis; using System.Threading.Tasks; namespace Octokit { /// /// A client for GitHub's Users API. /// /// /// See the Users API documentation for more information. /// public interface IUsersClient { /// /// A client for GitHub's User Emails API /// /// /// See the Emails API documentation for more information. /// IUserEmailsClient Email { get; } /// /// A client for GitHub's User Keys API /// /// /// See the Keys API documentation for more information. /// [Obsolete("Ssh key information is now available under the GitSshKey property. This will be removed in a future update.")] IUserKeysClient Keys { get; } /// /// A client for GitHub's User Keys API /// /// /// See the Keys API documentation for more information. /// IUserKeysClient GitSshKey { get; } [SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "Gpg")] IUserGpgKeysClient GpgKey { get; } /// /// Returns the user specified by the login. /// /// The login name for the user [SuppressMessage("Microsoft.Naming", "CA1716:IdentifiersShouldNotMatchKeywords", MessageId = "Get")] [SuppressMessage("Microsoft.Naming", "CA1726:UsePreferredTerms", MessageId = "login")] Task Get(string login); /// /// Returns a for the current authenticated user. /// /// Thrown if the client is not authenticated. /// A Task Current(); /// /// Update the specified . /// /// The login for the user /// Thrown if the client is not authenticated. /// A Task Update(UserUpdate user); /// /// A client for GitHub's User Followers API /// /// /// See the Followers API documentation for more information. /// IFollowersClient Followers { get; } /// /// A client for GitHub's User Administration API /// /// /// See the User Administrator API documentation for more information. /// IUserAdministrationClient Administration { get; } } }