1 #![allow(unused_variables, non_upper_case_globals, non_snake_case, unused_unsafe, non_camel_case_types, dead_code, clippy::all)]
2 #[cfg(feature = "Management_Deployment_Preview")]
3 pub mod Preview;
4 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
5 #[repr(transparent)]
6 pub struct AddPackageByAppInstallerOptions(pub u32);
7 impl AddPackageByAppInstallerOptions {
8     pub const None: AddPackageByAppInstallerOptions = AddPackageByAppInstallerOptions(0u32);
9     pub const InstallAllResources: AddPackageByAppInstallerOptions = AddPackageByAppInstallerOptions(32u32);
10     pub const ForceTargetAppShutdown: AddPackageByAppInstallerOptions = AddPackageByAppInstallerOptions(64u32);
11     pub const RequiredContentGroupOnly: AddPackageByAppInstallerOptions = AddPackageByAppInstallerOptions(256u32);
12     pub const LimitToExistingPackages: AddPackageByAppInstallerOptions = AddPackageByAppInstallerOptions(512u32);
13 }
14 impl ::std::convert::From<u32> for AddPackageByAppInstallerOptions {
from(value: u32) -> Self15     fn from(value: u32) -> Self {
16         Self(value)
17     }
18 }
19 unsafe impl ::windows::runtime::Abi for AddPackageByAppInstallerOptions {
20     type Abi = Self;
21     type DefaultType = Self;
22 }
23 unsafe impl ::windows::runtime::RuntimeType for AddPackageByAppInstallerOptions {
24     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Management.Deployment.AddPackageByAppInstallerOptions;u4)");
25 }
26 impl ::std::ops::BitOr for AddPackageByAppInstallerOptions {
27     type Output = Self;
bitor(self, rhs: Self) -> Self28     fn bitor(self, rhs: Self) -> Self {
29         Self(self.0 | rhs.0)
30     }
31 }
32 impl ::std::ops::BitAnd for AddPackageByAppInstallerOptions {
33     type Output = Self;
bitand(self, rhs: Self) -> Self34     fn bitand(self, rhs: Self) -> Self {
35         Self(self.0 & rhs.0)
36     }
37 }
38 impl ::std::ops::BitOrAssign for AddPackageByAppInstallerOptions {
bitor_assign(&mut self, rhs: Self)39     fn bitor_assign(&mut self, rhs: Self) {
40         self.0.bitor_assign(rhs.0)
41     }
42 }
43 impl ::std::ops::BitAndAssign for AddPackageByAppInstallerOptions {
bitand_assign(&mut self, rhs: Self)44     fn bitand_assign(&mut self, rhs: Self) {
45         self.0.bitand_assign(rhs.0)
46     }
47 }
48 impl ::std::ops::Not for AddPackageByAppInstallerOptions {
49     type Output = Self;
not(self) -> Self50     fn not(self) -> Self {
51         Self(self.0.not())
52     }
53 }
54 #[repr(transparent)]
55 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
56 pub struct AddPackageOptions(::windows::runtime::IInspectable);
57 impl AddPackageOptions {
new() -> ::windows::runtime::Result<Self>58     pub fn new() -> ::windows::runtime::Result<Self> {
59         Self::IActivationFactory(|f| f.activate_instance::<Self>())
60     }
IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>61     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
62         static mut SHARED: ::windows::runtime::FactoryCache<AddPackageOptions, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
63         unsafe { SHARED.call(callback) }
64     }
65     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
DependencyPackageUris(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::Foundation::Uri>>66     pub fn DependencyPackageUris(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::Foundation::Uri>> {
67         let this = self;
68         unsafe {
69             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
70             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<super::super::Foundation::Uri>>(result__)
71         }
72     }
TargetVolume(&self) -> ::windows::runtime::Result<PackageVolume>73     pub fn TargetVolume(&self) -> ::windows::runtime::Result<PackageVolume> {
74         let this = self;
75         unsafe {
76             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
77             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<PackageVolume>(result__)
78         }
79     }
SetTargetVolume<'a, Param0: ::windows::runtime::IntoParam<'a, PackageVolume>>(&self, value: Param0) -> ::windows::runtime::Result<()>80     pub fn SetTargetVolume<'a, Param0: ::windows::runtime::IntoParam<'a, PackageVolume>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
81         let this = self;
82         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
83     }
84     #[cfg(feature = "Foundation_Collections")]
OptionalPackageFamilyNames(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<::windows::runtime::HSTRING>>85     pub fn OptionalPackageFamilyNames(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<::windows::runtime::HSTRING>> {
86         let this = self;
87         unsafe {
88             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
89             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<::windows::runtime::HSTRING>>(result__)
90         }
91     }
92     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
OptionalPackageUris(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::Foundation::Uri>>93     pub fn OptionalPackageUris(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::Foundation::Uri>> {
94         let this = self;
95         unsafe {
96             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
97             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<super::super::Foundation::Uri>>(result__)
98         }
99     }
100     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
RelatedPackageUris(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::Foundation::Uri>>101     pub fn RelatedPackageUris(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::Foundation::Uri>> {
102         let this = self;
103         unsafe {
104             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
105             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<super::super::Foundation::Uri>>(result__)
106         }
107     }
108     #[cfg(feature = "Foundation")]
ExternalLocationUri(&self) -> ::windows::runtime::Result<super::super::Foundation::Uri>109     pub fn ExternalLocationUri(&self) -> ::windows::runtime::Result<super::super::Foundation::Uri> {
110         let this = self;
111         unsafe {
112             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
113             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Uri>(result__)
114         }
115     }
116     #[cfg(feature = "Foundation")]
SetExternalLocationUri<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>>(&self, value: Param0) -> ::windows::runtime::Result<()>117     pub fn SetExternalLocationUri<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
118         let this = self;
119         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
120     }
StubPackageOption(&self) -> ::windows::runtime::Result<StubPackageOption>121     pub fn StubPackageOption(&self) -> ::windows::runtime::Result<StubPackageOption> {
122         let this = self;
123         unsafe {
124             let mut result__: StubPackageOption = ::std::mem::zeroed();
125             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<StubPackageOption>(result__)
126         }
127     }
SetStubPackageOption(&self, value: StubPackageOption) -> ::windows::runtime::Result<()>128     pub fn SetStubPackageOption(&self, value: StubPackageOption) -> ::windows::runtime::Result<()> {
129         let this = self;
130         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
131     }
DeveloperMode(&self) -> ::windows::runtime::Result<bool>132     pub fn DeveloperMode(&self) -> ::windows::runtime::Result<bool> {
133         let this = self;
134         unsafe {
135             let mut result__: bool = ::std::mem::zeroed();
136             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
137         }
138     }
SetDeveloperMode(&self, value: bool) -> ::windows::runtime::Result<()>139     pub fn SetDeveloperMode(&self, value: bool) -> ::windows::runtime::Result<()> {
140         let this = self;
141         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value).ok() }
142     }
ForceAppShutdown(&self) -> ::windows::runtime::Result<bool>143     pub fn ForceAppShutdown(&self) -> ::windows::runtime::Result<bool> {
144         let this = self;
145         unsafe {
146             let mut result__: bool = ::std::mem::zeroed();
147             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
148         }
149     }
SetForceAppShutdown(&self, value: bool) -> ::windows::runtime::Result<()>150     pub fn SetForceAppShutdown(&self, value: bool) -> ::windows::runtime::Result<()> {
151         let this = self;
152         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), value).ok() }
153     }
ForceTargetAppShutdown(&self) -> ::windows::runtime::Result<bool>154     pub fn ForceTargetAppShutdown(&self) -> ::windows::runtime::Result<bool> {
155         let this = self;
156         unsafe {
157             let mut result__: bool = ::std::mem::zeroed();
158             (::windows::runtime::Interface::vtable(this).20)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
159         }
160     }
SetForceTargetAppShutdown(&self, value: bool) -> ::windows::runtime::Result<()>161     pub fn SetForceTargetAppShutdown(&self, value: bool) -> ::windows::runtime::Result<()> {
162         let this = self;
163         unsafe { (::windows::runtime::Interface::vtable(this).21)(::std::mem::transmute_copy(this), value).ok() }
164     }
ForceUpdateFromAnyVersion(&self) -> ::windows::runtime::Result<bool>165     pub fn ForceUpdateFromAnyVersion(&self) -> ::windows::runtime::Result<bool> {
166         let this = self;
167         unsafe {
168             let mut result__: bool = ::std::mem::zeroed();
169             (::windows::runtime::Interface::vtable(this).22)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
170         }
171     }
SetForceUpdateFromAnyVersion(&self, value: bool) -> ::windows::runtime::Result<()>172     pub fn SetForceUpdateFromAnyVersion(&self, value: bool) -> ::windows::runtime::Result<()> {
173         let this = self;
174         unsafe { (::windows::runtime::Interface::vtable(this).23)(::std::mem::transmute_copy(this), value).ok() }
175     }
InstallAllResources(&self) -> ::windows::runtime::Result<bool>176     pub fn InstallAllResources(&self) -> ::windows::runtime::Result<bool> {
177         let this = self;
178         unsafe {
179             let mut result__: bool = ::std::mem::zeroed();
180             (::windows::runtime::Interface::vtable(this).24)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
181         }
182     }
SetInstallAllResources(&self, value: bool) -> ::windows::runtime::Result<()>183     pub fn SetInstallAllResources(&self, value: bool) -> ::windows::runtime::Result<()> {
184         let this = self;
185         unsafe { (::windows::runtime::Interface::vtable(this).25)(::std::mem::transmute_copy(this), value).ok() }
186     }
RequiredContentGroupOnly(&self) -> ::windows::runtime::Result<bool>187     pub fn RequiredContentGroupOnly(&self) -> ::windows::runtime::Result<bool> {
188         let this = self;
189         unsafe {
190             let mut result__: bool = ::std::mem::zeroed();
191             (::windows::runtime::Interface::vtable(this).26)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
192         }
193     }
SetRequiredContentGroupOnly(&self, value: bool) -> ::windows::runtime::Result<()>194     pub fn SetRequiredContentGroupOnly(&self, value: bool) -> ::windows::runtime::Result<()> {
195         let this = self;
196         unsafe { (::windows::runtime::Interface::vtable(this).27)(::std::mem::transmute_copy(this), value).ok() }
197     }
RetainFilesOnFailure(&self) -> ::windows::runtime::Result<bool>198     pub fn RetainFilesOnFailure(&self) -> ::windows::runtime::Result<bool> {
199         let this = self;
200         unsafe {
201             let mut result__: bool = ::std::mem::zeroed();
202             (::windows::runtime::Interface::vtable(this).28)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
203         }
204     }
SetRetainFilesOnFailure(&self, value: bool) -> ::windows::runtime::Result<()>205     pub fn SetRetainFilesOnFailure(&self, value: bool) -> ::windows::runtime::Result<()> {
206         let this = self;
207         unsafe { (::windows::runtime::Interface::vtable(this).29)(::std::mem::transmute_copy(this), value).ok() }
208     }
StageInPlace(&self) -> ::windows::runtime::Result<bool>209     pub fn StageInPlace(&self) -> ::windows::runtime::Result<bool> {
210         let this = self;
211         unsafe {
212             let mut result__: bool = ::std::mem::zeroed();
213             (::windows::runtime::Interface::vtable(this).30)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
214         }
215     }
SetStageInPlace(&self, value: bool) -> ::windows::runtime::Result<()>216     pub fn SetStageInPlace(&self, value: bool) -> ::windows::runtime::Result<()> {
217         let this = self;
218         unsafe { (::windows::runtime::Interface::vtable(this).31)(::std::mem::transmute_copy(this), value).ok() }
219     }
AllowUnsigned(&self) -> ::windows::runtime::Result<bool>220     pub fn AllowUnsigned(&self) -> ::windows::runtime::Result<bool> {
221         let this = self;
222         unsafe {
223             let mut result__: bool = ::std::mem::zeroed();
224             (::windows::runtime::Interface::vtable(this).32)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
225         }
226     }
SetAllowUnsigned(&self, value: bool) -> ::windows::runtime::Result<()>227     pub fn SetAllowUnsigned(&self, value: bool) -> ::windows::runtime::Result<()> {
228         let this = self;
229         unsafe { (::windows::runtime::Interface::vtable(this).33)(::std::mem::transmute_copy(this), value).ok() }
230     }
DeferRegistrationWhenPackagesAreInUse(&self) -> ::windows::runtime::Result<bool>231     pub fn DeferRegistrationWhenPackagesAreInUse(&self) -> ::windows::runtime::Result<bool> {
232         let this = self;
233         unsafe {
234             let mut result__: bool = ::std::mem::zeroed();
235             (::windows::runtime::Interface::vtable(this).34)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
236         }
237     }
SetDeferRegistrationWhenPackagesAreInUse(&self, value: bool) -> ::windows::runtime::Result<()>238     pub fn SetDeferRegistrationWhenPackagesAreInUse(&self, value: bool) -> ::windows::runtime::Result<()> {
239         let this = self;
240         unsafe { (::windows::runtime::Interface::vtable(this).35)(::std::mem::transmute_copy(this), value).ok() }
241     }
242 }
243 unsafe impl ::windows::runtime::RuntimeType for AddPackageOptions {
244     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Management.Deployment.AddPackageOptions;{05cee018-f68f-422b-95a4-66679ec77fc0})");
245 }
246 unsafe impl ::windows::runtime::Interface for AddPackageOptions {
247     type Vtable = IAddPackageOptions_abi;
248     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(97443864, 63119, 16939, [149, 164, 102, 103, 158, 199, 127, 192]);
249 }
250 impl ::windows::runtime::RuntimeName for AddPackageOptions {
251     const NAME: &'static str = "Windows.Management.Deployment.AddPackageOptions";
252 }
253 impl ::std::convert::From<AddPackageOptions> for ::windows::runtime::IUnknown {
from(value: AddPackageOptions) -> Self254     fn from(value: AddPackageOptions) -> Self {
255         unsafe { ::std::mem::transmute(value) }
256     }
257 }
258 impl ::std::convert::From<&AddPackageOptions> for ::windows::runtime::IUnknown {
from(value: &AddPackageOptions) -> Self259     fn from(value: &AddPackageOptions) -> Self {
260         ::std::convert::From::from(::std::clone::Clone::clone(value))
261     }
262 }
263 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for AddPackageOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>264     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
265         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
266     }
267 }
268 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &AddPackageOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>269     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
270         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
271     }
272 }
273 impl ::std::convert::From<AddPackageOptions> for ::windows::runtime::IInspectable {
from(value: AddPackageOptions) -> Self274     fn from(value: AddPackageOptions) -> Self {
275         value.0
276     }
277 }
278 impl ::std::convert::From<&AddPackageOptions> for ::windows::runtime::IInspectable {
from(value: &AddPackageOptions) -> Self279     fn from(value: &AddPackageOptions) -> Self {
280         value.0.clone()
281     }
282 }
283 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for AddPackageOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>284     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
285         ::windows::runtime::Param::Owned(self.0)
286     }
287 }
288 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a AddPackageOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>289     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
290         ::windows::runtime::Param::Borrowed(&self.0)
291     }
292 }
293 unsafe impl ::std::marker::Send for AddPackageOptions {}
294 unsafe impl ::std::marker::Sync for AddPackageOptions {}
295 #[repr(transparent)]
296 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
297 pub struct AppInstallerManager(::windows::runtime::IInspectable);
298 impl AppInstallerManager {
SetAutoUpdateSettings<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, AutoUpdateSettingsOptions>>(&self, packagefamilyname: Param0, appinstallerinfo: Param1) -> ::windows::runtime::Result<()>299     pub fn SetAutoUpdateSettings<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, AutoUpdateSettingsOptions>>(&self, packagefamilyname: Param0, appinstallerinfo: Param1) -> ::windows::runtime::Result<()> {
300         let this = self;
301         unsafe { (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), packagefamilyname.into_param().abi(), appinstallerinfo.into_param().abi()).ok() }
302     }
ClearAutoUpdateSettings<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagefamilyname: Param0) -> ::windows::runtime::Result<()>303     pub fn ClearAutoUpdateSettings<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagefamilyname: Param0) -> ::windows::runtime::Result<()> {
304         let this = self;
305         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), packagefamilyname.into_param().abi()).ok() }
306     }
307     #[cfg(feature = "Foundation")]
PauseAutoUpdatesUntil<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::DateTime>>(&self, packagefamilyname: Param0, datetime: Param1) -> ::windows::runtime::Result<()>308     pub fn PauseAutoUpdatesUntil<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::DateTime>>(&self, packagefamilyname: Param0, datetime: Param1) -> ::windows::runtime::Result<()> {
309         let this = self;
310         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), packagefamilyname.into_param().abi(), datetime.into_param().abi()).ok() }
311     }
GetDefault() -> ::windows::runtime::Result<AppInstallerManager>312     pub fn GetDefault() -> ::windows::runtime::Result<AppInstallerManager> {
313         Self::IAppInstallerManagerStatics(|this| unsafe {
314             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
315             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<AppInstallerManager>(result__)
316         })
317     }
GetForSystem() -> ::windows::runtime::Result<AppInstallerManager>318     pub fn GetForSystem() -> ::windows::runtime::Result<AppInstallerManager> {
319         Self::IAppInstallerManagerStatics(|this| unsafe {
320             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
321             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<AppInstallerManager>(result__)
322         })
323     }
IAppInstallerManagerStatics<R, F: FnOnce(&IAppInstallerManagerStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>324     pub fn IAppInstallerManagerStatics<R, F: FnOnce(&IAppInstallerManagerStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
325         static mut SHARED: ::windows::runtime::FactoryCache<AppInstallerManager, IAppInstallerManagerStatics> = ::windows::runtime::FactoryCache::new();
326         unsafe { SHARED.call(callback) }
327     }
328 }
329 unsafe impl ::windows::runtime::RuntimeType for AppInstallerManager {
330     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Management.Deployment.AppInstallerManager;{e7ee21c3-2103-53ee-9b18-68afeab0033d})");
331 }
332 unsafe impl ::windows::runtime::Interface for AppInstallerManager {
333     type Vtable = IAppInstallerManager_abi;
334     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3891143107, 8451, 21486, [155, 24, 104, 175, 234, 176, 3, 61]);
335 }
336 impl ::windows::runtime::RuntimeName for AppInstallerManager {
337     const NAME: &'static str = "Windows.Management.Deployment.AppInstallerManager";
338 }
339 impl ::std::convert::From<AppInstallerManager> for ::windows::runtime::IUnknown {
from(value: AppInstallerManager) -> Self340     fn from(value: AppInstallerManager) -> Self {
341         unsafe { ::std::mem::transmute(value) }
342     }
343 }
344 impl ::std::convert::From<&AppInstallerManager> for ::windows::runtime::IUnknown {
from(value: &AppInstallerManager) -> Self345     fn from(value: &AppInstallerManager) -> Self {
346         ::std::convert::From::from(::std::clone::Clone::clone(value))
347     }
348 }
349 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for AppInstallerManager {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>350     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
351         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
352     }
353 }
354 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &AppInstallerManager {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>355     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
356         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
357     }
358 }
359 impl ::std::convert::From<AppInstallerManager> for ::windows::runtime::IInspectable {
from(value: AppInstallerManager) -> Self360     fn from(value: AppInstallerManager) -> Self {
361         value.0
362     }
363 }
364 impl ::std::convert::From<&AppInstallerManager> for ::windows::runtime::IInspectable {
from(value: &AppInstallerManager) -> Self365     fn from(value: &AppInstallerManager) -> Self {
366         value.0.clone()
367     }
368 }
369 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for AppInstallerManager {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>370     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
371         ::windows::runtime::Param::Owned(self.0)
372     }
373 }
374 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a AppInstallerManager {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>375     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
376         ::windows::runtime::Param::Borrowed(&self.0)
377     }
378 }
379 unsafe impl ::std::marker::Send for AppInstallerManager {}
380 unsafe impl ::std::marker::Sync for AppInstallerManager {}
381 #[repr(transparent)]
382 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
383 pub struct AutoUpdateSettingsOptions(::windows::runtime::IInspectable);
384 impl AutoUpdateSettingsOptions {
new() -> ::windows::runtime::Result<Self>385     pub fn new() -> ::windows::runtime::Result<Self> {
386         Self::IActivationFactory(|f| f.activate_instance::<Self>())
387     }
IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>388     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
389         static mut SHARED: ::windows::runtime::FactoryCache<AutoUpdateSettingsOptions, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
390         unsafe { SHARED.call(callback) }
391     }
392     #[cfg(feature = "ApplicationModel")]
Version(&self) -> ::windows::runtime::Result<super::super::ApplicationModel::PackageVersion>393     pub fn Version(&self) -> ::windows::runtime::Result<super::super::ApplicationModel::PackageVersion> {
394         let this = self;
395         unsafe {
396             let mut result__: super::super::ApplicationModel::PackageVersion = ::std::mem::zeroed();
397             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::ApplicationModel::PackageVersion>(result__)
398         }
399     }
400     #[cfg(feature = "ApplicationModel")]
SetVersion<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::ApplicationModel::PackageVersion>>(&self, value: Param0) -> ::windows::runtime::Result<()>401     pub fn SetVersion<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::ApplicationModel::PackageVersion>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
402         let this = self;
403         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
404     }
405     #[cfg(feature = "Foundation")]
AppInstallerUri(&self) -> ::windows::runtime::Result<super::super::Foundation::Uri>406     pub fn AppInstallerUri(&self) -> ::windows::runtime::Result<super::super::Foundation::Uri> {
407         let this = self;
408         unsafe {
409             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
410             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Uri>(result__)
411         }
412     }
413     #[cfg(feature = "Foundation")]
SetAppInstallerUri<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>>(&self, value: Param0) -> ::windows::runtime::Result<()>414     pub fn SetAppInstallerUri<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
415         let this = self;
416         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
417     }
OnLaunch(&self) -> ::windows::runtime::Result<bool>418     pub fn OnLaunch(&self) -> ::windows::runtime::Result<bool> {
419         let this = self;
420         unsafe {
421             let mut result__: bool = ::std::mem::zeroed();
422             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
423         }
424     }
SetOnLaunch(&self, value: bool) -> ::windows::runtime::Result<()>425     pub fn SetOnLaunch(&self, value: bool) -> ::windows::runtime::Result<()> {
426         let this = self;
427         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value).ok() }
428     }
HoursBetweenUpdateChecks(&self) -> ::windows::runtime::Result<u32>429     pub fn HoursBetweenUpdateChecks(&self) -> ::windows::runtime::Result<u32> {
430         let this = self;
431         unsafe {
432             let mut result__: u32 = ::std::mem::zeroed();
433             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
434         }
435     }
SetHoursBetweenUpdateChecks(&self, value: u32) -> ::windows::runtime::Result<()>436     pub fn SetHoursBetweenUpdateChecks(&self, value: u32) -> ::windows::runtime::Result<()> {
437         let this = self;
438         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
439     }
ShowPrompt(&self) -> ::windows::runtime::Result<bool>440     pub fn ShowPrompt(&self) -> ::windows::runtime::Result<bool> {
441         let this = self;
442         unsafe {
443             let mut result__: bool = ::std::mem::zeroed();
444             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
445         }
446     }
SetShowPrompt(&self, value: bool) -> ::windows::runtime::Result<()>447     pub fn SetShowPrompt(&self, value: bool) -> ::windows::runtime::Result<()> {
448         let this = self;
449         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
450     }
UpdateBlocksActivation(&self) -> ::windows::runtime::Result<bool>451     pub fn UpdateBlocksActivation(&self) -> ::windows::runtime::Result<bool> {
452         let this = self;
453         unsafe {
454             let mut result__: bool = ::std::mem::zeroed();
455             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
456         }
457     }
SetUpdateBlocksActivation(&self, value: bool) -> ::windows::runtime::Result<()>458     pub fn SetUpdateBlocksActivation(&self, value: bool) -> ::windows::runtime::Result<()> {
459         let this = self;
460         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value).ok() }
461     }
AutomaticBackgroundTask(&self) -> ::windows::runtime::Result<bool>462     pub fn AutomaticBackgroundTask(&self) -> ::windows::runtime::Result<bool> {
463         let this = self;
464         unsafe {
465             let mut result__: bool = ::std::mem::zeroed();
466             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
467         }
468     }
SetAutomaticBackgroundTask(&self, value: bool) -> ::windows::runtime::Result<()>469     pub fn SetAutomaticBackgroundTask(&self, value: bool) -> ::windows::runtime::Result<()> {
470         let this = self;
471         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), value).ok() }
472     }
ForceUpdateFromAnyVersion(&self) -> ::windows::runtime::Result<bool>473     pub fn ForceUpdateFromAnyVersion(&self) -> ::windows::runtime::Result<bool> {
474         let this = self;
475         unsafe {
476             let mut result__: bool = ::std::mem::zeroed();
477             (::windows::runtime::Interface::vtable(this).20)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
478         }
479     }
SetForceUpdateFromAnyVersion(&self, value: bool) -> ::windows::runtime::Result<()>480     pub fn SetForceUpdateFromAnyVersion(&self, value: bool) -> ::windows::runtime::Result<()> {
481         let this = self;
482         unsafe { (::windows::runtime::Interface::vtable(this).21)(::std::mem::transmute_copy(this), value).ok() }
483     }
IsAutoRepairEnabled(&self) -> ::windows::runtime::Result<bool>484     pub fn IsAutoRepairEnabled(&self) -> ::windows::runtime::Result<bool> {
485         let this = self;
486         unsafe {
487             let mut result__: bool = ::std::mem::zeroed();
488             (::windows::runtime::Interface::vtable(this).22)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
489         }
490     }
SetIsAutoRepairEnabled(&self, value: bool) -> ::windows::runtime::Result<()>491     pub fn SetIsAutoRepairEnabled(&self, value: bool) -> ::windows::runtime::Result<()> {
492         let this = self;
493         unsafe { (::windows::runtime::Interface::vtable(this).23)(::std::mem::transmute_copy(this), value).ok() }
494     }
495     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
UpdateUris(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::Foundation::Uri>>496     pub fn UpdateUris(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::Foundation::Uri>> {
497         let this = self;
498         unsafe {
499             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
500             (::windows::runtime::Interface::vtable(this).24)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<super::super::Foundation::Uri>>(result__)
501         }
502     }
503     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
RepairUris(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::Foundation::Uri>>504     pub fn RepairUris(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::Foundation::Uri>> {
505         let this = self;
506         unsafe {
507             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
508             (::windows::runtime::Interface::vtable(this).25)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<super::super::Foundation::Uri>>(result__)
509         }
510     }
511     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
DependencyPackageUris(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::Foundation::Uri>>512     pub fn DependencyPackageUris(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::Foundation::Uri>> {
513         let this = self;
514         unsafe {
515             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
516             (::windows::runtime::Interface::vtable(this).26)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<super::super::Foundation::Uri>>(result__)
517         }
518     }
519     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
OptionalPackageUris(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::Foundation::Uri>>520     pub fn OptionalPackageUris(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::Foundation::Uri>> {
521         let this = self;
522         unsafe {
523             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
524             (::windows::runtime::Interface::vtable(this).27)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<super::super::Foundation::Uri>>(result__)
525         }
526     }
527     #[cfg(feature = "ApplicationModel")]
CreateFromAppInstallerInfo<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::ApplicationModel::AppInstallerInfo>>(appinstallerinfo: Param0) -> ::windows::runtime::Result<AutoUpdateSettingsOptions>528     pub fn CreateFromAppInstallerInfo<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::ApplicationModel::AppInstallerInfo>>(appinstallerinfo: Param0) -> ::windows::runtime::Result<AutoUpdateSettingsOptions> {
529         Self::IAutoUpdateSettingsOptionsStatics(|this| unsafe {
530             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
531             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), appinstallerinfo.into_param().abi(), &mut result__).from_abi::<AutoUpdateSettingsOptions>(result__)
532         })
533     }
IAutoUpdateSettingsOptionsStatics<R, F: FnOnce(&IAutoUpdateSettingsOptionsStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>534     pub fn IAutoUpdateSettingsOptionsStatics<R, F: FnOnce(&IAutoUpdateSettingsOptionsStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
535         static mut SHARED: ::windows::runtime::FactoryCache<AutoUpdateSettingsOptions, IAutoUpdateSettingsOptionsStatics> = ::windows::runtime::FactoryCache::new();
536         unsafe { SHARED.call(callback) }
537     }
538 }
539 unsafe impl ::windows::runtime::RuntimeType for AutoUpdateSettingsOptions {
540     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Management.Deployment.AutoUpdateSettingsOptions;{67491d87-35e1-512a-8968-1ae88d1be6d3})");
541 }
542 unsafe impl ::windows::runtime::Interface for AutoUpdateSettingsOptions {
543     type Vtable = IAutoUpdateSettingsOptions_abi;
544     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1732844935, 13793, 20778, [137, 104, 26, 232, 141, 27, 230, 211]);
545 }
546 impl ::windows::runtime::RuntimeName for AutoUpdateSettingsOptions {
547     const NAME: &'static str = "Windows.Management.Deployment.AutoUpdateSettingsOptions";
548 }
549 impl ::std::convert::From<AutoUpdateSettingsOptions> for ::windows::runtime::IUnknown {
from(value: AutoUpdateSettingsOptions) -> Self550     fn from(value: AutoUpdateSettingsOptions) -> Self {
551         unsafe { ::std::mem::transmute(value) }
552     }
553 }
554 impl ::std::convert::From<&AutoUpdateSettingsOptions> for ::windows::runtime::IUnknown {
from(value: &AutoUpdateSettingsOptions) -> Self555     fn from(value: &AutoUpdateSettingsOptions) -> Self {
556         ::std::convert::From::from(::std::clone::Clone::clone(value))
557     }
558 }
559 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for AutoUpdateSettingsOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>560     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
561         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
562     }
563 }
564 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &AutoUpdateSettingsOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>565     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
566         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
567     }
568 }
569 impl ::std::convert::From<AutoUpdateSettingsOptions> for ::windows::runtime::IInspectable {
from(value: AutoUpdateSettingsOptions) -> Self570     fn from(value: AutoUpdateSettingsOptions) -> Self {
571         value.0
572     }
573 }
574 impl ::std::convert::From<&AutoUpdateSettingsOptions> for ::windows::runtime::IInspectable {
from(value: &AutoUpdateSettingsOptions) -> Self575     fn from(value: &AutoUpdateSettingsOptions) -> Self {
576         value.0.clone()
577     }
578 }
579 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for AutoUpdateSettingsOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>580     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
581         ::windows::runtime::Param::Owned(self.0)
582     }
583 }
584 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a AutoUpdateSettingsOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>585     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
586         ::windows::runtime::Param::Borrowed(&self.0)
587     }
588 }
589 unsafe impl ::std::marker::Send for AutoUpdateSettingsOptions {}
590 unsafe impl ::std::marker::Sync for AutoUpdateSettingsOptions {}
591 #[repr(transparent)]
592 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
593 pub struct CreateSharedPackageContainerOptions(::windows::runtime::IInspectable);
594 impl CreateSharedPackageContainerOptions {
new() -> ::windows::runtime::Result<Self>595     pub fn new() -> ::windows::runtime::Result<Self> {
596         Self::IActivationFactory(|f| f.activate_instance::<Self>())
597     }
IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>598     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
599         static mut SHARED: ::windows::runtime::FactoryCache<CreateSharedPackageContainerOptions, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
600         unsafe { SHARED.call(callback) }
601     }
602     #[cfg(feature = "Foundation_Collections")]
Members(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<SharedPackageContainerMember>>603     pub fn Members(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<SharedPackageContainerMember>> {
604         let this = self;
605         unsafe {
606             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
607             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<SharedPackageContainerMember>>(result__)
608         }
609     }
ForceAppShutdown(&self) -> ::windows::runtime::Result<bool>610     pub fn ForceAppShutdown(&self) -> ::windows::runtime::Result<bool> {
611         let this = self;
612         unsafe {
613             let mut result__: bool = ::std::mem::zeroed();
614             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
615         }
616     }
SetForceAppShutdown(&self, value: bool) -> ::windows::runtime::Result<()>617     pub fn SetForceAppShutdown(&self, value: bool) -> ::windows::runtime::Result<()> {
618         let this = self;
619         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), value).ok() }
620     }
CreateCollisionOption(&self) -> ::windows::runtime::Result<SharedPackageContainerCreationCollisionOptions>621     pub fn CreateCollisionOption(&self) -> ::windows::runtime::Result<SharedPackageContainerCreationCollisionOptions> {
622         let this = self;
623         unsafe {
624             let mut result__: SharedPackageContainerCreationCollisionOptions = ::std::mem::zeroed();
625             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<SharedPackageContainerCreationCollisionOptions>(result__)
626         }
627     }
SetCreateCollisionOption(&self, value: SharedPackageContainerCreationCollisionOptions) -> ::windows::runtime::Result<()>628     pub fn SetCreateCollisionOption(&self, value: SharedPackageContainerCreationCollisionOptions) -> ::windows::runtime::Result<()> {
629         let this = self;
630         unsafe { (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), value).ok() }
631     }
632 }
633 unsafe impl ::windows::runtime::RuntimeType for CreateSharedPackageContainerOptions {
634     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Management.Deployment.CreateSharedPackageContainerOptions;{c2ab6ece-f664-5c8e-a4b3-2a33276d3dde})");
635 }
636 unsafe impl ::windows::runtime::Interface for CreateSharedPackageContainerOptions {
637     type Vtable = ICreateSharedPackageContainerOptions_abi;
638     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3266014926, 63076, 23694, [164, 179, 42, 51, 39, 109, 61, 222]);
639 }
640 impl ::windows::runtime::RuntimeName for CreateSharedPackageContainerOptions {
641     const NAME: &'static str = "Windows.Management.Deployment.CreateSharedPackageContainerOptions";
642 }
643 impl ::std::convert::From<CreateSharedPackageContainerOptions> for ::windows::runtime::IUnknown {
from(value: CreateSharedPackageContainerOptions) -> Self644     fn from(value: CreateSharedPackageContainerOptions) -> Self {
645         unsafe { ::std::mem::transmute(value) }
646     }
647 }
648 impl ::std::convert::From<&CreateSharedPackageContainerOptions> for ::windows::runtime::IUnknown {
from(value: &CreateSharedPackageContainerOptions) -> Self649     fn from(value: &CreateSharedPackageContainerOptions) -> Self {
650         ::std::convert::From::from(::std::clone::Clone::clone(value))
651     }
652 }
653 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for CreateSharedPackageContainerOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>654     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
655         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
656     }
657 }
658 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &CreateSharedPackageContainerOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>659     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
660         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
661     }
662 }
663 impl ::std::convert::From<CreateSharedPackageContainerOptions> for ::windows::runtime::IInspectable {
from(value: CreateSharedPackageContainerOptions) -> Self664     fn from(value: CreateSharedPackageContainerOptions) -> Self {
665         value.0
666     }
667 }
668 impl ::std::convert::From<&CreateSharedPackageContainerOptions> for ::windows::runtime::IInspectable {
from(value: &CreateSharedPackageContainerOptions) -> Self669     fn from(value: &CreateSharedPackageContainerOptions) -> Self {
670         value.0.clone()
671     }
672 }
673 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for CreateSharedPackageContainerOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>674     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
675         ::windows::runtime::Param::Owned(self.0)
676     }
677 }
678 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a CreateSharedPackageContainerOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>679     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
680         ::windows::runtime::Param::Borrowed(&self.0)
681     }
682 }
683 unsafe impl ::std::marker::Send for CreateSharedPackageContainerOptions {}
684 unsafe impl ::std::marker::Sync for CreateSharedPackageContainerOptions {}
685 #[repr(transparent)]
686 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
687 pub struct CreateSharedPackageContainerResult(::windows::runtime::IInspectable);
688 impl CreateSharedPackageContainerResult {
Container(&self) -> ::windows::runtime::Result<SharedPackageContainer>689     pub fn Container(&self) -> ::windows::runtime::Result<SharedPackageContainer> {
690         let this = self;
691         unsafe {
692             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
693             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<SharedPackageContainer>(result__)
694         }
695     }
Status(&self) -> ::windows::runtime::Result<SharedPackageContainerOperationStatus>696     pub fn Status(&self) -> ::windows::runtime::Result<SharedPackageContainerOperationStatus> {
697         let this = self;
698         unsafe {
699             let mut result__: SharedPackageContainerOperationStatus = ::std::mem::zeroed();
700             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<SharedPackageContainerOperationStatus>(result__)
701         }
702     }
ExtendedError(&self) -> ::windows::runtime::Result<::windows::runtime::HRESULT>703     pub fn ExtendedError(&self) -> ::windows::runtime::Result<::windows::runtime::HRESULT> {
704         let this = self;
705         unsafe {
706             let mut result__: ::windows::runtime::HRESULT = ::std::mem::zeroed();
707             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HRESULT>(result__)
708         }
709     }
710 }
711 unsafe impl ::windows::runtime::RuntimeType for CreateSharedPackageContainerResult {
712     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Management.Deployment.CreateSharedPackageContainerResult;{ce8810bf-151c-5707-b936-497e564afc7a})");
713 }
714 unsafe impl ::windows::runtime::Interface for CreateSharedPackageContainerResult {
715     type Vtable = ICreateSharedPackageContainerResult_abi;
716     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3465023679, 5404, 22279, [185, 54, 73, 126, 86, 74, 252, 122]);
717 }
718 impl ::windows::runtime::RuntimeName for CreateSharedPackageContainerResult {
719     const NAME: &'static str = "Windows.Management.Deployment.CreateSharedPackageContainerResult";
720 }
721 impl ::std::convert::From<CreateSharedPackageContainerResult> for ::windows::runtime::IUnknown {
from(value: CreateSharedPackageContainerResult) -> Self722     fn from(value: CreateSharedPackageContainerResult) -> Self {
723         unsafe { ::std::mem::transmute(value) }
724     }
725 }
726 impl ::std::convert::From<&CreateSharedPackageContainerResult> for ::windows::runtime::IUnknown {
from(value: &CreateSharedPackageContainerResult) -> Self727     fn from(value: &CreateSharedPackageContainerResult) -> Self {
728         ::std::convert::From::from(::std::clone::Clone::clone(value))
729     }
730 }
731 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for CreateSharedPackageContainerResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>732     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
733         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
734     }
735 }
736 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &CreateSharedPackageContainerResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>737     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
738         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
739     }
740 }
741 impl ::std::convert::From<CreateSharedPackageContainerResult> for ::windows::runtime::IInspectable {
from(value: CreateSharedPackageContainerResult) -> Self742     fn from(value: CreateSharedPackageContainerResult) -> Self {
743         value.0
744     }
745 }
746 impl ::std::convert::From<&CreateSharedPackageContainerResult> for ::windows::runtime::IInspectable {
from(value: &CreateSharedPackageContainerResult) -> Self747     fn from(value: &CreateSharedPackageContainerResult) -> Self {
748         value.0.clone()
749     }
750 }
751 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for CreateSharedPackageContainerResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>752     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
753         ::windows::runtime::Param::Owned(self.0)
754     }
755 }
756 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a CreateSharedPackageContainerResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>757     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
758         ::windows::runtime::Param::Borrowed(&self.0)
759     }
760 }
761 unsafe impl ::std::marker::Send for CreateSharedPackageContainerResult {}
762 unsafe impl ::std::marker::Sync for CreateSharedPackageContainerResult {}
763 #[repr(transparent)]
764 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
765 pub struct DeleteSharedPackageContainerOptions(::windows::runtime::IInspectable);
766 impl DeleteSharedPackageContainerOptions {
new() -> ::windows::runtime::Result<Self>767     pub fn new() -> ::windows::runtime::Result<Self> {
768         Self::IActivationFactory(|f| f.activate_instance::<Self>())
769     }
IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>770     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
771         static mut SHARED: ::windows::runtime::FactoryCache<DeleteSharedPackageContainerOptions, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
772         unsafe { SHARED.call(callback) }
773     }
ForceAppShutdown(&self) -> ::windows::runtime::Result<bool>774     pub fn ForceAppShutdown(&self) -> ::windows::runtime::Result<bool> {
775         let this = self;
776         unsafe {
777             let mut result__: bool = ::std::mem::zeroed();
778             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
779         }
780     }
SetForceAppShutdown(&self, value: bool) -> ::windows::runtime::Result<()>781     pub fn SetForceAppShutdown(&self, value: bool) -> ::windows::runtime::Result<()> {
782         let this = self;
783         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
784     }
AllUsers(&self) -> ::windows::runtime::Result<bool>785     pub fn AllUsers(&self) -> ::windows::runtime::Result<bool> {
786         let this = self;
787         unsafe {
788             let mut result__: bool = ::std::mem::zeroed();
789             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
790         }
791     }
SetAllUsers(&self, value: bool) -> ::windows::runtime::Result<()>792     pub fn SetAllUsers(&self, value: bool) -> ::windows::runtime::Result<()> {
793         let this = self;
794         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value).ok() }
795     }
796 }
797 unsafe impl ::windows::runtime::RuntimeType for DeleteSharedPackageContainerOptions {
798     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Management.Deployment.DeleteSharedPackageContainerOptions;{9d81865f-986e-5138-8b5d-384d8e66ed6c})");
799 }
800 unsafe impl ::windows::runtime::Interface for DeleteSharedPackageContainerOptions {
801     type Vtable = IDeleteSharedPackageContainerOptions_abi;
802     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2642511455, 39022, 20792, [139, 93, 56, 77, 142, 102, 237, 108]);
803 }
804 impl ::windows::runtime::RuntimeName for DeleteSharedPackageContainerOptions {
805     const NAME: &'static str = "Windows.Management.Deployment.DeleteSharedPackageContainerOptions";
806 }
807 impl ::std::convert::From<DeleteSharedPackageContainerOptions> for ::windows::runtime::IUnknown {
from(value: DeleteSharedPackageContainerOptions) -> Self808     fn from(value: DeleteSharedPackageContainerOptions) -> Self {
809         unsafe { ::std::mem::transmute(value) }
810     }
811 }
812 impl ::std::convert::From<&DeleteSharedPackageContainerOptions> for ::windows::runtime::IUnknown {
from(value: &DeleteSharedPackageContainerOptions) -> Self813     fn from(value: &DeleteSharedPackageContainerOptions) -> Self {
814         ::std::convert::From::from(::std::clone::Clone::clone(value))
815     }
816 }
817 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for DeleteSharedPackageContainerOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>818     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
819         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
820     }
821 }
822 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &DeleteSharedPackageContainerOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>823     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
824         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
825     }
826 }
827 impl ::std::convert::From<DeleteSharedPackageContainerOptions> for ::windows::runtime::IInspectable {
from(value: DeleteSharedPackageContainerOptions) -> Self828     fn from(value: DeleteSharedPackageContainerOptions) -> Self {
829         value.0
830     }
831 }
832 impl ::std::convert::From<&DeleteSharedPackageContainerOptions> for ::windows::runtime::IInspectable {
from(value: &DeleteSharedPackageContainerOptions) -> Self833     fn from(value: &DeleteSharedPackageContainerOptions) -> Self {
834         value.0.clone()
835     }
836 }
837 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for DeleteSharedPackageContainerOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>838     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
839         ::windows::runtime::Param::Owned(self.0)
840     }
841 }
842 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a DeleteSharedPackageContainerOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>843     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
844         ::windows::runtime::Param::Borrowed(&self.0)
845     }
846 }
847 unsafe impl ::std::marker::Send for DeleteSharedPackageContainerOptions {}
848 unsafe impl ::std::marker::Sync for DeleteSharedPackageContainerOptions {}
849 #[repr(transparent)]
850 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
851 pub struct DeleteSharedPackageContainerResult(::windows::runtime::IInspectable);
852 impl DeleteSharedPackageContainerResult {
Status(&self) -> ::windows::runtime::Result<SharedPackageContainerOperationStatus>853     pub fn Status(&self) -> ::windows::runtime::Result<SharedPackageContainerOperationStatus> {
854         let this = self;
855         unsafe {
856             let mut result__: SharedPackageContainerOperationStatus = ::std::mem::zeroed();
857             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<SharedPackageContainerOperationStatus>(result__)
858         }
859     }
ExtendedError(&self) -> ::windows::runtime::Result<::windows::runtime::HRESULT>860     pub fn ExtendedError(&self) -> ::windows::runtime::Result<::windows::runtime::HRESULT> {
861         let this = self;
862         unsafe {
863             let mut result__: ::windows::runtime::HRESULT = ::std::mem::zeroed();
864             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HRESULT>(result__)
865         }
866     }
867 }
868 unsafe impl ::windows::runtime::RuntimeType for DeleteSharedPackageContainerResult {
869     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Management.Deployment.DeleteSharedPackageContainerResult;{35398884-5736-517b-85bc-e598c81ab284})");
870 }
871 unsafe impl ::windows::runtime::Interface for DeleteSharedPackageContainerResult {
872     type Vtable = IDeleteSharedPackageContainerResult_abi;
873     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(892962948, 22326, 20859, [133, 188, 229, 152, 200, 26, 178, 132]);
874 }
875 impl ::windows::runtime::RuntimeName for DeleteSharedPackageContainerResult {
876     const NAME: &'static str = "Windows.Management.Deployment.DeleteSharedPackageContainerResult";
877 }
878 impl ::std::convert::From<DeleteSharedPackageContainerResult> for ::windows::runtime::IUnknown {
from(value: DeleteSharedPackageContainerResult) -> Self879     fn from(value: DeleteSharedPackageContainerResult) -> Self {
880         unsafe { ::std::mem::transmute(value) }
881     }
882 }
883 impl ::std::convert::From<&DeleteSharedPackageContainerResult> for ::windows::runtime::IUnknown {
from(value: &DeleteSharedPackageContainerResult) -> Self884     fn from(value: &DeleteSharedPackageContainerResult) -> Self {
885         ::std::convert::From::from(::std::clone::Clone::clone(value))
886     }
887 }
888 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for DeleteSharedPackageContainerResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>889     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
890         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
891     }
892 }
893 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &DeleteSharedPackageContainerResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>894     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
895         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
896     }
897 }
898 impl ::std::convert::From<DeleteSharedPackageContainerResult> for ::windows::runtime::IInspectable {
from(value: DeleteSharedPackageContainerResult) -> Self899     fn from(value: DeleteSharedPackageContainerResult) -> Self {
900         value.0
901     }
902 }
903 impl ::std::convert::From<&DeleteSharedPackageContainerResult> for ::windows::runtime::IInspectable {
from(value: &DeleteSharedPackageContainerResult) -> Self904     fn from(value: &DeleteSharedPackageContainerResult) -> Self {
905         value.0.clone()
906     }
907 }
908 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for DeleteSharedPackageContainerResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>909     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
910         ::windows::runtime::Param::Owned(self.0)
911     }
912 }
913 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a DeleteSharedPackageContainerResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>914     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
915         ::windows::runtime::Param::Borrowed(&self.0)
916     }
917 }
918 unsafe impl ::std::marker::Send for DeleteSharedPackageContainerResult {}
919 unsafe impl ::std::marker::Sync for DeleteSharedPackageContainerResult {}
920 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
921 #[repr(transparent)]
922 pub struct DeploymentOptions(pub u32);
923 impl DeploymentOptions {
924     pub const None: DeploymentOptions = DeploymentOptions(0u32);
925     pub const ForceApplicationShutdown: DeploymentOptions = DeploymentOptions(1u32);
926     pub const DevelopmentMode: DeploymentOptions = DeploymentOptions(2u32);
927     pub const InstallAllResources: DeploymentOptions = DeploymentOptions(32u32);
928     pub const ForceTargetApplicationShutdown: DeploymentOptions = DeploymentOptions(64u32);
929     pub const RequiredContentGroupOnly: DeploymentOptions = DeploymentOptions(256u32);
930     pub const ForceUpdateFromAnyVersion: DeploymentOptions = DeploymentOptions(262144u32);
931     pub const RetainFilesOnFailure: DeploymentOptions = DeploymentOptions(2097152u32);
932     pub const StageInPlace: DeploymentOptions = DeploymentOptions(4194304u32);
933 }
934 impl ::std::convert::From<u32> for DeploymentOptions {
from(value: u32) -> Self935     fn from(value: u32) -> Self {
936         Self(value)
937     }
938 }
939 unsafe impl ::windows::runtime::Abi for DeploymentOptions {
940     type Abi = Self;
941     type DefaultType = Self;
942 }
943 unsafe impl ::windows::runtime::RuntimeType for DeploymentOptions {
944     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Management.Deployment.DeploymentOptions;u4)");
945 }
946 impl ::std::ops::BitOr for DeploymentOptions {
947     type Output = Self;
bitor(self, rhs: Self) -> Self948     fn bitor(self, rhs: Self) -> Self {
949         Self(self.0 | rhs.0)
950     }
951 }
952 impl ::std::ops::BitAnd for DeploymentOptions {
953     type Output = Self;
bitand(self, rhs: Self) -> Self954     fn bitand(self, rhs: Self) -> Self {
955         Self(self.0 & rhs.0)
956     }
957 }
958 impl ::std::ops::BitOrAssign for DeploymentOptions {
bitor_assign(&mut self, rhs: Self)959     fn bitor_assign(&mut self, rhs: Self) {
960         self.0.bitor_assign(rhs.0)
961     }
962 }
963 impl ::std::ops::BitAndAssign for DeploymentOptions {
bitand_assign(&mut self, rhs: Self)964     fn bitand_assign(&mut self, rhs: Self) {
965         self.0.bitand_assign(rhs.0)
966     }
967 }
968 impl ::std::ops::Not for DeploymentOptions {
969     type Output = Self;
not(self) -> Self970     fn not(self) -> Self {
971         Self(self.0.not())
972     }
973 }
974 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
975 #[repr(C)]
976 pub struct DeploymentProgress {
977     pub state: DeploymentProgressState,
978     pub percentage: u32,
979 }
980 impl DeploymentProgress {}
981 impl ::std::default::Default for DeploymentProgress {
default() -> Self982     fn default() -> Self {
983         unsafe { ::std::mem::zeroed() }
984     }
985 }
986 impl ::std::fmt::Debug for DeploymentProgress {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result987     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
988         fmt.debug_struct("DeploymentProgress").field("state", &self.state).field("percentage", &self.percentage).finish()
989     }
990 }
991 impl ::std::cmp::PartialEq for DeploymentProgress {
eq(&self, other: &Self) -> bool992     fn eq(&self, other: &Self) -> bool {
993         self.state == other.state && self.percentage == other.percentage
994     }
995 }
996 impl ::std::cmp::Eq for DeploymentProgress {}
997 unsafe impl ::windows::runtime::Abi for DeploymentProgress {
998     type Abi = Self;
999     type DefaultType = Self;
1000 }
1001 unsafe impl ::windows::runtime::RuntimeType for DeploymentProgress {
1002     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"struct(Windows.Management.Deployment.DeploymentProgress;enum(Windows.Management.Deployment.DeploymentProgressState;i4);u4)");
1003 }
1004 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
1005 #[repr(transparent)]
1006 pub struct DeploymentProgressState(pub i32);
1007 impl DeploymentProgressState {
1008     pub const Queued: DeploymentProgressState = DeploymentProgressState(0i32);
1009     pub const Processing: DeploymentProgressState = DeploymentProgressState(1i32);
1010 }
1011 impl ::std::convert::From<i32> for DeploymentProgressState {
from(value: i32) -> Self1012     fn from(value: i32) -> Self {
1013         Self(value)
1014     }
1015 }
1016 unsafe impl ::windows::runtime::Abi for DeploymentProgressState {
1017     type Abi = Self;
1018     type DefaultType = Self;
1019 }
1020 unsafe impl ::windows::runtime::RuntimeType for DeploymentProgressState {
1021     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Management.Deployment.DeploymentProgressState;i4)");
1022 }
1023 #[repr(transparent)]
1024 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1025 pub struct DeploymentResult(::windows::runtime::IInspectable);
1026 impl DeploymentResult {
ErrorText(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>1027     pub fn ErrorText(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
1028         let this = self;
1029         unsafe {
1030             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
1031             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
1032         }
1033     }
ActivityId(&self) -> ::windows::runtime::Result<::windows::runtime::GUID>1034     pub fn ActivityId(&self) -> ::windows::runtime::Result<::windows::runtime::GUID> {
1035         let this = self;
1036         unsafe {
1037             let mut result__: ::windows::runtime::GUID = ::std::mem::zeroed();
1038             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::GUID>(result__)
1039         }
1040     }
ExtendedErrorCode(&self) -> ::windows::runtime::Result<::windows::runtime::HRESULT>1041     pub fn ExtendedErrorCode(&self) -> ::windows::runtime::Result<::windows::runtime::HRESULT> {
1042         let this = self;
1043         unsafe {
1044             let mut result__: ::windows::runtime::HRESULT = ::std::mem::zeroed();
1045             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HRESULT>(result__)
1046         }
1047     }
IsRegistered(&self) -> ::windows::runtime::Result<bool>1048     pub fn IsRegistered(&self) -> ::windows::runtime::Result<bool> {
1049         let this = &::windows::runtime::Interface::cast::<IDeploymentResult2>(self)?;
1050         unsafe {
1051             let mut result__: bool = ::std::mem::zeroed();
1052             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
1053         }
1054     }
1055 }
1056 unsafe impl ::windows::runtime::RuntimeType for DeploymentResult {
1057     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Management.Deployment.DeploymentResult;{2563b9ae-b77d-4c1f-8a7b-20e6ad515ef3})");
1058 }
1059 unsafe impl ::windows::runtime::Interface for DeploymentResult {
1060     type Vtable = IDeploymentResult_abi;
1061     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(627292590, 46973, 19487, [138, 123, 32, 230, 173, 81, 94, 243]);
1062 }
1063 impl ::windows::runtime::RuntimeName for DeploymentResult {
1064     const NAME: &'static str = "Windows.Management.Deployment.DeploymentResult";
1065 }
1066 impl ::std::convert::From<DeploymentResult> for ::windows::runtime::IUnknown {
from(value: DeploymentResult) -> Self1067     fn from(value: DeploymentResult) -> Self {
1068         unsafe { ::std::mem::transmute(value) }
1069     }
1070 }
1071 impl ::std::convert::From<&DeploymentResult> for ::windows::runtime::IUnknown {
from(value: &DeploymentResult) -> Self1072     fn from(value: &DeploymentResult) -> Self {
1073         ::std::convert::From::from(::std::clone::Clone::clone(value))
1074     }
1075 }
1076 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for DeploymentResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1077     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1078         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1079     }
1080 }
1081 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &DeploymentResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1082     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1083         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1084     }
1085 }
1086 impl ::std::convert::From<DeploymentResult> for ::windows::runtime::IInspectable {
from(value: DeploymentResult) -> Self1087     fn from(value: DeploymentResult) -> Self {
1088         value.0
1089     }
1090 }
1091 impl ::std::convert::From<&DeploymentResult> for ::windows::runtime::IInspectable {
from(value: &DeploymentResult) -> Self1092     fn from(value: &DeploymentResult) -> Self {
1093         value.0.clone()
1094     }
1095 }
1096 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for DeploymentResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>1097     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1098         ::windows::runtime::Param::Owned(self.0)
1099     }
1100 }
1101 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a DeploymentResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>1102     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1103         ::windows::runtime::Param::Borrowed(&self.0)
1104     }
1105 }
1106 unsafe impl ::std::marker::Send for DeploymentResult {}
1107 unsafe impl ::std::marker::Sync for DeploymentResult {}
1108 #[repr(transparent)]
1109 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1110 pub struct FindSharedPackageContainerOptions(::windows::runtime::IInspectable);
1111 impl FindSharedPackageContainerOptions {
new() -> ::windows::runtime::Result<Self>1112     pub fn new() -> ::windows::runtime::Result<Self> {
1113         Self::IActivationFactory(|f| f.activate_instance::<Self>())
1114     }
IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>1115     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
1116         static mut SHARED: ::windows::runtime::FactoryCache<FindSharedPackageContainerOptions, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
1117         unsafe { SHARED.call(callback) }
1118     }
Name(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>1119     pub fn Name(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
1120         let this = self;
1121         unsafe {
1122             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
1123             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
1124         }
1125     }
SetName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()>1126     pub fn SetName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
1127         let this = self;
1128         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
1129     }
PackageFamilyName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>1130     pub fn PackageFamilyName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
1131         let this = self;
1132         unsafe {
1133             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
1134             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
1135         }
1136     }
SetPackageFamilyName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()>1137     pub fn SetPackageFamilyName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
1138         let this = self;
1139         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
1140     }
1141 }
1142 unsafe impl ::windows::runtime::RuntimeType for FindSharedPackageContainerOptions {
1143     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Management.Deployment.FindSharedPackageContainerOptions;{b40fc8fe-8384-54cc-817d-ae09d3b6a606})");
1144 }
1145 unsafe impl ::windows::runtime::Interface for FindSharedPackageContainerOptions {
1146     type Vtable = IFindSharedPackageContainerOptions_abi;
1147     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3020933374, 33668, 21708, [129, 125, 174, 9, 211, 182, 166, 6]);
1148 }
1149 impl ::windows::runtime::RuntimeName for FindSharedPackageContainerOptions {
1150     const NAME: &'static str = "Windows.Management.Deployment.FindSharedPackageContainerOptions";
1151 }
1152 impl ::std::convert::From<FindSharedPackageContainerOptions> for ::windows::runtime::IUnknown {
from(value: FindSharedPackageContainerOptions) -> Self1153     fn from(value: FindSharedPackageContainerOptions) -> Self {
1154         unsafe { ::std::mem::transmute(value) }
1155     }
1156 }
1157 impl ::std::convert::From<&FindSharedPackageContainerOptions> for ::windows::runtime::IUnknown {
from(value: &FindSharedPackageContainerOptions) -> Self1158     fn from(value: &FindSharedPackageContainerOptions) -> Self {
1159         ::std::convert::From::from(::std::clone::Clone::clone(value))
1160     }
1161 }
1162 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for FindSharedPackageContainerOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1163     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1164         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1165     }
1166 }
1167 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &FindSharedPackageContainerOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1168     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1169         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1170     }
1171 }
1172 impl ::std::convert::From<FindSharedPackageContainerOptions> for ::windows::runtime::IInspectable {
from(value: FindSharedPackageContainerOptions) -> Self1173     fn from(value: FindSharedPackageContainerOptions) -> Self {
1174         value.0
1175     }
1176 }
1177 impl ::std::convert::From<&FindSharedPackageContainerOptions> for ::windows::runtime::IInspectable {
from(value: &FindSharedPackageContainerOptions) -> Self1178     fn from(value: &FindSharedPackageContainerOptions) -> Self {
1179         value.0.clone()
1180     }
1181 }
1182 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for FindSharedPackageContainerOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>1183     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1184         ::windows::runtime::Param::Owned(self.0)
1185     }
1186 }
1187 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a FindSharedPackageContainerOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>1188     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1189         ::windows::runtime::Param::Borrowed(&self.0)
1190     }
1191 }
1192 unsafe impl ::std::marker::Send for FindSharedPackageContainerOptions {}
1193 unsafe impl ::std::marker::Sync for FindSharedPackageContainerOptions {}
1194 #[repr(transparent)]
1195 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1196 #[doc(hidden)]
1197 pub struct IAddPackageOptions(::windows::runtime::IInspectable);
1198 unsafe impl ::windows::runtime::Interface for IAddPackageOptions {
1199     type Vtable = IAddPackageOptions_abi;
1200     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(97443864, 63119, 16939, [149, 164, 102, 103, 158, 199, 127, 192]);
1201 }
1202 #[repr(C)]
1203 #[doc(hidden)]
1204 pub struct IAddPackageOptions_abi(
1205     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1206     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1207     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1208     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1209     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1210     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
1211     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1212     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
1213     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1214     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1215     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1216     #[cfg(not(feature = "Foundation_Collections"))] usize,
1217     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1218     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
1219     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1220     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
1221     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1222     #[cfg(not(feature = "Foundation"))] usize,
1223     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1224     #[cfg(not(feature = "Foundation"))] usize,
1225     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut StubPackageOption) -> ::windows::runtime::HRESULT,
1226     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: StubPackageOption) -> ::windows::runtime::HRESULT,
1227     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
1228     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
1229     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
1230     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
1231     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
1232     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
1233     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
1234     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
1235     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
1236     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
1237     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
1238     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
1239     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
1240     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
1241     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
1242     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
1243     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
1244     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
1245     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
1246     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
1247 );
1248 #[repr(transparent)]
1249 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1250 #[doc(hidden)]
1251 pub struct IAppInstallerManager(::windows::runtime::IInspectable);
1252 unsafe impl ::windows::runtime::Interface for IAppInstallerManager {
1253     type Vtable = IAppInstallerManager_abi;
1254     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3891143107, 8451, 21486, [155, 24, 104, 175, 234, 176, 3, 61]);
1255 }
1256 #[repr(C)]
1257 #[doc(hidden)]
1258 pub struct IAppInstallerManager_abi(
1259     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1260     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1261     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1262     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1263     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1264     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
1265     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packagefamilyname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, appinstallerinfo: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1266     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packagefamilyname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
1267     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packagefamilyname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, datetime: super::super::Foundation::DateTime) -> ::windows::runtime::HRESULT,
1268     #[cfg(not(feature = "Foundation"))] usize,
1269 );
1270 #[repr(transparent)]
1271 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1272 #[doc(hidden)]
1273 pub struct IAppInstallerManagerStatics(::windows::runtime::IInspectable);
1274 unsafe impl ::windows::runtime::Interface for IAppInstallerManagerStatics {
1275     type Vtable = IAppInstallerManagerStatics_abi;
1276     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3378147029, 64601, 21302, [155, 46, 43, 7, 197, 230, 20, 52]);
1277 }
1278 #[repr(C)]
1279 #[doc(hidden)]
1280 pub struct IAppInstallerManagerStatics_abi(
1281     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1282     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1283     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1284     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1285     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1286     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
1287     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1288     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1289 );
1290 #[repr(transparent)]
1291 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1292 #[doc(hidden)]
1293 pub struct IAutoUpdateSettingsOptions(::windows::runtime::IInspectable);
1294 unsafe impl ::windows::runtime::Interface for IAutoUpdateSettingsOptions {
1295     type Vtable = IAutoUpdateSettingsOptions_abi;
1296     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1732844935, 13793, 20778, [137, 104, 26, 232, 141, 27, 230, 211]);
1297 }
1298 #[repr(C)]
1299 #[doc(hidden)]
1300 pub struct IAutoUpdateSettingsOptions_abi(
1301     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1302     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1303     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1304     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1305     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1306     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
1307     #[cfg(feature = "ApplicationModel")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::ApplicationModel::PackageVersion) -> ::windows::runtime::HRESULT,
1308     #[cfg(not(feature = "ApplicationModel"))] usize,
1309     #[cfg(feature = "ApplicationModel")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: super::super::ApplicationModel::PackageVersion) -> ::windows::runtime::HRESULT,
1310     #[cfg(not(feature = "ApplicationModel"))] usize,
1311     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1312     #[cfg(not(feature = "Foundation"))] usize,
1313     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1314     #[cfg(not(feature = "Foundation"))] usize,
1315     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
1316     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
1317     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
1318     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: u32) -> ::windows::runtime::HRESULT,
1319     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
1320     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
1321     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
1322     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
1323     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
1324     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
1325     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
1326     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
1327     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
1328     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
1329     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1330     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
1331     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1332     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
1333     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1334     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
1335     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1336     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
1337 );
1338 #[repr(transparent)]
1339 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1340 #[doc(hidden)]
1341 pub struct IAutoUpdateSettingsOptionsStatics(::windows::runtime::IInspectable);
1342 unsafe impl ::windows::runtime::Interface for IAutoUpdateSettingsOptionsStatics {
1343     type Vtable = IAutoUpdateSettingsOptionsStatics_abi;
1344     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2289775485, 3077, 21712, [189, 73, 59, 183, 162, 192, 132, 203]);
1345 }
1346 #[repr(C)]
1347 #[doc(hidden)]
1348 pub struct IAutoUpdateSettingsOptionsStatics_abi(
1349     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1350     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1351     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1352     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1353     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1354     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
1355     #[cfg(feature = "ApplicationModel")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, appinstallerinfo: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1356     #[cfg(not(feature = "ApplicationModel"))] usize,
1357 );
1358 #[repr(transparent)]
1359 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1360 #[doc(hidden)]
1361 pub struct ICreateSharedPackageContainerOptions(::windows::runtime::IInspectable);
1362 unsafe impl ::windows::runtime::Interface for ICreateSharedPackageContainerOptions {
1363     type Vtable = ICreateSharedPackageContainerOptions_abi;
1364     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3266014926, 63076, 23694, [164, 179, 42, 51, 39, 109, 61, 222]);
1365 }
1366 #[repr(C)]
1367 #[doc(hidden)]
1368 pub struct ICreateSharedPackageContainerOptions_abi(
1369     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1370     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1371     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1372     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1373     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1374     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
1375     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1376     #[cfg(not(feature = "Foundation_Collections"))] usize,
1377     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
1378     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
1379     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut SharedPackageContainerCreationCollisionOptions) -> ::windows::runtime::HRESULT,
1380     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: SharedPackageContainerCreationCollisionOptions) -> ::windows::runtime::HRESULT,
1381 );
1382 #[repr(transparent)]
1383 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1384 #[doc(hidden)]
1385 pub struct ICreateSharedPackageContainerResult(::windows::runtime::IInspectable);
1386 unsafe impl ::windows::runtime::Interface for ICreateSharedPackageContainerResult {
1387     type Vtable = ICreateSharedPackageContainerResult_abi;
1388     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3465023679, 5404, 22279, [185, 54, 73, 126, 86, 74, 252, 122]);
1389 }
1390 #[repr(C)]
1391 #[doc(hidden)]
1392 pub struct ICreateSharedPackageContainerResult_abi(
1393     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1394     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1395     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1396     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1397     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1398     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
1399     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1400     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut SharedPackageContainerOperationStatus) -> ::windows::runtime::HRESULT,
1401     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::HRESULT) -> ::windows::runtime::HRESULT,
1402 );
1403 #[repr(transparent)]
1404 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1405 #[doc(hidden)]
1406 pub struct IDeleteSharedPackageContainerOptions(::windows::runtime::IInspectable);
1407 unsafe impl ::windows::runtime::Interface for IDeleteSharedPackageContainerOptions {
1408     type Vtable = IDeleteSharedPackageContainerOptions_abi;
1409     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2642511455, 39022, 20792, [139, 93, 56, 77, 142, 102, 237, 108]);
1410 }
1411 #[repr(C)]
1412 #[doc(hidden)]
1413 pub struct IDeleteSharedPackageContainerOptions_abi(
1414     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1415     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1416     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1417     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1418     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1419     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
1420     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
1421     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
1422     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
1423     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
1424 );
1425 #[repr(transparent)]
1426 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1427 #[doc(hidden)]
1428 pub struct IDeleteSharedPackageContainerResult(::windows::runtime::IInspectable);
1429 unsafe impl ::windows::runtime::Interface for IDeleteSharedPackageContainerResult {
1430     type Vtable = IDeleteSharedPackageContainerResult_abi;
1431     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(892962948, 22326, 20859, [133, 188, 229, 152, 200, 26, 178, 132]);
1432 }
1433 #[repr(C)]
1434 #[doc(hidden)]
1435 pub struct IDeleteSharedPackageContainerResult_abi(
1436     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1437     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1438     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1439     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1440     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1441     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
1442     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut SharedPackageContainerOperationStatus) -> ::windows::runtime::HRESULT,
1443     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::HRESULT) -> ::windows::runtime::HRESULT,
1444 );
1445 #[repr(transparent)]
1446 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1447 #[doc(hidden)]
1448 pub struct IDeploymentResult(::windows::runtime::IInspectable);
1449 unsafe impl ::windows::runtime::Interface for IDeploymentResult {
1450     type Vtable = IDeploymentResult_abi;
1451     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(627292590, 46973, 19487, [138, 123, 32, 230, 173, 81, 94, 243]);
1452 }
1453 #[repr(C)]
1454 #[doc(hidden)]
1455 pub struct IDeploymentResult_abi(
1456     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1457     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1458     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1459     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1460     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1461     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
1462     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
1463     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1464     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::HRESULT) -> ::windows::runtime::HRESULT,
1465 );
1466 #[repr(transparent)]
1467 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1468 #[doc(hidden)]
1469 pub struct IDeploymentResult2(::windows::runtime::IInspectable);
1470 unsafe impl ::windows::runtime::Interface for IDeploymentResult2 {
1471     type Vtable = IDeploymentResult2_abi;
1472     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4228804956, 23041, 19415, [188, 241, 56, 28, 140, 130, 224, 74]);
1473 }
1474 #[repr(C)]
1475 #[doc(hidden)]
1476 pub struct IDeploymentResult2_abi(
1477     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1478     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1479     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1480     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1481     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1482     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
1483     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
1484 );
1485 #[repr(transparent)]
1486 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1487 #[doc(hidden)]
1488 pub struct IFindSharedPackageContainerOptions(::windows::runtime::IInspectable);
1489 unsafe impl ::windows::runtime::Interface for IFindSharedPackageContainerOptions {
1490     type Vtable = IFindSharedPackageContainerOptions_abi;
1491     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3020933374, 33668, 21708, [129, 125, 174, 9, 211, 182, 166, 6]);
1492 }
1493 #[repr(C)]
1494 #[doc(hidden)]
1495 pub struct IFindSharedPackageContainerOptions_abi(
1496     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1497     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1498     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1499     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1500     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1501     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
1502     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
1503     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
1504     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
1505     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
1506 );
1507 #[repr(transparent)]
1508 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1509 #[doc(hidden)]
1510 pub struct IPackageAllUserProvisioningOptions(::windows::runtime::IInspectable);
1511 unsafe impl ::windows::runtime::Interface for IPackageAllUserProvisioningOptions {
1512     type Vtable = IPackageAllUserProvisioningOptions_abi;
1513     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3660950050, 7648, 23870, [153, 255, 210, 79, 49, 24, 191, 94]);
1514 }
1515 #[repr(C)]
1516 #[doc(hidden)]
1517 pub struct IPackageAllUserProvisioningOptions_abi(
1518     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1519     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1520     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1521     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1522     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1523     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
1524     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1525     #[cfg(not(feature = "Foundation_Collections"))] usize,
1526     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1527     #[cfg(not(feature = "Foundation_Collections"))] usize,
1528 );
1529 #[repr(transparent)]
1530 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1531 #[doc(hidden)]
1532 pub struct IPackageManager(::windows::runtime::IInspectable);
1533 unsafe impl ::windows::runtime::Interface for IPackageManager {
1534     type Vtable = IPackageManager_abi;
1535     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2591902565, 24207, 20423, [162, 229, 127, 105, 37, 203, 139, 83]);
1536 }
1537 #[repr(C)]
1538 #[doc(hidden)]
1539 pub struct IPackageManager_abi(
1540     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1541     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1542     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1543     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1544     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1545     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
1546     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packageuri: ::windows::runtime::RawPtr, dependencypackageuris: ::windows::runtime::RawPtr, deploymentoptions: DeploymentOptions, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1547     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
1548     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packageuri: ::windows::runtime::RawPtr, dependencypackageuris: ::windows::runtime::RawPtr, deploymentoptions: DeploymentOptions, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1549     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
1550     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packagefullname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1551     #[cfg(not(feature = "Foundation"))] usize,
1552     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packageuri: ::windows::runtime::RawPtr, dependencypackageuris: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1553     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
1554     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, manifesturi: ::windows::runtime::RawPtr, dependencypackageuris: ::windows::runtime::RawPtr, deploymentoptions: DeploymentOptions, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1555     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
1556     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1557     #[cfg(not(all(feature = "ApplicationModel", feature = "Foundation_Collections")))] usize,
1558     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, usersecurityid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1559     #[cfg(not(all(feature = "ApplicationModel", feature = "Foundation_Collections")))] usize,
1560     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packagename: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, packagepublisher: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1561     #[cfg(not(all(feature = "ApplicationModel", feature = "Foundation_Collections")))] usize,
1562     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, usersecurityid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, packagename: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, packagepublisher: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1563     #[cfg(not(all(feature = "ApplicationModel", feature = "Foundation_Collections")))] usize,
1564     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packagefullname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1565     #[cfg(not(feature = "Foundation_Collections"))] usize,
1566     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packagefullname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, packagestate: PackageState) -> ::windows::runtime::HRESULT,
1567     #[cfg(feature = "ApplicationModel")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packagefullname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1568     #[cfg(not(feature = "ApplicationModel"))] usize,
1569     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packagename: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, usersecurityid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1570     #[cfg(not(feature = "Foundation"))] usize,
1571     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packagefamilyname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1572     #[cfg(not(all(feature = "ApplicationModel", feature = "Foundation_Collections")))] usize,
1573     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, usersecurityid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, packagefamilyname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1574     #[cfg(not(all(feature = "ApplicationModel", feature = "Foundation_Collections")))] usize,
1575     #[cfg(feature = "ApplicationModel")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, usersecurityid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, packagefullname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1576     #[cfg(not(feature = "ApplicationModel"))] usize,
1577 );
1578 #[repr(transparent)]
1579 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1580 #[doc(hidden)]
1581 pub struct IPackageManager10(::windows::runtime::IInspectable);
1582 unsafe impl ::windows::runtime::Interface for IPackageManager10 {
1583     type Vtable = IPackageManager10_abi;
1584     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2815938686, 11878, 16531, [174, 213, 224, 147, 237, 135, 179, 187]);
1585 }
1586 #[repr(C)]
1587 #[doc(hidden)]
1588 pub struct IPackageManager10_abi(
1589     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1590     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1591     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1592     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1593     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1594     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
1595     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, mainpackagefamilyname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, options: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1596     #[cfg(not(feature = "Foundation"))] usize,
1597 );
1598 #[repr(transparent)]
1599 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1600 #[doc(hidden)]
1601 pub struct IPackageManager2(::windows::runtime::IInspectable);
1602 unsafe impl ::windows::runtime::Interface for IPackageManager2 {
1603     type Vtable = IPackageManager2_abi;
1604     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4155166861, 2112, 18162, [181, 216, 202, 212, 118, 147, 160, 149]);
1605 }
1606 #[repr(C)]
1607 #[doc(hidden)]
1608 pub struct IPackageManager2_abi(
1609     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1610     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1611     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1612     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1613     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1614     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
1615     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packagefullname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, removaloptions: RemovalOptions, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1616     #[cfg(not(feature = "Foundation"))] usize,
1617     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packageuri: ::windows::runtime::RawPtr, dependencypackageuris: ::windows::runtime::RawPtr, deploymentoptions: DeploymentOptions, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1618     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
1619     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, mainpackagefullname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, dependencypackagefullnames: ::windows::runtime::RawPtr, deploymentoptions: DeploymentOptions, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1620     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
1621     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packagetypes: PackageTypes, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1622     #[cfg(not(all(feature = "ApplicationModel", feature = "Foundation_Collections")))] usize,
1623     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, usersecurityid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, packagetypes: PackageTypes, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1624     #[cfg(not(all(feature = "ApplicationModel", feature = "Foundation_Collections")))] usize,
1625     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packagename: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, packagepublisher: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, packagetypes: PackageTypes, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1626     #[cfg(not(all(feature = "ApplicationModel", feature = "Foundation_Collections")))] usize,
1627     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, usersecurityid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, packagename: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, packagepublisher: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, packagetypes: PackageTypes, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1628     #[cfg(not(all(feature = "ApplicationModel", feature = "Foundation_Collections")))] usize,
1629     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packagefamilyname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, packagetypes: PackageTypes, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1630     #[cfg(not(all(feature = "ApplicationModel", feature = "Foundation_Collections")))] usize,
1631     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, usersecurityid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, packagefamilyname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, packagetypes: PackageTypes, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1632     #[cfg(not(all(feature = "ApplicationModel", feature = "Foundation_Collections")))] usize,
1633     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packagefullname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1634     #[cfg(not(feature = "Foundation"))] usize,
1635 );
1636 #[repr(transparent)]
1637 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1638 #[doc(hidden)]
1639 pub struct IPackageManager3(::windows::runtime::IInspectable);
1640 unsafe impl ::windows::runtime::Interface for IPackageManager3 {
1641     type Vtable = IPackageManager3_abi;
1642     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3668810056, 14065, 16807, [145, 136, 188, 38, 62, 13, 203, 114]);
1643 }
1644 #[repr(C)]
1645 #[doc(hidden)]
1646 pub struct IPackageManager3_abi(
1647     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1648     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1649     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1650     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1651     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1652     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
1653     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packagestorepath: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1654     #[cfg(not(feature = "Foundation"))] usize,
1655     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packageuri: ::windows::runtime::RawPtr, dependencypackageuris: ::windows::runtime::RawPtr, deploymentoptions: DeploymentOptions, targetvolume: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1656     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
1657     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packagefullname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, status: PackageStatus) -> ::windows::runtime::HRESULT,
1658     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, manifesturi: ::windows::runtime::RawPtr, dependencypackageuris: ::windows::runtime::RawPtr, deploymentoptions: DeploymentOptions, appdatavolume: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1659     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
1660     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, volumename: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1661     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1662     #[cfg(not(feature = "Foundation_Collections"))] usize,
1663     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1664     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packagefullname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, deploymentoptions: DeploymentOptions, targetvolume: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1665     #[cfg(not(feature = "Foundation"))] usize,
1666     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, volume: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1667     #[cfg(not(feature = "Foundation"))] usize,
1668     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, volume: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1669     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packagefullname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, status: PackageStatus) -> ::windows::runtime::HRESULT,
1670     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packagevolume: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1671     #[cfg(not(feature = "Foundation"))] usize,
1672     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packagevolume: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1673     #[cfg(not(feature = "Foundation"))] usize,
1674     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packageuri: ::windows::runtime::RawPtr, dependencypackageuris: ::windows::runtime::RawPtr, deploymentoptions: DeploymentOptions, targetvolume: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1675     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
1676     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packagefullname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, deploymentoptions: DeploymentOptions, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1677     #[cfg(not(feature = "Foundation"))] usize,
1678 );
1679 #[repr(transparent)]
1680 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1681 #[doc(hidden)]
1682 pub struct IPackageManager4(::windows::runtime::IInspectable);
1683 unsafe impl ::windows::runtime::Interface for IPackageManager4 {
1684     type Vtable = IPackageManager4_abi;
1685     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1014077795, 47798, 18111, [143, 247, 218, 71, 25, 35, 10, 230]);
1686 }
1687 #[repr(C)]
1688 #[doc(hidden)]
1689 pub struct IPackageManager4_abi(
1690     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1691     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1692     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1693     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1694     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1695     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
1696     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1697     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
1698 );
1699 #[repr(transparent)]
1700 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1701 #[doc(hidden)]
1702 pub struct IPackageManager5(::windows::runtime::IInspectable);
1703 unsafe impl ::windows::runtime::Interface for IPackageManager5 {
1704     type Vtable = IPackageManager5_abi;
1705     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1897869591, 6909, 17171, [151, 140, 155, 182, 225, 184, 100, 167]);
1706 }
1707 #[repr(C)]
1708 #[doc(hidden)]
1709 pub struct IPackageManager5_abi(
1710     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1711     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1712     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1713     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1714     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1715     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
1716     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packageuri: ::windows::runtime::RawPtr, dependencypackageuris: ::windows::runtime::RawPtr, deploymentoptions: DeploymentOptions, targetvolume: ::windows::runtime::RawPtr, optionalpackagefamilynames: ::windows::runtime::RawPtr, externalpackageuris: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1717     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
1718     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packageuri: ::windows::runtime::RawPtr, dependencypackageuris: ::windows::runtime::RawPtr, deploymentoptions: DeploymentOptions, targetvolume: ::windows::runtime::RawPtr, optionalpackagefamilynames: ::windows::runtime::RawPtr, externalpackageuris: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1719     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
1720     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, mainpackagefamilyname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, dependencypackagefamilynames: ::windows::runtime::RawPtr, deploymentoptions: DeploymentOptions, appdatavolume: ::windows::runtime::RawPtr, optionalpackagefamilynames: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1721     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
1722     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1723 );
1724 #[repr(transparent)]
1725 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1726 #[doc(hidden)]
1727 pub struct IPackageManager6(::windows::runtime::IInspectable);
1728 unsafe impl ::windows::runtime::Interface for IPackageManager6 {
1729     type Vtable = IPackageManager6_abi;
1730     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(138930441, 21453, 20047, [131, 46, 87, 209, 128, 246, 228, 71]);
1731 }
1732 #[repr(C)]
1733 #[doc(hidden)]
1734 pub struct IPackageManager6_abi(
1735     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1736     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1737     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1738     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1739     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1740     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
1741     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packagefamilyname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1742     #[cfg(not(feature = "Foundation"))] usize,
1743     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, appinstallerfileuri: ::windows::runtime::RawPtr, options: AddPackageByAppInstallerOptions, targetvolume: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1744     #[cfg(not(feature = "Foundation"))] usize,
1745     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, appinstallerfileuri: ::windows::runtime::RawPtr, options: AddPackageByAppInstallerOptions, targetvolume: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1746     #[cfg(not(feature = "Foundation"))] usize,
1747     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
1748     pub  unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packageuri: ::windows::runtime::RawPtr, dependencypackageuris: ::windows::runtime::RawPtr, options: DeploymentOptions, targetvolume: ::windows::runtime::RawPtr, optionalpackagefamilynames: ::windows::runtime::RawPtr, packageuristoinstall: ::windows::runtime::RawPtr, relatedpackageuris: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1749     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
1750     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
1751     pub  unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packageuri: ::windows::runtime::RawPtr, dependencypackageuris: ::windows::runtime::RawPtr, options: DeploymentOptions, targetvolume: ::windows::runtime::RawPtr, optionalpackagefamilynames: ::windows::runtime::RawPtr, packageuristoinstall: ::windows::runtime::RawPtr, relatedpackageuris: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1752     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
1753     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packageuri: ::windows::runtime::RawPtr, dependencypackageuris: ::windows::runtime::RawPtr, deploymentoptions: DeploymentOptions, targetvolume: ::windows::runtime::RawPtr, optionalpackagefamilynames: ::windows::runtime::RawPtr, relatedpackageuris: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1754     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
1755 );
1756 #[repr(transparent)]
1757 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1758 #[doc(hidden)]
1759 pub struct IPackageManager7(::windows::runtime::IInspectable);
1760 unsafe impl ::windows::runtime::Interface for IPackageManager7 {
1761     type Vtable = IPackageManager7_abi;
1762     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4068889844, 11175, 19328, [136, 214, 190, 21, 249, 162, 63, 186]);
1763 }
1764 #[repr(C)]
1765 #[doc(hidden)]
1766 pub struct IPackageManager7_abi(
1767     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1768     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1769     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1770     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1771     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1772     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
1773     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
1774     pub  unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packageuri: ::windows::runtime::RawPtr, dependencypackageuris: ::windows::runtime::RawPtr, deploymentoptions: DeploymentOptions, targetvolume: ::windows::runtime::RawPtr, optionalpackagefamilynames: ::windows::runtime::RawPtr, relatedpackageuris: ::windows::runtime::RawPtr, packageuristoinstall: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1775     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
1776 );
1777 #[repr(transparent)]
1778 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1779 #[doc(hidden)]
1780 pub struct IPackageManager8(::windows::runtime::IInspectable);
1781 unsafe impl ::windows::runtime::Interface for IPackageManager8 {
1782     type Vtable = IPackageManager8_abi;
1783     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3092730672, 4760, 20194, [128, 238, 127, 101, 156, 93, 39, 130]);
1784 }
1785 #[repr(C)]
1786 #[doc(hidden)]
1787 pub struct IPackageManager8_abi(
1788     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1789     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1790     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1791     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1792     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1793     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
1794     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packagefamilyname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1795     #[cfg(not(feature = "Foundation"))] usize,
1796 );
1797 #[repr(transparent)]
1798 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1799 #[doc(hidden)]
1800 pub struct IPackageManager9(::windows::runtime::IInspectable);
1801 unsafe impl ::windows::runtime::Interface for IPackageManager9 {
1802     type Vtable = IPackageManager9_abi;
1803     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(447189045, 52337, 19246, [128, 166, 199, 4, 29, 133, 121, 167]);
1804 }
1805 #[repr(C)]
1806 #[doc(hidden)]
1807 pub struct IPackageManager9_abi(
1808     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1809     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1810     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1811     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1812     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1813     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
1814     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1815     #[cfg(not(all(feature = "ApplicationModel", feature = "Foundation_Collections")))] usize,
1816     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packageuri: ::windows::runtime::RawPtr, options: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1817     #[cfg(not(feature = "Foundation"))] usize,
1818     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packageuri: ::windows::runtime::RawPtr, options: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1819     #[cfg(not(feature = "Foundation"))] usize,
1820     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, manifesturi: ::windows::runtime::RawPtr, options: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1821     #[cfg(not(feature = "Foundation"))] usize,
1822     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packagefullnames: ::windows::runtime::RawPtr, options: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1823     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
1824     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packagefamilyname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, usestub: PackageStubPreference) -> ::windows::runtime::HRESULT,
1825     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packagefamilyname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut PackageStubPreference) -> ::windows::runtime::HRESULT,
1826 );
1827 #[repr(transparent)]
1828 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1829 #[doc(hidden)]
1830 pub struct IPackageManagerDebugSettings(::windows::runtime::IInspectable);
1831 unsafe impl ::windows::runtime::Interface for IPackageManagerDebugSettings {
1832     type Vtable = IPackageManagerDebugSettings_abi;
1833     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(442570371, 43400, 20431, [143, 15, 206, 23, 88, 152, 232, 235]);
1834 }
1835 #[repr(C)]
1836 #[doc(hidden)]
1837 pub struct IPackageManagerDebugSettings_abi(
1838     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1839     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1840     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1841     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1842     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1843     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
1844     #[cfg(all(feature = "ApplicationModel", feature = "Foundation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, package: ::windows::runtime::RawPtr, contentgroupname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, state: super::super::ApplicationModel::PackageContentGroupState, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1845     #[cfg(not(all(feature = "ApplicationModel", feature = "Foundation")))] usize,
1846     #[cfg(all(feature = "ApplicationModel", feature = "Foundation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, package: ::windows::runtime::RawPtr, contentgroupname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, state: super::super::ApplicationModel::PackageContentGroupState, completionpercentage: f64, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1847     #[cfg(not(all(feature = "ApplicationModel", feature = "Foundation")))] usize,
1848 );
1849 #[repr(transparent)]
1850 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1851 #[doc(hidden)]
1852 pub struct IPackageUserInformation(::windows::runtime::IInspectable);
1853 unsafe impl ::windows::runtime::Interface for IPackageUserInformation {
1854     type Vtable = IPackageUserInformation_abi;
1855     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4130878499, 64009, 19644, [144, 85, 21, 202, 39, 94, 46, 126]);
1856 }
1857 #[repr(C)]
1858 #[doc(hidden)]
1859 pub struct IPackageUserInformation_abi(
1860     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1861     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1862     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1863     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1864     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1865     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
1866     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
1867     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut PackageInstallState) -> ::windows::runtime::HRESULT,
1868 );
1869 #[repr(transparent)]
1870 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1871 #[doc(hidden)]
1872 pub struct IPackageVolume(::windows::runtime::IInspectable);
1873 unsafe impl ::windows::runtime::Interface for IPackageVolume {
1874     type Vtable = IPackageVolume_abi;
1875     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3475403459, 6720, 17488, [151, 57, 42, 206, 46, 137, 136, 83]);
1876 }
1877 #[repr(C)]
1878 #[doc(hidden)]
1879 pub struct IPackageVolume_abi(
1880     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1881     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1882     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1883     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1884     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1885     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
1886     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
1887     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
1888     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
1889     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
1890     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
1891     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
1892     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1893     #[cfg(not(all(feature = "ApplicationModel", feature = "Foundation_Collections")))] usize,
1894     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packagename: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, packagepublisher: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1895     #[cfg(not(all(feature = "ApplicationModel", feature = "Foundation_Collections")))] usize,
1896     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packagefamilyname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1897     #[cfg(not(all(feature = "ApplicationModel", feature = "Foundation_Collections")))] usize,
1898     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packagetypes: PackageTypes, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1899     #[cfg(not(all(feature = "ApplicationModel", feature = "Foundation_Collections")))] usize,
1900     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packagetypes: PackageTypes, packagename: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, packagepublisher: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1901     #[cfg(not(all(feature = "ApplicationModel", feature = "Foundation_Collections")))] usize,
1902     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packagetypes: PackageTypes, packagefamilyname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1903     #[cfg(not(all(feature = "ApplicationModel", feature = "Foundation_Collections")))] usize,
1904     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packagefullname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1905     #[cfg(not(all(feature = "ApplicationModel", feature = "Foundation_Collections")))] usize,
1906     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, usersecurityid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1907     #[cfg(not(all(feature = "ApplicationModel", feature = "Foundation_Collections")))] usize,
1908     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, usersecurityid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, packagename: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, packagepublisher: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1909     #[cfg(not(all(feature = "ApplicationModel", feature = "Foundation_Collections")))] usize,
1910     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, usersecurityid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, packagefamilyname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1911     #[cfg(not(all(feature = "ApplicationModel", feature = "Foundation_Collections")))] usize,
1912     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, usersecurityid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, packagetypes: PackageTypes, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1913     #[cfg(not(all(feature = "ApplicationModel", feature = "Foundation_Collections")))] usize,
1914     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, usersecurityid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, packagetypes: PackageTypes, packagename: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, packagepublisher: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1915     #[cfg(not(all(feature = "ApplicationModel", feature = "Foundation_Collections")))] usize,
1916     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, usersecurityid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, packagetypes: PackageTypes, packagefamilyname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1917     #[cfg(not(all(feature = "ApplicationModel", feature = "Foundation_Collections")))] usize,
1918     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, usersecurityid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, packagefullname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1919     #[cfg(not(all(feature = "ApplicationModel", feature = "Foundation_Collections")))] usize,
1920 );
1921 #[repr(transparent)]
1922 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1923 #[doc(hidden)]
1924 pub struct IPackageVolume2(::windows::runtime::IInspectable);
1925 unsafe impl ::windows::runtime::Interface for IPackageVolume2 {
1926     type Vtable = IPackageVolume2_abi;
1927     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1185664814, 40404, 18338, [171, 140, 198, 64, 131, 73, 188, 216]);
1928 }
1929 #[repr(C)]
1930 #[doc(hidden)]
1931 pub struct IPackageVolume2_abi(
1932     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1933     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1934     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1935     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1936     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1937     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
1938     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
1939     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
1940     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1941     #[cfg(not(feature = "Foundation"))] usize,
1942 );
1943 #[repr(transparent)]
1944 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1945 #[doc(hidden)]
1946 pub struct IRegisterPackageOptions(::windows::runtime::IInspectable);
1947 unsafe impl ::windows::runtime::Interface for IRegisterPackageOptions {
1948     type Vtable = IRegisterPackageOptions_abi;
1949     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1735463591, 20692, 18796, [132, 21, 6, 2, 180, 198, 211, 191]);
1950 }
1951 #[repr(C)]
1952 #[doc(hidden)]
1953 pub struct IRegisterPackageOptions_abi(
1954     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1955     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1956     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1957     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1958     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1959     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
1960     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1961     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
1962     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1963     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1964     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1965     #[cfg(not(feature = "Foundation_Collections"))] usize,
1966     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1967     #[cfg(not(feature = "Foundation"))] usize,
1968     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1969     #[cfg(not(feature = "Foundation"))] usize,
1970     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
1971     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
1972     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
1973     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
1974     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
1975     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
1976     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
1977     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
1978     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
1979     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
1980     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
1981     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
1982     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
1983     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
1984     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
1985     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
1986 );
1987 #[repr(transparent)]
1988 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1989 #[doc(hidden)]
1990 pub struct ISharedPackageContainer(::windows::runtime::IInspectable);
1991 unsafe impl ::windows::runtime::Interface for ISharedPackageContainer {
1992     type Vtable = ISharedPackageContainer_abi;
1993     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(394205865, 5406, 24311, [177, 217, 47, 186, 11, 75, 13, 23]);
1994 }
1995 #[repr(C)]
1996 #[doc(hidden)]
1997 pub struct ISharedPackageContainer_abi(
1998     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1999     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2000     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2001     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
2002     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2003     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
2004     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
2005     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
2006     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2007     #[cfg(not(feature = "Foundation_Collections"))] usize,
2008     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packagefamilyname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, options: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2009     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2010 );
2011 #[repr(transparent)]
2012 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2013 #[doc(hidden)]
2014 pub struct ISharedPackageContainerManager(::windows::runtime::IInspectable);
2015 unsafe impl ::windows::runtime::Interface for ISharedPackageContainerManager {
2016     type Vtable = ISharedPackageContainerManager_abi;
2017     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3191156840, 7927, 23240, [171, 63, 11, 159, 97, 47, 2, 116]);
2018 }
2019 #[repr(C)]
2020 #[doc(hidden)]
2021 pub struct ISharedPackageContainerManager_abi(
2022     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2023     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2024     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2025     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
2026     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2027     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
2028     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, name: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, options: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2029     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, id: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, options: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2030     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, id: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2031     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2032     #[cfg(not(feature = "Foundation_Collections"))] usize,
2033     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, options: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2034     #[cfg(not(feature = "Foundation_Collections"))] usize,
2035 );
2036 #[repr(transparent)]
2037 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2038 #[doc(hidden)]
2039 pub struct ISharedPackageContainerManagerStatics(::windows::runtime::IInspectable);
2040 unsafe impl ::windows::runtime::Interface for ISharedPackageContainerManagerStatics {
2041     type Vtable = ISharedPackageContainerManagerStatics_abi;
2042     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(787833672, 33674, 24405, [168, 158, 17, 152, 162, 198, 39, 230]);
2043 }
2044 #[repr(C)]
2045 #[doc(hidden)]
2046 pub struct ISharedPackageContainerManagerStatics_abi(
2047     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2048     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2049     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2050     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
2051     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2052     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
2053     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2054     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, usersid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2055     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2056 );
2057 #[repr(transparent)]
2058 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2059 #[doc(hidden)]
2060 pub struct ISharedPackageContainerMember(::windows::runtime::IInspectable);
2061 unsafe impl ::windows::runtime::Interface for ISharedPackageContainerMember {
2062     type Vtable = ISharedPackageContainerMember_abi;
2063     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4262265912, 17353, 21542, [184, 156, 247, 155, 248, 93, 223, 244]);
2064 }
2065 #[repr(C)]
2066 #[doc(hidden)]
2067 pub struct ISharedPackageContainerMember_abi(
2068     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2069     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2070     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2071     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
2072     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2073     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
2074     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
2075 );
2076 #[repr(transparent)]
2077 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2078 #[doc(hidden)]
2079 pub struct ISharedPackageContainerMemberFactory(::windows::runtime::IInspectable);
2080 unsafe impl ::windows::runtime::Interface for ISharedPackageContainerMemberFactory {
2081     type Vtable = ISharedPackageContainerMemberFactory_abi;
2082     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1236324075, 18831, 23138, [183, 56, 179, 202, 13, 67, 103, 4]);
2083 }
2084 #[repr(C)]
2085 #[doc(hidden)]
2086 pub struct ISharedPackageContainerMemberFactory_abi(
2087     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2088     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2089     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2090     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
2091     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2092     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
2093     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, packagefamilyname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2094 );
2095 #[repr(transparent)]
2096 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2097 #[doc(hidden)]
2098 pub struct IStagePackageOptions(::windows::runtime::IInspectable);
2099 unsafe impl ::windows::runtime::Interface for IStagePackageOptions {
2100     type Vtable = IStagePackageOptions_abi;
2101     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(185666716, 47453, 19542, [189, 54, 109, 101, 104, 0, 208, 107]);
2102 }
2103 #[repr(C)]
2104 #[doc(hidden)]
2105 pub struct IStagePackageOptions_abi(
2106     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2107     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2108     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2109     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
2110     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2111     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
2112     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2113     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
2114     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2115     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2116     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2117     #[cfg(not(feature = "Foundation_Collections"))] usize,
2118     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2119     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
2120     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2121     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
2122     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2123     #[cfg(not(feature = "Foundation"))] usize,
2124     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2125     #[cfg(not(feature = "Foundation"))] usize,
2126     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut StubPackageOption) -> ::windows::runtime::HRESULT,
2127     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: StubPackageOption) -> ::windows::runtime::HRESULT,
2128     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
2129     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
2130     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
2131     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
2132     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
2133     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
2134     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
2135     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
2136     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
2137     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
2138     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
2139     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
2140 );
2141 #[repr(transparent)]
2142 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2143 #[doc(hidden)]
2144 pub struct IUpdateSharedPackageContainerOptions(::windows::runtime::IInspectable);
2145 unsafe impl ::windows::runtime::Interface for IUpdateSharedPackageContainerOptions {
2146     type Vtable = IUpdateSharedPackageContainerOptions_abi;
2147     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2154245763, 29076, 23033, [181, 185, 218, 165, 55, 95, 19, 10]);
2148 }
2149 #[repr(C)]
2150 #[doc(hidden)]
2151 pub struct IUpdateSharedPackageContainerOptions_abi(
2152     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2153     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2154     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2155     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
2156     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2157     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
2158     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
2159     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
2160     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
2161     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
2162 );
2163 #[repr(transparent)]
2164 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2165 #[doc(hidden)]
2166 pub struct IUpdateSharedPackageContainerResult(::windows::runtime::IInspectable);
2167 unsafe impl ::windows::runtime::Interface for IUpdateSharedPackageContainerResult {
2168     type Vtable = IUpdateSharedPackageContainerResult_abi;
2169     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2856353271, 50989, 21592, [174, 163, 70, 69, 182, 168, 238, 153]);
2170 }
2171 #[repr(C)]
2172 #[doc(hidden)]
2173 pub struct IUpdateSharedPackageContainerResult_abi(
2174     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2175     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2176     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2177     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
2178     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2179     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
2180     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut SharedPackageContainerOperationStatus) -> ::windows::runtime::HRESULT,
2181     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::HRESULT) -> ::windows::runtime::HRESULT,
2182 );
2183 #[repr(transparent)]
2184 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2185 pub struct PackageAllUserProvisioningOptions(::windows::runtime::IInspectable);
2186 impl PackageAllUserProvisioningOptions {
new() -> ::windows::runtime::Result<Self>2187     pub fn new() -> ::windows::runtime::Result<Self> {
2188         Self::IActivationFactory(|f| f.activate_instance::<Self>())
2189     }
IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>2190     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
2191         static mut SHARED: ::windows::runtime::FactoryCache<PackageAllUserProvisioningOptions, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
2192         unsafe { SHARED.call(callback) }
2193     }
2194     #[cfg(feature = "Foundation_Collections")]
OptionalPackageFamilyNames(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<::windows::runtime::HSTRING>>2195     pub fn OptionalPackageFamilyNames(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<::windows::runtime::HSTRING>> {
2196         let this = self;
2197         unsafe {
2198             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2199             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<::windows::runtime::HSTRING>>(result__)
2200         }
2201     }
2202     #[cfg(feature = "Foundation_Collections")]
ProjectionOrderPackageFamilyNames(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<::windows::runtime::HSTRING>>2203     pub fn ProjectionOrderPackageFamilyNames(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<::windows::runtime::HSTRING>> {
2204         let this = self;
2205         unsafe {
2206             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2207             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<::windows::runtime::HSTRING>>(result__)
2208         }
2209     }
2210 }
2211 unsafe impl ::windows::runtime::RuntimeType for PackageAllUserProvisioningOptions {
2212     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Management.Deployment.PackageAllUserProvisioningOptions;{da35aa22-1de0-5d3e-99ff-d24f3118bf5e})");
2213 }
2214 unsafe impl ::windows::runtime::Interface for PackageAllUserProvisioningOptions {
2215     type Vtable = IPackageAllUserProvisioningOptions_abi;
2216     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3660950050, 7648, 23870, [153, 255, 210, 79, 49, 24, 191, 94]);
2217 }
2218 impl ::windows::runtime::RuntimeName for PackageAllUserProvisioningOptions {
2219     const NAME: &'static str = "Windows.Management.Deployment.PackageAllUserProvisioningOptions";
2220 }
2221 impl ::std::convert::From<PackageAllUserProvisioningOptions> for ::windows::runtime::IUnknown {
from(value: PackageAllUserProvisioningOptions) -> Self2222     fn from(value: PackageAllUserProvisioningOptions) -> Self {
2223         unsafe { ::std::mem::transmute(value) }
2224     }
2225 }
2226 impl ::std::convert::From<&PackageAllUserProvisioningOptions> for ::windows::runtime::IUnknown {
from(value: &PackageAllUserProvisioningOptions) -> Self2227     fn from(value: &PackageAllUserProvisioningOptions) -> Self {
2228         ::std::convert::From::from(::std::clone::Clone::clone(value))
2229     }
2230 }
2231 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for PackageAllUserProvisioningOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2232     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2233         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2234     }
2235 }
2236 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &PackageAllUserProvisioningOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2237     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2238         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2239     }
2240 }
2241 impl ::std::convert::From<PackageAllUserProvisioningOptions> for ::windows::runtime::IInspectable {
from(value: PackageAllUserProvisioningOptions) -> Self2242     fn from(value: PackageAllUserProvisioningOptions) -> Self {
2243         value.0
2244     }
2245 }
2246 impl ::std::convert::From<&PackageAllUserProvisioningOptions> for ::windows::runtime::IInspectable {
from(value: &PackageAllUserProvisioningOptions) -> Self2247     fn from(value: &PackageAllUserProvisioningOptions) -> Self {
2248         value.0.clone()
2249     }
2250 }
2251 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for PackageAllUserProvisioningOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2252     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2253         ::windows::runtime::Param::Owned(self.0)
2254     }
2255 }
2256 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a PackageAllUserProvisioningOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2257     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2258         ::windows::runtime::Param::Borrowed(&self.0)
2259     }
2260 }
2261 unsafe impl ::std::marker::Send for PackageAllUserProvisioningOptions {}
2262 unsafe impl ::std::marker::Sync for PackageAllUserProvisioningOptions {}
2263 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2264 #[repr(transparent)]
2265 pub struct PackageInstallState(pub i32);
2266 impl PackageInstallState {
2267     pub const NotInstalled: PackageInstallState = PackageInstallState(0i32);
2268     pub const Staged: PackageInstallState = PackageInstallState(1i32);
2269     pub const Installed: PackageInstallState = PackageInstallState(2i32);
2270     pub const Paused: PackageInstallState = PackageInstallState(6i32);
2271 }
2272 impl ::std::convert::From<i32> for PackageInstallState {
from(value: i32) -> Self2273     fn from(value: i32) -> Self {
2274         Self(value)
2275     }
2276 }
2277 unsafe impl ::windows::runtime::Abi for PackageInstallState {
2278     type Abi = Self;
2279     type DefaultType = Self;
2280 }
2281 unsafe impl ::windows::runtime::RuntimeType for PackageInstallState {
2282     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Management.Deployment.PackageInstallState;i4)");
2283 }
2284 #[repr(transparent)]
2285 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2286 pub struct PackageManager(::windows::runtime::IInspectable);
2287 impl PackageManager {
new() -> ::windows::runtime::Result<Self>2288     pub fn new() -> ::windows::runtime::Result<Self> {
2289         Self::IActivationFactory(|f| f.activate_instance::<Self>())
2290     }
IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>2291     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
2292         static mut SHARED: ::windows::runtime::FactoryCache<PackageManager, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
2293         unsafe { SHARED.call(callback) }
2294     }
2295     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
AddPackageAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>>(&self, packageuri: Param0, dependencypackageuris: Param1, deploymentoptions: DeploymentOptions) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>2296     pub fn AddPackageAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>>(&self, packageuri: Param0, dependencypackageuris: Param1, deploymentoptions: DeploymentOptions) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>> {
2297         let this = self;
2298         unsafe {
2299             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2300             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), packageuri.into_param().abi(), dependencypackageuris.into_param().abi(), deploymentoptions, &mut result__).from_abi::<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>(result__)
2301         }
2302     }
2303     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
UpdatePackageAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>>(&self, packageuri: Param0, dependencypackageuris: Param1, deploymentoptions: DeploymentOptions) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>2304     pub fn UpdatePackageAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>>(&self, packageuri: Param0, dependencypackageuris: Param1, deploymentoptions: DeploymentOptions) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>> {
2305         let this = self;
2306         unsafe {
2307             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2308             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), packageuri.into_param().abi(), dependencypackageuris.into_param().abi(), deploymentoptions, &mut result__).from_abi::<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>(result__)
2309         }
2310     }
2311     #[cfg(feature = "Foundation")]
RemovePackageAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagefullname: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>2312     pub fn RemovePackageAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagefullname: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>> {
2313         let this = self;
2314         unsafe {
2315             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2316             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), packagefullname.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>(result__)
2317         }
2318     }
2319     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
StagePackageAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>>(&self, packageuri: Param0, dependencypackageuris: Param1) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>2320     pub fn StagePackageAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>>(&self, packageuri: Param0, dependencypackageuris: Param1) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>> {
2321         let this = self;
2322         unsafe {
2323             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2324             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), packageuri.into_param().abi(), dependencypackageuris.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>(result__)
2325         }
2326     }
2327     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
RegisterPackageAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>>(&self, manifesturi: Param0, dependencypackageuris: Param1, deploymentoptions: DeploymentOptions) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>2328     pub fn RegisterPackageAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>>(&self, manifesturi: Param0, dependencypackageuris: Param1, deploymentoptions: DeploymentOptions) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>> {
2329         let this = self;
2330         unsafe {
2331             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2332             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), manifesturi.into_param().abi(), dependencypackageuris.into_param().abi(), deploymentoptions, &mut result__).from_abi::<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>(result__)
2333         }
2334     }
2335     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))]
FindPackages(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IIterable<super::super::ApplicationModel::Package>>2336     pub fn FindPackages(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IIterable<super::super::ApplicationModel::Package>> {
2337         let this = self;
2338         unsafe {
2339             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2340             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IIterable<super::super::ApplicationModel::Package>>(result__)
2341         }
2342     }
2343     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))]
FindPackagesByUserSecurityId<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, usersecurityid: Param0) -> ::windows::runtime::Result<super::super::Foundation::Collections::IIterable<super::super::ApplicationModel::Package>>2344     pub fn FindPackagesByUserSecurityId<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, usersecurityid: Param0) -> ::windows::runtime::Result<super::super::Foundation::Collections::IIterable<super::super::ApplicationModel::Package>> {
2345         let this = self;
2346         unsafe {
2347             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2348             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), usersecurityid.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::Collections::IIterable<super::super::ApplicationModel::Package>>(result__)
2349         }
2350     }
2351     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))]
FindPackagesByNamePublisher<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagename: Param0, packagepublisher: Param1) -> ::windows::runtime::Result<super::super::Foundation::Collections::IIterable<super::super::ApplicationModel::Package>>2352     pub fn FindPackagesByNamePublisher<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagename: Param0, packagepublisher: Param1) -> ::windows::runtime::Result<super::super::Foundation::Collections::IIterable<super::super::ApplicationModel::Package>> {
2353         let this = self;
2354         unsafe {
2355             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2356             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), packagename.into_param().abi(), packagepublisher.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::Collections::IIterable<super::super::ApplicationModel::Package>>(result__)
2357         }
2358     }
2359     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))]
FindPackagesByUserSecurityIdNamePublisher<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, usersecurityid: Param0, packagename: Param1, packagepublisher: Param2) -> ::windows::runtime::Result<super::super::Foundation::Collections::IIterable<super::super::ApplicationModel::Package>>2360     pub fn FindPackagesByUserSecurityIdNamePublisher<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, usersecurityid: Param0, packagename: Param1, packagepublisher: Param2) -> ::windows::runtime::Result<super::super::Foundation::Collections::IIterable<super::super::ApplicationModel::Package>> {
2361         let this = self;
2362         unsafe {
2363             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2364             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), usersecurityid.into_param().abi(), packagename.into_param().abi(), packagepublisher.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::Collections::IIterable<super::super::ApplicationModel::Package>>(result__)
2365         }
2366     }
2367     #[cfg(feature = "Foundation_Collections")]
FindUsers<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagefullname: Param0) -> ::windows::runtime::Result<super::super::Foundation::Collections::IIterable<PackageUserInformation>>2368     pub fn FindUsers<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagefullname: Param0) -> ::windows::runtime::Result<super::super::Foundation::Collections::IIterable<PackageUserInformation>> {
2369         let this = self;
2370         unsafe {
2371             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2372             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), packagefullname.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::Collections::IIterable<PackageUserInformation>>(result__)
2373         }
2374     }
SetPackageState<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagefullname: Param0, packagestate: PackageState) -> ::windows::runtime::Result<()>2375     pub fn SetPackageState<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagefullname: Param0, packagestate: PackageState) -> ::windows::runtime::Result<()> {
2376         let this = self;
2377         unsafe { (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), packagefullname.into_param().abi(), packagestate).ok() }
2378     }
2379     #[cfg(feature = "ApplicationModel")]
FindPackageByPackageFullName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagefullname: Param0) -> ::windows::runtime::Result<super::super::ApplicationModel::Package>2380     pub fn FindPackageByPackageFullName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagefullname: Param0) -> ::windows::runtime::Result<super::super::ApplicationModel::Package> {
2381         let this = self;
2382         unsafe {
2383             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2384             (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), packagefullname.into_param().abi(), &mut result__).from_abi::<super::super::ApplicationModel::Package>(result__)
2385         }
2386     }
2387     #[cfg(feature = "Foundation")]
CleanupPackageForUserAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagename: Param0, usersecurityid: Param1) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>2388     pub fn CleanupPackageForUserAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagename: Param0, usersecurityid: Param1) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>> {
2389         let this = self;
2390         unsafe {
2391             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2392             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), packagename.into_param().abi(), usersecurityid.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>(result__)
2393         }
2394     }
2395     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))]
FindPackagesByPackageFamilyName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagefamilyname: Param0) -> ::windows::runtime::Result<super::super::Foundation::Collections::IIterable<super::super::ApplicationModel::Package>>2396     pub fn FindPackagesByPackageFamilyName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagefamilyname: Param0) -> ::windows::runtime::Result<super::super::Foundation::Collections::IIterable<super::super::ApplicationModel::Package>> {
2397         let this = self;
2398         unsafe {
2399             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2400             (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), packagefamilyname.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::Collections::IIterable<super::super::ApplicationModel::Package>>(result__)
2401         }
2402     }
2403     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))]
FindPackagesByUserSecurityIdPackageFamilyName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, usersecurityid: Param0, packagefamilyname: Param1) -> ::windows::runtime::Result<super::super::Foundation::Collections::IIterable<super::super::ApplicationModel::Package>>2404     pub fn FindPackagesByUserSecurityIdPackageFamilyName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, usersecurityid: Param0, packagefamilyname: Param1) -> ::windows::runtime::Result<super::super::Foundation::Collections::IIterable<super::super::ApplicationModel::Package>> {
2405         let this = self;
2406         unsafe {
2407             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2408             (::windows::runtime::Interface::vtable(this).20)(::std::mem::transmute_copy(this), usersecurityid.into_param().abi(), packagefamilyname.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::Collections::IIterable<super::super::ApplicationModel::Package>>(result__)
2409         }
2410     }
2411     #[cfg(feature = "ApplicationModel")]
FindPackageByUserSecurityIdPackageFullName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, usersecurityid: Param0, packagefullname: Param1) -> ::windows::runtime::Result<super::super::ApplicationModel::Package>2412     pub fn FindPackageByUserSecurityIdPackageFullName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, usersecurityid: Param0, packagefullname: Param1) -> ::windows::runtime::Result<super::super::ApplicationModel::Package> {
2413         let this = self;
2414         unsafe {
2415             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2416             (::windows::runtime::Interface::vtable(this).21)(::std::mem::transmute_copy(this), usersecurityid.into_param().abi(), packagefullname.into_param().abi(), &mut result__).from_abi::<super::super::ApplicationModel::Package>(result__)
2417         }
2418     }
2419     #[cfg(feature = "Foundation")]
RemovePackageWithOptionsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagefullname: Param0, removaloptions: RemovalOptions) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>2420     pub fn RemovePackageWithOptionsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagefullname: Param0, removaloptions: RemovalOptions) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>> {
2421         let this = &::windows::runtime::Interface::cast::<IPackageManager2>(self)?;
2422         unsafe {
2423             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2424             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), packagefullname.into_param().abi(), removaloptions, &mut result__).from_abi::<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>(result__)
2425         }
2426     }
2427     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
StagePackageWithOptionsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>>(&self, packageuri: Param0, dependencypackageuris: Param1, deploymentoptions: DeploymentOptions) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>2428     pub fn StagePackageWithOptionsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>>(&self, packageuri: Param0, dependencypackageuris: Param1, deploymentoptions: DeploymentOptions) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>> {
2429         let this = &::windows::runtime::Interface::cast::<IPackageManager2>(self)?;
2430         unsafe {
2431             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2432             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), packageuri.into_param().abi(), dependencypackageuris.into_param().abi(), deploymentoptions, &mut result__).from_abi::<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>(result__)
2433         }
2434     }
2435     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
RegisterPackageByFullNameAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>>(&self, mainpackagefullname: Param0, dependencypackagefullnames: Param1, deploymentoptions: DeploymentOptions) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>2436     pub fn RegisterPackageByFullNameAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>>(&self, mainpackagefullname: Param0, dependencypackagefullnames: Param1, deploymentoptions: DeploymentOptions) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>> {
2437         let this = &::windows::runtime::Interface::cast::<IPackageManager2>(self)?;
2438         unsafe {
2439             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2440             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), mainpackagefullname.into_param().abi(), dependencypackagefullnames.into_param().abi(), deploymentoptions, &mut result__).from_abi::<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>(result__)
2441         }
2442     }
2443     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))]
FindPackagesWithPackageTypes(&self, packagetypes: PackageTypes) -> ::windows::runtime::Result<super::super::Foundation::Collections::IIterable<super::super::ApplicationModel::Package>>2444     pub fn FindPackagesWithPackageTypes(&self, packagetypes: PackageTypes) -> ::windows::runtime::Result<super::super::Foundation::Collections::IIterable<super::super::ApplicationModel::Package>> {
2445         let this = &::windows::runtime::Interface::cast::<IPackageManager2>(self)?;
2446         unsafe {
2447             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2448             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), packagetypes, &mut result__).from_abi::<super::super::Foundation::Collections::IIterable<super::super::ApplicationModel::Package>>(result__)
2449         }
2450     }
2451     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))]
FindPackagesByUserSecurityIdWithPackageTypes<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, usersecurityid: Param0, packagetypes: PackageTypes) -> ::windows::runtime::Result<super::super::Foundation::Collections::IIterable<super::super::ApplicationModel::Package>>2452     pub fn FindPackagesByUserSecurityIdWithPackageTypes<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, usersecurityid: Param0, packagetypes: PackageTypes) -> ::windows::runtime::Result<super::super::Foundation::Collections::IIterable<super::super::ApplicationModel::Package>> {
2453         let this = &::windows::runtime::Interface::cast::<IPackageManager2>(self)?;
2454         unsafe {
2455             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2456             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), usersecurityid.into_param().abi(), packagetypes, &mut result__).from_abi::<super::super::Foundation::Collections::IIterable<super::super::ApplicationModel::Package>>(result__)
2457         }
2458     }
2459     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))]
FindPackagesByNamePublisherWithPackageTypes<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagename: Param0, packagepublisher: Param1, packagetypes: PackageTypes) -> ::windows::runtime::Result<super::super::Foundation::Collections::IIterable<super::super::ApplicationModel::Package>>2460     pub fn FindPackagesByNamePublisherWithPackageTypes<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagename: Param0, packagepublisher: Param1, packagetypes: PackageTypes) -> ::windows::runtime::Result<super::super::Foundation::Collections::IIterable<super::super::ApplicationModel::Package>> {
2461         let this = &::windows::runtime::Interface::cast::<IPackageManager2>(self)?;
2462         unsafe {
2463             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2464             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), packagename.into_param().abi(), packagepublisher.into_param().abi(), packagetypes, &mut result__).from_abi::<super::super::Foundation::Collections::IIterable<super::super::ApplicationModel::Package>>(result__)
2465         }
2466     }
2467     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))]
FindPackagesByUserSecurityIdNamePublisherWithPackageTypes<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>( &self, usersecurityid: Param0, packagename: Param1, packagepublisher: Param2, packagetypes: PackageTypes, ) -> ::windows::runtime::Result<super::super::Foundation::Collections::IIterable<super::super::ApplicationModel::Package>>2468     pub fn FindPackagesByUserSecurityIdNamePublisherWithPackageTypes<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(
2469         &self,
2470         usersecurityid: Param0,
2471         packagename: Param1,
2472         packagepublisher: Param2,
2473         packagetypes: PackageTypes,
2474     ) -> ::windows::runtime::Result<super::super::Foundation::Collections::IIterable<super::super::ApplicationModel::Package>> {
2475         let this = &::windows::runtime::Interface::cast::<IPackageManager2>(self)?;
2476         unsafe {
2477             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2478             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), usersecurityid.into_param().abi(), packagename.into_param().abi(), packagepublisher.into_param().abi(), packagetypes, &mut result__).from_abi::<super::super::Foundation::Collections::IIterable<super::super::ApplicationModel::Package>>(result__)
2479         }
2480     }
2481     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))]
FindPackagesByPackageFamilyNameWithPackageTypes<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagefamilyname: Param0, packagetypes: PackageTypes) -> ::windows::runtime::Result<super::super::Foundation::Collections::IIterable<super::super::ApplicationModel::Package>>2482     pub fn FindPackagesByPackageFamilyNameWithPackageTypes<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagefamilyname: Param0, packagetypes: PackageTypes) -> ::windows::runtime::Result<super::super::Foundation::Collections::IIterable<super::super::ApplicationModel::Package>> {
2483         let this = &::windows::runtime::Interface::cast::<IPackageManager2>(self)?;
2484         unsafe {
2485             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2486             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), packagefamilyname.into_param().abi(), packagetypes, &mut result__).from_abi::<super::super::Foundation::Collections::IIterable<super::super::ApplicationModel::Package>>(result__)
2487         }
2488     }
2489     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))]
FindPackagesByUserSecurityIdPackageFamilyNameWithPackageTypes<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, usersecurityid: Param0, packagefamilyname: Param1, packagetypes: PackageTypes) -> ::windows::runtime::Result<super::super::Foundation::Collections::IIterable<super::super::ApplicationModel::Package>>2490     pub fn FindPackagesByUserSecurityIdPackageFamilyNameWithPackageTypes<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, usersecurityid: Param0, packagefamilyname: Param1, packagetypes: PackageTypes) -> ::windows::runtime::Result<super::super::Foundation::Collections::IIterable<super::super::ApplicationModel::Package>> {
2491         let this = &::windows::runtime::Interface::cast::<IPackageManager2>(self)?;
2492         unsafe {
2493             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2494             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), usersecurityid.into_param().abi(), packagefamilyname.into_param().abi(), packagetypes, &mut result__).from_abi::<super::super::Foundation::Collections::IIterable<super::super::ApplicationModel::Package>>(result__)
2495         }
2496     }
2497     #[cfg(feature = "Foundation")]
StageUserDataAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagefullname: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>2498     pub fn StageUserDataAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagefullname: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>> {
2499         let this = &::windows::runtime::Interface::cast::<IPackageManager2>(self)?;
2500         unsafe {
2501             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2502             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), packagefullname.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>(result__)
2503         }
2504     }
2505     #[cfg(feature = "Foundation")]
AddPackageVolumeAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagestorepath: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<PackageVolume>>2506     pub fn AddPackageVolumeAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagestorepath: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<PackageVolume>> {
2507         let this = &::windows::runtime::Interface::cast::<IPackageManager3>(self)?;
2508         unsafe {
2509             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2510             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), packagestorepath.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<PackageVolume>>(result__)
2511         }
2512     }
2513     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
AddPackageToVolumeAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>, Param3: ::windows::runtime::IntoParam<'a, PackageVolume>>( &self, packageuri: Param0, dependencypackageuris: Param1, deploymentoptions: DeploymentOptions, targetvolume: Param3, ) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>2514     pub fn AddPackageToVolumeAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>, Param3: ::windows::runtime::IntoParam<'a, PackageVolume>>(
2515         &self,
2516         packageuri: Param0,
2517         dependencypackageuris: Param1,
2518         deploymentoptions: DeploymentOptions,
2519         targetvolume: Param3,
2520     ) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>> {
2521         let this = &::windows::runtime::Interface::cast::<IPackageManager3>(self)?;
2522         unsafe {
2523             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2524             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), packageuri.into_param().abi(), dependencypackageuris.into_param().abi(), deploymentoptions, targetvolume.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>(result__)
2525         }
2526     }
ClearPackageStatus<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagefullname: Param0, status: PackageStatus) -> ::windows::runtime::Result<()>2527     pub fn ClearPackageStatus<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagefullname: Param0, status: PackageStatus) -> ::windows::runtime::Result<()> {
2528         let this = &::windows::runtime::Interface::cast::<IPackageManager3>(self)?;
2529         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), packagefullname.into_param().abi(), status).ok() }
2530     }
2531     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
RegisterPackageWithAppDataVolumeAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>, Param3: ::windows::runtime::IntoParam<'a, PackageVolume>>( &self, manifesturi: Param0, dependencypackageuris: Param1, deploymentoptions: DeploymentOptions, appdatavolume: Param3, ) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>2532     pub fn RegisterPackageWithAppDataVolumeAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>, Param3: ::windows::runtime::IntoParam<'a, PackageVolume>>(
2533         &self,
2534         manifesturi: Param0,
2535         dependencypackageuris: Param1,
2536         deploymentoptions: DeploymentOptions,
2537         appdatavolume: Param3,
2538     ) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>> {
2539         let this = &::windows::runtime::Interface::cast::<IPackageManager3>(self)?;
2540         unsafe {
2541             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2542             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), manifesturi.into_param().abi(), dependencypackageuris.into_param().abi(), deploymentoptions, appdatavolume.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>(result__)
2543         }
2544     }
FindPackageVolumeByName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, volumename: Param0) -> ::windows::runtime::Result<PackageVolume>2545     pub fn FindPackageVolumeByName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, volumename: Param0) -> ::windows::runtime::Result<PackageVolume> {
2546         let this = &::windows::runtime::Interface::cast::<IPackageManager3>(self)?;
2547         unsafe {
2548             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2549             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), volumename.into_param().abi(), &mut result__).from_abi::<PackageVolume>(result__)
2550         }
2551     }
2552     #[cfg(feature = "Foundation_Collections")]
FindPackageVolumes(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IIterable<PackageVolume>>2553     pub fn FindPackageVolumes(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IIterable<PackageVolume>> {
2554         let this = &::windows::runtime::Interface::cast::<IPackageManager3>(self)?;
2555         unsafe {
2556             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2557             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IIterable<PackageVolume>>(result__)
2558         }
2559     }
GetDefaultPackageVolume(&self) -> ::windows::runtime::Result<PackageVolume>2560     pub fn GetDefaultPackageVolume(&self) -> ::windows::runtime::Result<PackageVolume> {
2561         let this = &::windows::runtime::Interface::cast::<IPackageManager3>(self)?;
2562         unsafe {
2563             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2564             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<PackageVolume>(result__)
2565         }
2566     }
2567     #[cfg(feature = "Foundation")]
MovePackageToVolumeAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param2: ::windows::runtime::IntoParam<'a, PackageVolume>>(&self, packagefullname: Param0, deploymentoptions: DeploymentOptions, targetvolume: Param2) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>2568     pub fn MovePackageToVolumeAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param2: ::windows::runtime::IntoParam<'a, PackageVolume>>(&self, packagefullname: Param0, deploymentoptions: DeploymentOptions, targetvolume: Param2) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>> {
2569         let this = &::windows::runtime::Interface::cast::<IPackageManager3>(self)?;
2570         unsafe {
2571             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2572             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), packagefullname.into_param().abi(), deploymentoptions, targetvolume.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>(result__)
2573         }
2574     }
2575     #[cfg(feature = "Foundation")]
RemovePackageVolumeAsync<'a, Param0: ::windows::runtime::IntoParam<'a, PackageVolume>>(&self, volume: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>2576     pub fn RemovePackageVolumeAsync<'a, Param0: ::windows::runtime::IntoParam<'a, PackageVolume>>(&self, volume: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>> {
2577         let this = &::windows::runtime::Interface::cast::<IPackageManager3>(self)?;
2578         unsafe {
2579             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2580             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), volume.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>(result__)
2581         }
2582     }
SetDefaultPackageVolume<'a, Param0: ::windows::runtime::IntoParam<'a, PackageVolume>>(&self, volume: Param0) -> ::windows::runtime::Result<()>2583     pub fn SetDefaultPackageVolume<'a, Param0: ::windows::runtime::IntoParam<'a, PackageVolume>>(&self, volume: Param0) -> ::windows::runtime::Result<()> {
2584         let this = &::windows::runtime::Interface::cast::<IPackageManager3>(self)?;
2585         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), volume.into_param().abi()).ok() }
2586     }
SetPackageStatus<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagefullname: Param0, status: PackageStatus) -> ::windows::runtime::Result<()>2587     pub fn SetPackageStatus<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagefullname: Param0, status: PackageStatus) -> ::windows::runtime::Result<()> {
2588         let this = &::windows::runtime::Interface::cast::<IPackageManager3>(self)?;
2589         unsafe { (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), packagefullname.into_param().abi(), status).ok() }
2590     }
2591     #[cfg(feature = "Foundation")]
SetPackageVolumeOfflineAsync<'a, Param0: ::windows::runtime::IntoParam<'a, PackageVolume>>(&self, packagevolume: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>2592     pub fn SetPackageVolumeOfflineAsync<'a, Param0: ::windows::runtime::IntoParam<'a, PackageVolume>>(&self, packagevolume: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>> {
2593         let this = &::windows::runtime::Interface::cast::<IPackageManager3>(self)?;
2594         unsafe {
2595             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2596             (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), packagevolume.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>(result__)
2597         }
2598     }
2599     #[cfg(feature = "Foundation")]
SetPackageVolumeOnlineAsync<'a, Param0: ::windows::runtime::IntoParam<'a, PackageVolume>>(&self, packagevolume: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>2600     pub fn SetPackageVolumeOnlineAsync<'a, Param0: ::windows::runtime::IntoParam<'a, PackageVolume>>(&self, packagevolume: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>> {
2601         let this = &::windows::runtime::Interface::cast::<IPackageManager3>(self)?;
2602         unsafe {
2603             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2604             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), packagevolume.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>(result__)
2605         }
2606     }
2607     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
StagePackageToVolumeAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>, Param3: ::windows::runtime::IntoParam<'a, PackageVolume>>( &self, packageuri: Param0, dependencypackageuris: Param1, deploymentoptions: DeploymentOptions, targetvolume: Param3, ) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>2608     pub fn StagePackageToVolumeAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>, Param3: ::windows::runtime::IntoParam<'a, PackageVolume>>(
2609         &self,
2610         packageuri: Param0,
2611         dependencypackageuris: Param1,
2612         deploymentoptions: DeploymentOptions,
2613         targetvolume: Param3,
2614     ) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>> {
2615         let this = &::windows::runtime::Interface::cast::<IPackageManager3>(self)?;
2616         unsafe {
2617             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2618             (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), packageuri.into_param().abi(), dependencypackageuris.into_param().abi(), deploymentoptions, targetvolume.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>(result__)
2619         }
2620     }
2621     #[cfg(feature = "Foundation")]
StageUserDataWithOptionsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagefullname: Param0, deploymentoptions: DeploymentOptions) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>2622     pub fn StageUserDataWithOptionsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagefullname: Param0, deploymentoptions: DeploymentOptions) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>> {
2623         let this = &::windows::runtime::Interface::cast::<IPackageManager3>(self)?;
2624         unsafe {
2625             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2626             (::windows::runtime::Interface::vtable(this).20)(::std::mem::transmute_copy(this), packagefullname.into_param().abi(), deploymentoptions, &mut result__).from_abi::<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>(result__)
2627         }
2628     }
2629     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
GetPackageVolumesAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<PackageVolume>>>2630     pub fn GetPackageVolumesAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<PackageVolume>>> {
2631         let this = &::windows::runtime::Interface::cast::<IPackageManager4>(self)?;
2632         unsafe {
2633             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2634             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<PackageVolume>>>(result__)
2635         }
2636     }
2637     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
AddPackageToVolumeAndOptionalPackagesAsync< 'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>, Param3: ::windows::runtime::IntoParam<'a, PackageVolume>, Param4: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>, Param5: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>, >( &self, packageuri: Param0, dependencypackageuris: Param1, deploymentoptions: DeploymentOptions, targetvolume: Param3, optionalpackagefamilynames: Param4, externalpackageuris: Param5, ) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>2638     pub fn AddPackageToVolumeAndOptionalPackagesAsync<
2639         'a,
2640         Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>,
2641         Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>,
2642         Param3: ::windows::runtime::IntoParam<'a, PackageVolume>,
2643         Param4: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>,
2644         Param5: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>,
2645     >(
2646         &self,
2647         packageuri: Param0,
2648         dependencypackageuris: Param1,
2649         deploymentoptions: DeploymentOptions,
2650         targetvolume: Param3,
2651         optionalpackagefamilynames: Param4,
2652         externalpackageuris: Param5,
2653     ) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>> {
2654         let this = &::windows::runtime::Interface::cast::<IPackageManager5>(self)?;
2655         unsafe {
2656             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2657             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), packageuri.into_param().abi(), dependencypackageuris.into_param().abi(), deploymentoptions, targetvolume.into_param().abi(), optionalpackagefamilynames.into_param().abi(), externalpackageuris.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>(result__)
2658         }
2659     }
2660     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
StagePackageToVolumeAndOptionalPackagesAsync< 'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>, Param3: ::windows::runtime::IntoParam<'a, PackageVolume>, Param4: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>, Param5: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>, >( &self, packageuri: Param0, dependencypackageuris: Param1, deploymentoptions: DeploymentOptions, targetvolume: Param3, optionalpackagefamilynames: Param4, externalpackageuris: Param5, ) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>2661     pub fn StagePackageToVolumeAndOptionalPackagesAsync<
2662         'a,
2663         Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>,
2664         Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>,
2665         Param3: ::windows::runtime::IntoParam<'a, PackageVolume>,
2666         Param4: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>,
2667         Param5: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>,
2668     >(
2669         &self,
2670         packageuri: Param0,
2671         dependencypackageuris: Param1,
2672         deploymentoptions: DeploymentOptions,
2673         targetvolume: Param3,
2674         optionalpackagefamilynames: Param4,
2675         externalpackageuris: Param5,
2676     ) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>> {
2677         let this = &::windows::runtime::Interface::cast::<IPackageManager5>(self)?;
2678         unsafe {
2679             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2680             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), packageuri.into_param().abi(), dependencypackageuris.into_param().abi(), deploymentoptions, targetvolume.into_param().abi(), optionalpackagefamilynames.into_param().abi(), externalpackageuris.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>(result__)
2681         }
2682     }
2683     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
RegisterPackageByFamilyNameAndOptionalPackagesAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>, Param3: ::windows::runtime::IntoParam<'a, PackageVolume>, Param4: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>>( &self, mainpackagefamilyname: Param0, dependencypackagefamilynames: Param1, deploymentoptions: DeploymentOptions, appdatavolume: Param3, optionalpackagefamilynames: Param4, ) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>2684     pub fn RegisterPackageByFamilyNameAndOptionalPackagesAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>, Param3: ::windows::runtime::IntoParam<'a, PackageVolume>, Param4: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>>(
2685         &self,
2686         mainpackagefamilyname: Param0,
2687         dependencypackagefamilynames: Param1,
2688         deploymentoptions: DeploymentOptions,
2689         appdatavolume: Param3,
2690         optionalpackagefamilynames: Param4,
2691     ) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>> {
2692         let this = &::windows::runtime::Interface::cast::<IPackageManager5>(self)?;
2693         unsafe {
2694             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2695             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), mainpackagefamilyname.into_param().abi(), dependencypackagefamilynames.into_param().abi(), deploymentoptions, appdatavolume.into_param().abi(), optionalpackagefamilynames.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>(result__)
2696         }
2697     }
DebugSettings(&self) -> ::windows::runtime::Result<PackageManagerDebugSettings>2698     pub fn DebugSettings(&self) -> ::windows::runtime::Result<PackageManagerDebugSettings> {
2699         let this = &::windows::runtime::Interface::cast::<IPackageManager5>(self)?;
2700         unsafe {
2701             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2702             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<PackageManagerDebugSettings>(result__)
2703         }
2704     }
2705     #[cfg(feature = "Foundation")]
ProvisionPackageForAllUsersAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagefamilyname: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>2706     pub fn ProvisionPackageForAllUsersAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagefamilyname: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>> {
2707         let this = &::windows::runtime::Interface::cast::<IPackageManager6>(self)?;
2708         unsafe {
2709             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2710             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), packagefamilyname.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>(result__)
2711         }
2712     }
2713     #[cfg(feature = "Foundation")]
AddPackageByAppInstallerFileAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>, Param2: ::windows::runtime::IntoParam<'a, PackageVolume>>(&self, appinstallerfileuri: Param0, options: AddPackageByAppInstallerOptions, targetvolume: Param2) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>2714     pub fn AddPackageByAppInstallerFileAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>, Param2: ::windows::runtime::IntoParam<'a, PackageVolume>>(&self, appinstallerfileuri: Param0, options: AddPackageByAppInstallerOptions, targetvolume: Param2) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>> {
2715         let this = &::windows::runtime::Interface::cast::<IPackageManager6>(self)?;
2716         unsafe {
2717             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2718             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), appinstallerfileuri.into_param().abi(), options, targetvolume.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>(result__)
2719         }
2720     }
2721     #[cfg(feature = "Foundation")]
RequestAddPackageByAppInstallerFileAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>, Param2: ::windows::runtime::IntoParam<'a, PackageVolume>>(&self, appinstallerfileuri: Param0, options: AddPackageByAppInstallerOptions, targetvolume: Param2) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>2722     pub fn RequestAddPackageByAppInstallerFileAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>, Param2: ::windows::runtime::IntoParam<'a, PackageVolume>>(&self, appinstallerfileuri: Param0, options: AddPackageByAppInstallerOptions, targetvolume: Param2) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>> {
2723         let this = &::windows::runtime::Interface::cast::<IPackageManager6>(self)?;
2724         unsafe {
2725             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2726             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), appinstallerfileuri.into_param().abi(), options, targetvolume.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>(result__)
2727         }
2728     }
2729     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
AddPackageToVolumeAndRelatedSetAsync< 'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>, Param3: ::windows::runtime::IntoParam<'a, PackageVolume>, Param4: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>, Param5: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>, Param6: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>, >( &self, packageuri: Param0, dependencypackageuris: Param1, options: DeploymentOptions, targetvolume: Param3, optionalpackagefamilynames: Param4, packageuristoinstall: Param5, relatedpackageuris: Param6, ) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>2730     pub fn AddPackageToVolumeAndRelatedSetAsync<
2731         'a,
2732         Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>,
2733         Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>,
2734         Param3: ::windows::runtime::IntoParam<'a, PackageVolume>,
2735         Param4: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>,
2736         Param5: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>,
2737         Param6: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>,
2738     >(
2739         &self,
2740         packageuri: Param0,
2741         dependencypackageuris: Param1,
2742         options: DeploymentOptions,
2743         targetvolume: Param3,
2744         optionalpackagefamilynames: Param4,
2745         packageuristoinstall: Param5,
2746         relatedpackageuris: Param6,
2747     ) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>> {
2748         let this = &::windows::runtime::Interface::cast::<IPackageManager6>(self)?;
2749         unsafe {
2750             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2751             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), packageuri.into_param().abi(), dependencypackageuris.into_param().abi(), options, targetvolume.into_param().abi(), optionalpackagefamilynames.into_param().abi(), packageuristoinstall.into_param().abi(), relatedpackageuris.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>(result__)
2752         }
2753     }
2754     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
StagePackageToVolumeAndRelatedSetAsync< 'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>, Param3: ::windows::runtime::IntoParam<'a, PackageVolume>, Param4: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>, Param5: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>, Param6: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>, >( &self, packageuri: Param0, dependencypackageuris: Param1, options: DeploymentOptions, targetvolume: Param3, optionalpackagefamilynames: Param4, packageuristoinstall: Param5, relatedpackageuris: Param6, ) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>2755     pub fn StagePackageToVolumeAndRelatedSetAsync<
2756         'a,
2757         Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>,
2758         Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>,
2759         Param3: ::windows::runtime::IntoParam<'a, PackageVolume>,
2760         Param4: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>,
2761         Param5: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>,
2762         Param6: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>,
2763     >(
2764         &self,
2765         packageuri: Param0,
2766         dependencypackageuris: Param1,
2767         options: DeploymentOptions,
2768         targetvolume: Param3,
2769         optionalpackagefamilynames: Param4,
2770         packageuristoinstall: Param5,
2771         relatedpackageuris: Param6,
2772     ) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>> {
2773         let this = &::windows::runtime::Interface::cast::<IPackageManager6>(self)?;
2774         unsafe {
2775             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2776             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), packageuri.into_param().abi(), dependencypackageuris.into_param().abi(), options, targetvolume.into_param().abi(), optionalpackagefamilynames.into_param().abi(), packageuristoinstall.into_param().abi(), relatedpackageuris.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>(result__)
2777         }
2778     }
2779     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
RequestAddPackageAsync< 'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>, Param3: ::windows::runtime::IntoParam<'a, PackageVolume>, Param4: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>, Param5: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>, >( &self, packageuri: Param0, dependencypackageuris: Param1, deploymentoptions: DeploymentOptions, targetvolume: Param3, optionalpackagefamilynames: Param4, relatedpackageuris: Param5, ) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>2780     pub fn RequestAddPackageAsync<
2781         'a,
2782         Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>,
2783         Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>,
2784         Param3: ::windows::runtime::IntoParam<'a, PackageVolume>,
2785         Param4: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>,
2786         Param5: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>,
2787     >(
2788         &self,
2789         packageuri: Param0,
2790         dependencypackageuris: Param1,
2791         deploymentoptions: DeploymentOptions,
2792         targetvolume: Param3,
2793         optionalpackagefamilynames: Param4,
2794         relatedpackageuris: Param5,
2795     ) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>> {
2796         let this = &::windows::runtime::Interface::cast::<IPackageManager6>(self)?;
2797         unsafe {
2798             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2799             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), packageuri.into_param().abi(), dependencypackageuris.into_param().abi(), deploymentoptions, targetvolume.into_param().abi(), optionalpackagefamilynames.into_param().abi(), relatedpackageuris.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>(result__)
2800         }
2801     }
2802     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
RequestAddPackageAndRelatedSetAsync< 'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>, Param3: ::windows::runtime::IntoParam<'a, PackageVolume>, Param4: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>, Param5: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>, Param6: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>, >( &self, packageuri: Param0, dependencypackageuris: Param1, deploymentoptions: DeploymentOptions, targetvolume: Param3, optionalpackagefamilynames: Param4, relatedpackageuris: Param5, packageuristoinstall: Param6, ) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>2803     pub fn RequestAddPackageAndRelatedSetAsync<
2804         'a,
2805         Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>,
2806         Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>,
2807         Param3: ::windows::runtime::IntoParam<'a, PackageVolume>,
2808         Param4: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>,
2809         Param5: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>,
2810         Param6: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Foundation::Uri>>,
2811     >(
2812         &self,
2813         packageuri: Param0,
2814         dependencypackageuris: Param1,
2815         deploymentoptions: DeploymentOptions,
2816         targetvolume: Param3,
2817         optionalpackagefamilynames: Param4,
2818         relatedpackageuris: Param5,
2819         packageuristoinstall: Param6,
2820     ) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>> {
2821         let this = &::windows::runtime::Interface::cast::<IPackageManager7>(self)?;
2822         unsafe {
2823             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2824             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), packageuri.into_param().abi(), dependencypackageuris.into_param().abi(), deploymentoptions, targetvolume.into_param().abi(), optionalpackagefamilynames.into_param().abi(), relatedpackageuris.into_param().abi(), packageuristoinstall.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>(result__)
2825         }
2826     }
2827     #[cfg(feature = "Foundation")]
DeprovisionPackageForAllUsersAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagefamilyname: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>2828     pub fn DeprovisionPackageForAllUsersAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagefamilyname: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>> {
2829         let this = &::windows::runtime::Interface::cast::<IPackageManager8>(self)?;
2830         unsafe {
2831             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2832             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), packagefamilyname.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>(result__)
2833         }
2834     }
2835     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))]
FindProvisionedPackages(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>>2836     pub fn FindProvisionedPackages(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>> {
2837         let this = &::windows::runtime::Interface::cast::<IPackageManager9>(self)?;
2838         unsafe {
2839             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2840             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>>(result__)
2841         }
2842     }
2843     #[cfg(feature = "Foundation")]
AddPackageByUriAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>, Param1: ::windows::runtime::IntoParam<'a, AddPackageOptions>>(&self, packageuri: Param0, options: Param1) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>2844     pub fn AddPackageByUriAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>, Param1: ::windows::runtime::IntoParam<'a, AddPackageOptions>>(&self, packageuri: Param0, options: Param1) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>> {
2845         let this = &::windows::runtime::Interface::cast::<IPackageManager9>(self)?;
2846         unsafe {
2847             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2848             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), packageuri.into_param().abi(), options.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>(result__)
2849         }
2850     }
2851     #[cfg(feature = "Foundation")]
StagePackageByUriAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>, Param1: ::windows::runtime::IntoParam<'a, StagePackageOptions>>(&self, packageuri: Param0, options: Param1) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>2852     pub fn StagePackageByUriAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>, Param1: ::windows::runtime::IntoParam<'a, StagePackageOptions>>(&self, packageuri: Param0, options: Param1) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>> {
2853         let this = &::windows::runtime::Interface::cast::<IPackageManager9>(self)?;
2854         unsafe {
2855             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2856             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), packageuri.into_param().abi(), options.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>(result__)
2857         }
2858     }
2859     #[cfg(feature = "Foundation")]
RegisterPackageByUriAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>, Param1: ::windows::runtime::IntoParam<'a, RegisterPackageOptions>>(&self, manifesturi: Param0, options: Param1) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>2860     pub fn RegisterPackageByUriAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>, Param1: ::windows::runtime::IntoParam<'a, RegisterPackageOptions>>(&self, manifesturi: Param0, options: Param1) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>> {
2861         let this = &::windows::runtime::Interface::cast::<IPackageManager9>(self)?;
2862         unsafe {
2863             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2864             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), manifesturi.into_param().abi(), options.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>(result__)
2865         }
2866     }
2867     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
RegisterPackagesByFullNameAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>, Param1: ::windows::runtime::IntoParam<'a, RegisterPackageOptions>>(&self, packagefullnames: Param0, options: Param1) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>2868     pub fn RegisterPackagesByFullNameAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>, Param1: ::windows::runtime::IntoParam<'a, RegisterPackageOptions>>(&self, packagefullnames: Param0, options: Param1) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>> {
2869         let this = &::windows::runtime::Interface::cast::<IPackageManager9>(self)?;
2870         unsafe {
2871             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2872             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), packagefullnames.into_param().abi(), options.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>(result__)
2873         }
2874     }
SetPackageStubPreference<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagefamilyname: Param0, usestub: PackageStubPreference) -> ::windows::runtime::Result<()>2875     pub fn SetPackageStubPreference<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagefamilyname: Param0, usestub: PackageStubPreference) -> ::windows::runtime::Result<()> {
2876         let this = &::windows::runtime::Interface::cast::<IPackageManager9>(self)?;
2877         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), packagefamilyname.into_param().abi(), usestub).ok() }
2878     }
GetPackageStubPreference<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagefamilyname: Param0) -> ::windows::runtime::Result<PackageStubPreference>2879     pub fn GetPackageStubPreference<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagefamilyname: Param0) -> ::windows::runtime::Result<PackageStubPreference> {
2880         let this = &::windows::runtime::Interface::cast::<IPackageManager9>(self)?;
2881         unsafe {
2882             let mut result__: PackageStubPreference = ::std::mem::zeroed();
2883             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), packagefamilyname.into_param().abi(), &mut result__).from_abi::<PackageStubPreference>(result__)
2884         }
2885     }
2886     #[cfg(feature = "Foundation")]
ProvisionPackageForAllUsersWithOptionsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, PackageAllUserProvisioningOptions>>(&self, mainpackagefamilyname: Param0, options: Param1) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>2887     pub fn ProvisionPackageForAllUsersWithOptionsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, PackageAllUserProvisioningOptions>>(&self, mainpackagefamilyname: Param0, options: Param1) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>> {
2888         let this = &::windows::runtime::Interface::cast::<IPackageManager10>(self)?;
2889         unsafe {
2890             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2891             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), mainpackagefamilyname.into_param().abi(), options.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperationWithProgress<DeploymentResult, DeploymentProgress>>(result__)
2892         }
2893     }
2894 }
2895 unsafe impl ::windows::runtime::RuntimeType for PackageManager {
2896     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Management.Deployment.PackageManager;{9a7d4b65-5e8f-4fc7-a2e5-7f6925cb8b53})");
2897 }
2898 unsafe impl ::windows::runtime::Interface for PackageManager {
2899     type Vtable = IPackageManager_abi;
2900     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2591902565, 24207, 20423, [162, 229, 127, 105, 37, 203, 139, 83]);
2901 }
2902 impl ::windows::runtime::RuntimeName for PackageManager {
2903     const NAME: &'static str = "Windows.Management.Deployment.PackageManager";
2904 }
2905 impl ::std::convert::From<PackageManager> for ::windows::runtime::IUnknown {
from(value: PackageManager) -> Self2906     fn from(value: PackageManager) -> Self {
2907         unsafe { ::std::mem::transmute(value) }
2908     }
2909 }
2910 impl ::std::convert::From<&PackageManager> for ::windows::runtime::IUnknown {
from(value: &PackageManager) -> Self2911     fn from(value: &PackageManager) -> Self {
2912         ::std::convert::From::from(::std::clone::Clone::clone(value))
2913     }
2914 }
2915 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for PackageManager {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2916     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2917         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2918     }
2919 }
2920 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &PackageManager {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2921     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2922         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2923     }
2924 }
2925 impl ::std::convert::From<PackageManager> for ::windows::runtime::IInspectable {
from(value: PackageManager) -> Self2926     fn from(value: PackageManager) -> Self {
2927         value.0
2928     }
2929 }
2930 impl ::std::convert::From<&PackageManager> for ::windows::runtime::IInspectable {
from(value: &PackageManager) -> Self2931     fn from(value: &PackageManager) -> Self {
2932         value.0.clone()
2933     }
2934 }
2935 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for PackageManager {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2936     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2937         ::windows::runtime::Param::Owned(self.0)
2938     }
2939 }
2940 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a PackageManager {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2941     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2942         ::windows::runtime::Param::Borrowed(&self.0)
2943     }
2944 }
2945 unsafe impl ::std::marker::Send for PackageManager {}
2946 unsafe impl ::std::marker::Sync for PackageManager {}
2947 #[repr(transparent)]
2948 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2949 pub struct PackageManagerDebugSettings(::windows::runtime::IInspectable);
2950 impl PackageManagerDebugSettings {
2951     #[cfg(all(feature = "ApplicationModel", feature = "Foundation"))]
SetContentGroupStateAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::ApplicationModel::Package>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, package: Param0, contentgroupname: Param1, state: super::super::ApplicationModel::PackageContentGroupState) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>2952     pub fn SetContentGroupStateAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::ApplicationModel::Package>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, package: Param0, contentgroupname: Param1, state: super::super::ApplicationModel::PackageContentGroupState) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
2953         let this = self;
2954         unsafe {
2955             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2956             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), package.into_param().abi(), contentgroupname.into_param().abi(), state, &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
2957         }
2958     }
2959     #[cfg(all(feature = "ApplicationModel", feature = "Foundation"))]
SetContentGroupStateWithPercentageAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::ApplicationModel::Package>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, package: Param0, contentgroupname: Param1, state: super::super::ApplicationModel::PackageContentGroupState, completionpercentage: f64) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>2960     pub fn SetContentGroupStateWithPercentageAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::ApplicationModel::Package>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, package: Param0, contentgroupname: Param1, state: super::super::ApplicationModel::PackageContentGroupState, completionpercentage: f64) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
2961         let this = self;
2962         unsafe {
2963             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2964             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), package.into_param().abi(), contentgroupname.into_param().abi(), state, completionpercentage, &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
2965         }
2966     }
2967 }
2968 unsafe impl ::windows::runtime::RuntimeType for PackageManagerDebugSettings {
2969     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Management.Deployment.PackageManagerDebugSettings;{1a611683-a988-4fcf-8f0f-ce175898e8eb})");
2970 }
2971 unsafe impl ::windows::runtime::Interface for PackageManagerDebugSettings {
2972     type Vtable = IPackageManagerDebugSettings_abi;
2973     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(442570371, 43400, 20431, [143, 15, 206, 23, 88, 152, 232, 235]);
2974 }
2975 impl ::windows::runtime::RuntimeName for PackageManagerDebugSettings {
2976     const NAME: &'static str = "Windows.Management.Deployment.PackageManagerDebugSettings";
2977 }
2978 impl ::std::convert::From<PackageManagerDebugSettings> for ::windows::runtime::IUnknown {
from(value: PackageManagerDebugSettings) -> Self2979     fn from(value: PackageManagerDebugSettings) -> Self {
2980         unsafe { ::std::mem::transmute(value) }
2981     }
2982 }
2983 impl ::std::convert::From<&PackageManagerDebugSettings> for ::windows::runtime::IUnknown {
from(value: &PackageManagerDebugSettings) -> Self2984     fn from(value: &PackageManagerDebugSettings) -> Self {
2985         ::std::convert::From::from(::std::clone::Clone::clone(value))
2986     }
2987 }
2988 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for PackageManagerDebugSettings {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2989     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2990         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2991     }
2992 }
2993 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &PackageManagerDebugSettings {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2994     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2995         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2996     }
2997 }
2998 impl ::std::convert::From<PackageManagerDebugSettings> for ::windows::runtime::IInspectable {
from(value: PackageManagerDebugSettings) -> Self2999     fn from(value: PackageManagerDebugSettings) -> Self {
3000         value.0
3001     }
3002 }
3003 impl ::std::convert::From<&PackageManagerDebugSettings> for ::windows::runtime::IInspectable {
from(value: &PackageManagerDebugSettings) -> Self3004     fn from(value: &PackageManagerDebugSettings) -> Self {
3005         value.0.clone()
3006     }
3007 }
3008 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for PackageManagerDebugSettings {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>3009     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3010         ::windows::runtime::Param::Owned(self.0)
3011     }
3012 }
3013 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a PackageManagerDebugSettings {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>3014     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3015         ::windows::runtime::Param::Borrowed(&self.0)
3016     }
3017 }
3018 unsafe impl ::std::marker::Send for PackageManagerDebugSettings {}
3019 unsafe impl ::std::marker::Sync for PackageManagerDebugSettings {}
3020 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3021 #[repr(transparent)]
3022 pub struct PackageState(pub i32);
3023 impl PackageState {
3024     pub const Normal: PackageState = PackageState(0i32);
3025     pub const LicenseInvalid: PackageState = PackageState(1i32);
3026     pub const Modified: PackageState = PackageState(2i32);
3027     pub const Tampered: PackageState = PackageState(3i32);
3028 }
3029 impl ::std::convert::From<i32> for PackageState {
from(value: i32) -> Self3030     fn from(value: i32) -> Self {
3031         Self(value)
3032     }
3033 }
3034 unsafe impl ::windows::runtime::Abi for PackageState {
3035     type Abi = Self;
3036     type DefaultType = Self;
3037 }
3038 unsafe impl ::windows::runtime::RuntimeType for PackageState {
3039     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Management.Deployment.PackageState;i4)");
3040 }
3041 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3042 #[repr(transparent)]
3043 pub struct PackageStatus(pub u32);
3044 impl PackageStatus {
3045     pub const OK: PackageStatus = PackageStatus(0u32);
3046     pub const LicenseIssue: PackageStatus = PackageStatus(1u32);
3047     pub const Modified: PackageStatus = PackageStatus(2u32);
3048     pub const Tampered: PackageStatus = PackageStatus(4u32);
3049     pub const Disabled: PackageStatus = PackageStatus(8u32);
3050 }
3051 impl ::std::convert::From<u32> for PackageStatus {
from(value: u32) -> Self3052     fn from(value: u32) -> Self {
3053         Self(value)
3054     }
3055 }
3056 unsafe impl ::windows::runtime::Abi for PackageStatus {
3057     type Abi = Self;
3058     type DefaultType = Self;
3059 }
3060 unsafe impl ::windows::runtime::RuntimeType for PackageStatus {
3061     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Management.Deployment.PackageStatus;u4)");
3062 }
3063 impl ::std::ops::BitOr for PackageStatus {
3064     type Output = Self;
bitor(self, rhs: Self) -> Self3065     fn bitor(self, rhs: Self) -> Self {
3066         Self(self.0 | rhs.0)
3067     }
3068 }
3069 impl ::std::ops::BitAnd for PackageStatus {
3070     type Output = Self;
bitand(self, rhs: Self) -> Self3071     fn bitand(self, rhs: Self) -> Self {
3072         Self(self.0 & rhs.0)
3073     }
3074 }
3075 impl ::std::ops::BitOrAssign for PackageStatus {
bitor_assign(&mut self, rhs: Self)3076     fn bitor_assign(&mut self, rhs: Self) {
3077         self.0.bitor_assign(rhs.0)
3078     }
3079 }
3080 impl ::std::ops::BitAndAssign for PackageStatus {
bitand_assign(&mut self, rhs: Self)3081     fn bitand_assign(&mut self, rhs: Self) {
3082         self.0.bitand_assign(rhs.0)
3083     }
3084 }
3085 impl ::std::ops::Not for PackageStatus {
3086     type Output = Self;
not(self) -> Self3087     fn not(self) -> Self {
3088         Self(self.0.not())
3089     }
3090 }
3091 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3092 #[repr(transparent)]
3093 pub struct PackageStubPreference(pub i32);
3094 impl PackageStubPreference {
3095     pub const Full: PackageStubPreference = PackageStubPreference(0i32);
3096     pub const Stub: PackageStubPreference = PackageStubPreference(1i32);
3097 }
3098 impl ::std::convert::From<i32> for PackageStubPreference {
from(value: i32) -> Self3099     fn from(value: i32) -> Self {
3100         Self(value)
3101     }
3102 }
3103 unsafe impl ::windows::runtime::Abi for PackageStubPreference {
3104     type Abi = Self;
3105     type DefaultType = Self;
3106 }
3107 unsafe impl ::windows::runtime::RuntimeType for PackageStubPreference {
3108     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Management.Deployment.PackageStubPreference;i4)");
3109 }
3110 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3111 #[repr(transparent)]
3112 pub struct PackageTypes(pub u32);
3113 impl PackageTypes {
3114     pub const None: PackageTypes = PackageTypes(0u32);
3115     pub const Main: PackageTypes = PackageTypes(1u32);
3116     pub const Framework: PackageTypes = PackageTypes(2u32);
3117     pub const Resource: PackageTypes = PackageTypes(4u32);
3118     pub const Bundle: PackageTypes = PackageTypes(8u32);
3119     pub const Xap: PackageTypes = PackageTypes(16u32);
3120     pub const Optional: PackageTypes = PackageTypes(32u32);
3121     pub const All: PackageTypes = PackageTypes(4294967295u32);
3122 }
3123 impl ::std::convert::From<u32> for PackageTypes {
from(value: u32) -> Self3124     fn from(value: u32) -> Self {
3125         Self(value)
3126     }
3127 }
3128 unsafe impl ::windows::runtime::Abi for PackageTypes {
3129     type Abi = Self;
3130     type DefaultType = Self;
3131 }
3132 unsafe impl ::windows::runtime::RuntimeType for PackageTypes {
3133     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Management.Deployment.PackageTypes;u4)");
3134 }
3135 impl ::std::ops::BitOr for PackageTypes {
3136     type Output = Self;
bitor(self, rhs: Self) -> Self3137     fn bitor(self, rhs: Self) -> Self {
3138         Self(self.0 | rhs.0)
3139     }
3140 }
3141 impl ::std::ops::BitAnd for PackageTypes {
3142     type Output = Self;
bitand(self, rhs: Self) -> Self3143     fn bitand(self, rhs: Self) -> Self {
3144         Self(self.0 & rhs.0)
3145     }
3146 }
3147 impl ::std::ops::BitOrAssign for PackageTypes {
bitor_assign(&mut self, rhs: Self)3148     fn bitor_assign(&mut self, rhs: Self) {
3149         self.0.bitor_assign(rhs.0)
3150     }
3151 }
3152 impl ::std::ops::BitAndAssign for PackageTypes {
bitand_assign(&mut self, rhs: Self)3153     fn bitand_assign(&mut self, rhs: Self) {
3154         self.0.bitand_assign(rhs.0)
3155     }
3156 }
3157 impl ::std::ops::Not for PackageTypes {
3158     type Output = Self;
not(self) -> Self3159     fn not(self) -> Self {
3160         Self(self.0.not())
3161     }
3162 }
3163 #[repr(transparent)]
3164 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
3165 pub struct PackageUserInformation(::windows::runtime::IInspectable);
3166 impl PackageUserInformation {
UserSecurityId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>3167     pub fn UserSecurityId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
3168         let this = self;
3169         unsafe {
3170             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
3171             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
3172         }
3173     }
InstallState(&self) -> ::windows::runtime::Result<PackageInstallState>3174     pub fn InstallState(&self) -> ::windows::runtime::Result<PackageInstallState> {
3175         let this = self;
3176         unsafe {
3177             let mut result__: PackageInstallState = ::std::mem::zeroed();
3178             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<PackageInstallState>(result__)
3179         }
3180     }
3181 }
3182 unsafe impl ::windows::runtime::RuntimeType for PackageUserInformation {
3183     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Management.Deployment.PackageUserInformation;{f6383423-fa09-4cbc-9055-15ca275e2e7e})");
3184 }
3185 unsafe impl ::windows::runtime::Interface for PackageUserInformation {
3186     type Vtable = IPackageUserInformation_abi;
3187     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4130878499, 64009, 19644, [144, 85, 21, 202, 39, 94, 46, 126]);
3188 }
3189 impl ::windows::runtime::RuntimeName for PackageUserInformation {
3190     const NAME: &'static str = "Windows.Management.Deployment.PackageUserInformation";
3191 }
3192 impl ::std::convert::From<PackageUserInformation> for ::windows::runtime::IUnknown {
from(value: PackageUserInformation) -> Self3193     fn from(value: PackageUserInformation) -> Self {
3194         unsafe { ::std::mem::transmute(value) }
3195     }
3196 }
3197 impl ::std::convert::From<&PackageUserInformation> for ::windows::runtime::IUnknown {
from(value: &PackageUserInformation) -> Self3198     fn from(value: &PackageUserInformation) -> Self {
3199         ::std::convert::From::from(::std::clone::Clone::clone(value))
3200     }
3201 }
3202 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for PackageUserInformation {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3203     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3204         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
3205     }
3206 }
3207 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &PackageUserInformation {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3208     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3209         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
3210     }
3211 }
3212 impl ::std::convert::From<PackageUserInformation> for ::windows::runtime::IInspectable {
from(value: PackageUserInformation) -> Self3213     fn from(value: PackageUserInformation) -> Self {
3214         value.0
3215     }
3216 }
3217 impl ::std::convert::From<&PackageUserInformation> for ::windows::runtime::IInspectable {
from(value: &PackageUserInformation) -> Self3218     fn from(value: &PackageUserInformation) -> Self {
3219         value.0.clone()
3220     }
3221 }
3222 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for PackageUserInformation {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>3223     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3224         ::windows::runtime::Param::Owned(self.0)
3225     }
3226 }
3227 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a PackageUserInformation {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>3228     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3229         ::windows::runtime::Param::Borrowed(&self.0)
3230     }
3231 }
3232 unsafe impl ::std::marker::Send for PackageUserInformation {}
3233 unsafe impl ::std::marker::Sync for PackageUserInformation {}
3234 #[repr(transparent)]
3235 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
3236 pub struct PackageVolume(::windows::runtime::IInspectable);
3237 impl PackageVolume {
IsOffline(&self) -> ::windows::runtime::Result<bool>3238     pub fn IsOffline(&self) -> ::windows::runtime::Result<bool> {
3239         let this = self;
3240         unsafe {
3241             let mut result__: bool = ::std::mem::zeroed();
3242             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
3243         }
3244     }
IsSystemVolume(&self) -> ::windows::runtime::Result<bool>3245     pub fn IsSystemVolume(&self) -> ::windows::runtime::Result<bool> {
3246         let this = self;
3247         unsafe {
3248             let mut result__: bool = ::std::mem::zeroed();
3249             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
3250         }
3251     }
MountPoint(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>3252     pub fn MountPoint(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
3253         let this = self;
3254         unsafe {
3255             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
3256             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
3257         }
3258     }
Name(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>3259     pub fn Name(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
3260         let this = self;
3261         unsafe {
3262             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
3263             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
3264         }
3265     }
PackageStorePath(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>3266     pub fn PackageStorePath(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
3267         let this = self;
3268         unsafe {
3269             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
3270             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
3271         }
3272     }
SupportsHardLinks(&self) -> ::windows::runtime::Result<bool>3273     pub fn SupportsHardLinks(&self) -> ::windows::runtime::Result<bool> {
3274         let this = self;
3275         unsafe {
3276             let mut result__: bool = ::std::mem::zeroed();
3277             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
3278         }
3279     }
3280     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))]
FindPackages(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>>3281     pub fn FindPackages(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>> {
3282         let this = self;
3283         unsafe {
3284             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3285             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>>(result__)
3286         }
3287     }
3288     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))]
FindPackagesByNamePublisher<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagename: Param0, packagepublisher: Param1) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>>3289     pub fn FindPackagesByNamePublisher<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagename: Param0, packagepublisher: Param1) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>> {
3290         let this = self;
3291         unsafe {
3292             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3293             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), packagename.into_param().abi(), packagepublisher.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>>(result__)
3294         }
3295     }
3296     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))]
FindPackagesByPackageFamilyName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagefamilyname: Param0) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>>3297     pub fn FindPackagesByPackageFamilyName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagefamilyname: Param0) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>> {
3298         let this = self;
3299         unsafe {
3300             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3301             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), packagefamilyname.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>>(result__)
3302         }
3303     }
3304     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))]
FindPackagesWithPackageTypes(&self, packagetypes: PackageTypes) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>>3305     pub fn FindPackagesWithPackageTypes(&self, packagetypes: PackageTypes) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>> {
3306         let this = self;
3307         unsafe {
3308             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3309             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), packagetypes, &mut result__).from_abi::<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>>(result__)
3310         }
3311     }
3312     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))]
FindPackagesByNamePublisherWithPackagesTypes<'a, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagetypes: PackageTypes, packagename: Param1, packagepublisher: Param2) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>>3313     pub fn FindPackagesByNamePublisherWithPackagesTypes<'a, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagetypes: PackageTypes, packagename: Param1, packagepublisher: Param2) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>> {
3314         let this = self;
3315         unsafe {
3316             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3317             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), packagetypes, packagename.into_param().abi(), packagepublisher.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>>(result__)
3318         }
3319     }
3320     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))]
FindPackagesByPackageFamilyNameWithPackageTypes<'a, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagetypes: PackageTypes, packagefamilyname: Param1) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>>3321     pub fn FindPackagesByPackageFamilyNameWithPackageTypes<'a, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagetypes: PackageTypes, packagefamilyname: Param1) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>> {
3322         let this = self;
3323         unsafe {
3324             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3325             (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), packagetypes, packagefamilyname.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>>(result__)
3326         }
3327     }
3328     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))]
FindPackageByPackageFullName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagefullname: Param0) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>>3329     pub fn FindPackageByPackageFullName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, packagefullname: Param0) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>> {
3330         let this = self;
3331         unsafe {
3332             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3333             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), packagefullname.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>>(result__)
3334         }
3335     }
3336     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))]
FindPackagesByUserSecurityId<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, usersecurityid: Param0) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>>3337     pub fn FindPackagesByUserSecurityId<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, usersecurityid: Param0) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>> {
3338         let this = self;
3339         unsafe {
3340             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3341             (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), usersecurityid.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>>(result__)
3342         }
3343     }
3344     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))]
FindPackagesByUserSecurityIdNamePublisher<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, usersecurityid: Param0, packagename: Param1, packagepublisher: Param2) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>>3345     pub fn FindPackagesByUserSecurityIdNamePublisher<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, usersecurityid: Param0, packagename: Param1, packagepublisher: Param2) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>> {
3346         let this = self;
3347         unsafe {
3348             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3349             (::windows::runtime::Interface::vtable(this).20)(::std::mem::transmute_copy(this), usersecurityid.into_param().abi(), packagename.into_param().abi(), packagepublisher.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>>(result__)
3350         }
3351     }
3352     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))]
FindPackagesByUserSecurityIdPackageFamilyName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, usersecurityid: Param0, packagefamilyname: Param1) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>>3353     pub fn FindPackagesByUserSecurityIdPackageFamilyName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, usersecurityid: Param0, packagefamilyname: Param1) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>> {
3354         let this = self;
3355         unsafe {
3356             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3357             (::windows::runtime::Interface::vtable(this).21)(::std::mem::transmute_copy(this), usersecurityid.into_param().abi(), packagefamilyname.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>>(result__)
3358         }
3359     }
3360     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))]
FindPackagesByUserSecurityIdWithPackageTypes<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, usersecurityid: Param0, packagetypes: PackageTypes) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>>3361     pub fn FindPackagesByUserSecurityIdWithPackageTypes<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, usersecurityid: Param0, packagetypes: PackageTypes) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>> {
3362         let this = self;
3363         unsafe {
3364             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3365             (::windows::runtime::Interface::vtable(this).22)(::std::mem::transmute_copy(this), usersecurityid.into_param().abi(), packagetypes, &mut result__).from_abi::<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>>(result__)
3366         }
3367     }
3368     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))]
FindPackagesByUserSecurityIdNamePublisherWithPackageTypes<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param3: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>( &self, usersecurityid: Param0, packagetypes: PackageTypes, packagename: Param2, packagepublisher: Param3, ) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>>3369     pub fn FindPackagesByUserSecurityIdNamePublisherWithPackageTypes<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param3: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(
3370         &self,
3371         usersecurityid: Param0,
3372         packagetypes: PackageTypes,
3373         packagename: Param2,
3374         packagepublisher: Param3,
3375     ) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>> {
3376         let this = self;
3377         unsafe {
3378             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3379             (::windows::runtime::Interface::vtable(this).23)(::std::mem::transmute_copy(this), usersecurityid.into_param().abi(), packagetypes, packagename.into_param().abi(), packagepublisher.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>>(result__)
3380         }
3381     }
3382     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))]
FindPackagesByUserSecurityIdPackageFamilyNameWithPackagesTypes<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, usersecurityid: Param0, packagetypes: PackageTypes, packagefamilyname: Param2) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>>3383     pub fn FindPackagesByUserSecurityIdPackageFamilyNameWithPackagesTypes<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, usersecurityid: Param0, packagetypes: PackageTypes, packagefamilyname: Param2) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>> {
3384         let this = self;
3385         unsafe {
3386             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3387             (::windows::runtime::Interface::vtable(this).24)(::std::mem::transmute_copy(this), usersecurityid.into_param().abi(), packagetypes, packagefamilyname.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>>(result__)
3388         }
3389     }
3390     #[cfg(all(feature = "ApplicationModel", feature = "Foundation_Collections"))]
FindPackageByUserSecurityIdPackageFullName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, usersecurityid: Param0, packagefullname: Param1) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>>3391     pub fn FindPackageByUserSecurityIdPackageFullName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, usersecurityid: Param0, packagefullname: Param1) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>> {
3392         let this = self;
3393         unsafe {
3394             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3395             (::windows::runtime::Interface::vtable(this).25)(::std::mem::transmute_copy(this), usersecurityid.into_param().abi(), packagefullname.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<super::super::ApplicationModel::Package>>(result__)
3396         }
3397     }
IsFullTrustPackageSupported(&self) -> ::windows::runtime::Result<bool>3398     pub fn IsFullTrustPackageSupported(&self) -> ::windows::runtime::Result<bool> {
3399         let this = &::windows::runtime::Interface::cast::<IPackageVolume2>(self)?;
3400         unsafe {
3401             let mut result__: bool = ::std::mem::zeroed();
3402             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
3403         }
3404     }
IsAppxInstallSupported(&self) -> ::windows::runtime::Result<bool>3405     pub fn IsAppxInstallSupported(&self) -> ::windows::runtime::Result<bool> {
3406         let this = &::windows::runtime::Interface::cast::<IPackageVolume2>(self)?;
3407         unsafe {
3408             let mut result__: bool = ::std::mem::zeroed();
3409             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
3410         }
3411     }
3412     #[cfg(feature = "Foundation")]
GetAvailableSpaceAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<u64>>3413     pub fn GetAvailableSpaceAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<u64>> {
3414         let this = &::windows::runtime::Interface::cast::<IPackageVolume2>(self)?;
3415         unsafe {
3416             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3417             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<u64>>(result__)
3418         }
3419     }
3420 }
3421 unsafe impl ::windows::runtime::RuntimeType for PackageVolume {
3422     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Management.Deployment.PackageVolume;{cf2672c3-1a40-4450-9739-2ace2e898853})");
3423 }
3424 unsafe impl ::windows::runtime::Interface for PackageVolume {
3425     type Vtable = IPackageVolume_abi;
3426     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3475403459, 6720, 17488, [151, 57, 42, 206, 46, 137, 136, 83]);
3427 }
3428 impl ::windows::runtime::RuntimeName for PackageVolume {
3429     const NAME: &'static str = "Windows.Management.Deployment.PackageVolume";
3430 }
3431 impl ::std::convert::From<PackageVolume> for ::windows::runtime::IUnknown {
from(value: PackageVolume) -> Self3432     fn from(value: PackageVolume) -> Self {
3433         unsafe { ::std::mem::transmute(value) }
3434     }
3435 }
3436 impl ::std::convert::From<&PackageVolume> for ::windows::runtime::IUnknown {
from(value: &PackageVolume) -> Self3437     fn from(value: &PackageVolume) -> Self {
3438         ::std::convert::From::from(::std::clone::Clone::clone(value))
3439     }
3440 }
3441 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for PackageVolume {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3442     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3443         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
3444     }
3445 }
3446 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &PackageVolume {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3447     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3448         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
3449     }
3450 }
3451 impl ::std::convert::From<PackageVolume> for ::windows::runtime::IInspectable {
from(value: PackageVolume) -> Self3452     fn from(value: PackageVolume) -> Self {
3453         value.0
3454     }
3455 }
3456 impl ::std::convert::From<&PackageVolume> for ::windows::runtime::IInspectable {
from(value: &PackageVolume) -> Self3457     fn from(value: &PackageVolume) -> Self {
3458         value.0.clone()
3459     }
3460 }
3461 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for PackageVolume {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>3462     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3463         ::windows::runtime::Param::Owned(self.0)
3464     }
3465 }
3466 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a PackageVolume {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>3467     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3468         ::windows::runtime::Param::Borrowed(&self.0)
3469     }
3470 }
3471 unsafe impl ::std::marker::Send for PackageVolume {}
3472 unsafe impl ::std::marker::Sync for PackageVolume {}
3473 #[repr(transparent)]
3474 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
3475 pub struct RegisterPackageOptions(::windows::runtime::IInspectable);
3476 impl RegisterPackageOptions {
new() -> ::windows::runtime::Result<Self>3477     pub fn new() -> ::windows::runtime::Result<Self> {
3478         Self::IActivationFactory(|f| f.activate_instance::<Self>())
3479     }
IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>3480     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
3481         static mut SHARED: ::windows::runtime::FactoryCache<RegisterPackageOptions, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
3482         unsafe { SHARED.call(callback) }
3483     }
3484     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
DependencyPackageUris(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::Foundation::Uri>>3485     pub fn DependencyPackageUris(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::Foundation::Uri>> {
3486         let this = self;
3487         unsafe {
3488             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3489             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<super::super::Foundation::Uri>>(result__)
3490         }
3491     }
AppDataVolume(&self) -> ::windows::runtime::Result<PackageVolume>3492     pub fn AppDataVolume(&self) -> ::windows::runtime::Result<PackageVolume> {
3493         let this = self;
3494         unsafe {
3495             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3496             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<PackageVolume>(result__)
3497         }
3498     }
SetAppDataVolume<'a, Param0: ::windows::runtime::IntoParam<'a, PackageVolume>>(&self, value: Param0) -> ::windows::runtime::Result<()>3499     pub fn SetAppDataVolume<'a, Param0: ::windows::runtime::IntoParam<'a, PackageVolume>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
3500         let this = self;
3501         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
3502     }
3503     #[cfg(feature = "Foundation_Collections")]
OptionalPackageFamilyNames(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<::windows::runtime::HSTRING>>3504     pub fn OptionalPackageFamilyNames(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<::windows::runtime::HSTRING>> {
3505         let this = self;
3506         unsafe {
3507             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3508             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<::windows::runtime::HSTRING>>(result__)
3509         }
3510     }
3511     #[cfg(feature = "Foundation")]
ExternalLocationUri(&self) -> ::windows::runtime::Result<super::super::Foundation::Uri>3512     pub fn ExternalLocationUri(&self) -> ::windows::runtime::Result<super::super::Foundation::Uri> {
3513         let this = self;
3514         unsafe {
3515             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3516             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Uri>(result__)
3517         }
3518     }
3519     #[cfg(feature = "Foundation")]
SetExternalLocationUri<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>>(&self, value: Param0) -> ::windows::runtime::Result<()>3520     pub fn SetExternalLocationUri<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
3521         let this = self;
3522         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
3523     }
DeveloperMode(&self) -> ::windows::runtime::Result<bool>3524     pub fn DeveloperMode(&self) -> ::windows::runtime::Result<bool> {
3525         let this = self;
3526         unsafe {
3527             let mut result__: bool = ::std::mem::zeroed();
3528             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
3529         }
3530     }
SetDeveloperMode(&self, value: bool) -> ::windows::runtime::Result<()>3531     pub fn SetDeveloperMode(&self, value: bool) -> ::windows::runtime::Result<()> {
3532         let this = self;
3533         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
3534     }
ForceAppShutdown(&self) -> ::windows::runtime::Result<bool>3535     pub fn ForceAppShutdown(&self) -> ::windows::runtime::Result<bool> {
3536         let this = self;
3537         unsafe {
3538             let mut result__: bool = ::std::mem::zeroed();
3539             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
3540         }
3541     }
SetForceAppShutdown(&self, value: bool) -> ::windows::runtime::Result<()>3542     pub fn SetForceAppShutdown(&self, value: bool) -> ::windows::runtime::Result<()> {
3543         let this = self;
3544         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
3545     }
ForceTargetAppShutdown(&self) -> ::windows::runtime::Result<bool>3546     pub fn ForceTargetAppShutdown(&self) -> ::windows::runtime::Result<bool> {
3547         let this = self;
3548         unsafe {
3549             let mut result__: bool = ::std::mem::zeroed();
3550             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
3551         }
3552     }
SetForceTargetAppShutdown(&self, value: bool) -> ::windows::runtime::Result<()>3553     pub fn SetForceTargetAppShutdown(&self, value: bool) -> ::windows::runtime::Result<()> {
3554         let this = self;
3555         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value).ok() }
3556     }
ForceUpdateFromAnyVersion(&self) -> ::windows::runtime::Result<bool>3557     pub fn ForceUpdateFromAnyVersion(&self) -> ::windows::runtime::Result<bool> {
3558         let this = self;
3559         unsafe {
3560             let mut result__: bool = ::std::mem::zeroed();
3561             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
3562         }
3563     }
SetForceUpdateFromAnyVersion(&self, value: bool) -> ::windows::runtime::Result<()>3564     pub fn SetForceUpdateFromAnyVersion(&self, value: bool) -> ::windows::runtime::Result<()> {
3565         let this = self;
3566         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), value).ok() }
3567     }
InstallAllResources(&self) -> ::windows::runtime::Result<bool>3568     pub fn InstallAllResources(&self) -> ::windows::runtime::Result<bool> {
3569         let this = self;
3570         unsafe {
3571             let mut result__: bool = ::std::mem::zeroed();
3572             (::windows::runtime::Interface::vtable(this).20)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
3573         }
3574     }
SetInstallAllResources(&self, value: bool) -> ::windows::runtime::Result<()>3575     pub fn SetInstallAllResources(&self, value: bool) -> ::windows::runtime::Result<()> {
3576         let this = self;
3577         unsafe { (::windows::runtime::Interface::vtable(this).21)(::std::mem::transmute_copy(this), value).ok() }
3578     }
StageInPlace(&self) -> ::windows::runtime::Result<bool>3579     pub fn StageInPlace(&self) -> ::windows::runtime::Result<bool> {
3580         let this = self;
3581         unsafe {
3582             let mut result__: bool = ::std::mem::zeroed();
3583             (::windows::runtime::Interface::vtable(this).22)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
3584         }
3585     }
SetStageInPlace(&self, value: bool) -> ::windows::runtime::Result<()>3586     pub fn SetStageInPlace(&self, value: bool) -> ::windows::runtime::Result<()> {
3587         let this = self;
3588         unsafe { (::windows::runtime::Interface::vtable(this).23)(::std::mem::transmute_copy(this), value).ok() }
3589     }
AllowUnsigned(&self) -> ::windows::runtime::Result<bool>3590     pub fn AllowUnsigned(&self) -> ::windows::runtime::Result<bool> {
3591         let this = self;
3592         unsafe {
3593             let mut result__: bool = ::std::mem::zeroed();
3594             (::windows::runtime::Interface::vtable(this).24)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
3595         }
3596     }
SetAllowUnsigned(&self, value: bool) -> ::windows::runtime::Result<()>3597     pub fn SetAllowUnsigned(&self, value: bool) -> ::windows::runtime::Result<()> {
3598         let this = self;
3599         unsafe { (::windows::runtime::Interface::vtable(this).25)(::std::mem::transmute_copy(this), value).ok() }
3600     }
DeferRegistrationWhenPackagesAreInUse(&self) -> ::windows::runtime::Result<bool>3601     pub fn DeferRegistrationWhenPackagesAreInUse(&self) -> ::windows::runtime::Result<bool> {
3602         let this = self;
3603         unsafe {
3604             let mut result__: bool = ::std::mem::zeroed();
3605             (::windows::runtime::Interface::vtable(this).26)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
3606         }
3607     }
SetDeferRegistrationWhenPackagesAreInUse(&self, value: bool) -> ::windows::runtime::Result<()>3608     pub fn SetDeferRegistrationWhenPackagesAreInUse(&self, value: bool) -> ::windows::runtime::Result<()> {
3609         let this = self;
3610         unsafe { (::windows::runtime::Interface::vtable(this).27)(::std::mem::transmute_copy(this), value).ok() }
3611     }
3612 }
3613 unsafe impl ::windows::runtime::RuntimeType for RegisterPackageOptions {
3614     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Management.Deployment.RegisterPackageOptions;{677112a7-50d4-496c-8415-0602b4c6d3bf})");
3615 }
3616 unsafe impl ::windows::runtime::Interface for RegisterPackageOptions {
3617     type Vtable = IRegisterPackageOptions_abi;
3618     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1735463591, 20692, 18796, [132, 21, 6, 2, 180, 198, 211, 191]);
3619 }
3620 impl ::windows::runtime::RuntimeName for RegisterPackageOptions {
3621     const NAME: &'static str = "Windows.Management.Deployment.RegisterPackageOptions";
3622 }
3623 impl ::std::convert::From<RegisterPackageOptions> for ::windows::runtime::IUnknown {
from(value: RegisterPackageOptions) -> Self3624     fn from(value: RegisterPackageOptions) -> Self {
3625         unsafe { ::std::mem::transmute(value) }
3626     }
3627 }
3628 impl ::std::convert::From<&RegisterPackageOptions> for ::windows::runtime::IUnknown {
from(value: &RegisterPackageOptions) -> Self3629     fn from(value: &RegisterPackageOptions) -> Self {
3630         ::std::convert::From::from(::std::clone::Clone::clone(value))
3631     }
3632 }
3633 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for RegisterPackageOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3634     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3635         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
3636     }
3637 }
3638 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &RegisterPackageOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3639     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3640         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
3641     }
3642 }
3643 impl ::std::convert::From<RegisterPackageOptions> for ::windows::runtime::IInspectable {
from(value: RegisterPackageOptions) -> Self3644     fn from(value: RegisterPackageOptions) -> Self {
3645         value.0
3646     }
3647 }
3648 impl ::std::convert::From<&RegisterPackageOptions> for ::windows::runtime::IInspectable {
from(value: &RegisterPackageOptions) -> Self3649     fn from(value: &RegisterPackageOptions) -> Self {
3650         value.0.clone()
3651     }
3652 }
3653 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for RegisterPackageOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>3654     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3655         ::windows::runtime::Param::Owned(self.0)
3656     }
3657 }
3658 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a RegisterPackageOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>3659     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3660         ::windows::runtime::Param::Borrowed(&self.0)
3661     }
3662 }
3663 unsafe impl ::std::marker::Send for RegisterPackageOptions {}
3664 unsafe impl ::std::marker::Sync for RegisterPackageOptions {}
3665 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3666 #[repr(transparent)]
3667 pub struct RemovalOptions(pub u32);
3668 impl RemovalOptions {
3669     pub const None: RemovalOptions = RemovalOptions(0u32);
3670     pub const PreserveApplicationData: RemovalOptions = RemovalOptions(4096u32);
3671     pub const PreserveRoamableApplicationData: RemovalOptions = RemovalOptions(128u32);
3672     pub const RemoveForAllUsers: RemovalOptions = RemovalOptions(524288u32);
3673 }
3674 impl ::std::convert::From<u32> for RemovalOptions {
from(value: u32) -> Self3675     fn from(value: u32) -> Self {
3676         Self(value)
3677     }
3678 }
3679 unsafe impl ::windows::runtime::Abi for RemovalOptions {
3680     type Abi = Self;
3681     type DefaultType = Self;
3682 }
3683 unsafe impl ::windows::runtime::RuntimeType for RemovalOptions {
3684     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Management.Deployment.RemovalOptions;u4)");
3685 }
3686 impl ::std::ops::BitOr for RemovalOptions {
3687     type Output = Self;
bitor(self, rhs: Self) -> Self3688     fn bitor(self, rhs: Self) -> Self {
3689         Self(self.0 | rhs.0)
3690     }
3691 }
3692 impl ::std::ops::BitAnd for RemovalOptions {
3693     type Output = Self;
bitand(self, rhs: Self) -> Self3694     fn bitand(self, rhs: Self) -> Self {
3695         Self(self.0 & rhs.0)
3696     }
3697 }
3698 impl ::std::ops::BitOrAssign for RemovalOptions {
bitor_assign(&mut self, rhs: Self)3699     fn bitor_assign(&mut self, rhs: Self) {
3700         self.0.bitor_assign(rhs.0)
3701     }
3702 }
3703 impl ::std::ops::BitAndAssign for RemovalOptions {
bitand_assign(&mut self, rhs: Self)3704     fn bitand_assign(&mut self, rhs: Self) {
3705         self.0.bitand_assign(rhs.0)
3706     }
3707 }
3708 impl ::std::ops::Not for RemovalOptions {
3709     type Output = Self;
not(self) -> Self3710     fn not(self) -> Self {
3711         Self(self.0.not())
3712     }
3713 }
3714 #[repr(transparent)]
3715 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
3716 pub struct SharedPackageContainer(::windows::runtime::IInspectable);
3717 impl SharedPackageContainer {
Name(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>3718     pub fn Name(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
3719         let this = self;
3720         unsafe {
3721             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
3722             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
3723         }
3724     }
Id(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>3725     pub fn Id(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
3726         let this = self;
3727         unsafe {
3728             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
3729             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
3730         }
3731     }
3732     #[cfg(feature = "Foundation_Collections")]
GetMembers(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<SharedPackageContainerMember>>3733     pub fn GetMembers(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<SharedPackageContainerMember>> {
3734         let this = self;
3735         unsafe {
3736             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3737             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<SharedPackageContainerMember>>(result__)
3738         }
3739     }
RemovePackageFamily<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, UpdateSharedPackageContainerOptions>>(&self, packagefamilyname: Param0, options: Param1) -> ::windows::runtime::Result<UpdateSharedPackageContainerResult>3740     pub fn RemovePackageFamily<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, UpdateSharedPackageContainerOptions>>(&self, packagefamilyname: Param0, options: Param1) -> ::windows::runtime::Result<UpdateSharedPackageContainerResult> {
3741         let this = self;
3742         unsafe {
3743             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3744             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), packagefamilyname.into_param().abi(), options.into_param().abi(), &mut result__).from_abi::<UpdateSharedPackageContainerResult>(result__)
3745         }
3746     }
ResetData(&self) -> ::windows::runtime::Result<UpdateSharedPackageContainerResult>3747     pub fn ResetData(&self) -> ::windows::runtime::Result<UpdateSharedPackageContainerResult> {
3748         let this = self;
3749         unsafe {
3750             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3751             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<UpdateSharedPackageContainerResult>(result__)
3752         }
3753     }
3754 }
3755 unsafe impl ::windows::runtime::RuntimeType for SharedPackageContainer {
3756     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Management.Deployment.SharedPackageContainer;{177f1aa9-151e-5ef7-b1d9-2fba0b4b0d17})");
3757 }
3758 unsafe impl ::windows::runtime::Interface for SharedPackageContainer {
3759     type Vtable = ISharedPackageContainer_abi;
3760     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(394205865, 5406, 24311, [177, 217, 47, 186, 11, 75, 13, 23]);
3761 }
3762 impl ::windows::runtime::RuntimeName for SharedPackageContainer {
3763     const NAME: &'static str = "Windows.Management.Deployment.SharedPackageContainer";
3764 }
3765 impl ::std::convert::From<SharedPackageContainer> for ::windows::runtime::IUnknown {
from(value: SharedPackageContainer) -> Self3766     fn from(value: SharedPackageContainer) -> Self {
3767         unsafe { ::std::mem::transmute(value) }
3768     }
3769 }
3770 impl ::std::convert::From<&SharedPackageContainer> for ::windows::runtime::IUnknown {
from(value: &SharedPackageContainer) -> Self3771     fn from(value: &SharedPackageContainer) -> Self {
3772         ::std::convert::From::from(::std::clone::Clone::clone(value))
3773     }
3774 }
3775 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for SharedPackageContainer {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3776     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3777         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
3778     }
3779 }
3780 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &SharedPackageContainer {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3781     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3782         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
3783     }
3784 }
3785 impl ::std::convert::From<SharedPackageContainer> for ::windows::runtime::IInspectable {
from(value: SharedPackageContainer) -> Self3786     fn from(value: SharedPackageContainer) -> Self {
3787         value.0
3788     }
3789 }
3790 impl ::std::convert::From<&SharedPackageContainer> for ::windows::runtime::IInspectable {
from(value: &SharedPackageContainer) -> Self3791     fn from(value: &SharedPackageContainer) -> Self {
3792         value.0.clone()
3793     }
3794 }
3795 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for SharedPackageContainer {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>3796     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3797         ::windows::runtime::Param::Owned(self.0)
3798     }
3799 }
3800 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a SharedPackageContainer {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>3801     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3802         ::windows::runtime::Param::Borrowed(&self.0)
3803     }
3804 }
3805 unsafe impl ::std::marker::Send for SharedPackageContainer {}
3806 unsafe impl ::std::marker::Sync for SharedPackageContainer {}
3807 #[repr(C)]
3808 #[derive(:: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug, :: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy)]
3809 pub struct SharedPackageContainerContract(pub u8);
3810 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3811 #[repr(transparent)]
3812 pub struct SharedPackageContainerCreationCollisionOptions(pub i32);
3813 impl SharedPackageContainerCreationCollisionOptions {
3814     pub const FailIfExists: SharedPackageContainerCreationCollisionOptions = SharedPackageContainerCreationCollisionOptions(0i32);
3815     pub const MergeWithExisting: SharedPackageContainerCreationCollisionOptions = SharedPackageContainerCreationCollisionOptions(1i32);
3816     pub const ReplaceExisting: SharedPackageContainerCreationCollisionOptions = SharedPackageContainerCreationCollisionOptions(2i32);
3817 }
3818 impl ::std::convert::From<i32> for SharedPackageContainerCreationCollisionOptions {
from(value: i32) -> Self3819     fn from(value: i32) -> Self {
3820         Self(value)
3821     }
3822 }
3823 unsafe impl ::windows::runtime::Abi for SharedPackageContainerCreationCollisionOptions {
3824     type Abi = Self;
3825     type DefaultType = Self;
3826 }
3827 unsafe impl ::windows::runtime::RuntimeType for SharedPackageContainerCreationCollisionOptions {
3828     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Management.Deployment.SharedPackageContainerCreationCollisionOptions;i4)");
3829 }
3830 #[repr(transparent)]
3831 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
3832 pub struct SharedPackageContainerManager(::windows::runtime::IInspectable);
3833 impl SharedPackageContainerManager {
CreateContainer<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, CreateSharedPackageContainerOptions>>(&self, name: Param0, options: Param1) -> ::windows::runtime::Result<CreateSharedPackageContainerResult>3834     pub fn CreateContainer<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, CreateSharedPackageContainerOptions>>(&self, name: Param0, options: Param1) -> ::windows::runtime::Result<CreateSharedPackageContainerResult> {
3835         let this = self;
3836         unsafe {
3837             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3838             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), name.into_param().abi(), options.into_param().abi(), &mut result__).from_abi::<CreateSharedPackageContainerResult>(result__)
3839         }
3840     }
DeleteContainer<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, DeleteSharedPackageContainerOptions>>(&self, id: Param0, options: Param1) -> ::windows::runtime::Result<DeleteSharedPackageContainerResult>3841     pub fn DeleteContainer<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, DeleteSharedPackageContainerOptions>>(&self, id: Param0, options: Param1) -> ::windows::runtime::Result<DeleteSharedPackageContainerResult> {
3842         let this = self;
3843         unsafe {
3844             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3845             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), id.into_param().abi(), options.into_param().abi(), &mut result__).from_abi::<DeleteSharedPackageContainerResult>(result__)
3846         }
3847     }
GetContainer<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, id: Param0) -> ::windows::runtime::Result<SharedPackageContainer>3848     pub fn GetContainer<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, id: Param0) -> ::windows::runtime::Result<SharedPackageContainer> {
3849         let this = self;
3850         unsafe {
3851             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3852             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), id.into_param().abi(), &mut result__).from_abi::<SharedPackageContainer>(result__)
3853         }
3854     }
3855     #[cfg(feature = "Foundation_Collections")]
FindContainers(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<SharedPackageContainer>>3856     pub fn FindContainers(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<SharedPackageContainer>> {
3857         let this = self;
3858         unsafe {
3859             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3860             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<SharedPackageContainer>>(result__)
3861         }
3862     }
3863     #[cfg(feature = "Foundation_Collections")]
FindContainersWithOptions<'a, Param0: ::windows::runtime::IntoParam<'a, FindSharedPackageContainerOptions>>(&self, options: Param0) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<SharedPackageContainer>>3864     pub fn FindContainersWithOptions<'a, Param0: ::windows::runtime::IntoParam<'a, FindSharedPackageContainerOptions>>(&self, options: Param0) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<SharedPackageContainer>> {
3865         let this = self;
3866         unsafe {
3867             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3868             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), options.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<SharedPackageContainer>>(result__)
3869         }
3870     }
GetDefault() -> ::windows::runtime::Result<SharedPackageContainerManager>3871     pub fn GetDefault() -> ::windows::runtime::Result<SharedPackageContainerManager> {
3872         Self::ISharedPackageContainerManagerStatics(|this| unsafe {
3873             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3874             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<SharedPackageContainerManager>(result__)
3875         })
3876     }
GetForUser<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(usersid: Param0) -> ::windows::runtime::Result<SharedPackageContainerManager>3877     pub fn GetForUser<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(usersid: Param0) -> ::windows::runtime::Result<SharedPackageContainerManager> {
3878         Self::ISharedPackageContainerManagerStatics(|this| unsafe {
3879             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3880             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), usersid.into_param().abi(), &mut result__).from_abi::<SharedPackageContainerManager>(result__)
3881         })
3882     }
GetForProvisioning() -> ::windows::runtime::Result<SharedPackageContainerManager>3883     pub fn GetForProvisioning() -> ::windows::runtime::Result<SharedPackageContainerManager> {
3884         Self::ISharedPackageContainerManagerStatics(|this| unsafe {
3885             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3886             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<SharedPackageContainerManager>(result__)
3887         })
3888     }
ISharedPackageContainerManagerStatics<R, F: FnOnce(&ISharedPackageContainerManagerStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>3889     pub fn ISharedPackageContainerManagerStatics<R, F: FnOnce(&ISharedPackageContainerManagerStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
3890         static mut SHARED: ::windows::runtime::FactoryCache<SharedPackageContainerManager, ISharedPackageContainerManagerStatics> = ::windows::runtime::FactoryCache::new();
3891         unsafe { SHARED.call(callback) }
3892     }
3893 }
3894 unsafe impl ::windows::runtime::RuntimeType for SharedPackageContainerManager {
3895     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Management.Deployment.SharedPackageContainerManager;{be353068-1ef7-5ac8-ab3f-0b9f612f0274})");
3896 }
3897 unsafe impl ::windows::runtime::Interface for SharedPackageContainerManager {
3898     type Vtable = ISharedPackageContainerManager_abi;
3899     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3191156840, 7927, 23240, [171, 63, 11, 159, 97, 47, 2, 116]);
3900 }
3901 impl ::windows::runtime::RuntimeName for SharedPackageContainerManager {
3902     const NAME: &'static str = "Windows.Management.Deployment.SharedPackageContainerManager";
3903 }
3904 impl ::std::convert::From<SharedPackageContainerManager> for ::windows::runtime::IUnknown {
from(value: SharedPackageContainerManager) -> Self3905     fn from(value: SharedPackageContainerManager) -> Self {
3906         unsafe { ::std::mem::transmute(value) }
3907     }
3908 }
3909 impl ::std::convert::From<&SharedPackageContainerManager> for ::windows::runtime::IUnknown {
from(value: &SharedPackageContainerManager) -> Self3910     fn from(value: &SharedPackageContainerManager) -> Self {
3911         ::std::convert::From::from(::std::clone::Clone::clone(value))
3912     }
3913 }
3914 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for SharedPackageContainerManager {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3915     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3916         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
3917     }
3918 }
3919 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &SharedPackageContainerManager {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3920     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3921         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
3922     }
3923 }
3924 impl ::std::convert::From<SharedPackageContainerManager> for ::windows::runtime::IInspectable {
from(value: SharedPackageContainerManager) -> Self3925     fn from(value: SharedPackageContainerManager) -> Self {
3926         value.0
3927     }
3928 }
3929 impl ::std::convert::From<&SharedPackageContainerManager> for ::windows::runtime::IInspectable {
from(value: &SharedPackageContainerManager) -> Self3930     fn from(value: &SharedPackageContainerManager) -> Self {
3931         value.0.clone()
3932     }
3933 }
3934 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for SharedPackageContainerManager {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>3935     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3936         ::windows::runtime::Param::Owned(self.0)
3937     }
3938 }
3939 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a SharedPackageContainerManager {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>3940     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3941         ::windows::runtime::Param::Borrowed(&self.0)
3942     }
3943 }
3944 unsafe impl ::std::marker::Send for SharedPackageContainerManager {}
3945 unsafe impl ::std::marker::Sync for SharedPackageContainerManager {}
3946 #[repr(transparent)]
3947 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
3948 pub struct SharedPackageContainerMember(::windows::runtime::IInspectable);
3949 impl SharedPackageContainerMember {
PackageFamilyName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>3950     pub fn PackageFamilyName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
3951         let this = self;
3952         unsafe {
3953             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
3954             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
3955         }
3956     }
CreateInstance<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(packagefamilyname: Param0) -> ::windows::runtime::Result<SharedPackageContainerMember>3957     pub fn CreateInstance<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(packagefamilyname: Param0) -> ::windows::runtime::Result<SharedPackageContainerMember> {
3958         Self::ISharedPackageContainerMemberFactory(|this| unsafe {
3959             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3960             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), packagefamilyname.into_param().abi(), &mut result__).from_abi::<SharedPackageContainerMember>(result__)
3961         })
3962     }
ISharedPackageContainerMemberFactory<R, F: FnOnce(&ISharedPackageContainerMemberFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>3963     pub fn ISharedPackageContainerMemberFactory<R, F: FnOnce(&ISharedPackageContainerMemberFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
3964         static mut SHARED: ::windows::runtime::FactoryCache<SharedPackageContainerMember, ISharedPackageContainerMemberFactory> = ::windows::runtime::FactoryCache::new();
3965         unsafe { SHARED.call(callback) }
3966     }
3967 }
3968 unsafe impl ::windows::runtime::RuntimeType for SharedPackageContainerMember {
3969     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Management.Deployment.SharedPackageContainerMember;{fe0d0438-43c9-5426-b89c-f79bf85ddff4})");
3970 }
3971 unsafe impl ::windows::runtime::Interface for SharedPackageContainerMember {
3972     type Vtable = ISharedPackageContainerMember_abi;
3973     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4262265912, 17353, 21542, [184, 156, 247, 155, 248, 93, 223, 244]);
3974 }
3975 impl ::windows::runtime::RuntimeName for SharedPackageContainerMember {
3976     const NAME: &'static str = "Windows.Management.Deployment.SharedPackageContainerMember";
3977 }
3978 impl ::std::convert::From<SharedPackageContainerMember> for ::windows::runtime::IUnknown {
from(value: SharedPackageContainerMember) -> Self3979     fn from(value: SharedPackageContainerMember) -> Self {
3980         unsafe { ::std::mem::transmute(value) }
3981     }
3982 }
3983 impl ::std::convert::From<&SharedPackageContainerMember> for ::windows::runtime::IUnknown {
from(value: &SharedPackageContainerMember) -> Self3984     fn from(value: &SharedPackageContainerMember) -> Self {
3985         ::std::convert::From::from(::std::clone::Clone::clone(value))
3986     }
3987 }
3988 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for SharedPackageContainerMember {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3989     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3990         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
3991     }
3992 }
3993 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &SharedPackageContainerMember {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3994     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3995         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
3996     }
3997 }
3998 impl ::std::convert::From<SharedPackageContainerMember> for ::windows::runtime::IInspectable {
from(value: SharedPackageContainerMember) -> Self3999     fn from(value: SharedPackageContainerMember) -> Self {
4000         value.0
4001     }
4002 }
4003 impl ::std::convert::From<&SharedPackageContainerMember> for ::windows::runtime::IInspectable {
from(value: &SharedPackageContainerMember) -> Self4004     fn from(value: &SharedPackageContainerMember) -> Self {
4005         value.0.clone()
4006     }
4007 }
4008 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for SharedPackageContainerMember {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>4009     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4010         ::windows::runtime::Param::Owned(self.0)
4011     }
4012 }
4013 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a SharedPackageContainerMember {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>4014     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4015         ::windows::runtime::Param::Borrowed(&self.0)
4016     }
4017 }
4018 unsafe impl ::std::marker::Send for SharedPackageContainerMember {}
4019 unsafe impl ::std::marker::Sync for SharedPackageContainerMember {}
4020 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
4021 #[repr(transparent)]
4022 pub struct SharedPackageContainerOperationStatus(pub i32);
4023 impl SharedPackageContainerOperationStatus {
4024     pub const Success: SharedPackageContainerOperationStatus = SharedPackageContainerOperationStatus(0i32);
4025     pub const BlockedByPolicy: SharedPackageContainerOperationStatus = SharedPackageContainerOperationStatus(1i32);
4026     pub const AlreadyExists: SharedPackageContainerOperationStatus = SharedPackageContainerOperationStatus(2i32);
4027     pub const PackageFamilyExistsInAnotherContainer: SharedPackageContainerOperationStatus = SharedPackageContainerOperationStatus(3i32);
4028     pub const NotFound: SharedPackageContainerOperationStatus = SharedPackageContainerOperationStatus(4i32);
4029     pub const UnknownFailure: SharedPackageContainerOperationStatus = SharedPackageContainerOperationStatus(5i32);
4030 }
4031 impl ::std::convert::From<i32> for SharedPackageContainerOperationStatus {
from(value: i32) -> Self4032     fn from(value: i32) -> Self {
4033         Self(value)
4034     }
4035 }
4036 unsafe impl ::windows::runtime::Abi for SharedPackageContainerOperationStatus {
4037     type Abi = Self;
4038     type DefaultType = Self;
4039 }
4040 unsafe impl ::windows::runtime::RuntimeType for SharedPackageContainerOperationStatus {
4041     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Management.Deployment.SharedPackageContainerOperationStatus;i4)");
4042 }
4043 #[repr(transparent)]
4044 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4045 pub struct StagePackageOptions(::windows::runtime::IInspectable);
4046 impl StagePackageOptions {
new() -> ::windows::runtime::Result<Self>4047     pub fn new() -> ::windows::runtime::Result<Self> {
4048         Self::IActivationFactory(|f| f.activate_instance::<Self>())
4049     }
IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>4050     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
4051         static mut SHARED: ::windows::runtime::FactoryCache<StagePackageOptions, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
4052         unsafe { SHARED.call(callback) }
4053     }
4054     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
DependencyPackageUris(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::Foundation::Uri>>4055     pub fn DependencyPackageUris(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::Foundation::Uri>> {
4056         let this = self;
4057         unsafe {
4058             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4059             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<super::super::Foundation::Uri>>(result__)
4060         }
4061     }
TargetVolume(&self) -> ::windows::runtime::Result<PackageVolume>4062     pub fn TargetVolume(&self) -> ::windows::runtime::Result<PackageVolume> {
4063         let this = self;
4064         unsafe {
4065             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4066             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<PackageVolume>(result__)
4067         }
4068     }
SetTargetVolume<'a, Param0: ::windows::runtime::IntoParam<'a, PackageVolume>>(&self, value: Param0) -> ::windows::runtime::Result<()>4069     pub fn SetTargetVolume<'a, Param0: ::windows::runtime::IntoParam<'a, PackageVolume>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
4070         let this = self;
4071         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
4072     }
4073     #[cfg(feature = "Foundation_Collections")]
OptionalPackageFamilyNames(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<::windows::runtime::HSTRING>>4074     pub fn OptionalPackageFamilyNames(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<::windows::runtime::HSTRING>> {
4075         let this = self;
4076         unsafe {
4077             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4078             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<::windows::runtime::HSTRING>>(result__)
4079         }
4080     }
4081     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
OptionalPackageUris(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::Foundation::Uri>>4082     pub fn OptionalPackageUris(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::Foundation::Uri>> {
4083         let this = self;
4084         unsafe {
4085             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4086             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<super::super::Foundation::Uri>>(result__)
4087         }
4088     }
4089     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
RelatedPackageUris(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::Foundation::Uri>>4090     pub fn RelatedPackageUris(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<super::super::Foundation::Uri>> {
4091         let this = self;
4092         unsafe {
4093             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4094             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<super::super::Foundation::Uri>>(result__)
4095         }
4096     }
4097     #[cfg(feature = "Foundation")]
ExternalLocationUri(&self) -> ::windows::runtime::Result<super::super::Foundation::Uri>4098     pub fn ExternalLocationUri(&self) -> ::windows::runtime::Result<super::super::Foundation::Uri> {
4099         let this = self;
4100         unsafe {
4101             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4102             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Uri>(result__)
4103         }
4104     }
4105     #[cfg(feature = "Foundation")]
SetExternalLocationUri<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>>(&self, value: Param0) -> ::windows::runtime::Result<()>4106     pub fn SetExternalLocationUri<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Uri>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
4107         let this = self;
4108         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
4109     }
StubPackageOption(&self) -> ::windows::runtime::Result<StubPackageOption>4110     pub fn StubPackageOption(&self) -> ::windows::runtime::Result<StubPackageOption> {
4111         let this = self;
4112         unsafe {
4113             let mut result__: StubPackageOption = ::std::mem::zeroed();
4114             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<StubPackageOption>(result__)
4115         }
4116     }
SetStubPackageOption(&self, value: StubPackageOption) -> ::windows::runtime::Result<()>4117     pub fn SetStubPackageOption(&self, value: StubPackageOption) -> ::windows::runtime::Result<()> {
4118         let this = self;
4119         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
4120     }
DeveloperMode(&self) -> ::windows::runtime::Result<bool>4121     pub fn DeveloperMode(&self) -> ::windows::runtime::Result<bool> {
4122         let this = self;
4123         unsafe {
4124             let mut result__: bool = ::std::mem::zeroed();
4125             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
4126         }
4127     }
SetDeveloperMode(&self, value: bool) -> ::windows::runtime::Result<()>4128     pub fn SetDeveloperMode(&self, value: bool) -> ::windows::runtime::Result<()> {
4129         let this = self;
4130         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value).ok() }
4131     }
ForceUpdateFromAnyVersion(&self) -> ::windows::runtime::Result<bool>4132     pub fn ForceUpdateFromAnyVersion(&self) -> ::windows::runtime::Result<bool> {
4133         let this = self;
4134         unsafe {
4135             let mut result__: bool = ::std::mem::zeroed();
4136             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
4137         }
4138     }
SetForceUpdateFromAnyVersion(&self, value: bool) -> ::windows::runtime::Result<()>4139     pub fn SetForceUpdateFromAnyVersion(&self, value: bool) -> ::windows::runtime::Result<()> {
4140         let this = self;
4141         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), value).ok() }
4142     }
InstallAllResources(&self) -> ::windows::runtime::Result<bool>4143     pub fn InstallAllResources(&self) -> ::windows::runtime::Result<bool> {
4144         let this = self;
4145         unsafe {
4146             let mut result__: bool = ::std::mem::zeroed();
4147             (::windows::runtime::Interface::vtable(this).20)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
4148         }
4149     }
SetInstallAllResources(&self, value: bool) -> ::windows::runtime::Result<()>4150     pub fn SetInstallAllResources(&self, value: bool) -> ::windows::runtime::Result<()> {
4151         let this = self;
4152         unsafe { (::windows::runtime::Interface::vtable(this).21)(::std::mem::transmute_copy(this), value).ok() }
4153     }
RequiredContentGroupOnly(&self) -> ::windows::runtime::Result<bool>4154     pub fn RequiredContentGroupOnly(&self) -> ::windows::runtime::Result<bool> {
4155         let this = self;
4156         unsafe {
4157             let mut result__: bool = ::std::mem::zeroed();
4158             (::windows::runtime::Interface::vtable(this).22)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
4159         }
4160     }
SetRequiredContentGroupOnly(&self, value: bool) -> ::windows::runtime::Result<()>4161     pub fn SetRequiredContentGroupOnly(&self, value: bool) -> ::windows::runtime::Result<()> {
4162         let this = self;
4163         unsafe { (::windows::runtime::Interface::vtable(this).23)(::std::mem::transmute_copy(this), value).ok() }
4164     }
StageInPlace(&self) -> ::windows::runtime::Result<bool>4165     pub fn StageInPlace(&self) -> ::windows::runtime::Result<bool> {
4166         let this = self;
4167         unsafe {
4168             let mut result__: bool = ::std::mem::zeroed();
4169             (::windows::runtime::Interface::vtable(this).24)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
4170         }
4171     }
SetStageInPlace(&self, value: bool) -> ::windows::runtime::Result<()>4172     pub fn SetStageInPlace(&self, value: bool) -> ::windows::runtime::Result<()> {
4173         let this = self;
4174         unsafe { (::windows::runtime::Interface::vtable(this).25)(::std::mem::transmute_copy(this), value).ok() }
4175     }
AllowUnsigned(&self) -> ::windows::runtime::Result<bool>4176     pub fn AllowUnsigned(&self) -> ::windows::runtime::Result<bool> {
4177         let this = self;
4178         unsafe {
4179             let mut result__: bool = ::std::mem::zeroed();
4180             (::windows::runtime::Interface::vtable(this).26)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
4181         }
4182     }
SetAllowUnsigned(&self, value: bool) -> ::windows::runtime::Result<()>4183     pub fn SetAllowUnsigned(&self, value: bool) -> ::windows::runtime::Result<()> {
4184         let this = self;
4185         unsafe { (::windows::runtime::Interface::vtable(this).27)(::std::mem::transmute_copy(this), value).ok() }
4186     }
4187 }
4188 unsafe impl ::windows::runtime::RuntimeType for StagePackageOptions {
4189     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Management.Deployment.StagePackageOptions;{0b110c9c-b95d-4c56-bd36-6d656800d06b})");
4190 }
4191 unsafe impl ::windows::runtime::Interface for StagePackageOptions {
4192     type Vtable = IStagePackageOptions_abi;
4193     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(185666716, 47453, 19542, [189, 54, 109, 101, 104, 0, 208, 107]);
4194 }
4195 impl ::windows::runtime::RuntimeName for StagePackageOptions {
4196     const NAME: &'static str = "Windows.Management.Deployment.StagePackageOptions";
4197 }
4198 impl ::std::convert::From<StagePackageOptions> for ::windows::runtime::IUnknown {
from(value: StagePackageOptions) -> Self4199     fn from(value: StagePackageOptions) -> Self {
4200         unsafe { ::std::mem::transmute(value) }
4201     }
4202 }
4203 impl ::std::convert::From<&StagePackageOptions> for ::windows::runtime::IUnknown {
from(value: &StagePackageOptions) -> Self4204     fn from(value: &StagePackageOptions) -> Self {
4205         ::std::convert::From::from(::std::clone::Clone::clone(value))
4206     }
4207 }
4208 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for StagePackageOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>4209     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4210         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
4211     }
4212 }
4213 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &StagePackageOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>4214     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4215         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
4216     }
4217 }
4218 impl ::std::convert::From<StagePackageOptions> for ::windows::runtime::IInspectable {
from(value: StagePackageOptions) -> Self4219     fn from(value: StagePackageOptions) -> Self {
4220         value.0
4221     }
4222 }
4223 impl ::std::convert::From<&StagePackageOptions> for ::windows::runtime::IInspectable {
from(value: &StagePackageOptions) -> Self4224     fn from(value: &StagePackageOptions) -> Self {
4225         value.0.clone()
4226     }
4227 }
4228 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for StagePackageOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>4229     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4230         ::windows::runtime::Param::Owned(self.0)
4231     }
4232 }
4233 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a StagePackageOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>4234     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4235         ::windows::runtime::Param::Borrowed(&self.0)
4236     }
4237 }
4238 unsafe impl ::std::marker::Send for StagePackageOptions {}
4239 unsafe impl ::std::marker::Sync for StagePackageOptions {}
4240 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
4241 #[repr(transparent)]
4242 pub struct StubPackageOption(pub i32);
4243 impl StubPackageOption {
4244     pub const Default: StubPackageOption = StubPackageOption(0i32);
4245     pub const InstallFull: StubPackageOption = StubPackageOption(1i32);
4246     pub const InstallStub: StubPackageOption = StubPackageOption(2i32);
4247     pub const UsePreference: StubPackageOption = StubPackageOption(3i32);
4248 }
4249 impl ::std::convert::From<i32> for StubPackageOption {
from(value: i32) -> Self4250     fn from(value: i32) -> Self {
4251         Self(value)
4252     }
4253 }
4254 unsafe impl ::windows::runtime::Abi for StubPackageOption {
4255     type Abi = Self;
4256     type DefaultType = Self;
4257 }
4258 unsafe impl ::windows::runtime::RuntimeType for StubPackageOption {
4259     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.Management.Deployment.StubPackageOption;i4)");
4260 }
4261 #[repr(transparent)]
4262 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4263 pub struct UpdateSharedPackageContainerOptions(::windows::runtime::IInspectable);
4264 impl UpdateSharedPackageContainerOptions {
new() -> ::windows::runtime::Result<Self>4265     pub fn new() -> ::windows::runtime::Result<Self> {
4266         Self::IActivationFactory(|f| f.activate_instance::<Self>())
4267     }
IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>4268     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
4269         static mut SHARED: ::windows::runtime::FactoryCache<UpdateSharedPackageContainerOptions, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
4270         unsafe { SHARED.call(callback) }
4271     }
ForceAppShutdown(&self) -> ::windows::runtime::Result<bool>4272     pub fn ForceAppShutdown(&self) -> ::windows::runtime::Result<bool> {
4273         let this = self;
4274         unsafe {
4275             let mut result__: bool = ::std::mem::zeroed();
4276             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
4277         }
4278     }
SetForceAppShutdown(&self, value: bool) -> ::windows::runtime::Result<()>4279     pub fn SetForceAppShutdown(&self, value: bool) -> ::windows::runtime::Result<()> {
4280         let this = self;
4281         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
4282     }
RequirePackagesPresent(&self) -> ::windows::runtime::Result<bool>4283     pub fn RequirePackagesPresent(&self) -> ::windows::runtime::Result<bool> {
4284         let this = self;
4285         unsafe {
4286             let mut result__: bool = ::std::mem::zeroed();
4287             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
4288         }
4289     }
SetRequirePackagesPresent(&self, value: bool) -> ::windows::runtime::Result<()>4290     pub fn SetRequirePackagesPresent(&self, value: bool) -> ::windows::runtime::Result<()> {
4291         let this = self;
4292         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value).ok() }
4293     }
4294 }
4295 unsafe impl ::windows::runtime::RuntimeType for UpdateSharedPackageContainerOptions {
4296     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Management.Deployment.UpdateSharedPackageContainerOptions;{80672e83-7194-59f9-b5b9-daa5375f130a})");
4297 }
4298 unsafe impl ::windows::runtime::Interface for UpdateSharedPackageContainerOptions {
4299     type Vtable = IUpdateSharedPackageContainerOptions_abi;
4300     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2154245763, 29076, 23033, [181, 185, 218, 165, 55, 95, 19, 10]);
4301 }
4302 impl ::windows::runtime::RuntimeName for UpdateSharedPackageContainerOptions {
4303     const NAME: &'static str = "Windows.Management.Deployment.UpdateSharedPackageContainerOptions";
4304 }
4305 impl ::std::convert::From<UpdateSharedPackageContainerOptions> for ::windows::runtime::IUnknown {
from(value: UpdateSharedPackageContainerOptions) -> Self4306     fn from(value: UpdateSharedPackageContainerOptions) -> Self {
4307         unsafe { ::std::mem::transmute(value) }
4308     }
4309 }
4310 impl ::std::convert::From<&UpdateSharedPackageContainerOptions> for ::windows::runtime::IUnknown {
from(value: &UpdateSharedPackageContainerOptions) -> Self4311     fn from(value: &UpdateSharedPackageContainerOptions) -> Self {
4312         ::std::convert::From::from(::std::clone::Clone::clone(value))
4313     }
4314 }
4315 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for UpdateSharedPackageContainerOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>4316     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4317         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
4318     }
4319 }
4320 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &UpdateSharedPackageContainerOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>4321     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4322         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
4323     }
4324 }
4325 impl ::std::convert::From<UpdateSharedPackageContainerOptions> for ::windows::runtime::IInspectable {
from(value: UpdateSharedPackageContainerOptions) -> Self4326     fn from(value: UpdateSharedPackageContainerOptions) -> Self {
4327         value.0
4328     }
4329 }
4330 impl ::std::convert::From<&UpdateSharedPackageContainerOptions> for ::windows::runtime::IInspectable {
from(value: &UpdateSharedPackageContainerOptions) -> Self4331     fn from(value: &UpdateSharedPackageContainerOptions) -> Self {
4332         value.0.clone()
4333     }
4334 }
4335 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for UpdateSharedPackageContainerOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>4336     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4337         ::windows::runtime::Param::Owned(self.0)
4338     }
4339 }
4340 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a UpdateSharedPackageContainerOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>4341     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4342         ::windows::runtime::Param::Borrowed(&self.0)
4343     }
4344 }
4345 unsafe impl ::std::marker::Send for UpdateSharedPackageContainerOptions {}
4346 unsafe impl ::std::marker::Sync for UpdateSharedPackageContainerOptions {}
4347 #[repr(transparent)]
4348 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4349 pub struct UpdateSharedPackageContainerResult(::windows::runtime::IInspectable);
4350 impl UpdateSharedPackageContainerResult {
Status(&self) -> ::windows::runtime::Result<SharedPackageContainerOperationStatus>4351     pub fn Status(&self) -> ::windows::runtime::Result<SharedPackageContainerOperationStatus> {
4352         let this = self;
4353         unsafe {
4354             let mut result__: SharedPackageContainerOperationStatus = ::std::mem::zeroed();
4355             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<SharedPackageContainerOperationStatus>(result__)
4356         }
4357     }
ExtendedError(&self) -> ::windows::runtime::Result<::windows::runtime::HRESULT>4358     pub fn ExtendedError(&self) -> ::windows::runtime::Result<::windows::runtime::HRESULT> {
4359         let this = self;
4360         unsafe {
4361             let mut result__: ::windows::runtime::HRESULT = ::std::mem::zeroed();
4362             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HRESULT>(result__)
4363         }
4364     }
4365 }
4366 unsafe impl ::windows::runtime::RuntimeType for UpdateSharedPackageContainerResult {
4367     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.Management.Deployment.UpdateSharedPackageContainerResult;{aa407df7-c72d-5458-aea3-4645b6a8ee99})");
4368 }
4369 unsafe impl ::windows::runtime::Interface for UpdateSharedPackageContainerResult {
4370     type Vtable = IUpdateSharedPackageContainerResult_abi;
4371     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2856353271, 50989, 21592, [174, 163, 70, 69, 182, 168, 238, 153]);
4372 }
4373 impl ::windows::runtime::RuntimeName for UpdateSharedPackageContainerResult {
4374     const NAME: &'static str = "Windows.Management.Deployment.UpdateSharedPackageContainerResult";
4375 }
4376 impl ::std::convert::From<UpdateSharedPackageContainerResult> for ::windows::runtime::IUnknown {
from(value: UpdateSharedPackageContainerResult) -> Self4377     fn from(value: UpdateSharedPackageContainerResult) -> Self {
4378         unsafe { ::std::mem::transmute(value) }
4379     }
4380 }
4381 impl ::std::convert::From<&UpdateSharedPackageContainerResult> for ::windows::runtime::IUnknown {
from(value: &UpdateSharedPackageContainerResult) -> Self4382     fn from(value: &UpdateSharedPackageContainerResult) -> Self {
4383         ::std::convert::From::from(::std::clone::Clone::clone(value))
4384     }
4385 }
4386 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for UpdateSharedPackageContainerResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>4387     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4388         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
4389     }
4390 }
4391 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &UpdateSharedPackageContainerResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>4392     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4393         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
4394     }
4395 }
4396 impl ::std::convert::From<UpdateSharedPackageContainerResult> for ::windows::runtime::IInspectable {
from(value: UpdateSharedPackageContainerResult) -> Self4397     fn from(value: UpdateSharedPackageContainerResult) -> Self {
4398         value.0
4399     }
4400 }
4401 impl ::std::convert::From<&UpdateSharedPackageContainerResult> for ::windows::runtime::IInspectable {
from(value: &UpdateSharedPackageContainerResult) -> Self4402     fn from(value: &UpdateSharedPackageContainerResult) -> Self {
4403         value.0.clone()
4404     }
4405 }
4406 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for UpdateSharedPackageContainerResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>4407     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4408         ::windows::runtime::Param::Owned(self.0)
4409     }
4410 }
4411 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a UpdateSharedPackageContainerResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>4412     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4413         ::windows::runtime::Param::Borrowed(&self.0)
4414     }
4415 }
4416 unsafe impl ::std::marker::Send for UpdateSharedPackageContainerResult {}
4417 unsafe impl ::std::marker::Sync for UpdateSharedPackageContainerResult {}
4418