using System;
using System.Threading.Tasks;
namespace InABox.Mobile
{
internal class LatestVersionException : Exception
{
public LatestVersionException(string message)
: base(message)
{
}
public LatestVersionException(Exception innerException)
: base("", innerException)
{
}
public LatestVersionException(string message, Exception innerException)
: base(message, innerException)
{
}
}
///
/// LatestVersion plugin
///
public interface IAppVersion
{
///
/// Gets the version number of the current app's installed version.
///
/// The current app's installed version number.
string InstalledVersionNumber { get; }
///
/// Checks if the current app is the latest version available in the public store.
///
/// True if the current app is the latest version available, false otherwise.
Task IsUsingLatestVersion();
///
/// Gets the version number of the current app's latest version available in the public store.
///
/// The current app's latest version number.
Task GetLatestVersionNumber();
///
/// Gets the version number of an app's latest version available in the public store.
///
/// The specified app's latest version number
/// Name of the app to get.
Task GetLatestVersionNumber(string appName);
///
/// Opens the current app in the public store.
///
Task OpenAppInStore();
///
/// Opens an app in the public store.
///
/// Name of the app to open.
Task OpenAppInStore(string appName);
}
}