using Avalonia.Controls;
namespace LanMountainDesktop.AirAppSdk;
///
/// Interface for AirApp windows.
///
public interface IAirAppWindow
{
///
/// Gets the window descriptor (configuration).
///
AirAppWindowDescriptor Descriptor { get; }
///
/// Called before the window is opened.
/// Use this for async initialization.
///
Task OnWindowOpeningAsync();
///
/// Called after the window has been opened.
///
void OnWindowOpened();
///
/// Called when the window is closing.
/// Set e.Cancel = true to prevent closing.
///
void OnWindowClosing(WindowClosingEventArgs e);
///
/// Called after the window has been closed.
///
void OnWindowClosed();
}