// Copyright (c) Microsoft Corporation
// The Microsoft Corporation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.
using System;
using System.Collections.Generic;
using Microsoft.CmdPal.Ext.Apps.Programs;
namespace Microsoft.CmdPal.Ext.Apps;
///
/// Interface for application cache that provides access to Win32 and UWP applications.
///
public interface IAppCache : IDisposable
{
///
/// Gets the collection of Win32 programs.
///
IList Win32s { get; }
///
/// Gets the collection of UWP applications.
///
IList UWPs { get; }
///
/// Determines whether the cache should be reloaded.
///
/// True if cache should be reloaded, false otherwise.
bool ShouldReload();
///
/// Resets the reload flag.
///
void ResetReloadFlag();
}