using System; namespace Artemis.UI.Shared.Services.MainWindow; /// /// Represents a class that provides the main window, so that can control the state /// of /// the main window. /// public interface IMainWindowProvider { /// /// Gets a boolean indicating whether the main window is currently open /// bool IsMainWindowOpen { get; } /// /// Gets a boolean indicating whether the main window is currently focused /// bool IsMainWindowFocused { get; } /// /// Opens the main window /// void OpenMainWindow(); /// /// Closes the main window /// void CloseMainWindow(); /// /// Occurs when the main window has been opened /// public event EventHandler? MainWindowOpened; /// /// Occurs when the main window has been closed /// public event EventHandler? MainWindowClosed; /// /// Occurs when the main window has been focused /// public event EventHandler? MainWindowFocused; /// /// Occurs when the main window has been unfocused /// public event EventHandler? MainWindowUnfocused; }