using System.Collections.Generic;
using System.Security.Principal;
using Catel.Configuration;
using Catel.Services;
using Catel.ExceptionHandling;
using Catel.MVVM.Views;
using CatelSample.ViewModels.Interfaces;

namespace CatelSample
{
    public interface IContext
    {
        IMessageService Dialogs { get; set; }
        IDispatcherService Dispatcher { get; set; }
        IIdentity Identity { get; set; }
        IPrincipal Principal { get; set; }
        IConfigurationService Settings { get; set; }
        ILanguageService Resources { get; set; }
        IExceptionService ExceptionService { get; set; }
        IPleaseWaitService WaitService { get; set; }
        ITabService TabService { get; set; }
        IViewManager ViewManager { get; set; }
        IUIVisualizerService Visualizer { get; set; }
    }
}