using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using static Tango.SharedUI.Controls.NavigationControl;
namespace Tango.MachineStudio.Common
{
/// <summary>
/// Represents a Machine Studio view model.
/// </summary>
public interface IStudioViewModel : INavigationViewModel
{
/// <summary>
/// Called when application is shutting down.
/// </summary>
void OnShuttingDown();
/// <summary>
/// Called before the application is shutting down.
/// Return false to cancel the shutdown in case an important process is in progress.
/// </summary>
/// <returns></returns>
Task<bool> OnShutdownRequest();
/// <summary>
/// Called when the application has been started
/// </summary>
void OnApplicationStarted();
/// <summary>
/// Called when the application is ready and all modules are loaded.
/// </summary>
void OnApplicationReady();
}
}