using System.ComponentModel;
using System.Threading.Tasks;
// ReSharper disable CheckNamespace
namespace DTS.Common.Base
{
public interface IBaseWindowModel : INotifyPropertyChanged
{
///
/// Gets, sets the IsMenuIncluded status.
///
bool IsMenuIncluded { get; set; }
///
/// Gets, sets the IsNavigationIncluded status.
///
bool IsNavigationIncluded { get; set; }
///
/// Gets the IsBusy status.
///
bool IsBusy { get; set; }
///
/// The Activated method.
///
void Activated();
///
/// Gets the IsDirty status.
///
bool IsDirty { get; }
///
/// The Cleanup method.
///
void Cleanup();
///
/// Starts the cleanup process asynchronously.
///
Task CleanupAsync();
///
/// The Initialize method.
///
void Initialize();
///
/// The Initialize method.
///
/// The parameter to initialize the viewmodel.
void Initialize(object parameter);
///
/// Starts the initialization process asynchronously.
///
Task InitializeAsync();
///
/// Starts the initialization process asynchronously.
///
/// The parameter to initialize the viewmodel.
Task InitializeAsync(object parameter);
}
}