using OwnChar.Data; using OwnChar.Model; using Pilz.Configuration; using System.Diagnostics.CodeAnalysis; namespace OwnChar.ServerNew.Api; public interface IServer { ISettings Settings { get; } IDataProvider? Data { get; } [MemberNotNull(nameof(Data))] void CheckLogin(string secret); [MemberNotNullWhen(true, nameof(Data))] bool IsLoggedIn(string secret); [MemberNotNullWhen(true, nameof(Data))] UserAccount? GetUser(string secret); }