using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
namespace LanMountainDesktop.AirAppSdk;
///
/// Core interface for AirApp entry point.
///
public interface IAirApp
{
///
/// Initialize the AirApp and register services.
/// Called during host startup before the application is fully running.
///
/// Host builder context
/// Service collection for dependency injection
void Initialize(HostBuilderContext context, IServiceCollection services);
///
/// Called after the host application has started.
/// Use this for initialization that requires runtime services.
///
/// AirApp runtime context
Task OnStartedAsync(IAirAppRuntimeContext context);
///
/// Called when the host application is stopping.
/// Use this for cleanup and resource disposal.
///
Task OnStoppingAsync();
}