using System; using System.Threading.Tasks; namespace Deploymentcenter.Client; public interface ILicensePrompt { Task RequestLicenseKeyAsync(string productSlug); void ShowLicenseError(string title, string message); void ShowLicenseInfo(string title, string message); } public class ConsoleLicensePrompt : ILicensePrompt { public Task RequestLicenseKeyAsync(string productSlug) { Console.ForegroundColor = ConsoleColor.Yellow; Console.WriteLine($"\n[🔑 Lizenzschlüssel erforderlich für '{productSlug}']"); Console.ResetColor(); Console.Write("Bitte Lizenzschlüssel eingeben: "); string? input = Console.ReadLine(); return Task.FromResult(input?.Trim()); } public void ShowLicenseError(string title, string message) { Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine($"\n[✖ {title}] {message}"); Console.ResetColor(); } public void ShowLicenseInfo(string title, string message) { Console.ForegroundColor = ConsoleColor.Green; Console.WriteLine($"\n[✔ {title}] {message}"); Console.ResetColor(); } }