42 lines
1.0 KiB
C#
Executable File
42 lines
1.0 KiB
C#
Executable File
using System.IO;
|
|
using System.Threading;
|
|
using Luski.net.Enums;
|
|
using System.Threading.Tasks;
|
|
using Luski.net.JsonTypes;
|
|
using Luski.net.Structures;
|
|
|
|
namespace Luski.net.Interfaces;
|
|
|
|
/// <summary>
|
|
/// Represents the curent user
|
|
/// </summary>
|
|
public interface IUser
|
|
{
|
|
/// <summary>
|
|
/// The current Id of the user
|
|
/// </summary>
|
|
long Id { get; }
|
|
/// <summary>
|
|
/// The cerrent username of the user
|
|
/// </summary>
|
|
string DisplayName { get; }
|
|
/// <summary>
|
|
/// The current status of the user
|
|
/// </summary>
|
|
UserStatus Status { get; }
|
|
/// <summary>
|
|
/// will returen the picture type of the user
|
|
/// </summary>
|
|
PictureType PictureType { get; }
|
|
/// <summary>
|
|
/// Gets the current avatar of the user
|
|
/// </summary>
|
|
Task<Stream> GetAvatar(CancellationToken CancellationToken);
|
|
/// <summary>
|
|
/// Gets the current user keys
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
Task<PublicKeyInfo[]> GetUserKeys(CancellationToken CancellationToken);
|
|
|
|
}
|