using GoveeCSharpConnector.Objects; namespace GoveeCSharpConnector.Interfaces; public interface IGoveeApiService { /// /// Sets the required Api Key for the Govee Api. /// Request Api Key in the Mobile Phone App. /// /// Api Key as String void SetApiKey(string apiKey); /// /// Returns current set Govee Api Key /// /// Govee Api Key as String string GetApiKey(); /// /// Removes the Set Api Key and resets the HTTP Header /// void RemoveApiKey(); /// /// Requests all Devices registered to Api Key Govee Account /// /// List of GoveeApiDevices Task> GetDevices(); /// /// Requests the State of a single Govee Device /// /// Device Id Guid as string /// Device Model Number as string /// GoveeApiStat Object Task GetDeviceState(string deviceId, string deviceModel); /// /// Sets the On/Off state of a single Govee Device /// /// Device Id Guid as string /// Device Model Number as string /// /// Task ToggleState(string deviceId, string deviceModel, bool on); /// /// Sets the Brightness in Percent of a single Govee Device /// /// Device Id Guid as string /// Device Model Number as string /// Brightness in Percent as Int /// Task SetBrightness(string deviceId, string deviceModel, int value); /// /// Sets a Rgb Color of a single Govee Device /// /// Device Id Guid as string /// Device Model Number as string /// Rgb Color /// Task SetColor(string deviceId, string deviceModel, RgbColor color); /// /// Sets the Color Temperature of a single Govee Device /// /// Device Id Guid as string /// Device Model Number as string /// Color Temp in Kelvin as Int /// Task SetColorTemp(string deviceId, string deviceModel, int value); }