EventRegistrationToken is used as belonging to Windows::Foundation when in fact
it's global. It's a trick so the header can be generated, properly not using
the namespace in the header.

IStorageApplicationPermissionsStatics is the interface to use to access the 
static methods
of StorageApplicationPermissions [1], to use by creating an instance of
"Windows.Storage.AccessCache.StorageApplicationPermissions" with 
RoGetActivationFactory().

IStorageItemAccessList is described at [2].

[1] 
https://docs.microsoft.com/en-us/uwp/api/windows.storage.accesscache.storageapplicationpermissions
[2] 
https://docs.microsoft.com/en-us/uwp/api/windows.storage.accesscache.istorageitemaccesslist
---
 mingw-w64-headers/Makefile.am                 |   1 +
 .../include/windows.storage.accesscache.h     | 568 ++++++++++++++++++
 .../include/windows.storage.accesscache.idl   |  65 ++
 3 files changed, 634 insertions(+)
 create mode 100644 mingw-w64-headers/include/windows.storage.accesscache.h
 create mode 100644 mingw-w64-headers/include/windows.storage.accesscache.idl

diff --git a/mingw-w64-headers/Makefile.am b/mingw-w64-headers/Makefile.am
index 0b3aed0f..7ca642cb 100644
--- a/mingw-w64-headers/Makefile.am
+++ b/mingw-w64-headers/Makefile.am
@@ -242,6 +242,7 @@ IDL_SRCS = \
   include/windows.foundation.idl \
   include/windows.security.cryptography.idl \
   include/windows.storage.idl \
+  include/windows.storage.accesscache.idl \
   include/windows.storage.streams.idl \
   include/windows.system.idl \
   include/windows.system.threading.idl \
diff --git a/mingw-w64-headers/include/windows.storage.accesscache.h 
b/mingw-w64-headers/include/windows.storage.accesscache.h
new file mode 100644
index 00000000..1b4de62a
--- /dev/null
+++ b/mingw-w64-headers/include/windows.storage.accesscache.h
@@ -0,0 +1,568 @@
+/*** Autogenerated by WIDL 5.19 from windows.storage.accesscache.idl - Do not 
edit ***/
+
+#ifdef _WIN32
+#ifndef __REQUIRED_RPCNDR_H_VERSION__
+#define __REQUIRED_RPCNDR_H_VERSION__ 475
+#endif
+#include <rpc.h>
+#include <rpcndr.h>
+#endif
+
+#ifndef COM_NO_WINDOWS_H
+#include <windows.h>
+#include <ole2.h>
+#endif
+
+#ifndef __windows_storage_accesscache_h__
+#define __windows_storage_accesscache_h__
+
+/* Forward declarations */
+
+#ifndef 
____x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics_FWD_DEFINED__
+#define 
____x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics_FWD_DEFINED__
+typedef interface 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics;
+#ifdef __cplusplus
+namespace ABI {
+    namespace Windows {
+        namespace Storage {
+            namespace AccessCache {
+                interface IStorageApplicationPermissionsStatics;
+            }
+        }
+    }
+}
+#endif /* __cplusplus */
+#endif
+
+#ifndef 
____x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_FWD_DEFINED__
+#define 
____x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_FWD_DEFINED__
+typedef interface 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList;
+#ifdef __cplusplus
+namespace ABI {
+    namespace Windows {
+        namespace Storage {
+            namespace AccessCache {
+                interface IStorageItemAccessList;
+            }
+        }
+    }
+}
+#endif /* __cplusplus */
+#endif
+
+/* Headers for imported files */
+
+#include <inspectable.h>
+#include <windows.foundation.h>
+#include <windows.storage.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#ifndef 
____x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_FWD_DEFINED__
+#define 
____x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_FWD_DEFINED__
+typedef interface 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList;
+#ifdef __cplusplus
+namespace ABI {
+    namespace Windows {
+        namespace Storage {
+            namespace AccessCache {
+                interface IStorageItemAccessList;
+            }
+        }
+    }
+}
+#endif /* __cplusplus */
+#endif
+
+#ifndef 
____x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics_FWD_DEFINED__
+#define 
____x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics_FWD_DEFINED__
+typedef interface 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics;
+#ifdef __cplusplus
+namespace ABI {
+    namespace Windows {
+        namespace Storage {
+            namespace AccessCache {
+                interface IStorageApplicationPermissionsStatics;
+            }
+        }
+    }
+}
+#endif /* __cplusplus */
+#endif
+
+#ifndef 
____x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemMostRecentlyUsedList_FWD_DEFINED__
+#define 
____x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemMostRecentlyUsedList_FWD_DEFINED__
+typedef interface 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemMostRecentlyUsedList 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemMostRecentlyUsedList;
+#ifdef __cplusplus
+namespace ABI {
+    namespace Windows {
+        namespace Storage {
+            namespace AccessCache {
+                interface IStorageItemMostRecentlyUsedList;
+            }
+        }
+    }
+}
+#endif /* __cplusplus */
+#endif
+
+typedef enum AccessCacheOptions {
+    AccessCacheOptions_None = 0x0,
+    AccessCacheOptions_DisallowUserInput = 0x1,
+    AccessCacheOptions_FastLocationsOnly = 0x2,
+    AccessCacheOptions_UseReadOnlyCachedCopy = 0x4,
+    AccessCacheOptions_SuppressAccessTimeUpdate = 0x8
+} AccessCacheOptions;
+/*****************************************************************************
+ * IStorageApplicationPermissionsStatics interface
+ */
+#ifndef 
____x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics_INTERFACE_DEFINED__
+#define 
____x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics_INTERFACE_DEFINED__
+
+DEFINE_GUID(IID___x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics,
 0x4391dfaa, 0xd033, 0x48f9, 0x80,0x60, 0x3e,0xc8,0x47,0xd2,0xe3,0xf1);
+#if defined(__cplusplus) && !defined(CINTERFACE)
+} /* extern "C" */
+namespace ABI {
+    namespace Windows {
+        namespace Storage {
+            namespace AccessCache {
+                MIDL_INTERFACE("4391dfaa-d033-48f9-8060-3ec847d2e3f1")
+                IStorageApplicationPermissionsStatics : public IInspectable
+                {
+                    virtual HRESULT STDMETHODCALLTYPE get_FutureAccessList(
+                        IStorageItemAccessList **value) = 0;
+
+                    virtual HRESULT STDMETHODCALLTYPE get_MostRecentlyUsedList(
+                        IStorageItemMostRecentlyUsedList **value) = 0;
+
+                };
+            }
+        }
+    }
+}
+extern "C" {
+#ifdef __CRT_UUID_DECL
+__CRT_UUID_DECL(ABI::Windows::Storage::AccessCache::IStorageApplicationPermissionsStatics,
 0x4391dfaa, 0xd033, 0x48f9, 0x80,0x60, 0x3e,0xc8,0x47,0xd2,0xe3,0xf1)
+#endif
+#else
+typedef struct 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStaticsVtbl
 {
+    BEGIN_INTERFACE
+
+    /*** IUnknown methods ***/
+    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
+        
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics 
*This,
+        REFIID riid,
+        void **ppvObject);
+
+    ULONG (STDMETHODCALLTYPE *AddRef)(
+        
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics 
*This);
+
+    ULONG (STDMETHODCALLTYPE *Release)(
+        
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics 
*This);
+
+    /*** IInspectable methods ***/
+    HRESULT (STDMETHODCALLTYPE *GetIids)(
+        
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics 
*This,
+        ULONG *iidCount,
+        IID **iids);
+
+    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
+        
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics 
*This,
+        HSTRING *className);
+
+    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
+        
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics 
*This,
+        TrustLevel *trustLevel);
+
+    /*** IStorageApplicationPermissionsStatics methods ***/
+    HRESULT (STDMETHODCALLTYPE *get_FutureAccessList)(
+        
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics 
*This,
+        __x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList 
**value);
+
+    HRESULT (STDMETHODCALLTYPE *get_MostRecentlyUsedList)(
+        
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics 
*This,
+        
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemMostRecentlyUsedList 
**value);
+
+    END_INTERFACE
+} 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStaticsVtbl;
+
+interface 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics {
+    CONST_VTBL 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStaticsVtbl*
 lpVtbl;
+};
+
+#ifdef COBJMACROS
+#ifndef WIDL_C_INLINE_WRAPPERS
+/*** IUnknown methods ***/
+#define 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics_QueryInterface(This,riid,ppvObject)
 (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
+#define 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics_AddRef(This)
 (This)->lpVtbl->AddRef(This)
+#define 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics_Release(This)
 (This)->lpVtbl->Release(This)
+/*** IInspectable methods ***/
+#define 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics_GetIids(This,iidCount,iids)
 (This)->lpVtbl->GetIids(This,iidCount,iids)
+#define 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics_GetRuntimeClassName(This,className)
 (This)->lpVtbl->GetRuntimeClassName(This,className)
+#define 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics_GetTrustLevel(This,trustLevel)
 (This)->lpVtbl->GetTrustLevel(This,trustLevel)
+/*** IStorageApplicationPermissionsStatics methods ***/
+#define 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics_get_FutureAccessList(This,value)
 (This)->lpVtbl->get_FutureAccessList(This,value)
+#define 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics_get_MostRecentlyUsedList(This,value)
 (This)->lpVtbl->get_MostRecentlyUsedList(This,value)
+#else
+/*** IUnknown methods ***/
+static FORCEINLINE HRESULT 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics_QueryInterface(__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics*
 This,REFIID riid,void **ppvObject) {
+    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
+}
+static FORCEINLINE ULONG 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics_AddRef(__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics*
 This) {
+    return This->lpVtbl->AddRef(This);
+}
+static FORCEINLINE ULONG 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics_Release(__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics*
 This) {
+    return This->lpVtbl->Release(This);
+}
+/*** IInspectable methods ***/
+static FORCEINLINE HRESULT 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics_GetIids(__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics*
 This,ULONG *iidCount,IID **iids) {
+    return This->lpVtbl->GetIids(This,iidCount,iids);
+}
+static FORCEINLINE HRESULT 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics_GetRuntimeClassName(__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics*
 This,HSTRING *className) {
+    return This->lpVtbl->GetRuntimeClassName(This,className);
+}
+static FORCEINLINE HRESULT 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics_GetTrustLevel(__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics*
 This,TrustLevel *trustLevel) {
+    return This->lpVtbl->GetTrustLevel(This,trustLevel);
+}
+/*** IStorageApplicationPermissionsStatics methods ***/
+static FORCEINLINE HRESULT 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics_get_FutureAccessList(__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics*
 This,__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList **value) {
+    return This->lpVtbl->get_FutureAccessList(This,value);
+}
+static FORCEINLINE HRESULT 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics_get_MostRecentlyUsedList(__x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics*
 This,__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemMostRecentlyUsedList 
**value) {
+    return This->lpVtbl->get_MostRecentlyUsedList(This,value);
+}
+#endif
+#endif
+
+#endif
+
+#endif  /* 
____x_ABI_CWindows_CStorage_CAccessCache_CIStorageApplicationPermissionsStatics_INTERFACE_DEFINED__
 */
+
+/*****************************************************************************
+ * IStorageItemAccessList interface
+ */
+#ifndef 
____x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_INTERFACE_DEFINED__
+#define 
____x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_INTERFACE_DEFINED__
+
+DEFINE_GUID(IID___x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList,
 0x2caff6ad, 0xde90, 0x47f5, 0xb2,0xc3, 0xdd,0x36,0xc9,0xfd,0xd4,0x53);
+#if defined(__cplusplus) && !defined(CINTERFACE)
+} /* extern "C" */
+namespace ABI {
+    namespace Windows {
+        namespace Storage {
+            namespace AccessCache {
+                MIDL_INTERFACE("2caff6ad-de90-47f5-b2c3-dd36c9fdd453")
+                IStorageItemAccessList : public IInspectable
+                {
+                    virtual HRESULT STDMETHODCALLTYPE 
AddOverloadDefaultMetadata(
+                        IStorageItem *file,
+                        HSTRING *token) = 0;
+
+                    virtual HRESULT STDMETHODCALLTYPE Add(
+                        IStorageItem *file,
+                        HSTRING metadata,
+                        HSTRING *token) = 0;
+
+                    virtual HRESULT STDMETHODCALLTYPE 
AddOrReplaceOverloadDefaultMetadata(
+                        HSTRING token,
+                        IStorageItem *file) = 0;
+
+                    virtual HRESULT STDMETHODCALLTYPE AddOrReplace(
+                        HSTRING token,
+                        IStorageItem *file,
+                        HSTRING metadata) = 0;
+
+                    virtual HRESULT STDMETHODCALLTYPE GetItemAsync(
+                        HSTRING token,
+                        IInspectable **operation) = 0;
+
+                    virtual HRESULT STDMETHODCALLTYPE GetFileAsync(
+                        HSTRING token,
+                        IInspectable **operation) = 0;
+
+                    virtual HRESULT STDMETHODCALLTYPE GetFolderAsync(
+                        HSTRING token,
+                        IInspectable **operation) = 0;
+
+                    virtual HRESULT STDMETHODCALLTYPE GetItemWithOptionsAsync(
+                        HSTRING token,
+                        AccessCacheOptions options,
+                        IInspectable **operation) = 0;
+
+                    virtual HRESULT STDMETHODCALLTYPE GetFileWithOptionsAsync(
+                        HSTRING token,
+                        AccessCacheOptions options,
+                        IInspectable **operation) = 0;
+
+                    virtual HRESULT STDMETHODCALLTYPE 
GetFolderWithOptionsAsync(
+                        HSTRING token,
+                        AccessCacheOptions options,
+                        IInspectable **operation) = 0;
+
+                    virtual HRESULT STDMETHODCALLTYPE Remove(
+                        HSTRING token) = 0;
+
+                    virtual HRESULT STDMETHODCALLTYPE ContainsItem(
+                        HSTRING token,
+                        boolean *value) = 0;
+
+                    virtual HRESULT STDMETHODCALLTYPE Clear(
+                        ) = 0;
+
+                    virtual HRESULT STDMETHODCALLTYPE CheckAccess(
+                        IStorageItem *file,
+                        boolean *value) = 0;
+
+                    virtual HRESULT STDMETHODCALLTYPE get_Entries(
+                        IInspectable **entries) = 0;
+
+                    virtual HRESULT STDMETHODCALLTYPE get_MaximumItemsAllowed(
+                        UINT32 *value) = 0;
+
+                };
+            }
+        }
+    }
+}
+extern "C" {
+#ifdef __CRT_UUID_DECL
+__CRT_UUID_DECL(ABI::Windows::Storage::AccessCache::IStorageItemAccessList, 
0x2caff6ad, 0xde90, 0x47f5, 0xb2,0xc3, 0xdd,0x36,0xc9,0xfd,0xd4,0x53)
+#endif
+#else
+typedef struct 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessListVtbl {
+    BEGIN_INTERFACE
+
+    /*** IUnknown methods ***/
+    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
+        __x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList *This,
+        REFIID riid,
+        void **ppvObject);
+
+    ULONG (STDMETHODCALLTYPE *AddRef)(
+        __x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList *This);
+
+    ULONG (STDMETHODCALLTYPE *Release)(
+        __x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList *This);
+
+    /*** IInspectable methods ***/
+    HRESULT (STDMETHODCALLTYPE *GetIids)(
+        __x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList *This,
+        ULONG *iidCount,
+        IID **iids);
+
+    HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
+        __x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList *This,
+        HSTRING *className);
+
+    HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
+        __x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList *This,
+        TrustLevel *trustLevel);
+
+    /*** IStorageItemAccessList methods ***/
+    HRESULT (STDMETHODCALLTYPE *AddOverloadDefaultMetadata)(
+        __x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList *This,
+        __x_ABI_CWindows_CStorage_CIStorageItem *file,
+        HSTRING *token);
+
+    HRESULT (STDMETHODCALLTYPE *Add)(
+        __x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList *This,
+        __x_ABI_CWindows_CStorage_CIStorageItem *file,
+        HSTRING metadata,
+        HSTRING *token);
+
+    HRESULT (STDMETHODCALLTYPE *AddOrReplaceOverloadDefaultMetadata)(
+        __x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList *This,
+        HSTRING token,
+        __x_ABI_CWindows_CStorage_CIStorageItem *file);
+
+    HRESULT (STDMETHODCALLTYPE *AddOrReplace)(
+        __x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList *This,
+        HSTRING token,
+        __x_ABI_CWindows_CStorage_CIStorageItem *file,
+        HSTRING metadata);
+
+    HRESULT (STDMETHODCALLTYPE *GetItemAsync)(
+        __x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList *This,
+        HSTRING token,
+        IInspectable **operation);
+
+    HRESULT (STDMETHODCALLTYPE *GetFileAsync)(
+        __x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList *This,
+        HSTRING token,
+        IInspectable **operation);
+
+    HRESULT (STDMETHODCALLTYPE *GetFolderAsync)(
+        __x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList *This,
+        HSTRING token,
+        IInspectable **operation);
+
+    HRESULT (STDMETHODCALLTYPE *GetItemWithOptionsAsync)(
+        __x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList *This,
+        HSTRING token,
+        AccessCacheOptions options,
+        IInspectable **operation);
+
+    HRESULT (STDMETHODCALLTYPE *GetFileWithOptionsAsync)(
+        __x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList *This,
+        HSTRING token,
+        AccessCacheOptions options,
+        IInspectable **operation);
+
+    HRESULT (STDMETHODCALLTYPE *GetFolderWithOptionsAsync)(
+        __x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList *This,
+        HSTRING token,
+        AccessCacheOptions options,
+        IInspectable **operation);
+
+    HRESULT (STDMETHODCALLTYPE *Remove)(
+        __x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList *This,
+        HSTRING token);
+
+    HRESULT (STDMETHODCALLTYPE *ContainsItem)(
+        __x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList *This,
+        HSTRING token,
+        boolean *value);
+
+    HRESULT (STDMETHODCALLTYPE *Clear)(
+        __x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList *This);
+
+    HRESULT (STDMETHODCALLTYPE *CheckAccess)(
+        __x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList *This,
+        __x_ABI_CWindows_CStorage_CIStorageItem *file,
+        boolean *value);
+
+    HRESULT (STDMETHODCALLTYPE *get_Entries)(
+        __x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList *This,
+        IInspectable **entries);
+
+    HRESULT (STDMETHODCALLTYPE *get_MaximumItemsAllowed)(
+        __x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList *This,
+        UINT32 *value);
+
+    END_INTERFACE
+} __x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessListVtbl;
+
+interface __x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList {
+    CONST_VTBL 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessListVtbl* lpVtbl;
+};
+
+#ifdef COBJMACROS
+#ifndef WIDL_C_INLINE_WRAPPERS
+/*** IUnknown methods ***/
+#define 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_QueryInterface(This,riid,ppvObject)
 (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
+#define 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_AddRef(This) 
(This)->lpVtbl->AddRef(This)
+#define 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_Release(This) 
(This)->lpVtbl->Release(This)
+/*** IInspectable methods ***/
+#define 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_GetIids(This,iidCount,iids)
 (This)->lpVtbl->GetIids(This,iidCount,iids)
+#define 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_GetRuntimeClassName(This,className)
 (This)->lpVtbl->GetRuntimeClassName(This,className)
+#define 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_GetTrustLevel(This,trustLevel)
 (This)->lpVtbl->GetTrustLevel(This,trustLevel)
+/*** IStorageItemAccessList methods ***/
+#define 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_AddOverloadDefaultMetadata(This,file,token)
 (This)->lpVtbl->AddOverloadDefaultMetadata(This,file,token)
+#define 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_Add(This,file,metadata,token)
 (This)->lpVtbl->Add(This,file,metadata,token)
+#define 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_AddOrReplaceOverloadDefaultMetadata(This,token,file)
 (This)->lpVtbl->AddOrReplaceOverloadDefaultMetadata(This,token,file)
+#define 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_AddOrReplace(This,token,file,metadata)
 (This)->lpVtbl->AddOrReplace(This,token,file,metadata)
+#define 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_GetItemAsync(This,token,operation)
 (This)->lpVtbl->GetItemAsync(This,token,operation)
+#define 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_GetFileAsync(This,token,operation)
 (This)->lpVtbl->GetFileAsync(This,token,operation)
+#define 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_GetFolderAsync(This,token,operation)
 (This)->lpVtbl->GetFolderAsync(This,token,operation)
+#define 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_GetItemWithOptionsAsync(This,token,options,operation)
 (This)->lpVtbl->GetItemWithOptionsAsync(This,token,options,operation)
+#define 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_GetFileWithOptionsAsync(This,token,options,operation)
 (This)->lpVtbl->GetFileWithOptionsAsync(This,token,options,operation)
+#define 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_GetFolderWithOptionsAsync(This,token,options,operation)
 (This)->lpVtbl->GetFolderWithOptionsAsync(This,token,options,operation)
+#define 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_Remove(This,token)
 (This)->lpVtbl->Remove(This,token)
+#define 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_ContainsItem(This,token,value)
 (This)->lpVtbl->ContainsItem(This,token,value)
+#define 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_Clear(This) 
(This)->lpVtbl->Clear(This)
+#define 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_CheckAccess(This,file,value)
 (This)->lpVtbl->CheckAccess(This,file,value)
+#define 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_get_Entries(This,entries)
 (This)->lpVtbl->get_Entries(This,entries)
+#define 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_get_MaximumItemsAllowed(This,value)
 (This)->lpVtbl->get_MaximumItemsAllowed(This,value)
+#else
+/*** IUnknown methods ***/
+static FORCEINLINE HRESULT 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_QueryInterface(__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList*
 This,REFIID riid,void **ppvObject) {
+    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
+}
+static FORCEINLINE ULONG 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_AddRef(__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList*
 This) {
+    return This->lpVtbl->AddRef(This);
+}
+static FORCEINLINE ULONG 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_Release(__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList*
 This) {
+    return This->lpVtbl->Release(This);
+}
+/*** IInspectable methods ***/
+static FORCEINLINE HRESULT 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_GetIids(__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList*
 This,ULONG *iidCount,IID **iids) {
+    return This->lpVtbl->GetIids(This,iidCount,iids);
+}
+static FORCEINLINE HRESULT 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_GetRuntimeClassName(__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList*
 This,HSTRING *className) {
+    return This->lpVtbl->GetRuntimeClassName(This,className);
+}
+static FORCEINLINE HRESULT 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_GetTrustLevel(__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList*
 This,TrustLevel *trustLevel) {
+    return This->lpVtbl->GetTrustLevel(This,trustLevel);
+}
+/*** IStorageItemAccessList methods ***/
+static FORCEINLINE HRESULT 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_AddOverloadDefaultMetadata(__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList*
 This,__x_ABI_CWindows_CStorage_CIStorageItem *file,HSTRING *token) {
+    return This->lpVtbl->AddOverloadDefaultMetadata(This,file,token);
+}
+static FORCEINLINE HRESULT 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_Add(__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList*
 This,__x_ABI_CWindows_CStorage_CIStorageItem *file,HSTRING metadata,HSTRING 
*token) {
+    return This->lpVtbl->Add(This,file,metadata,token);
+}
+static FORCEINLINE HRESULT 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_AddOrReplaceOverloadDefaultMetadata(__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList*
 This,HSTRING token,__x_ABI_CWindows_CStorage_CIStorageItem *file) {
+    return This->lpVtbl->AddOrReplaceOverloadDefaultMetadata(This,token,file);
+}
+static FORCEINLINE HRESULT 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_AddOrReplace(__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList*
 This,HSTRING token,__x_ABI_CWindows_CStorage_CIStorageItem *file,HSTRING 
metadata) {
+    return This->lpVtbl->AddOrReplace(This,token,file,metadata);
+}
+static FORCEINLINE HRESULT 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_GetItemAsync(__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList*
 This,HSTRING token,IInspectable **operation) {
+    return This->lpVtbl->GetItemAsync(This,token,operation);
+}
+static FORCEINLINE HRESULT 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_GetFileAsync(__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList*
 This,HSTRING token,IInspectable **operation) {
+    return This->lpVtbl->GetFileAsync(This,token,operation);
+}
+static FORCEINLINE HRESULT 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_GetFolderAsync(__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList*
 This,HSTRING token,IInspectable **operation) {
+    return This->lpVtbl->GetFolderAsync(This,token,operation);
+}
+static FORCEINLINE HRESULT 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_GetItemWithOptionsAsync(__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList*
 This,HSTRING token,AccessCacheOptions options,IInspectable **operation) {
+    return This->lpVtbl->GetItemWithOptionsAsync(This,token,options,operation);
+}
+static FORCEINLINE HRESULT 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_GetFileWithOptionsAsync(__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList*
 This,HSTRING token,AccessCacheOptions options,IInspectable **operation) {
+    return This->lpVtbl->GetFileWithOptionsAsync(This,token,options,operation);
+}
+static FORCEINLINE HRESULT 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_GetFolderWithOptionsAsync(__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList*
 This,HSTRING token,AccessCacheOptions options,IInspectable **operation) {
+    return 
This->lpVtbl->GetFolderWithOptionsAsync(This,token,options,operation);
+}
+static FORCEINLINE HRESULT 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_Remove(__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList*
 This,HSTRING token) {
+    return This->lpVtbl->Remove(This,token);
+}
+static FORCEINLINE HRESULT 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_ContainsItem(__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList*
 This,HSTRING token,boolean *value) {
+    return This->lpVtbl->ContainsItem(This,token,value);
+}
+static FORCEINLINE HRESULT 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_Clear(__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList*
 This) {
+    return This->lpVtbl->Clear(This);
+}
+static FORCEINLINE HRESULT 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_CheckAccess(__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList*
 This,__x_ABI_CWindows_CStorage_CIStorageItem *file,boolean *value) {
+    return This->lpVtbl->CheckAccess(This,file,value);
+}
+static FORCEINLINE HRESULT 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_get_Entries(__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList*
 This,IInspectable **entries) {
+    return This->lpVtbl->get_Entries(This,entries);
+}
+static FORCEINLINE HRESULT 
__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_get_MaximumItemsAllowed(__x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList*
 This,UINT32 *value) {
+    return This->lpVtbl->get_MaximumItemsAllowed(This,value);
+}
+#endif
+#endif
+
+#endif
+
+#endif  /* 
____x_ABI_CWindows_CStorage_CAccessCache_CIStorageItemAccessList_INTERFACE_DEFINED__
 */
+
+/* Begin additional prototypes for all interfaces */
+
+ULONG           __RPC_USER HSTRING_UserSize     (ULONG *, ULONG, HSTRING *);
+unsigned char * __RPC_USER HSTRING_UserMarshal  (ULONG *, unsigned char *, 
HSTRING *);
+unsigned char * __RPC_USER HSTRING_UserUnmarshal(ULONG *, unsigned char *, 
HSTRING *);
+void            __RPC_USER HSTRING_UserFree     (ULONG *, HSTRING *);
+
+/* End additional prototypes */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __windows_storage_accesscache_h__ */
diff --git a/mingw-w64-headers/include/windows.storage.accesscache.idl 
b/mingw-w64-headers/include/windows.storage.accesscache.idl
new file mode 100644
index 00000000..120b2376
--- /dev/null
+++ b/mingw-w64-headers/include/windows.storage.accesscache.idl
@@ -0,0 +1,65 @@
+/**
+ * This file has no copyright assigned and is placed in the Public Domain.
+ * This file is part of the mingw-w64 runtime package.
+ * No warranty is given; refer to the file DISCLAIMER.PD within this package.
+ */
+
+#ifdef __WIDL__
+#pragma winrt ns_prefix
+#endif
+
+import "inspectable.idl";
+import "windows.foundation.idl";
+import "windows.storage.idl";
+
+namespace Windows {
+  namespace Storage {
+    namespace AccessCache {
+      interface IStorageItemAccessList;
+      interface IStorageApplicationPermissionsStatics;
+      interface IStorageItemMostRecentlyUsedList;
+    }
+  }
+}
+
+namespace Windows {
+  namespace Storage {
+    namespace AccessCache {
+      typedef enum AccessCacheOptions {
+        None = 0x0,
+        DisallowUserInput = 0x1,
+        FastLocationsOnly = 0x2,
+        UseReadOnlyCachedCopy = 0x4,
+        SuppressAccessTimeUpdate = 0x8
+      } AccessCacheOptions;
+
+      [uuid(4391DFAA-D033-48F9-8060-3EC847D2E3F1)]
+      interface IStorageApplicationPermissionsStatics : IInspectable
+      {
+          [propget] HRESULT FutureAccessList(IStorageItemAccessList** value);
+          [propget] HRESULT 
MostRecentlyUsedList(IStorageItemMostRecentlyUsedList** value);
+      }
+
+      [uuid(2CAFF6AD-DE90-47F5-B2C3-DD36C9FDD453)]
+      interface IStorageItemAccessList : IInspectable
+      {
+          HRESULT AddOverloadDefaultMetadata(Windows.Storage.IStorageItem* 
file, HSTRING* token);
+          HRESULT Add(Windows.Storage.IStorageItem* file, HSTRING metadata, 
HSTRING* token);
+          HRESULT AddOrReplaceOverloadDefaultMetadata(HSTRING token, 
Windows.Storage.IStorageItem* file);
+          HRESULT AddOrReplace(HSTRING token, Windows.Storage.IStorageItem* 
file, HSTRING metadata);
+          HRESULT GetItemAsync(HSTRING token, 
/*IAsyncOperation<IStorageItem*>*/IInspectable** operation);
+          HRESULT GetFileAsync(HSTRING token, 
/*IAsyncOperation<StorageFile*>*/ IInspectable** operation);
+          HRESULT GetFolderAsync(HSTRING token, 
/*IAsyncOperation<IStorageFolder*>*/IInspectable** operation);
+          HRESULT GetItemWithOptionsAsync(HSTRING token, AccessCacheOptions 
options, /*IAsyncOperation<IStorageItem*>*/IInspectable** operation);
+          HRESULT GetFileWithOptionsAsync(HSTRING token, AccessCacheOptions 
options, /*IAsyncOperation<StorageFile*>*/ IInspectable** operation);
+          HRESULT GetFolderWithOptionsAsync(HSTRING token, AccessCacheOptions 
options, /*IAsyncOperation<IStorageFolder*>*/IInspectable** operation);
+          HRESULT Remove(HSTRING token);
+          HRESULT ContainsItem(HSTRING token, boolean* value);
+          HRESULT Clear();
+          HRESULT CheckAccess(Windows.Storage.IStorageItem* file, boolean* 
value);
+          [propget] HRESULT Entries(/*AccessListEntryView*/ IInspectable** 
entries);
+          [propget] HRESULT MaximumItemsAllowed(UINT32* value);
+      }
+    }
+  }
+}
-- 
2.29.2



_______________________________________________
Mingw-w64-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to