using System.Collections.Generic; using System.Net.Http; using System.Text.Json.Serialization.Metadata; using System.Threading; using System.Threading.Tasks; using Luski.net.JsonTypes.BaseTypes; using Luski.net.Structures; using Luski.net.Structures.Public; namespace Luski.net.Interfaces; public interface IServer { public IAppUser IAppUser { get; } public string Cache { get; } public void SendServer(Tvalue Payload, JsonTypeInfo jsonTypeInfo) where Tvalue : IncomingWSS; public HttpResponseMessage GetFromServer(string Path, CancellationToken CancellationToken, params KeyValuePair[] Headers); public Task GetFromServer(string Path, string File, CancellationToken CancellationToken, params KeyValuePair[] Headers); public Task GetFromServer(string Path, JsonTypeInfo Type, CancellationToken CancellationToken, params KeyValuePair[] Headers) where Tresult : IncomingHTTP, new(); public Task SendServer(string Path, Tvalue Payload, JsonTypeInfo jsonTypeInfo, JsonTypeInfo ReturnjsonTypeInfo, CancellationToken CancellationToken, params KeyValuePair[] Headers) where Tvalue : IWebRequest where Tresult : IncomingHTTP, new(); public Task SendServer(string Path, string File, JsonTypeInfo ReturnjsonTypeInfo, CancellationToken CancellationToken, params KeyValuePair[] Headers) where Tresult : IncomingHTTP, new(); public Task GetUser(long UserID, CancellationToken CancellationToken) where Tuser : SocketUserBase, new(); }