using Microsoft.AspNetCore.SignalR.Client; using RemoteExec.Shared; using System.Threading.Channels; namespace RemoteExec.Client; public class ServerConnection(HubConnection connection, HttpClient httpClient) { public HubConnection Connection { get; } = connection; public HttpClient HttpClient { get; } = httpClient; public Channel TaskChannel { get; } = Channel.CreateUnbounded(); public ServerMetrics? Metrics { get; set; } public Func? ClosedEventHandler { get; set; } }