win32u: Store the service table entry directly into the ntdll variable.
[wine.git] / include / windows.applicationmodel.idl
blobdfb22d5c37177412663d9b9e25f7a05f022fca18
1 /*
2 * Copyright 2023 Hans Leidekker for CodeWeavers
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 #ifdef __WIDL__
20 #pragma winrt ns_prefix
21 #endif
23 #ifndef DO_NO_IMPORTS
24 import "windows.foundation.idl";
25 import "windows.storage.idl";
26 import "windows.system.idl";
27 import "windows.applicationmodel.core.idl";
28 #endif
30 namespace Windows.ApplicationModel.Core {
31 runtimeclass AppListEntry;
34 namespace Windows.ApplicationModel {
35 typedef struct PackageVersion PackageVersion;
37 interface IAppDisplayInfo;
38 interface IPackage;
39 interface IPackage2;
40 interface IPackage3;
41 interface IPackageStatus;
42 interface IPackageId;
43 interface IPackageIdWithMetadata;
44 interface IPackageStatics;
46 runtimeclass AppDisplayInfo;
47 runtimeclass Package;
48 runtimeclass PackageId;
49 runtimeclass PackageStatus;
51 declare {
52 interface Windows.Foundation.Collections.IIterable<Windows.ApplicationModel.Package *>;
53 interface Windows.Foundation.Collections.IIterator<Windows.ApplicationModel.Package *>;
54 interface Windows.Foundation.Collections.IVectorView<Windows.ApplicationModel.Package *>;
55 interface Windows.Foundation.Collections.IVectorView<Windows.ApplicationModel.Core.AppListEntry *>;
56 interface Windows.Foundation.IAsyncOperation<Windows.Foundation.Collections.IVectorView<Windows.ApplicationModel.Core.AppListEntry *> *>;
57 interface Windows.Foundation.AsyncOperationCompletedHandler<Windows.Foundation.Collections.IVectorView<Windows.ApplicationModel.Core.AppListEntry *> *>;
61 contract(Windows.Foundation.UniversalApiContract, 1.0)
63 struct PackageVersion
65 UINT16 Major;
66 UINT16 Minor;
67 UINT16 Build;
68 UINT16 Revision;
72 contract(Windows.Foundation.UniversalApiContract, 1.0),
73 exclusiveto(Windows.ApplicationModel.AppDisplayInfo),
74 uuid(1aeb1103-e4d4-41aa-a4f6-c4a276e79eac)
76 interface IAppDisplayInfo : IInspectable
78 [propget] HRESULT DisplayName([out, retval] HSTRING *value);
79 [propget] HRESULT Description([out, retval] HSTRING *value);
80 HRESULT GetLogo([in] Windows.Foundation.Size size, [out, retval] Windows.Storage.Streams.RandomAccessStreamReference **value);
84 contract(Windows.Foundation.UniversalApiContract, 1.0),
85 exclusiveto(Windows.ApplicationModel.Package),
86 uuid(163c792f-bd75-413c-bf23-b1fe7b95d825)
88 interface IPackage : IInspectable
90 [propget] HRESULT Id([out, retval] Windows.ApplicationModel.PackageId **value);
91 [propget] HRESULT InstalledLocation([out, retval] Windows.Storage.StorageFolder **value);
92 [propget] HRESULT IsFramework([out, retval] boolean *value);
93 [propget] HRESULT Dependencies([out, retval] Windows.Foundation.Collections.IVectorView<Windows.ApplicationModel.Package *> **value);
97 contract(Windows.Foundation.UniversalApiContract, 1.0),
98 exclusiveto(Windows.ApplicationModel.Package),
99 uuid(a6612fb6-7688-4ace-95fb-359538e7aa01)
101 interface IPackage2 : IInspectable
103 [propget] HRESULT DisplayName([out, retval] HSTRING *value);
104 [propget] HRESULT PublisherDisplayName([out, retval] HSTRING *value);
105 [propget] HRESULT Description([out, retval] HSTRING *value);
106 [propget] HRESULT Logo([out, retval] Windows.Foundation.Uri **value);
107 [propget] HRESULT IsResourcePackage([out, retval] boolean *value);
108 [propget] HRESULT IsBundle([out, retval] boolean *value);
109 [propget] HRESULT IsDevelopmentMode([out, retval] boolean *value);
113 exclusiveto(Windows.ApplicationModel.Package),
114 uuid(5f738b61-f86a-4917-93d1-f1ee9d3b35d9),
115 version(0x0a000000)
117 interface IPackage3 : IInspectable
119 [propget] HRESULT Status([out, retval] Windows.ApplicationModel.PackageStatus **value);
120 [propget] HRESULT InstalledDate([out, retval] Windows.Foundation.DateTime *value);
121 HRESULT GetAppListEntriesAsync([out, retval] Windows.Foundation.IAsyncOperation<Windows.Foundation.Collections.IVectorView<Windows.ApplicationModel.Core.AppListEntry *> *> **operation);
125 contract(Windows.Foundation.UniversalApiContract, 1.0),
126 exclusiveto(Windows.ApplicationModel.PackageStatus),
127 uuid(5fe74f71-a365-4c09-a02d-046d525ea1da)
129 interface IPackageStatus : IInspectable
131 HRESULT VerifyIsOK([out, retval] boolean *value);
132 [propget] HRESULT NotAvailable([out, retval] boolean *value);
133 [propget] HRESULT PackageOffline([out, retval] boolean *value);
134 [propget] HRESULT DataOffline([out, retval] boolean *value);
135 [propget] HRESULT Disabled([out, retval] boolean *value);
136 [propget] HRESULT NeedsRemediation([out, retval] boolean *value);
137 [propget] HRESULT LicenseIssue([out, retval] boolean *value);
138 [propget] HRESULT Modified([out, retval] boolean *value);
139 [propget] HRESULT Tampered([out, retval] boolean *value);
140 [propget] HRESULT DependencyIssue([out, retval] boolean *value);
141 [propget] HRESULT Servicing([out, retval] boolean *value);
142 [propget] HRESULT DeploymentInProgress([out, retval] boolean *value);
146 contract(Windows.Foundation.UniversalApiContract, 1.0),
147 exclusiveto(Windows.ApplicationModel.PackageId),
148 uuid(1adb665e-37c7-4790-9980-dd7ae74e8bb2)
150 interface IPackageId : IInspectable
152 [propget] HRESULT Name([out, retval] HSTRING *value);
153 [propget] HRESULT Version([out, retval] Windows.ApplicationModel.PackageVersion *value);
154 [propget] HRESULT Architecture([out, retval] Windows.System.ProcessorArchitecture *value);
155 [propget] HRESULT ResourceId([out, retval] HSTRING *value);
156 [propget] HRESULT Publisher([out, retval] HSTRING *value);
157 [propget] HRESULT PublisherId([out, retval] HSTRING *value);
158 [propget] HRESULT FullName([out, retval] HSTRING *value);
159 [propget] HRESULT FamilyName([out, retval] HSTRING *value);
163 contract(Windows.Foundation.UniversalApiContract, 1.0),
164 exclusiveto(Windows.ApplicationModel.PackageId),
165 uuid(40577a7c-0c9e-443d-9074-855f5ce0a08d)
167 interface IPackageIdWithMetadata : IInspectable
169 [propget] HRESULT ProductId([out, retval] HSTRING *value);
170 [propget] HRESULT Author([out, retval] HSTRING *value);
174 contract(Windows.Foundation.UniversalApiContract, 1.0),
175 exclusiveto(Windows.ApplicationModel.Package),
176 uuid(4e534bdf-2960-4878-97a4-9624deb72f2d)
178 interface IPackageStatics : IInspectable
180 [propget] HRESULT Current([out, retval] Windows.ApplicationModel.Package **value);
184 contract(Windows.Foundation.UniversalApiContract, 1.0),
185 marshaling_behavior(agile),
186 threading(both)
188 runtimeclass AppDisplayInfo
190 [default] interface Windows.ApplicationModel.IAppDisplayInfo;
194 contract(Windows.Foundation.UniversalApiContract, 1.0),
195 marshaling_behavior(agile),
196 static(Windows.ApplicationModel.IPackageStatics, Windows.Foundation.UniversalApiContract, 1.0),
197 threading(both)
199 runtimeclass Package
201 [default] interface Windows.ApplicationModel.IPackage;
202 [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.ApplicationModel.IPackage2;
203 [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.ApplicationModel.IPackage3;
204 [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.ApplicationModel.IPackageWithMetadata;
205 [contract(Windows.Foundation.UniversalApiContract, 3.0)] interface Windows.ApplicationModel.IPackage4;
206 [contract(Windows.Foundation.UniversalApiContract, 4.0)] interface Windows.ApplicationModel.IPackage5;
207 [contract(Windows.Foundation.UniversalApiContract, 7.0)] interface Windows.ApplicationModel.IPackage6;
208 [contract(Windows.Foundation.UniversalApiContract, 8.0)] interface Windows.ApplicationModel.IPackage7;
209 [contract(Windows.Foundation.UniversalApiContract, 10.0)] interface Windows.ApplicationModel.IPackage8;
213 contract(Windows.Foundation.UniversalApiContract, 1.0),
214 marshaling_behavior(agile)
216 runtimeclass PackageStatus
218 [default] interface Windows.ApplicationModel.IPackageStatus;
219 [contract(Windows.Foundation.UniversalApiContract, 4.0)] interface Windows.ApplicationModel.IPackageStatus2;
223 contract(Windows.Foundation.UniversalApiContract, 1.0),
224 marshaling_behavior(agile)
226 runtimeclass PackageId
228 [default] interface Windows.ApplicationModel.IPackageId;
229 [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.ApplicationModel.IPackageIdWithMetadata;