IAppCache.cs
1 // Copyright (c) Microsoft Corporation 2 // The Microsoft Corporation licenses this file to you under the MIT license. 3 // See the LICENSE file in the project root for more information. 4 5 using System; 6 using System.Collections.Generic; 7 using Microsoft.CmdPal.Ext.Apps.Programs; 8 9 namespace Microsoft.CmdPal.Ext.Apps; 10 11 /// <summary> 12 /// Interface for application cache that provides access to Win32 and UWP applications. 13 /// </summary> 14 public interface IAppCache : IDisposable 15 { 16 /// <summary> 17 /// Gets the collection of Win32 programs. 18 /// </summary> 19 IList<Win32Program> Win32s { get; } 20 21 /// <summary> 22 /// Gets the collection of UWP applications. 23 /// </summary> 24 IList<IUWPApplication> UWPs { get; } 25 26 /// <summary> 27 /// Determines whether the cache should be reloaded. 28 /// </summary> 29 /// <returns>True if cache should be reloaded, false otherwise.</returns> 30 bool ShouldReload(); 31 32 /// <summary> 33 /// Resets the reload flag. 34 /// </summary> 35 void ResetReloadFlag(); 36 }