using TwinCAT.Ads.TypeSystem; using ConnectionState = TwinCAT.ConnectionState; namespace PLCIOPointTool.Services { public interface IClientService : IDisposable { Task ConnectAsync(string netId, int port); Task DisconnectAsync(); Task ReadValue(string symbolName); Task WriteValue(string symbolName, object value); event EventHandler? ConnectionStateChanged; event EventHandler? HealthCheckingChanged; } }