using System; using System.Threading; using System.Threading.Tasks; namespace DeviceCommand.Base { public interface ITcp { Task ConnectAsync(CancellationToken ct = default); void Close(); Task SendAsync(byte[] buffer, CancellationToken ct = default); Task SendAsync(string str, CancellationToken ct = default); Task ReadAsync(int length, CancellationToken ct = default); Task ReadAsync(string delimiter = "\n", CancellationToken ct = default); Task WriteReadAsync(string command, string delimiter = "\n", CancellationToken ct = default); } }