1 #![allow(unused_variables, non_upper_case_globals, non_snake_case, unused_unsafe, non_camel_case_types, dead_code, clippy::all)]
2 #[cfg(feature = "ApplicationModel_Email_DataProvider")]
3 pub mod DataProvider;
4 #[repr(transparent)]
5 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6 pub struct EmailAttachment(::windows::runtime::IInspectable);
7 impl EmailAttachment {
new() -> ::windows::runtime::Result<Self>8     pub fn new() -> ::windows::runtime::Result<Self> {
9         Self::IActivationFactory(|f| f.activate_instance::<Self>())
10     }
IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>11     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
12         static mut SHARED: ::windows::runtime::FactoryCache<EmailAttachment, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
13         unsafe { SHARED.call(callback) }
14     }
FileName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>15     pub fn FileName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
16         let this = self;
17         unsafe {
18             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
19             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
20         }
21     }
SetFileName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()>22     pub fn SetFileName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
23         let this = self;
24         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
25     }
26     #[cfg(feature = "Storage_Streams")]
Data(&self) -> ::windows::runtime::Result<super::super::Storage::Streams::IRandomAccessStreamReference>27     pub fn Data(&self) -> ::windows::runtime::Result<super::super::Storage::Streams::IRandomAccessStreamReference> {
28         let this = self;
29         unsafe {
30             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
31             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Storage::Streams::IRandomAccessStreamReference>(result__)
32         }
33     }
34     #[cfg(feature = "Storage_Streams")]
SetData<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Storage::Streams::IRandomAccessStreamReference>>(&self, value: Param0) -> ::windows::runtime::Result<()>35     pub fn SetData<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Storage::Streams::IRandomAccessStreamReference>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
36         let this = self;
37         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
38     }
Id(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>39     pub fn Id(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
40         let this = &::windows::runtime::Interface::cast::<IEmailAttachment2>(self)?;
41         unsafe {
42             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
43             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
44         }
45     }
ContentId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>46     pub fn ContentId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
47         let this = &::windows::runtime::Interface::cast::<IEmailAttachment2>(self)?;
48         unsafe {
49             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
50             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
51         }
52     }
SetContentId<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()>53     pub fn SetContentId<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
54         let this = &::windows::runtime::Interface::cast::<IEmailAttachment2>(self)?;
55         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
56     }
ContentLocation(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>57     pub fn ContentLocation(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
58         let this = &::windows::runtime::Interface::cast::<IEmailAttachment2>(self)?;
59         unsafe {
60             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
61             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
62         }
63     }
SetContentLocation<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()>64     pub fn SetContentLocation<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
65         let this = &::windows::runtime::Interface::cast::<IEmailAttachment2>(self)?;
66         unsafe { (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
67     }
DownloadState(&self) -> ::windows::runtime::Result<EmailAttachmentDownloadState>68     pub fn DownloadState(&self) -> ::windows::runtime::Result<EmailAttachmentDownloadState> {
69         let this = &::windows::runtime::Interface::cast::<IEmailAttachment2>(self)?;
70         unsafe {
71             let mut result__: EmailAttachmentDownloadState = ::std::mem::zeroed();
72             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailAttachmentDownloadState>(result__)
73         }
74     }
SetDownloadState(&self, value: EmailAttachmentDownloadState) -> ::windows::runtime::Result<()>75     pub fn SetDownloadState(&self, value: EmailAttachmentDownloadState) -> ::windows::runtime::Result<()> {
76         let this = &::windows::runtime::Interface::cast::<IEmailAttachment2>(self)?;
77         unsafe { (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), value).ok() }
78     }
EstimatedDownloadSizeInBytes(&self) -> ::windows::runtime::Result<u64>79     pub fn EstimatedDownloadSizeInBytes(&self) -> ::windows::runtime::Result<u64> {
80         let this = &::windows::runtime::Interface::cast::<IEmailAttachment2>(self)?;
81         unsafe {
82             let mut result__: u64 = ::std::mem::zeroed();
83             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u64>(result__)
84         }
85     }
SetEstimatedDownloadSizeInBytes(&self, value: u64) -> ::windows::runtime::Result<()>86     pub fn SetEstimatedDownloadSizeInBytes(&self, value: u64) -> ::windows::runtime::Result<()> {
87         let this = &::windows::runtime::Interface::cast::<IEmailAttachment2>(self)?;
88         unsafe { (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), value).ok() }
89     }
IsFromBaseMessage(&self) -> ::windows::runtime::Result<bool>90     pub fn IsFromBaseMessage(&self) -> ::windows::runtime::Result<bool> {
91         let this = &::windows::runtime::Interface::cast::<IEmailAttachment2>(self)?;
92         unsafe {
93             let mut result__: bool = ::std::mem::zeroed();
94             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
95         }
96     }
IsInline(&self) -> ::windows::runtime::Result<bool>97     pub fn IsInline(&self) -> ::windows::runtime::Result<bool> {
98         let this = &::windows::runtime::Interface::cast::<IEmailAttachment2>(self)?;
99         unsafe {
100             let mut result__: bool = ::std::mem::zeroed();
101             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
102         }
103     }
SetIsInline(&self, value: bool) -> ::windows::runtime::Result<()>104     pub fn SetIsInline(&self, value: bool) -> ::windows::runtime::Result<()> {
105         let this = &::windows::runtime::Interface::cast::<IEmailAttachment2>(self)?;
106         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value).ok() }
107     }
MimeType(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>108     pub fn MimeType(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
109         let this = &::windows::runtime::Interface::cast::<IEmailAttachment2>(self)?;
110         unsafe {
111             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
112             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
113         }
114     }
SetMimeType<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()>115     pub fn SetMimeType<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
116         let this = &::windows::runtime::Interface::cast::<IEmailAttachment2>(self)?;
117         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
118     }
119     #[cfg(feature = "Storage_Streams")]
Create<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, super::super::Storage::Streams::IRandomAccessStreamReference>>(filename: Param0, data: Param1) -> ::windows::runtime::Result<EmailAttachment>120     pub fn Create<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, super::super::Storage::Streams::IRandomAccessStreamReference>>(filename: Param0, data: Param1) -> ::windows::runtime::Result<EmailAttachment> {
121         Self::IEmailAttachmentFactory(|this| unsafe {
122             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
123             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), filename.into_param().abi(), data.into_param().abi(), &mut result__).from_abi::<EmailAttachment>(result__)
124         })
125     }
126     #[cfg(feature = "Storage_Streams")]
Create2<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, super::super::Storage::Streams::IRandomAccessStreamReference>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(filename: Param0, data: Param1, mimetype: Param2) -> ::windows::runtime::Result<EmailAttachment>127     pub fn Create2<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, super::super::Storage::Streams::IRandomAccessStreamReference>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(filename: Param0, data: Param1, mimetype: Param2) -> ::windows::runtime::Result<EmailAttachment> {
128         Self::IEmailAttachmentFactory2(|this| unsafe {
129             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
130             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), filename.into_param().abi(), data.into_param().abi(), mimetype.into_param().abi(), &mut result__).from_abi::<EmailAttachment>(result__)
131         })
132     }
IEmailAttachmentFactory<R, F: FnOnce(&IEmailAttachmentFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>133     pub fn IEmailAttachmentFactory<R, F: FnOnce(&IEmailAttachmentFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
134         static mut SHARED: ::windows::runtime::FactoryCache<EmailAttachment, IEmailAttachmentFactory> = ::windows::runtime::FactoryCache::new();
135         unsafe { SHARED.call(callback) }
136     }
IEmailAttachmentFactory2<R, F: FnOnce(&IEmailAttachmentFactory2) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>137     pub fn IEmailAttachmentFactory2<R, F: FnOnce(&IEmailAttachmentFactory2) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
138         static mut SHARED: ::windows::runtime::FactoryCache<EmailAttachment, IEmailAttachmentFactory2> = ::windows::runtime::FactoryCache::new();
139         unsafe { SHARED.call(callback) }
140     }
141 }
142 unsafe impl ::windows::runtime::RuntimeType for EmailAttachment {
143     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.ApplicationModel.Email.EmailAttachment;{f353caf9-57c8-4adb-b992-60fceb584f54})");
144 }
145 unsafe impl ::windows::runtime::Interface for EmailAttachment {
146     type Vtable = IEmailAttachment_abi;
147     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4082354937, 22472, 19163, [185, 146, 96, 252, 235, 88, 79, 84]);
148 }
149 impl ::windows::runtime::RuntimeName for EmailAttachment {
150     const NAME: &'static str = "Windows.ApplicationModel.Email.EmailAttachment";
151 }
152 impl ::std::convert::From<EmailAttachment> for ::windows::runtime::IUnknown {
from(value: EmailAttachment) -> Self153     fn from(value: EmailAttachment) -> Self {
154         unsafe { ::std::mem::transmute(value) }
155     }
156 }
157 impl ::std::convert::From<&EmailAttachment> for ::windows::runtime::IUnknown {
from(value: &EmailAttachment) -> Self158     fn from(value: &EmailAttachment) -> Self {
159         ::std::convert::From::from(::std::clone::Clone::clone(value))
160     }
161 }
162 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EmailAttachment {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>163     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
164         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
165     }
166 }
167 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EmailAttachment {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>168     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
169         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
170     }
171 }
172 impl ::std::convert::From<EmailAttachment> for ::windows::runtime::IInspectable {
from(value: EmailAttachment) -> Self173     fn from(value: EmailAttachment) -> Self {
174         value.0
175     }
176 }
177 impl ::std::convert::From<&EmailAttachment> for ::windows::runtime::IInspectable {
from(value: &EmailAttachment) -> Self178     fn from(value: &EmailAttachment) -> Self {
179         value.0.clone()
180     }
181 }
182 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EmailAttachment {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>183     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
184         ::windows::runtime::Param::Owned(self.0)
185     }
186 }
187 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EmailAttachment {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>188     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
189         ::windows::runtime::Param::Borrowed(&self.0)
190     }
191 }
192 unsafe impl ::std::marker::Send for EmailAttachment {}
193 unsafe impl ::std::marker::Sync for EmailAttachment {}
194 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
195 #[repr(transparent)]
196 pub struct EmailAttachmentDownloadState(pub i32);
197 impl EmailAttachmentDownloadState {
198     pub const NotDownloaded: EmailAttachmentDownloadState = EmailAttachmentDownloadState(0i32);
199     pub const Downloading: EmailAttachmentDownloadState = EmailAttachmentDownloadState(1i32);
200     pub const Downloaded: EmailAttachmentDownloadState = EmailAttachmentDownloadState(2i32);
201     pub const Failed: EmailAttachmentDownloadState = EmailAttachmentDownloadState(3i32);
202 }
203 impl ::std::convert::From<i32> for EmailAttachmentDownloadState {
from(value: i32) -> Self204     fn from(value: i32) -> Self {
205         Self(value)
206     }
207 }
208 unsafe impl ::windows::runtime::Abi for EmailAttachmentDownloadState {
209     type Abi = Self;
210     type DefaultType = Self;
211 }
212 unsafe impl ::windows::runtime::RuntimeType for EmailAttachmentDownloadState {
213     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.ApplicationModel.Email.EmailAttachmentDownloadState;i4)");
214 }
215 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
216 #[repr(transparent)]
217 pub struct EmailBatchStatus(pub i32);
218 impl EmailBatchStatus {
219     pub const Success: EmailBatchStatus = EmailBatchStatus(0i32);
220     pub const ServerSearchSyncManagerError: EmailBatchStatus = EmailBatchStatus(1i32);
221     pub const ServerSearchUnknownError: EmailBatchStatus = EmailBatchStatus(2i32);
222 }
223 impl ::std::convert::From<i32> for EmailBatchStatus {
from(value: i32) -> Self224     fn from(value: i32) -> Self {
225         Self(value)
226     }
227 }
228 unsafe impl ::windows::runtime::Abi for EmailBatchStatus {
229     type Abi = Self;
230     type DefaultType = Self;
231 }
232 unsafe impl ::windows::runtime::RuntimeType for EmailBatchStatus {
233     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.ApplicationModel.Email.EmailBatchStatus;i4)");
234 }
235 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
236 #[repr(transparent)]
237 pub struct EmailCertificateValidationStatus(pub i32);
238 impl EmailCertificateValidationStatus {
239     pub const Success: EmailCertificateValidationStatus = EmailCertificateValidationStatus(0i32);
240     pub const NoMatch: EmailCertificateValidationStatus = EmailCertificateValidationStatus(1i32);
241     pub const InvalidUsage: EmailCertificateValidationStatus = EmailCertificateValidationStatus(2i32);
242     pub const InvalidCertificate: EmailCertificateValidationStatus = EmailCertificateValidationStatus(3i32);
243     pub const Revoked: EmailCertificateValidationStatus = EmailCertificateValidationStatus(4i32);
244     pub const ChainRevoked: EmailCertificateValidationStatus = EmailCertificateValidationStatus(5i32);
245     pub const RevocationServerFailure: EmailCertificateValidationStatus = EmailCertificateValidationStatus(6i32);
246     pub const Expired: EmailCertificateValidationStatus = EmailCertificateValidationStatus(7i32);
247     pub const Untrusted: EmailCertificateValidationStatus = EmailCertificateValidationStatus(8i32);
248     pub const ServerError: EmailCertificateValidationStatus = EmailCertificateValidationStatus(9i32);
249     pub const UnknownFailure: EmailCertificateValidationStatus = EmailCertificateValidationStatus(10i32);
250 }
251 impl ::std::convert::From<i32> for EmailCertificateValidationStatus {
from(value: i32) -> Self252     fn from(value: i32) -> Self {
253         Self(value)
254     }
255 }
256 unsafe impl ::windows::runtime::Abi for EmailCertificateValidationStatus {
257     type Abi = Self;
258     type DefaultType = Self;
259 }
260 unsafe impl ::windows::runtime::RuntimeType for EmailCertificateValidationStatus {
261     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.ApplicationModel.Email.EmailCertificateValidationStatus;i4)");
262 }
263 #[repr(transparent)]
264 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
265 pub struct EmailConversation(::windows::runtime::IInspectable);
266 impl EmailConversation {
Id(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>267     pub fn Id(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
268         let this = self;
269         unsafe {
270             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
271             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
272         }
273     }
MailboxId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>274     pub fn MailboxId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
275         let this = self;
276         unsafe {
277             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
278             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
279         }
280     }
FlagState(&self) -> ::windows::runtime::Result<EmailFlagState>281     pub fn FlagState(&self) -> ::windows::runtime::Result<EmailFlagState> {
282         let this = self;
283         unsafe {
284             let mut result__: EmailFlagState = ::std::mem::zeroed();
285             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailFlagState>(result__)
286         }
287     }
HasAttachment(&self) -> ::windows::runtime::Result<bool>288     pub fn HasAttachment(&self) -> ::windows::runtime::Result<bool> {
289         let this = self;
290         unsafe {
291             let mut result__: bool = ::std::mem::zeroed();
292             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
293         }
294     }
Importance(&self) -> ::windows::runtime::Result<EmailImportance>295     pub fn Importance(&self) -> ::windows::runtime::Result<EmailImportance> {
296         let this = self;
297         unsafe {
298             let mut result__: EmailImportance = ::std::mem::zeroed();
299             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailImportance>(result__)
300         }
301     }
LastEmailResponseKind(&self) -> ::windows::runtime::Result<EmailMessageResponseKind>302     pub fn LastEmailResponseKind(&self) -> ::windows::runtime::Result<EmailMessageResponseKind> {
303         let this = self;
304         unsafe {
305             let mut result__: EmailMessageResponseKind = ::std::mem::zeroed();
306             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailMessageResponseKind>(result__)
307         }
308     }
MessageCount(&self) -> ::windows::runtime::Result<u32>309     pub fn MessageCount(&self) -> ::windows::runtime::Result<u32> {
310         let this = self;
311         unsafe {
312             let mut result__: u32 = ::std::mem::zeroed();
313             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
314         }
315     }
MostRecentMessageId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>316     pub fn MostRecentMessageId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
317         let this = self;
318         unsafe {
319             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
320             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
321         }
322     }
323     #[cfg(feature = "Foundation")]
MostRecentMessageTime(&self) -> ::windows::runtime::Result<super::super::Foundation::DateTime>324     pub fn MostRecentMessageTime(&self) -> ::windows::runtime::Result<super::super::Foundation::DateTime> {
325         let this = self;
326         unsafe {
327             let mut result__: super::super::Foundation::DateTime = ::std::mem::zeroed();
328             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::DateTime>(result__)
329         }
330     }
Preview(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>331     pub fn Preview(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
332         let this = self;
333         unsafe {
334             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
335             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
336         }
337     }
LatestSender(&self) -> ::windows::runtime::Result<EmailRecipient>338     pub fn LatestSender(&self) -> ::windows::runtime::Result<EmailRecipient> {
339         let this = self;
340         unsafe {
341             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
342             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailRecipient>(result__)
343         }
344     }
Subject(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>345     pub fn Subject(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
346         let this = self;
347         unsafe {
348             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
349             (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
350         }
351     }
UnreadMessageCount(&self) -> ::windows::runtime::Result<u32>352     pub fn UnreadMessageCount(&self) -> ::windows::runtime::Result<u32> {
353         let this = self;
354         unsafe {
355             let mut result__: u32 = ::std::mem::zeroed();
356             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
357         }
358     }
359     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
FindMessagesAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<EmailMessage>>>360     pub fn FindMessagesAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<EmailMessage>>> {
361         let this = self;
362         unsafe {
363             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
364             (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<EmailMessage>>>(result__)
365         }
366     }
367     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
FindMessagesWithCountAsync(&self, count: u32) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<EmailMessage>>>368     pub fn FindMessagesWithCountAsync(&self, count: u32) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<EmailMessage>>> {
369         let this = self;
370         unsafe {
371             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
372             (::windows::runtime::Interface::vtable(this).20)(::std::mem::transmute_copy(this), count, &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<EmailMessage>>>(result__)
373         }
374     }
375 }
376 unsafe impl ::windows::runtime::RuntimeType for EmailConversation {
377     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.ApplicationModel.Email.EmailConversation;{da18c248-a0bc-4349-902d-90f66389f51b})");
378 }
379 unsafe impl ::windows::runtime::Interface for EmailConversation {
380     type Vtable = IEmailConversation_abi;
381     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3659055688, 41148, 17225, [144, 45, 144, 246, 99, 137, 245, 27]);
382 }
383 impl ::windows::runtime::RuntimeName for EmailConversation {
384     const NAME: &'static str = "Windows.ApplicationModel.Email.EmailConversation";
385 }
386 impl ::std::convert::From<EmailConversation> for ::windows::runtime::IUnknown {
from(value: EmailConversation) -> Self387     fn from(value: EmailConversation) -> Self {
388         unsafe { ::std::mem::transmute(value) }
389     }
390 }
391 impl ::std::convert::From<&EmailConversation> for ::windows::runtime::IUnknown {
from(value: &EmailConversation) -> Self392     fn from(value: &EmailConversation) -> Self {
393         ::std::convert::From::from(::std::clone::Clone::clone(value))
394     }
395 }
396 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EmailConversation {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>397     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
398         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
399     }
400 }
401 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EmailConversation {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>402     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
403         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
404     }
405 }
406 impl ::std::convert::From<EmailConversation> for ::windows::runtime::IInspectable {
from(value: EmailConversation) -> Self407     fn from(value: EmailConversation) -> Self {
408         value.0
409     }
410 }
411 impl ::std::convert::From<&EmailConversation> for ::windows::runtime::IInspectable {
from(value: &EmailConversation) -> Self412     fn from(value: &EmailConversation) -> Self {
413         value.0.clone()
414     }
415 }
416 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EmailConversation {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>417     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
418         ::windows::runtime::Param::Owned(self.0)
419     }
420 }
421 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EmailConversation {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>422     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
423         ::windows::runtime::Param::Borrowed(&self.0)
424     }
425 }
426 unsafe impl ::std::marker::Send for EmailConversation {}
427 unsafe impl ::std::marker::Sync for EmailConversation {}
428 #[repr(transparent)]
429 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
430 pub struct EmailConversationBatch(::windows::runtime::IInspectable);
431 impl EmailConversationBatch {
432     #[cfg(feature = "Foundation_Collections")]
Conversations(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<EmailConversation>>433     pub fn Conversations(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<EmailConversation>> {
434         let this = self;
435         unsafe {
436             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
437             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVectorView<EmailConversation>>(result__)
438         }
439     }
Status(&self) -> ::windows::runtime::Result<EmailBatchStatus>440     pub fn Status(&self) -> ::windows::runtime::Result<EmailBatchStatus> {
441         let this = self;
442         unsafe {
443             let mut result__: EmailBatchStatus = ::std::mem::zeroed();
444             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailBatchStatus>(result__)
445         }
446     }
447 }
448 unsafe impl ::windows::runtime::RuntimeType for EmailConversationBatch {
449     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.ApplicationModel.Email.EmailConversationBatch;{b8c1ab81-01c5-432a-9df1-fe85d98a279a})");
450 }
451 unsafe impl ::windows::runtime::Interface for EmailConversationBatch {
452     type Vtable = IEmailConversationBatch_abi;
453     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3099700097, 453, 17194, [157, 241, 254, 133, 217, 138, 39, 154]);
454 }
455 impl ::windows::runtime::RuntimeName for EmailConversationBatch {
456     const NAME: &'static str = "Windows.ApplicationModel.Email.EmailConversationBatch";
457 }
458 impl ::std::convert::From<EmailConversationBatch> for ::windows::runtime::IUnknown {
from(value: EmailConversationBatch) -> Self459     fn from(value: EmailConversationBatch) -> Self {
460         unsafe { ::std::mem::transmute(value) }
461     }
462 }
463 impl ::std::convert::From<&EmailConversationBatch> for ::windows::runtime::IUnknown {
from(value: &EmailConversationBatch) -> Self464     fn from(value: &EmailConversationBatch) -> Self {
465         ::std::convert::From::from(::std::clone::Clone::clone(value))
466     }
467 }
468 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EmailConversationBatch {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>469     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
470         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
471     }
472 }
473 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EmailConversationBatch {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>474     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
475         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
476     }
477 }
478 impl ::std::convert::From<EmailConversationBatch> for ::windows::runtime::IInspectable {
from(value: EmailConversationBatch) -> Self479     fn from(value: EmailConversationBatch) -> Self {
480         value.0
481     }
482 }
483 impl ::std::convert::From<&EmailConversationBatch> for ::windows::runtime::IInspectable {
from(value: &EmailConversationBatch) -> Self484     fn from(value: &EmailConversationBatch) -> Self {
485         value.0.clone()
486     }
487 }
488 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EmailConversationBatch {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>489     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
490         ::windows::runtime::Param::Owned(self.0)
491     }
492 }
493 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EmailConversationBatch {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>494     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
495         ::windows::runtime::Param::Borrowed(&self.0)
496     }
497 }
498 unsafe impl ::std::marker::Send for EmailConversationBatch {}
499 unsafe impl ::std::marker::Sync for EmailConversationBatch {}
500 #[repr(transparent)]
501 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
502 pub struct EmailConversationReader(::windows::runtime::IInspectable);
503 impl EmailConversationReader {
504     #[cfg(feature = "Foundation")]
ReadBatchAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailConversationBatch>>505     pub fn ReadBatchAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailConversationBatch>> {
506         let this = self;
507         unsafe {
508             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
509             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<EmailConversationBatch>>(result__)
510         }
511     }
512 }
513 unsafe impl ::windows::runtime::RuntimeType for EmailConversationReader {
514     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.ApplicationModel.Email.EmailConversationReader;{b4630f82-2875-44c8-9b8c-85beb3a3c653})");
515 }
516 unsafe impl ::windows::runtime::Interface for EmailConversationReader {
517     type Vtable = IEmailConversationReader_abi;
518     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3026390914, 10357, 17608, [155, 140, 133, 190, 179, 163, 198, 83]);
519 }
520 impl ::windows::runtime::RuntimeName for EmailConversationReader {
521     const NAME: &'static str = "Windows.ApplicationModel.Email.EmailConversationReader";
522 }
523 impl ::std::convert::From<EmailConversationReader> for ::windows::runtime::IUnknown {
from(value: EmailConversationReader) -> Self524     fn from(value: EmailConversationReader) -> Self {
525         unsafe { ::std::mem::transmute(value) }
526     }
527 }
528 impl ::std::convert::From<&EmailConversationReader> for ::windows::runtime::IUnknown {
from(value: &EmailConversationReader) -> Self529     fn from(value: &EmailConversationReader) -> Self {
530         ::std::convert::From::from(::std::clone::Clone::clone(value))
531     }
532 }
533 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EmailConversationReader {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>534     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
535         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
536     }
537 }
538 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EmailConversationReader {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>539     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
540         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
541     }
542 }
543 impl ::std::convert::From<EmailConversationReader> for ::windows::runtime::IInspectable {
from(value: EmailConversationReader) -> Self544     fn from(value: EmailConversationReader) -> Self {
545         value.0
546     }
547 }
548 impl ::std::convert::From<&EmailConversationReader> for ::windows::runtime::IInspectable {
from(value: &EmailConversationReader) -> Self549     fn from(value: &EmailConversationReader) -> Self {
550         value.0.clone()
551     }
552 }
553 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EmailConversationReader {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>554     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
555         ::windows::runtime::Param::Owned(self.0)
556     }
557 }
558 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EmailConversationReader {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>559     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
560         ::windows::runtime::Param::Borrowed(&self.0)
561     }
562 }
563 unsafe impl ::std::marker::Send for EmailConversationReader {}
564 unsafe impl ::std::marker::Sync for EmailConversationReader {}
565 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
566 #[repr(transparent)]
567 pub struct EmailFlagState(pub i32);
568 impl EmailFlagState {
569     pub const Unflagged: EmailFlagState = EmailFlagState(0i32);
570     pub const Flagged: EmailFlagState = EmailFlagState(1i32);
571     pub const Completed: EmailFlagState = EmailFlagState(2i32);
572     pub const Cleared: EmailFlagState = EmailFlagState(3i32);
573 }
574 impl ::std::convert::From<i32> for EmailFlagState {
from(value: i32) -> Self575     fn from(value: i32) -> Self {
576         Self(value)
577     }
578 }
579 unsafe impl ::windows::runtime::Abi for EmailFlagState {
580     type Abi = Self;
581     type DefaultType = Self;
582 }
583 unsafe impl ::windows::runtime::RuntimeType for EmailFlagState {
584     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.ApplicationModel.Email.EmailFlagState;i4)");
585 }
586 #[repr(transparent)]
587 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
588 pub struct EmailFolder(::windows::runtime::IInspectable);
589 impl EmailFolder {
Id(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>590     pub fn Id(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
591         let this = self;
592         unsafe {
593             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
594             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
595         }
596     }
RemoteId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>597     pub fn RemoteId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
598         let this = self;
599         unsafe {
600             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
601             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
602         }
603     }
SetRemoteId<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()>604     pub fn SetRemoteId<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
605         let this = self;
606         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
607     }
MailboxId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>608     pub fn MailboxId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
609         let this = self;
610         unsafe {
611             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
612             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
613         }
614     }
ParentFolderId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>615     pub fn ParentFolderId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
616         let this = self;
617         unsafe {
618             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
619             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
620         }
621     }
DisplayName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>622     pub fn DisplayName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
623         let this = self;
624         unsafe {
625             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
626             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
627         }
628     }
SetDisplayName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()>629     pub fn SetDisplayName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
630         let this = self;
631         unsafe { (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
632     }
IsSyncEnabled(&self) -> ::windows::runtime::Result<bool>633     pub fn IsSyncEnabled(&self) -> ::windows::runtime::Result<bool> {
634         let this = self;
635         unsafe {
636             let mut result__: bool = ::std::mem::zeroed();
637             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
638         }
639     }
SetIsSyncEnabled(&self, value: bool) -> ::windows::runtime::Result<()>640     pub fn SetIsSyncEnabled(&self, value: bool) -> ::windows::runtime::Result<()> {
641         let this = self;
642         unsafe { (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), value).ok() }
643     }
644     #[cfg(feature = "Foundation")]
LastSuccessfulSyncTime(&self) -> ::windows::runtime::Result<super::super::Foundation::DateTime>645     pub fn LastSuccessfulSyncTime(&self) -> ::windows::runtime::Result<super::super::Foundation::DateTime> {
646         let this = self;
647         unsafe {
648             let mut result__: super::super::Foundation::DateTime = ::std::mem::zeroed();
649             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::DateTime>(result__)
650         }
651     }
652     #[cfg(feature = "Foundation")]
SetLastSuccessfulSyncTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::DateTime>>(&self, value: Param0) -> ::windows::runtime::Result<()>653     pub fn SetLastSuccessfulSyncTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::DateTime>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
654         let this = self;
655         unsafe { (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
656     }
Kind(&self) -> ::windows::runtime::Result<EmailSpecialFolderKind>657     pub fn Kind(&self) -> ::windows::runtime::Result<EmailSpecialFolderKind> {
658         let this = self;
659         unsafe {
660             let mut result__: EmailSpecialFolderKind = ::std::mem::zeroed();
661             (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailSpecialFolderKind>(result__)
662         }
663     }
664     #[cfg(feature = "Foundation")]
CreateFolderAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, name: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailFolder>>665     pub fn CreateFolderAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, name: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailFolder>> {
666         let this = self;
667         unsafe {
668             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
669             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), name.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<EmailFolder>>(result__)
670         }
671     }
672     #[cfg(feature = "Foundation")]
DeleteAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>673     pub fn DeleteAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
674         let this = self;
675         unsafe {
676             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
677             (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
678         }
679     }
680     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
FindChildFoldersAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<EmailFolder>>>681     pub fn FindChildFoldersAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<EmailFolder>>> {
682         let this = self;
683         unsafe {
684             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
685             (::windows::runtime::Interface::vtable(this).20)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<EmailFolder>>>(result__)
686         }
687     }
GetConversationReader(&self) -> ::windows::runtime::Result<EmailConversationReader>688     pub fn GetConversationReader(&self) -> ::windows::runtime::Result<EmailConversationReader> {
689         let this = self;
690         unsafe {
691             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
692             (::windows::runtime::Interface::vtable(this).21)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailConversationReader>(result__)
693         }
694     }
GetConversationReaderWithOptions<'a, Param0: ::windows::runtime::IntoParam<'a, EmailQueryOptions>>(&self, options: Param0) -> ::windows::runtime::Result<EmailConversationReader>695     pub fn GetConversationReaderWithOptions<'a, Param0: ::windows::runtime::IntoParam<'a, EmailQueryOptions>>(&self, options: Param0) -> ::windows::runtime::Result<EmailConversationReader> {
696         let this = self;
697         unsafe {
698             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
699             (::windows::runtime::Interface::vtable(this).22)(::std::mem::transmute_copy(this), options.into_param().abi(), &mut result__).from_abi::<EmailConversationReader>(result__)
700         }
701     }
702     #[cfg(feature = "Foundation")]
GetMessageAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, id: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailMessage>>703     pub fn GetMessageAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, id: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailMessage>> {
704         let this = self;
705         unsafe {
706             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
707             (::windows::runtime::Interface::vtable(this).23)(::std::mem::transmute_copy(this), id.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<EmailMessage>>(result__)
708         }
709     }
GetMessageReader(&self) -> ::windows::runtime::Result<EmailMessageReader>710     pub fn GetMessageReader(&self) -> ::windows::runtime::Result<EmailMessageReader> {
711         let this = self;
712         unsafe {
713             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
714             (::windows::runtime::Interface::vtable(this).24)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailMessageReader>(result__)
715         }
716     }
GetMessageReaderWithOptions<'a, Param0: ::windows::runtime::IntoParam<'a, EmailQueryOptions>>(&self, options: Param0) -> ::windows::runtime::Result<EmailMessageReader>717     pub fn GetMessageReaderWithOptions<'a, Param0: ::windows::runtime::IntoParam<'a, EmailQueryOptions>>(&self, options: Param0) -> ::windows::runtime::Result<EmailMessageReader> {
718         let this = self;
719         unsafe {
720             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
721             (::windows::runtime::Interface::vtable(this).25)(::std::mem::transmute_copy(this), options.into_param().abi(), &mut result__).from_abi::<EmailMessageReader>(result__)
722         }
723     }
724     #[cfg(feature = "Foundation")]
GetMessageCountsAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailItemCounts>>725     pub fn GetMessageCountsAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailItemCounts>> {
726         let this = self;
727         unsafe {
728             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
729             (::windows::runtime::Interface::vtable(this).26)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<EmailItemCounts>>(result__)
730         }
731     }
732     #[cfg(feature = "Foundation")]
TryMoveAsync<'a, Param0: ::windows::runtime::IntoParam<'a, EmailFolder>>(&self, newparentfolder: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>733     pub fn TryMoveAsync<'a, Param0: ::windows::runtime::IntoParam<'a, EmailFolder>>(&self, newparentfolder: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
734         let this = self;
735         unsafe {
736             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
737             (::windows::runtime::Interface::vtable(this).27)(::std::mem::transmute_copy(this), newparentfolder.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
738         }
739     }
740     #[cfg(feature = "Foundation")]
TryMoveWithNewNameAsync<'a, Param0: ::windows::runtime::IntoParam<'a, EmailFolder>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, newparentfolder: Param0, newfoldername: Param1) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>741     pub fn TryMoveWithNewNameAsync<'a, Param0: ::windows::runtime::IntoParam<'a, EmailFolder>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, newparentfolder: Param0, newfoldername: Param1) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
742         let this = self;
743         unsafe {
744             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
745             (::windows::runtime::Interface::vtable(this).28)(::std::mem::transmute_copy(this), newparentfolder.into_param().abi(), newfoldername.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
746         }
747     }
748     #[cfg(feature = "Foundation")]
TrySaveAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>749     pub fn TrySaveAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
750         let this = self;
751         unsafe {
752             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
753             (::windows::runtime::Interface::vtable(this).29)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
754         }
755     }
756     #[cfg(feature = "Foundation")]
SaveMessageAsync<'a, Param0: ::windows::runtime::IntoParam<'a, EmailMessage>>(&self, message: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>757     pub fn SaveMessageAsync<'a, Param0: ::windows::runtime::IntoParam<'a, EmailMessage>>(&self, message: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
758         let this = self;
759         unsafe {
760             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
761             (::windows::runtime::Interface::vtable(this).30)(::std::mem::transmute_copy(this), message.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
762         }
763     }
764 }
765 unsafe impl ::windows::runtime::RuntimeType for EmailFolder {
766     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.ApplicationModel.Email.EmailFolder;{a24f7771-996c-4864-b1ba-ed1240e57d11})");
767 }
768 unsafe impl ::windows::runtime::Interface for EmailFolder {
769     type Vtable = IEmailFolder_abi;
770     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2723116913, 39276, 18532, [177, 186, 237, 18, 64, 229, 125, 17]);
771 }
772 impl ::windows::runtime::RuntimeName for EmailFolder {
773     const NAME: &'static str = "Windows.ApplicationModel.Email.EmailFolder";
774 }
775 impl ::std::convert::From<EmailFolder> for ::windows::runtime::IUnknown {
from(value: EmailFolder) -> Self776     fn from(value: EmailFolder) -> Self {
777         unsafe { ::std::mem::transmute(value) }
778     }
779 }
780 impl ::std::convert::From<&EmailFolder> for ::windows::runtime::IUnknown {
from(value: &EmailFolder) -> Self781     fn from(value: &EmailFolder) -> Self {
782         ::std::convert::From::from(::std::clone::Clone::clone(value))
783     }
784 }
785 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EmailFolder {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>786     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
787         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
788     }
789 }
790 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EmailFolder {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>791     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
792         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
793     }
794 }
795 impl ::std::convert::From<EmailFolder> for ::windows::runtime::IInspectable {
from(value: EmailFolder) -> Self796     fn from(value: EmailFolder) -> Self {
797         value.0
798     }
799 }
800 impl ::std::convert::From<&EmailFolder> for ::windows::runtime::IInspectable {
from(value: &EmailFolder) -> Self801     fn from(value: &EmailFolder) -> Self {
802         value.0.clone()
803     }
804 }
805 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EmailFolder {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>806     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
807         ::windows::runtime::Param::Owned(self.0)
808     }
809 }
810 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EmailFolder {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>811     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
812         ::windows::runtime::Param::Borrowed(&self.0)
813     }
814 }
815 unsafe impl ::std::marker::Send for EmailFolder {}
816 unsafe impl ::std::marker::Sync for EmailFolder {}
817 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
818 #[repr(transparent)]
819 pub struct EmailImportance(pub i32);
820 impl EmailImportance {
821     pub const Normal: EmailImportance = EmailImportance(0i32);
822     pub const High: EmailImportance = EmailImportance(1i32);
823     pub const Low: EmailImportance = EmailImportance(2i32);
824 }
825 impl ::std::convert::From<i32> for EmailImportance {
from(value: i32) -> Self826     fn from(value: i32) -> Self {
827         Self(value)
828     }
829 }
830 unsafe impl ::windows::runtime::Abi for EmailImportance {
831     type Abi = Self;
832     type DefaultType = Self;
833 }
834 unsafe impl ::windows::runtime::RuntimeType for EmailImportance {
835     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.ApplicationModel.Email.EmailImportance;i4)");
836 }
837 #[repr(transparent)]
838 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
839 pub struct EmailIrmInfo(::windows::runtime::IInspectable);
840 impl EmailIrmInfo {
new() -> ::windows::runtime::Result<Self>841     pub fn new() -> ::windows::runtime::Result<Self> {
842         Self::IActivationFactory(|f| f.activate_instance::<Self>())
843     }
IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>844     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
845         static mut SHARED: ::windows::runtime::FactoryCache<EmailIrmInfo, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
846         unsafe { SHARED.call(callback) }
847     }
CanEdit(&self) -> ::windows::runtime::Result<bool>848     pub fn CanEdit(&self) -> ::windows::runtime::Result<bool> {
849         let this = self;
850         unsafe {
851             let mut result__: bool = ::std::mem::zeroed();
852             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
853         }
854     }
SetCanEdit(&self, value: bool) -> ::windows::runtime::Result<()>855     pub fn SetCanEdit(&self, value: bool) -> ::windows::runtime::Result<()> {
856         let this = self;
857         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
858     }
CanExtractData(&self) -> ::windows::runtime::Result<bool>859     pub fn CanExtractData(&self) -> ::windows::runtime::Result<bool> {
860         let this = self;
861         unsafe {
862             let mut result__: bool = ::std::mem::zeroed();
863             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
864         }
865     }
SetCanExtractData(&self, value: bool) -> ::windows::runtime::Result<()>866     pub fn SetCanExtractData(&self, value: bool) -> ::windows::runtime::Result<()> {
867         let this = self;
868         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value).ok() }
869     }
CanForward(&self) -> ::windows::runtime::Result<bool>870     pub fn CanForward(&self) -> ::windows::runtime::Result<bool> {
871         let this = self;
872         unsafe {
873             let mut result__: bool = ::std::mem::zeroed();
874             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
875         }
876     }
SetCanForward(&self, value: bool) -> ::windows::runtime::Result<()>877     pub fn SetCanForward(&self, value: bool) -> ::windows::runtime::Result<()> {
878         let this = self;
879         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value).ok() }
880     }
CanModifyRecipientsOnResponse(&self) -> ::windows::runtime::Result<bool>881     pub fn CanModifyRecipientsOnResponse(&self) -> ::windows::runtime::Result<bool> {
882         let this = self;
883         unsafe {
884             let mut result__: bool = ::std::mem::zeroed();
885             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
886         }
887     }
SetCanModifyRecipientsOnResponse(&self, value: bool) -> ::windows::runtime::Result<()>888     pub fn SetCanModifyRecipientsOnResponse(&self, value: bool) -> ::windows::runtime::Result<()> {
889         let this = self;
890         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
891     }
CanPrintData(&self) -> ::windows::runtime::Result<bool>892     pub fn CanPrintData(&self) -> ::windows::runtime::Result<bool> {
893         let this = self;
894         unsafe {
895             let mut result__: bool = ::std::mem::zeroed();
896             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
897         }
898     }
SetCanPrintData(&self, value: bool) -> ::windows::runtime::Result<()>899     pub fn SetCanPrintData(&self, value: bool) -> ::windows::runtime::Result<()> {
900         let this = self;
901         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
902     }
CanRemoveIrmOnResponse(&self) -> ::windows::runtime::Result<bool>903     pub fn CanRemoveIrmOnResponse(&self) -> ::windows::runtime::Result<bool> {
904         let this = self;
905         unsafe {
906             let mut result__: bool = ::std::mem::zeroed();
907             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
908         }
909     }
SetCanRemoveIrmOnResponse(&self, value: bool) -> ::windows::runtime::Result<()>910     pub fn SetCanRemoveIrmOnResponse(&self, value: bool) -> ::windows::runtime::Result<()> {
911         let this = self;
912         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value).ok() }
913     }
CanReply(&self) -> ::windows::runtime::Result<bool>914     pub fn CanReply(&self) -> ::windows::runtime::Result<bool> {
915         let this = self;
916         unsafe {
917             let mut result__: bool = ::std::mem::zeroed();
918             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
919         }
920     }
SetCanReply(&self, value: bool) -> ::windows::runtime::Result<()>921     pub fn SetCanReply(&self, value: bool) -> ::windows::runtime::Result<()> {
922         let this = self;
923         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), value).ok() }
924     }
CanReplyAll(&self) -> ::windows::runtime::Result<bool>925     pub fn CanReplyAll(&self) -> ::windows::runtime::Result<bool> {
926         let this = self;
927         unsafe {
928             let mut result__: bool = ::std::mem::zeroed();
929             (::windows::runtime::Interface::vtable(this).20)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
930         }
931     }
SetCanReplyAll(&self, value: bool) -> ::windows::runtime::Result<()>932     pub fn SetCanReplyAll(&self, value: bool) -> ::windows::runtime::Result<()> {
933         let this = self;
934         unsafe { (::windows::runtime::Interface::vtable(this).21)(::std::mem::transmute_copy(this), value).ok() }
935     }
936     #[cfg(feature = "Foundation")]
ExpirationDate(&self) -> ::windows::runtime::Result<super::super::Foundation::DateTime>937     pub fn ExpirationDate(&self) -> ::windows::runtime::Result<super::super::Foundation::DateTime> {
938         let this = self;
939         unsafe {
940             let mut result__: super::super::Foundation::DateTime = ::std::mem::zeroed();
941             (::windows::runtime::Interface::vtable(this).22)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::DateTime>(result__)
942         }
943     }
944     #[cfg(feature = "Foundation")]
SetExpirationDate<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::DateTime>>(&self, value: Param0) -> ::windows::runtime::Result<()>945     pub fn SetExpirationDate<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::DateTime>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
946         let this = self;
947         unsafe { (::windows::runtime::Interface::vtable(this).23)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
948     }
IsIrmOriginator(&self) -> ::windows::runtime::Result<bool>949     pub fn IsIrmOriginator(&self) -> ::windows::runtime::Result<bool> {
950         let this = self;
951         unsafe {
952             let mut result__: bool = ::std::mem::zeroed();
953             (::windows::runtime::Interface::vtable(this).24)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
954         }
955     }
SetIsIrmOriginator(&self, value: bool) -> ::windows::runtime::Result<()>956     pub fn SetIsIrmOriginator(&self, value: bool) -> ::windows::runtime::Result<()> {
957         let this = self;
958         unsafe { (::windows::runtime::Interface::vtable(this).25)(::std::mem::transmute_copy(this), value).ok() }
959     }
IsProgramaticAccessAllowed(&self) -> ::windows::runtime::Result<bool>960     pub fn IsProgramaticAccessAllowed(&self) -> ::windows::runtime::Result<bool> {
961         let this = self;
962         unsafe {
963             let mut result__: bool = ::std::mem::zeroed();
964             (::windows::runtime::Interface::vtable(this).26)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
965         }
966     }
SetIsProgramaticAccessAllowed(&self, value: bool) -> ::windows::runtime::Result<()>967     pub fn SetIsProgramaticAccessAllowed(&self, value: bool) -> ::windows::runtime::Result<()> {
968         let this = self;
969         unsafe { (::windows::runtime::Interface::vtable(this).27)(::std::mem::transmute_copy(this), value).ok() }
970     }
Template(&self) -> ::windows::runtime::Result<EmailIrmTemplate>971     pub fn Template(&self) -> ::windows::runtime::Result<EmailIrmTemplate> {
972         let this = self;
973         unsafe {
974             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
975             (::windows::runtime::Interface::vtable(this).28)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailIrmTemplate>(result__)
976         }
977     }
SetTemplate<'a, Param0: ::windows::runtime::IntoParam<'a, EmailIrmTemplate>>(&self, value: Param0) -> ::windows::runtime::Result<()>978     pub fn SetTemplate<'a, Param0: ::windows::runtime::IntoParam<'a, EmailIrmTemplate>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
979         let this = self;
980         unsafe { (::windows::runtime::Interface::vtable(this).29)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
981     }
982     #[cfg(feature = "Foundation")]
Create<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::DateTime>, Param1: ::windows::runtime::IntoParam<'a, EmailIrmTemplate>>(expiration: Param0, irmtemplate: Param1) -> ::windows::runtime::Result<EmailIrmInfo>983     pub fn Create<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::DateTime>, Param1: ::windows::runtime::IntoParam<'a, EmailIrmTemplate>>(expiration: Param0, irmtemplate: Param1) -> ::windows::runtime::Result<EmailIrmInfo> {
984         Self::IEmailIrmInfoFactory(|this| unsafe {
985             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
986             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), expiration.into_param().abi(), irmtemplate.into_param().abi(), &mut result__).from_abi::<EmailIrmInfo>(result__)
987         })
988     }
IEmailIrmInfoFactory<R, F: FnOnce(&IEmailIrmInfoFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>989     pub fn IEmailIrmInfoFactory<R, F: FnOnce(&IEmailIrmInfoFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
990         static mut SHARED: ::windows::runtime::FactoryCache<EmailIrmInfo, IEmailIrmInfoFactory> = ::windows::runtime::FactoryCache::new();
991         unsafe { SHARED.call(callback) }
992     }
993 }
994 unsafe impl ::windows::runtime::RuntimeType for EmailIrmInfo {
995     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.ApplicationModel.Email.EmailIrmInfo;{90f52193-b1a0-4ebd-a6b6-ddca55606e0e})");
996 }
997 unsafe impl ::windows::runtime::Interface for EmailIrmInfo {
998     type Vtable = IEmailIrmInfo_abi;
999     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2431984019, 45472, 20157, [166, 182, 221, 202, 85, 96, 110, 14]);
1000 }
1001 impl ::windows::runtime::RuntimeName for EmailIrmInfo {
1002     const NAME: &'static str = "Windows.ApplicationModel.Email.EmailIrmInfo";
1003 }
1004 impl ::std::convert::From<EmailIrmInfo> for ::windows::runtime::IUnknown {
from(value: EmailIrmInfo) -> Self1005     fn from(value: EmailIrmInfo) -> Self {
1006         unsafe { ::std::mem::transmute(value) }
1007     }
1008 }
1009 impl ::std::convert::From<&EmailIrmInfo> for ::windows::runtime::IUnknown {
from(value: &EmailIrmInfo) -> Self1010     fn from(value: &EmailIrmInfo) -> Self {
1011         ::std::convert::From::from(::std::clone::Clone::clone(value))
1012     }
1013 }
1014 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EmailIrmInfo {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1015     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1016         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1017     }
1018 }
1019 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EmailIrmInfo {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1020     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1021         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1022     }
1023 }
1024 impl ::std::convert::From<EmailIrmInfo> for ::windows::runtime::IInspectable {
from(value: EmailIrmInfo) -> Self1025     fn from(value: EmailIrmInfo) -> Self {
1026         value.0
1027     }
1028 }
1029 impl ::std::convert::From<&EmailIrmInfo> for ::windows::runtime::IInspectable {
from(value: &EmailIrmInfo) -> Self1030     fn from(value: &EmailIrmInfo) -> Self {
1031         value.0.clone()
1032     }
1033 }
1034 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EmailIrmInfo {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>1035     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1036         ::windows::runtime::Param::Owned(self.0)
1037     }
1038 }
1039 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EmailIrmInfo {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>1040     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1041         ::windows::runtime::Param::Borrowed(&self.0)
1042     }
1043 }
1044 unsafe impl ::std::marker::Send for EmailIrmInfo {}
1045 unsafe impl ::std::marker::Sync for EmailIrmInfo {}
1046 #[repr(transparent)]
1047 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1048 pub struct EmailIrmTemplate(::windows::runtime::IInspectable);
1049 impl EmailIrmTemplate {
new() -> ::windows::runtime::Result<Self>1050     pub fn new() -> ::windows::runtime::Result<Self> {
1051         Self::IActivationFactory(|f| f.activate_instance::<Self>())
1052     }
IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>1053     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
1054         static mut SHARED: ::windows::runtime::FactoryCache<EmailIrmTemplate, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
1055         unsafe { SHARED.call(callback) }
1056     }
Id(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>1057     pub fn Id(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
1058         let this = self;
1059         unsafe {
1060             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
1061             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
1062         }
1063     }
SetId<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()>1064     pub fn SetId<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
1065         let this = self;
1066         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
1067     }
Description(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>1068     pub fn Description(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
1069         let this = self;
1070         unsafe {
1071             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
1072             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
1073         }
1074     }
SetDescription<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()>1075     pub fn SetDescription<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
1076         let this = self;
1077         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
1078     }
Name(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>1079     pub fn Name(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
1080         let this = self;
1081         unsafe {
1082             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
1083             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
1084         }
1085     }
SetName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()>1086     pub fn SetName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
1087         let this = self;
1088         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
1089     }
Create<'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>>(id: Param0, name: Param1, description: Param2) -> ::windows::runtime::Result<EmailIrmTemplate>1090     pub fn Create<'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>>(id: Param0, name: Param1, description: Param2) -> ::windows::runtime::Result<EmailIrmTemplate> {
1091         Self::IEmailIrmTemplateFactory(|this| unsafe {
1092             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1093             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), id.into_param().abi(), name.into_param().abi(), description.into_param().abi(), &mut result__).from_abi::<EmailIrmTemplate>(result__)
1094         })
1095     }
IEmailIrmTemplateFactory<R, F: FnOnce(&IEmailIrmTemplateFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>1096     pub fn IEmailIrmTemplateFactory<R, F: FnOnce(&IEmailIrmTemplateFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
1097         static mut SHARED: ::windows::runtime::FactoryCache<EmailIrmTemplate, IEmailIrmTemplateFactory> = ::windows::runtime::FactoryCache::new();
1098         unsafe { SHARED.call(callback) }
1099     }
1100 }
1101 unsafe impl ::windows::runtime::RuntimeType for EmailIrmTemplate {
1102     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.ApplicationModel.Email.EmailIrmTemplate;{f327758d-546d-4bea-a963-54a38b2cc016})");
1103 }
1104 unsafe impl ::windows::runtime::Interface for EmailIrmTemplate {
1105     type Vtable = IEmailIrmTemplate_abi;
1106     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4079449485, 21613, 19434, [169, 99, 84, 163, 139, 44, 192, 22]);
1107 }
1108 impl ::windows::runtime::RuntimeName for EmailIrmTemplate {
1109     const NAME: &'static str = "Windows.ApplicationModel.Email.EmailIrmTemplate";
1110 }
1111 impl ::std::convert::From<EmailIrmTemplate> for ::windows::runtime::IUnknown {
from(value: EmailIrmTemplate) -> Self1112     fn from(value: EmailIrmTemplate) -> Self {
1113         unsafe { ::std::mem::transmute(value) }
1114     }
1115 }
1116 impl ::std::convert::From<&EmailIrmTemplate> for ::windows::runtime::IUnknown {
from(value: &EmailIrmTemplate) -> Self1117     fn from(value: &EmailIrmTemplate) -> Self {
1118         ::std::convert::From::from(::std::clone::Clone::clone(value))
1119     }
1120 }
1121 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EmailIrmTemplate {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1122     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1123         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1124     }
1125 }
1126 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EmailIrmTemplate {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1127     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1128         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1129     }
1130 }
1131 impl ::std::convert::From<EmailIrmTemplate> for ::windows::runtime::IInspectable {
from(value: EmailIrmTemplate) -> Self1132     fn from(value: EmailIrmTemplate) -> Self {
1133         value.0
1134     }
1135 }
1136 impl ::std::convert::From<&EmailIrmTemplate> for ::windows::runtime::IInspectable {
from(value: &EmailIrmTemplate) -> Self1137     fn from(value: &EmailIrmTemplate) -> Self {
1138         value.0.clone()
1139     }
1140 }
1141 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EmailIrmTemplate {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>1142     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1143         ::windows::runtime::Param::Owned(self.0)
1144     }
1145 }
1146 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EmailIrmTemplate {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>1147     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1148         ::windows::runtime::Param::Borrowed(&self.0)
1149     }
1150 }
1151 unsafe impl ::std::marker::Send for EmailIrmTemplate {}
1152 unsafe impl ::std::marker::Sync for EmailIrmTemplate {}
1153 #[repr(transparent)]
1154 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1155 pub struct EmailItemCounts(::windows::runtime::IInspectable);
1156 impl EmailItemCounts {
Flagged(&self) -> ::windows::runtime::Result<u32>1157     pub fn Flagged(&self) -> ::windows::runtime::Result<u32> {
1158         let this = self;
1159         unsafe {
1160             let mut result__: u32 = ::std::mem::zeroed();
1161             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1162         }
1163     }
Important(&self) -> ::windows::runtime::Result<u32>1164     pub fn Important(&self) -> ::windows::runtime::Result<u32> {
1165         let this = self;
1166         unsafe {
1167             let mut result__: u32 = ::std::mem::zeroed();
1168             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1169         }
1170     }
Total(&self) -> ::windows::runtime::Result<u32>1171     pub fn Total(&self) -> ::windows::runtime::Result<u32> {
1172         let this = self;
1173         unsafe {
1174             let mut result__: u32 = ::std::mem::zeroed();
1175             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1176         }
1177     }
Unread(&self) -> ::windows::runtime::Result<u32>1178     pub fn Unread(&self) -> ::windows::runtime::Result<u32> {
1179         let this = self;
1180         unsafe {
1181             let mut result__: u32 = ::std::mem::zeroed();
1182             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
1183         }
1184     }
1185 }
1186 unsafe impl ::windows::runtime::RuntimeType for EmailItemCounts {
1187     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.ApplicationModel.Email.EmailItemCounts;{5bd13321-fec8-4bab-83ba-0baf3c1f6cbd})");
1188 }
1189 unsafe impl ::windows::runtime::Interface for EmailItemCounts {
1190     type Vtable = IEmailItemCounts_abi;
1191     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1540436769, 65224, 19371, [131, 186, 11, 175, 60, 31, 108, 189]);
1192 }
1193 impl ::windows::runtime::RuntimeName for EmailItemCounts {
1194     const NAME: &'static str = "Windows.ApplicationModel.Email.EmailItemCounts";
1195 }
1196 impl ::std::convert::From<EmailItemCounts> for ::windows::runtime::IUnknown {
from(value: EmailItemCounts) -> Self1197     fn from(value: EmailItemCounts) -> Self {
1198         unsafe { ::std::mem::transmute(value) }
1199     }
1200 }
1201 impl ::std::convert::From<&EmailItemCounts> for ::windows::runtime::IUnknown {
from(value: &EmailItemCounts) -> Self1202     fn from(value: &EmailItemCounts) -> Self {
1203         ::std::convert::From::from(::std::clone::Clone::clone(value))
1204     }
1205 }
1206 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EmailItemCounts {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1207     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1208         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1209     }
1210 }
1211 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EmailItemCounts {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1212     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1213         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1214     }
1215 }
1216 impl ::std::convert::From<EmailItemCounts> for ::windows::runtime::IInspectable {
from(value: EmailItemCounts) -> Self1217     fn from(value: EmailItemCounts) -> Self {
1218         value.0
1219     }
1220 }
1221 impl ::std::convert::From<&EmailItemCounts> for ::windows::runtime::IInspectable {
from(value: &EmailItemCounts) -> Self1222     fn from(value: &EmailItemCounts) -> Self {
1223         value.0.clone()
1224     }
1225 }
1226 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EmailItemCounts {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>1227     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1228         ::windows::runtime::Param::Owned(self.0)
1229     }
1230 }
1231 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EmailItemCounts {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>1232     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1233         ::windows::runtime::Param::Borrowed(&self.0)
1234     }
1235 }
1236 unsafe impl ::std::marker::Send for EmailItemCounts {}
1237 unsafe impl ::std::marker::Sync for EmailItemCounts {}
1238 #[repr(transparent)]
1239 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1240 pub struct EmailMailbox(::windows::runtime::IInspectable);
1241 impl EmailMailbox {
Capabilities(&self) -> ::windows::runtime::Result<EmailMailboxCapabilities>1242     pub fn Capabilities(&self) -> ::windows::runtime::Result<EmailMailboxCapabilities> {
1243         let this = self;
1244         unsafe {
1245             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1246             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailMailboxCapabilities>(result__)
1247         }
1248     }
ChangeTracker(&self) -> ::windows::runtime::Result<EmailMailboxChangeTracker>1249     pub fn ChangeTracker(&self) -> ::windows::runtime::Result<EmailMailboxChangeTracker> {
1250         let this = self;
1251         unsafe {
1252             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1253             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailMailboxChangeTracker>(result__)
1254         }
1255     }
DisplayName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>1256     pub fn DisplayName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
1257         let this = self;
1258         unsafe {
1259             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
1260             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
1261         }
1262     }
SetDisplayName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()>1263     pub fn SetDisplayName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
1264         let this = self;
1265         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
1266     }
Id(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>1267     pub fn Id(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
1268         let this = self;
1269         unsafe {
1270             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
1271             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
1272         }
1273     }
IsOwnedByCurrentApp(&self) -> ::windows::runtime::Result<bool>1274     pub fn IsOwnedByCurrentApp(&self) -> ::windows::runtime::Result<bool> {
1275         let this = self;
1276         unsafe {
1277             let mut result__: bool = ::std::mem::zeroed();
1278             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
1279         }
1280     }
IsDataEncryptedUnderLock(&self) -> ::windows::runtime::Result<bool>1281     pub fn IsDataEncryptedUnderLock(&self) -> ::windows::runtime::Result<bool> {
1282         let this = self;
1283         unsafe {
1284             let mut result__: bool = ::std::mem::zeroed();
1285             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
1286         }
1287     }
MailAddress(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>1288     pub fn MailAddress(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
1289         let this = self;
1290         unsafe {
1291             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
1292             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
1293         }
1294     }
SetMailAddress<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()>1295     pub fn SetMailAddress<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
1296         let this = self;
1297         unsafe { (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
1298     }
1299     #[cfg(feature = "Foundation_Collections")]
MailAddressAliases(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<::windows::runtime::HSTRING>>1300     pub fn MailAddressAliases(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<::windows::runtime::HSTRING>> {
1301         let this = self;
1302         unsafe {
1303             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1304             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<::windows::runtime::HSTRING>>(result__)
1305         }
1306     }
OtherAppReadAccess(&self) -> ::windows::runtime::Result<EmailMailboxOtherAppReadAccess>1307     pub fn OtherAppReadAccess(&self) -> ::windows::runtime::Result<EmailMailboxOtherAppReadAccess> {
1308         let this = self;
1309         unsafe {
1310             let mut result__: EmailMailboxOtherAppReadAccess = ::std::mem::zeroed();
1311             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailMailboxOtherAppReadAccess>(result__)
1312         }
1313     }
SetOtherAppReadAccess(&self, value: EmailMailboxOtherAppReadAccess) -> ::windows::runtime::Result<()>1314     pub fn SetOtherAppReadAccess(&self, value: EmailMailboxOtherAppReadAccess) -> ::windows::runtime::Result<()> {
1315         let this = self;
1316         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value).ok() }
1317     }
OtherAppWriteAccess(&self) -> ::windows::runtime::Result<EmailMailboxOtherAppWriteAccess>1318     pub fn OtherAppWriteAccess(&self) -> ::windows::runtime::Result<EmailMailboxOtherAppWriteAccess> {
1319         let this = self;
1320         unsafe {
1321             let mut result__: EmailMailboxOtherAppWriteAccess = ::std::mem::zeroed();
1322             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailMailboxOtherAppWriteAccess>(result__)
1323         }
1324     }
SetOtherAppWriteAccess(&self, value: EmailMailboxOtherAppWriteAccess) -> ::windows::runtime::Result<()>1325     pub fn SetOtherAppWriteAccess(&self, value: EmailMailboxOtherAppWriteAccess) -> ::windows::runtime::Result<()> {
1326         let this = self;
1327         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), value).ok() }
1328     }
Policies(&self) -> ::windows::runtime::Result<EmailMailboxPolicies>1329     pub fn Policies(&self) -> ::windows::runtime::Result<EmailMailboxPolicies> {
1330         let this = self;
1331         unsafe {
1332             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1333             (::windows::runtime::Interface::vtable(this).20)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailMailboxPolicies>(result__)
1334         }
1335     }
SourceDisplayName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>1336     pub fn SourceDisplayName(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
1337         let this = self;
1338         unsafe {
1339             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
1340             (::windows::runtime::Interface::vtable(this).21)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
1341         }
1342     }
SyncManager(&self) -> ::windows::runtime::Result<EmailMailboxSyncManager>1343     pub fn SyncManager(&self) -> ::windows::runtime::Result<EmailMailboxSyncManager> {
1344         let this = self;
1345         unsafe {
1346             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1347             (::windows::runtime::Interface::vtable(this).22)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailMailboxSyncManager>(result__)
1348         }
1349     }
UserDataAccountId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>1350     pub fn UserDataAccountId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
1351         let this = self;
1352         unsafe {
1353             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
1354             (::windows::runtime::Interface::vtable(this).23)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
1355         }
1356     }
GetConversationReader(&self) -> ::windows::runtime::Result<EmailConversationReader>1357     pub fn GetConversationReader(&self) -> ::windows::runtime::Result<EmailConversationReader> {
1358         let this = self;
1359         unsafe {
1360             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1361             (::windows::runtime::Interface::vtable(this).24)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailConversationReader>(result__)
1362         }
1363     }
GetConversationReaderWithOptions<'a, Param0: ::windows::runtime::IntoParam<'a, EmailQueryOptions>>(&self, options: Param0) -> ::windows::runtime::Result<EmailConversationReader>1364     pub fn GetConversationReaderWithOptions<'a, Param0: ::windows::runtime::IntoParam<'a, EmailQueryOptions>>(&self, options: Param0) -> ::windows::runtime::Result<EmailConversationReader> {
1365         let this = self;
1366         unsafe {
1367             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1368             (::windows::runtime::Interface::vtable(this).25)(::std::mem::transmute_copy(this), options.into_param().abi(), &mut result__).from_abi::<EmailConversationReader>(result__)
1369         }
1370     }
GetMessageReader(&self) -> ::windows::runtime::Result<EmailMessageReader>1371     pub fn GetMessageReader(&self) -> ::windows::runtime::Result<EmailMessageReader> {
1372         let this = self;
1373         unsafe {
1374             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1375             (::windows::runtime::Interface::vtable(this).26)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailMessageReader>(result__)
1376         }
1377     }
GetMessageReaderWithOptions<'a, Param0: ::windows::runtime::IntoParam<'a, EmailQueryOptions>>(&self, options: Param0) -> ::windows::runtime::Result<EmailMessageReader>1378     pub fn GetMessageReaderWithOptions<'a, Param0: ::windows::runtime::IntoParam<'a, EmailQueryOptions>>(&self, options: Param0) -> ::windows::runtime::Result<EmailMessageReader> {
1379         let this = self;
1380         unsafe {
1381             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1382             (::windows::runtime::Interface::vtable(this).27)(::std::mem::transmute_copy(this), options.into_param().abi(), &mut result__).from_abi::<EmailMessageReader>(result__)
1383         }
1384     }
1385     #[cfg(feature = "Foundation")]
DeleteAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>1386     pub fn DeleteAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
1387         let this = self;
1388         unsafe {
1389             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1390             (::windows::runtime::Interface::vtable(this).28)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
1391         }
1392     }
1393     #[cfg(feature = "Foundation")]
GetConversationAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, id: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailConversation>>1394     pub fn GetConversationAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, id: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailConversation>> {
1395         let this = self;
1396         unsafe {
1397             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1398             (::windows::runtime::Interface::vtable(this).29)(::std::mem::transmute_copy(this), id.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<EmailConversation>>(result__)
1399         }
1400     }
1401     #[cfg(feature = "Foundation")]
GetFolderAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, id: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailFolder>>1402     pub fn GetFolderAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, id: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailFolder>> {
1403         let this = self;
1404         unsafe {
1405             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1406             (::windows::runtime::Interface::vtable(this).30)(::std::mem::transmute_copy(this), id.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<EmailFolder>>(result__)
1407         }
1408     }
1409     #[cfg(feature = "Foundation")]
GetMessageAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, id: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailMessage>>1410     pub fn GetMessageAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, id: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailMessage>> {
1411         let this = self;
1412         unsafe {
1413             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1414             (::windows::runtime::Interface::vtable(this).31)(::std::mem::transmute_copy(this), id.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<EmailMessage>>(result__)
1415         }
1416     }
1417     #[cfg(feature = "Foundation")]
GetSpecialFolderAsync(&self, foldertype: EmailSpecialFolderKind) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailFolder>>1418     pub fn GetSpecialFolderAsync(&self, foldertype: EmailSpecialFolderKind) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailFolder>> {
1419         let this = self;
1420         unsafe {
1421             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1422             (::windows::runtime::Interface::vtable(this).32)(::std::mem::transmute_copy(this), foldertype, &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<EmailFolder>>(result__)
1423         }
1424     }
1425     #[cfg(feature = "Foundation")]
SaveAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>1426     pub fn SaveAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
1427         let this = self;
1428         unsafe {
1429             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1430             (::windows::runtime::Interface::vtable(this).33)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
1431         }
1432     }
1433     #[cfg(feature = "Foundation")]
MarkMessageAsSeenAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, messageid: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>1434     pub fn MarkMessageAsSeenAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, messageid: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
1435         let this = self;
1436         unsafe {
1437             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1438             (::windows::runtime::Interface::vtable(this).34)(::std::mem::transmute_copy(this), messageid.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
1439         }
1440     }
1441     #[cfg(feature = "Foundation")]
MarkFolderAsSeenAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, folderid: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>1442     pub fn MarkFolderAsSeenAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, folderid: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
1443         let this = self;
1444         unsafe {
1445             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1446             (::windows::runtime::Interface::vtable(this).35)(::std::mem::transmute_copy(this), folderid.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
1447         }
1448     }
1449     #[cfg(feature = "Foundation")]
MarkMessageReadAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, messageid: Param0, isread: bool) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>1450     pub fn MarkMessageReadAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, messageid: Param0, isread: bool) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
1451         let this = self;
1452         unsafe {
1453             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1454             (::windows::runtime::Interface::vtable(this).36)(::std::mem::transmute_copy(this), messageid.into_param().abi(), isread, &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
1455         }
1456     }
1457     #[cfg(feature = "Foundation")]
ChangeMessageFlagStateAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, messageid: Param0, flagstate: EmailFlagState) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>1458     pub fn ChangeMessageFlagStateAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, messageid: Param0, flagstate: EmailFlagState) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
1459         let this = self;
1460         unsafe {
1461             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1462             (::windows::runtime::Interface::vtable(this).37)(::std::mem::transmute_copy(this), messageid.into_param().abi(), flagstate, &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
1463         }
1464     }
1465     #[cfg(feature = "Foundation")]
TryMoveMessageAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, messageid: Param0, newparentfolderid: Param1) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>1466     pub fn TryMoveMessageAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, messageid: Param0, newparentfolderid: Param1) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
1467         let this = self;
1468         unsafe {
1469             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1470             (::windows::runtime::Interface::vtable(this).38)(::std::mem::transmute_copy(this), messageid.into_param().abi(), newparentfolderid.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
1471         }
1472     }
1473     #[cfg(feature = "Foundation")]
TryMoveFolderAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, folderid: Param0, newparentfolderid: Param1) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>1474     pub fn TryMoveFolderAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, folderid: Param0, newparentfolderid: Param1) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
1475         let this = self;
1476         unsafe {
1477             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1478             (::windows::runtime::Interface::vtable(this).39)(::std::mem::transmute_copy(this), folderid.into_param().abi(), newparentfolderid.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
1479         }
1480     }
1481     #[cfg(feature = "Foundation")]
TryMoveFolderWithNewNameAsync<'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, folderid: Param0, newparentfolderid: Param1, newfoldername: Param2) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>1482     pub fn TryMoveFolderWithNewNameAsync<'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, folderid: Param0, newparentfolderid: Param1, newfoldername: Param2) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
1483         let this = self;
1484         unsafe {
1485             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1486             (::windows::runtime::Interface::vtable(this).40)(::std::mem::transmute_copy(this), folderid.into_param().abi(), newparentfolderid.into_param().abi(), newfoldername.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
1487         }
1488     }
1489     #[cfg(feature = "Foundation")]
DeleteMessageAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, messageid: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>1490     pub fn DeleteMessageAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, messageid: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
1491         let this = self;
1492         unsafe {
1493             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1494             (::windows::runtime::Interface::vtable(this).41)(::std::mem::transmute_copy(this), messageid.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
1495         }
1496     }
1497     #[cfg(feature = "Foundation")]
MarkFolderSyncEnabledAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, folderid: Param0, issyncenabled: bool) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>1498     pub fn MarkFolderSyncEnabledAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, folderid: Param0, issyncenabled: bool) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
1499         let this = self;
1500         unsafe {
1501             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1502             (::windows::runtime::Interface::vtable(this).42)(::std::mem::transmute_copy(this), folderid.into_param().abi(), issyncenabled, &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
1503         }
1504     }
1505     #[cfg(feature = "Foundation")]
SendMessageAsync<'a, Param0: ::windows::runtime::IntoParam<'a, EmailMessage>>(&self, message: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>1506     pub fn SendMessageAsync<'a, Param0: ::windows::runtime::IntoParam<'a, EmailMessage>>(&self, message: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
1507         let this = self;
1508         unsafe {
1509             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1510             (::windows::runtime::Interface::vtable(this).43)(::std::mem::transmute_copy(this), message.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
1511         }
1512     }
1513     #[cfg(feature = "Foundation")]
SaveDraftAsync<'a, Param0: ::windows::runtime::IntoParam<'a, EmailMessage>>(&self, message: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>1514     pub fn SaveDraftAsync<'a, Param0: ::windows::runtime::IntoParam<'a, EmailMessage>>(&self, message: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
1515         let this = self;
1516         unsafe {
1517             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1518             (::windows::runtime::Interface::vtable(this).44)(::std::mem::transmute_copy(this), message.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
1519         }
1520     }
1521     #[cfg(feature = "Foundation")]
DownloadMessageAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, messageid: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>1522     pub fn DownloadMessageAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, messageid: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
1523         let this = self;
1524         unsafe {
1525             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1526             (::windows::runtime::Interface::vtable(this).45)(::std::mem::transmute_copy(this), messageid.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
1527         }
1528     }
1529     #[cfg(feature = "Foundation")]
DownloadAttachmentAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, attachmentid: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>1530     pub fn DownloadAttachmentAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, attachmentid: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
1531         let this = self;
1532         unsafe {
1533             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1534             (::windows::runtime::Interface::vtable(this).46)(::std::mem::transmute_copy(this), attachmentid.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
1535         }
1536     }
1537     #[cfg(feature = "Foundation")]
CreateResponseMessageAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param4: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, messageid: Param0, responsetype: EmailMessageResponseKind, subject: Param2, responseheadertype: EmailMessageBodyKind, responseheader: Param4) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailMessage>>1538     pub fn CreateResponseMessageAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param4: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, messageid: Param0, responsetype: EmailMessageResponseKind, subject: Param2, responseheadertype: EmailMessageBodyKind, responseheader: Param4) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailMessage>> {
1539         let this = self;
1540         unsafe {
1541             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1542             (::windows::runtime::Interface::vtable(this).47)(::std::mem::transmute_copy(this), messageid.into_param().abi(), responsetype, subject.into_param().abi(), responseheadertype, responseheader.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<EmailMessage>>(result__)
1543         }
1544     }
1545     #[cfg(feature = "Foundation")]
TryUpdateMeetingResponseAsync<'a, Param0: ::windows::runtime::IntoParam<'a, EmailMessage>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param3: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, meeting: Param0, response: EmailMeetingResponseType, subject: Param2, comment: Param3, sendupdate: bool) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>1546     pub fn TryUpdateMeetingResponseAsync<'a, Param0: ::windows::runtime::IntoParam<'a, EmailMessage>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param3: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, meeting: Param0, response: EmailMeetingResponseType, subject: Param2, comment: Param3, sendupdate: bool) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
1547         let this = self;
1548         unsafe {
1549             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1550             (::windows::runtime::Interface::vtable(this).48)(::std::mem::transmute_copy(this), meeting.into_param().abi(), response, subject.into_param().abi(), comment.into_param().abi(), sendupdate, &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
1551         }
1552     }
1553     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
TryForwardMeetingAsync<'a, Param0: ::windows::runtime::IntoParam<'a, EmailMessage>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<EmailRecipient>>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param4: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param5: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>( &self, meeting: Param0, recipients: Param1, subject: Param2, forwardheadertype: EmailMessageBodyKind, forwardheader: Param4, comment: Param5, ) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>1554     pub fn TryForwardMeetingAsync<'a, Param0: ::windows::runtime::IntoParam<'a, EmailMessage>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<EmailRecipient>>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param4: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param5: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(
1555         &self,
1556         meeting: Param0,
1557         recipients: Param1,
1558         subject: Param2,
1559         forwardheadertype: EmailMessageBodyKind,
1560         forwardheader: Param4,
1561         comment: Param5,
1562     ) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
1563         let this = self;
1564         unsafe {
1565             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1566             (::windows::runtime::Interface::vtable(this).49)(::std::mem::transmute_copy(this), meeting.into_param().abi(), recipients.into_param().abi(), subject.into_param().abi(), forwardheadertype, forwardheader.into_param().abi(), comment.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
1567         }
1568     }
1569     #[cfg(feature = "Foundation")]
TryProposeNewTimeForMeetingAsync<'a, Param0: ::windows::runtime::IntoParam<'a, EmailMessage>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::DateTime>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::TimeSpan>, Param3: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param4: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>( &self, meeting: Param0, newstarttime: Param1, newduration: Param2, subject: Param3, comment: Param4, ) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>1570     pub fn TryProposeNewTimeForMeetingAsync<'a, Param0: ::windows::runtime::IntoParam<'a, EmailMessage>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::DateTime>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::TimeSpan>, Param3: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param4: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(
1571         &self,
1572         meeting: Param0,
1573         newstarttime: Param1,
1574         newduration: Param2,
1575         subject: Param3,
1576         comment: Param4,
1577     ) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
1578         let this = self;
1579         unsafe {
1580             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1581             (::windows::runtime::Interface::vtable(this).50)(::std::mem::transmute_copy(this), meeting.into_param().abi(), newstarttime.into_param().abi(), newduration.into_param().abi(), subject.into_param().abi(), comment.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
1582         }
1583     }
1584     #[cfg(feature = "Foundation")]
MailboxChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<EmailMailbox, EmailMailboxChangedEventArgs>>>(&self, phandler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>1585     pub fn MailboxChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<EmailMailbox, EmailMailboxChangedEventArgs>>>(&self, phandler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
1586         let this = self;
1587         unsafe {
1588             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
1589             (::windows::runtime::Interface::vtable(this).51)(::std::mem::transmute_copy(this), phandler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
1590         }
1591     }
1592     #[cfg(feature = "Foundation")]
RemoveMailboxChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()>1593     pub fn RemoveMailboxChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
1594         let this = self;
1595         unsafe { (::windows::runtime::Interface::vtable(this).52)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
1596     }
1597     #[cfg(feature = "Foundation")]
SmartSendMessageAsync<'a, Param0: ::windows::runtime::IntoParam<'a, EmailMessage>>(&self, message: Param0, smartsend: bool) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>1598     pub fn SmartSendMessageAsync<'a, Param0: ::windows::runtime::IntoParam<'a, EmailMessage>>(&self, message: Param0, smartsend: bool) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
1599         let this = self;
1600         unsafe {
1601             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1602             (::windows::runtime::Interface::vtable(this).53)(::std::mem::transmute_copy(this), message.into_param().abi(), smartsend, &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
1603         }
1604     }
1605     #[cfg(feature = "Foundation")]
TrySetAutoReplySettingsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, EmailMailboxAutoReplySettings>>(&self, autoreplysettings: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>1606     pub fn TrySetAutoReplySettingsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, EmailMailboxAutoReplySettings>>(&self, autoreplysettings: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
1607         let this = self;
1608         unsafe {
1609             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1610             (::windows::runtime::Interface::vtable(this).54)(::std::mem::transmute_copy(this), autoreplysettings.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
1611         }
1612     }
1613     #[cfg(feature = "Foundation")]
TryGetAutoReplySettingsAsync(&self, requestedformat: EmailMailboxAutoReplyMessageResponseKind) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailMailboxAutoReplySettings>>1614     pub fn TryGetAutoReplySettingsAsync(&self, requestedformat: EmailMailboxAutoReplyMessageResponseKind) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailMailboxAutoReplySettings>> {
1615         let this = self;
1616         unsafe {
1617             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1618             (::windows::runtime::Interface::vtable(this).55)(::std::mem::transmute_copy(this), requestedformat, &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<EmailMailboxAutoReplySettings>>(result__)
1619         }
1620     }
LinkedMailboxId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>1621     pub fn LinkedMailboxId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
1622         let this = &::windows::runtime::Interface::cast::<IEmailMailbox2>(self)?;
1623         unsafe {
1624             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
1625             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
1626         }
1627     }
NetworkAccountId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>1628     pub fn NetworkAccountId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
1629         let this = &::windows::runtime::Interface::cast::<IEmailMailbox2>(self)?;
1630         unsafe {
1631             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
1632             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
1633         }
1634     }
NetworkId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>1635     pub fn NetworkId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
1636         let this = &::windows::runtime::Interface::cast::<IEmailMailbox2>(self)?;
1637         unsafe {
1638             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
1639             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
1640         }
1641     }
1642     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
ResolveRecipientsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>>(&self, recipients: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<EmailRecipientResolutionResult>>>1643     pub fn ResolveRecipientsAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<::windows::runtime::HSTRING>>>(&self, recipients: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<EmailRecipientResolutionResult>>> {
1644         let this = &::windows::runtime::Interface::cast::<IEmailMailbox3>(self)?;
1645         unsafe {
1646             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1647             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), recipients.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<EmailRecipientResolutionResult>>>(result__)
1648         }
1649     }
1650     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections", feature = "Security_Cryptography_Certificates"))]
ValidateCertificatesAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Security::Cryptography::Certificates::Certificate>>>(&self, certificates: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<EmailCertificateValidationStatus>>>1651     pub fn ValidateCertificatesAsync<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Security::Cryptography::Certificates::Certificate>>>(&self, certificates: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<EmailCertificateValidationStatus>>> {
1652         let this = &::windows::runtime::Interface::cast::<IEmailMailbox3>(self)?;
1653         unsafe {
1654             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1655             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), certificates.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<EmailCertificateValidationStatus>>>(result__)
1656         }
1657     }
1658     #[cfg(feature = "Foundation")]
TryEmptyFolderAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, folderid: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailMailboxEmptyFolderStatus>>1659     pub fn TryEmptyFolderAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, folderid: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailMailboxEmptyFolderStatus>> {
1660         let this = &::windows::runtime::Interface::cast::<IEmailMailbox3>(self)?;
1661         unsafe {
1662             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1663             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), folderid.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<EmailMailboxEmptyFolderStatus>>(result__)
1664         }
1665     }
1666     #[cfg(feature = "Foundation")]
TryCreateFolderAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, parentfolderid: Param0, name: Param1) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailMailboxCreateFolderResult>>1667     pub fn TryCreateFolderAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, parentfolderid: Param0, name: Param1) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailMailboxCreateFolderResult>> {
1668         let this = &::windows::runtime::Interface::cast::<IEmailMailbox3>(self)?;
1669         unsafe {
1670             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1671             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), parentfolderid.into_param().abi(), name.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<EmailMailboxCreateFolderResult>>(result__)
1672         }
1673     }
1674     #[cfg(feature = "Foundation")]
TryDeleteFolderAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, folderid: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailMailboxDeleteFolderStatus>>1675     pub fn TryDeleteFolderAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, folderid: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailMailboxDeleteFolderStatus>> {
1676         let this = &::windows::runtime::Interface::cast::<IEmailMailbox3>(self)?;
1677         unsafe {
1678             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1679             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), folderid.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<EmailMailboxDeleteFolderStatus>>(result__)
1680         }
1681     }
1682     #[cfg(feature = "Foundation")]
RegisterSyncManagerAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>1683     pub fn RegisterSyncManagerAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
1684         let this = &::windows::runtime::Interface::cast::<IEmailMailbox4>(self)?;
1685         unsafe {
1686             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1687             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
1688         }
1689     }
GetChangeTracker<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, identity: Param0) -> ::windows::runtime::Result<EmailMailboxChangeTracker>1690     pub fn GetChangeTracker<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, identity: Param0) -> ::windows::runtime::Result<EmailMailboxChangeTracker> {
1691         let this = &::windows::runtime::Interface::cast::<IEmailMailbox5>(self)?;
1692         unsafe {
1693             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
1694             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), identity.into_param().abi(), &mut result__).from_abi::<EmailMailboxChangeTracker>(result__)
1695         }
1696     }
1697 }
1698 unsafe impl ::windows::runtime::RuntimeType for EmailMailbox {
1699     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.ApplicationModel.Email.EmailMailbox;{a8790649-cf5b-411b-80b1-4a6a1484ce25})");
1700 }
1701 unsafe impl ::windows::runtime::Interface for EmailMailbox {
1702     type Vtable = IEmailMailbox_abi;
1703     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2826503753, 53083, 16667, [128, 177, 74, 106, 20, 132, 206, 37]);
1704 }
1705 impl ::windows::runtime::RuntimeName for EmailMailbox {
1706     const NAME: &'static str = "Windows.ApplicationModel.Email.EmailMailbox";
1707 }
1708 impl ::std::convert::From<EmailMailbox> for ::windows::runtime::IUnknown {
from(value: EmailMailbox) -> Self1709     fn from(value: EmailMailbox) -> Self {
1710         unsafe { ::std::mem::transmute(value) }
1711     }
1712 }
1713 impl ::std::convert::From<&EmailMailbox> for ::windows::runtime::IUnknown {
from(value: &EmailMailbox) -> Self1714     fn from(value: &EmailMailbox) -> Self {
1715         ::std::convert::From::from(::std::clone::Clone::clone(value))
1716     }
1717 }
1718 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EmailMailbox {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1719     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1720         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1721     }
1722 }
1723 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EmailMailbox {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1724     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1725         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1726     }
1727 }
1728 impl ::std::convert::From<EmailMailbox> for ::windows::runtime::IInspectable {
from(value: EmailMailbox) -> Self1729     fn from(value: EmailMailbox) -> Self {
1730         value.0
1731     }
1732 }
1733 impl ::std::convert::From<&EmailMailbox> for ::windows::runtime::IInspectable {
from(value: &EmailMailbox) -> Self1734     fn from(value: &EmailMailbox) -> Self {
1735         value.0.clone()
1736     }
1737 }
1738 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EmailMailbox {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>1739     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1740         ::windows::runtime::Param::Owned(self.0)
1741     }
1742 }
1743 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EmailMailbox {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>1744     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1745         ::windows::runtime::Param::Borrowed(&self.0)
1746     }
1747 }
1748 unsafe impl ::std::marker::Send for EmailMailbox {}
1749 unsafe impl ::std::marker::Sync for EmailMailbox {}
1750 #[repr(transparent)]
1751 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1752 pub struct EmailMailboxAction(::windows::runtime::IInspectable);
1753 impl EmailMailboxAction {
Kind(&self) -> ::windows::runtime::Result<EmailMailboxActionKind>1754     pub fn Kind(&self) -> ::windows::runtime::Result<EmailMailboxActionKind> {
1755         let this = self;
1756         unsafe {
1757             let mut result__: EmailMailboxActionKind = ::std::mem::zeroed();
1758             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailMailboxActionKind>(result__)
1759         }
1760     }
ChangeNumber(&self) -> ::windows::runtime::Result<u64>1761     pub fn ChangeNumber(&self) -> ::windows::runtime::Result<u64> {
1762         let this = self;
1763         unsafe {
1764             let mut result__: u64 = ::std::mem::zeroed();
1765             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u64>(result__)
1766         }
1767     }
1768 }
1769 unsafe impl ::windows::runtime::RuntimeType for EmailMailboxAction {
1770     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.ApplicationModel.Email.EmailMailboxAction;{ac9889fa-21fa-4927-9210-d410582fdf3e})");
1771 }
1772 unsafe impl ::windows::runtime::Interface for EmailMailboxAction {
1773     type Vtable = IEmailMailboxAction_abi;
1774     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2895677946, 8698, 18727, [146, 16, 212, 16, 88, 47, 223, 62]);
1775 }
1776 impl ::windows::runtime::RuntimeName for EmailMailboxAction {
1777     const NAME: &'static str = "Windows.ApplicationModel.Email.EmailMailboxAction";
1778 }
1779 impl ::std::convert::From<EmailMailboxAction> for ::windows::runtime::IUnknown {
from(value: EmailMailboxAction) -> Self1780     fn from(value: EmailMailboxAction) -> Self {
1781         unsafe { ::std::mem::transmute(value) }
1782     }
1783 }
1784 impl ::std::convert::From<&EmailMailboxAction> for ::windows::runtime::IUnknown {
from(value: &EmailMailboxAction) -> Self1785     fn from(value: &EmailMailboxAction) -> Self {
1786         ::std::convert::From::from(::std::clone::Clone::clone(value))
1787     }
1788 }
1789 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EmailMailboxAction {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1790     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1791         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1792     }
1793 }
1794 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EmailMailboxAction {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1795     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1796         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1797     }
1798 }
1799 impl ::std::convert::From<EmailMailboxAction> for ::windows::runtime::IInspectable {
from(value: EmailMailboxAction) -> Self1800     fn from(value: EmailMailboxAction) -> Self {
1801         value.0
1802     }
1803 }
1804 impl ::std::convert::From<&EmailMailboxAction> for ::windows::runtime::IInspectable {
from(value: &EmailMailboxAction) -> Self1805     fn from(value: &EmailMailboxAction) -> Self {
1806         value.0.clone()
1807     }
1808 }
1809 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EmailMailboxAction {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>1810     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1811         ::windows::runtime::Param::Owned(self.0)
1812     }
1813 }
1814 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EmailMailboxAction {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>1815     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1816         ::windows::runtime::Param::Borrowed(&self.0)
1817     }
1818 }
1819 unsafe impl ::std::marker::Send for EmailMailboxAction {}
1820 unsafe impl ::std::marker::Sync for EmailMailboxAction {}
1821 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
1822 #[repr(transparent)]
1823 pub struct EmailMailboxActionKind(pub i32);
1824 impl EmailMailboxActionKind {
1825     pub const MarkMessageAsSeen: EmailMailboxActionKind = EmailMailboxActionKind(0i32);
1826     pub const MarkMessageRead: EmailMailboxActionKind = EmailMailboxActionKind(1i32);
1827     pub const ChangeMessageFlagState: EmailMailboxActionKind = EmailMailboxActionKind(2i32);
1828     pub const MoveMessage: EmailMailboxActionKind = EmailMailboxActionKind(3i32);
1829     pub const SaveDraft: EmailMailboxActionKind = EmailMailboxActionKind(4i32);
1830     pub const SendMessage: EmailMailboxActionKind = EmailMailboxActionKind(5i32);
1831     pub const CreateResponseReplyMessage: EmailMailboxActionKind = EmailMailboxActionKind(6i32);
1832     pub const CreateResponseReplyAllMessage: EmailMailboxActionKind = EmailMailboxActionKind(7i32);
1833     pub const CreateResponseForwardMessage: EmailMailboxActionKind = EmailMailboxActionKind(8i32);
1834     pub const MoveFolder: EmailMailboxActionKind = EmailMailboxActionKind(9i32);
1835     pub const MarkFolderForSyncEnabled: EmailMailboxActionKind = EmailMailboxActionKind(10i32);
1836 }
1837 impl ::std::convert::From<i32> for EmailMailboxActionKind {
from(value: i32) -> Self1838     fn from(value: i32) -> Self {
1839         Self(value)
1840     }
1841 }
1842 unsafe impl ::windows::runtime::Abi for EmailMailboxActionKind {
1843     type Abi = Self;
1844     type DefaultType = Self;
1845 }
1846 unsafe impl ::windows::runtime::RuntimeType for EmailMailboxActionKind {
1847     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.ApplicationModel.Email.EmailMailboxActionKind;i4)");
1848 }
1849 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
1850 #[repr(transparent)]
1851 pub struct EmailMailboxAllowedSmimeEncryptionAlgorithmNegotiation(pub i32);
1852 impl EmailMailboxAllowedSmimeEncryptionAlgorithmNegotiation {
1853     pub const None: EmailMailboxAllowedSmimeEncryptionAlgorithmNegotiation = EmailMailboxAllowedSmimeEncryptionAlgorithmNegotiation(0i32);
1854     pub const StrongAlgorithm: EmailMailboxAllowedSmimeEncryptionAlgorithmNegotiation = EmailMailboxAllowedSmimeEncryptionAlgorithmNegotiation(1i32);
1855     pub const AnyAlgorithm: EmailMailboxAllowedSmimeEncryptionAlgorithmNegotiation = EmailMailboxAllowedSmimeEncryptionAlgorithmNegotiation(2i32);
1856 }
1857 impl ::std::convert::From<i32> for EmailMailboxAllowedSmimeEncryptionAlgorithmNegotiation {
from(value: i32) -> Self1858     fn from(value: i32) -> Self {
1859         Self(value)
1860     }
1861 }
1862 unsafe impl ::windows::runtime::Abi for EmailMailboxAllowedSmimeEncryptionAlgorithmNegotiation {
1863     type Abi = Self;
1864     type DefaultType = Self;
1865 }
1866 unsafe impl ::windows::runtime::RuntimeType for EmailMailboxAllowedSmimeEncryptionAlgorithmNegotiation {
1867     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.ApplicationModel.Email.EmailMailboxAllowedSmimeEncryptionAlgorithmNegotiation;i4)");
1868 }
1869 #[repr(transparent)]
1870 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1871 pub struct EmailMailboxAutoReply(::windows::runtime::IInspectable);
1872 impl EmailMailboxAutoReply {
IsEnabled(&self) -> ::windows::runtime::Result<bool>1873     pub fn IsEnabled(&self) -> ::windows::runtime::Result<bool> {
1874         let this = self;
1875         unsafe {
1876             let mut result__: bool = ::std::mem::zeroed();
1877             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
1878         }
1879     }
SetIsEnabled(&self, value: bool) -> ::windows::runtime::Result<()>1880     pub fn SetIsEnabled(&self, value: bool) -> ::windows::runtime::Result<()> {
1881         let this = self;
1882         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
1883     }
Response(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>1884     pub fn Response(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
1885         let this = self;
1886         unsafe {
1887             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
1888             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
1889         }
1890     }
SetResponse<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()>1891     pub fn SetResponse<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
1892         let this = self;
1893         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
1894     }
1895 }
1896 unsafe impl ::windows::runtime::RuntimeType for EmailMailboxAutoReply {
1897     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.ApplicationModel.Email.EmailMailboxAutoReply;{e223254c-8ab4-485b-b31f-04d15476bd59})");
1898 }
1899 unsafe impl ::windows::runtime::Interface for EmailMailboxAutoReply {
1900     type Vtable = IEmailMailboxAutoReply_abi;
1901     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3793954124, 35508, 18523, [179, 31, 4, 209, 84, 118, 189, 89]);
1902 }
1903 impl ::windows::runtime::RuntimeName for EmailMailboxAutoReply {
1904     const NAME: &'static str = "Windows.ApplicationModel.Email.EmailMailboxAutoReply";
1905 }
1906 impl ::std::convert::From<EmailMailboxAutoReply> for ::windows::runtime::IUnknown {
from(value: EmailMailboxAutoReply) -> Self1907     fn from(value: EmailMailboxAutoReply) -> Self {
1908         unsafe { ::std::mem::transmute(value) }
1909     }
1910 }
1911 impl ::std::convert::From<&EmailMailboxAutoReply> for ::windows::runtime::IUnknown {
from(value: &EmailMailboxAutoReply) -> Self1912     fn from(value: &EmailMailboxAutoReply) -> Self {
1913         ::std::convert::From::from(::std::clone::Clone::clone(value))
1914     }
1915 }
1916 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EmailMailboxAutoReply {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1917     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1918         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1919     }
1920 }
1921 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EmailMailboxAutoReply {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1922     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1923         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1924     }
1925 }
1926 impl ::std::convert::From<EmailMailboxAutoReply> for ::windows::runtime::IInspectable {
from(value: EmailMailboxAutoReply) -> Self1927     fn from(value: EmailMailboxAutoReply) -> Self {
1928         value.0
1929     }
1930 }
1931 impl ::std::convert::From<&EmailMailboxAutoReply> for ::windows::runtime::IInspectable {
from(value: &EmailMailboxAutoReply) -> Self1932     fn from(value: &EmailMailboxAutoReply) -> Self {
1933         value.0.clone()
1934     }
1935 }
1936 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EmailMailboxAutoReply {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>1937     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1938         ::windows::runtime::Param::Owned(self.0)
1939     }
1940 }
1941 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EmailMailboxAutoReply {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>1942     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
1943         ::windows::runtime::Param::Borrowed(&self.0)
1944     }
1945 }
1946 unsafe impl ::std::marker::Send for EmailMailboxAutoReply {}
1947 unsafe impl ::std::marker::Sync for EmailMailboxAutoReply {}
1948 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
1949 #[repr(transparent)]
1950 pub struct EmailMailboxAutoReplyMessageResponseKind(pub i32);
1951 impl EmailMailboxAutoReplyMessageResponseKind {
1952     pub const Html: EmailMailboxAutoReplyMessageResponseKind = EmailMailboxAutoReplyMessageResponseKind(0i32);
1953     pub const PlainText: EmailMailboxAutoReplyMessageResponseKind = EmailMailboxAutoReplyMessageResponseKind(1i32);
1954 }
1955 impl ::std::convert::From<i32> for EmailMailboxAutoReplyMessageResponseKind {
from(value: i32) -> Self1956     fn from(value: i32) -> Self {
1957         Self(value)
1958     }
1959 }
1960 unsafe impl ::windows::runtime::Abi for EmailMailboxAutoReplyMessageResponseKind {
1961     type Abi = Self;
1962     type DefaultType = Self;
1963 }
1964 unsafe impl ::windows::runtime::RuntimeType for EmailMailboxAutoReplyMessageResponseKind {
1965     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.ApplicationModel.Email.EmailMailboxAutoReplyMessageResponseKind;i4)");
1966 }
1967 #[repr(transparent)]
1968 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1969 pub struct EmailMailboxAutoReplySettings(::windows::runtime::IInspectable);
1970 impl EmailMailboxAutoReplySettings {
new() -> ::windows::runtime::Result<Self>1971     pub fn new() -> ::windows::runtime::Result<Self> {
1972         Self::IActivationFactory(|f| f.activate_instance::<Self>())
1973     }
IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>1974     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
1975         static mut SHARED: ::windows::runtime::FactoryCache<EmailMailboxAutoReplySettings, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
1976         unsafe { SHARED.call(callback) }
1977     }
IsEnabled(&self) -> ::windows::runtime::Result<bool>1978     pub fn IsEnabled(&self) -> ::windows::runtime::Result<bool> {
1979         let this = self;
1980         unsafe {
1981             let mut result__: bool = ::std::mem::zeroed();
1982             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
1983         }
1984     }
SetIsEnabled(&self, value: bool) -> ::windows::runtime::Result<()>1985     pub fn SetIsEnabled(&self, value: bool) -> ::windows::runtime::Result<()> {
1986         let this = self;
1987         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
1988     }
ResponseKind(&self) -> ::windows::runtime::Result<EmailMailboxAutoReplyMessageResponseKind>1989     pub fn ResponseKind(&self) -> ::windows::runtime::Result<EmailMailboxAutoReplyMessageResponseKind> {
1990         let this = self;
1991         unsafe {
1992             let mut result__: EmailMailboxAutoReplyMessageResponseKind = ::std::mem::zeroed();
1993             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailMailboxAutoReplyMessageResponseKind>(result__)
1994         }
1995     }
SetResponseKind(&self, value: EmailMailboxAutoReplyMessageResponseKind) -> ::windows::runtime::Result<()>1996     pub fn SetResponseKind(&self, value: EmailMailboxAutoReplyMessageResponseKind) -> ::windows::runtime::Result<()> {
1997         let this = self;
1998         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value).ok() }
1999     }
2000     #[cfg(feature = "Foundation")]
StartTime(&self) -> ::windows::runtime::Result<super::super::Foundation::IReference<super::super::Foundation::DateTime>>2001     pub fn StartTime(&self) -> ::windows::runtime::Result<super::super::Foundation::IReference<super::super::Foundation::DateTime>> {
2002         let this = self;
2003         unsafe {
2004             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2005             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IReference<super::super::Foundation::DateTime>>(result__)
2006         }
2007     }
2008     #[cfg(feature = "Foundation")]
SetStartTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::IReference<super::super::Foundation::DateTime>>>(&self, value: Param0) -> ::windows::runtime::Result<()>2009     pub fn SetStartTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::IReference<super::super::Foundation::DateTime>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
2010         let this = self;
2011         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
2012     }
2013     #[cfg(feature = "Foundation")]
EndTime(&self) -> ::windows::runtime::Result<super::super::Foundation::IReference<super::super::Foundation::DateTime>>2014     pub fn EndTime(&self) -> ::windows::runtime::Result<super::super::Foundation::IReference<super::super::Foundation::DateTime>> {
2015         let this = self;
2016         unsafe {
2017             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2018             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IReference<super::super::Foundation::DateTime>>(result__)
2019         }
2020     }
2021     #[cfg(feature = "Foundation")]
SetEndTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::IReference<super::super::Foundation::DateTime>>>(&self, value: Param0) -> ::windows::runtime::Result<()>2022     pub fn SetEndTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::IReference<super::super::Foundation::DateTime>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
2023         let this = self;
2024         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
2025     }
InternalReply(&self) -> ::windows::runtime::Result<EmailMailboxAutoReply>2026     pub fn InternalReply(&self) -> ::windows::runtime::Result<EmailMailboxAutoReply> {
2027         let this = self;
2028         unsafe {
2029             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2030             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailMailboxAutoReply>(result__)
2031         }
2032     }
KnownExternalReply(&self) -> ::windows::runtime::Result<EmailMailboxAutoReply>2033     pub fn KnownExternalReply(&self) -> ::windows::runtime::Result<EmailMailboxAutoReply> {
2034         let this = self;
2035         unsafe {
2036             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2037             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailMailboxAutoReply>(result__)
2038         }
2039     }
UnknownExternalReply(&self) -> ::windows::runtime::Result<EmailMailboxAutoReply>2040     pub fn UnknownExternalReply(&self) -> ::windows::runtime::Result<EmailMailboxAutoReply> {
2041         let this = self;
2042         unsafe {
2043             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2044             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailMailboxAutoReply>(result__)
2045         }
2046     }
2047 }
2048 unsafe impl ::windows::runtime::RuntimeType for EmailMailboxAutoReplySettings {
2049     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.ApplicationModel.Email.EmailMailboxAutoReplySettings;{a87a9fa8-0ac6-4b77-ba77-a6b99e9a27b8})");
2050 }
2051 unsafe impl ::windows::runtime::Interface for EmailMailboxAutoReplySettings {
2052     type Vtable = IEmailMailboxAutoReplySettings_abi;
2053     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2826608552, 2758, 19319, [186, 119, 166, 185, 158, 154, 39, 184]);
2054 }
2055 impl ::windows::runtime::RuntimeName for EmailMailboxAutoReplySettings {
2056     const NAME: &'static str = "Windows.ApplicationModel.Email.EmailMailboxAutoReplySettings";
2057 }
2058 impl ::std::convert::From<EmailMailboxAutoReplySettings> for ::windows::runtime::IUnknown {
from(value: EmailMailboxAutoReplySettings) -> Self2059     fn from(value: EmailMailboxAutoReplySettings) -> Self {
2060         unsafe { ::std::mem::transmute(value) }
2061     }
2062 }
2063 impl ::std::convert::From<&EmailMailboxAutoReplySettings> for ::windows::runtime::IUnknown {
from(value: &EmailMailboxAutoReplySettings) -> Self2064     fn from(value: &EmailMailboxAutoReplySettings) -> Self {
2065         ::std::convert::From::from(::std::clone::Clone::clone(value))
2066     }
2067 }
2068 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EmailMailboxAutoReplySettings {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2069     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2070         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2071     }
2072 }
2073 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EmailMailboxAutoReplySettings {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2074     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2075         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2076     }
2077 }
2078 impl ::std::convert::From<EmailMailboxAutoReplySettings> for ::windows::runtime::IInspectable {
from(value: EmailMailboxAutoReplySettings) -> Self2079     fn from(value: EmailMailboxAutoReplySettings) -> Self {
2080         value.0
2081     }
2082 }
2083 impl ::std::convert::From<&EmailMailboxAutoReplySettings> for ::windows::runtime::IInspectable {
from(value: &EmailMailboxAutoReplySettings) -> Self2084     fn from(value: &EmailMailboxAutoReplySettings) -> Self {
2085         value.0.clone()
2086     }
2087 }
2088 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EmailMailboxAutoReplySettings {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2089     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2090         ::windows::runtime::Param::Owned(self.0)
2091     }
2092 }
2093 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EmailMailboxAutoReplySettings {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2094     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2095         ::windows::runtime::Param::Borrowed(&self.0)
2096     }
2097 }
2098 unsafe impl ::std::marker::Send for EmailMailboxAutoReplySettings {}
2099 unsafe impl ::std::marker::Sync for EmailMailboxAutoReplySettings {}
2100 #[repr(transparent)]
2101 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2102 pub struct EmailMailboxCapabilities(::windows::runtime::IInspectable);
2103 impl EmailMailboxCapabilities {
CanForwardMeetings(&self) -> ::windows::runtime::Result<bool>2104     pub fn CanForwardMeetings(&self) -> ::windows::runtime::Result<bool> {
2105         let this = self;
2106         unsafe {
2107             let mut result__: bool = ::std::mem::zeroed();
2108             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
2109         }
2110     }
CanGetAndSetExternalAutoReplies(&self) -> ::windows::runtime::Result<bool>2111     pub fn CanGetAndSetExternalAutoReplies(&self) -> ::windows::runtime::Result<bool> {
2112         let this = self;
2113         unsafe {
2114             let mut result__: bool = ::std::mem::zeroed();
2115             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
2116         }
2117     }
CanGetAndSetInternalAutoReplies(&self) -> ::windows::runtime::Result<bool>2118     pub fn CanGetAndSetInternalAutoReplies(&self) -> ::windows::runtime::Result<bool> {
2119         let this = self;
2120         unsafe {
2121             let mut result__: bool = ::std::mem::zeroed();
2122             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
2123         }
2124     }
CanUpdateMeetingResponses(&self) -> ::windows::runtime::Result<bool>2125     pub fn CanUpdateMeetingResponses(&self) -> ::windows::runtime::Result<bool> {
2126         let this = self;
2127         unsafe {
2128             let mut result__: bool = ::std::mem::zeroed();
2129             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
2130         }
2131     }
CanServerSearchFolders(&self) -> ::windows::runtime::Result<bool>2132     pub fn CanServerSearchFolders(&self) -> ::windows::runtime::Result<bool> {
2133         let this = self;
2134         unsafe {
2135             let mut result__: bool = ::std::mem::zeroed();
2136             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
2137         }
2138     }
CanServerSearchMailbox(&self) -> ::windows::runtime::Result<bool>2139     pub fn CanServerSearchMailbox(&self) -> ::windows::runtime::Result<bool> {
2140         let this = self;
2141         unsafe {
2142             let mut result__: bool = ::std::mem::zeroed();
2143             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
2144         }
2145     }
CanProposeNewTimeForMeetings(&self) -> ::windows::runtime::Result<bool>2146     pub fn CanProposeNewTimeForMeetings(&self) -> ::windows::runtime::Result<bool> {
2147         let this = self;
2148         unsafe {
2149             let mut result__: bool = ::std::mem::zeroed();
2150             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
2151         }
2152     }
CanSmartSend(&self) -> ::windows::runtime::Result<bool>2153     pub fn CanSmartSend(&self) -> ::windows::runtime::Result<bool> {
2154         let this = self;
2155         unsafe {
2156             let mut result__: bool = ::std::mem::zeroed();
2157             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
2158         }
2159     }
CanResolveRecipients(&self) -> ::windows::runtime::Result<bool>2160     pub fn CanResolveRecipients(&self) -> ::windows::runtime::Result<bool> {
2161         let this = &::windows::runtime::Interface::cast::<IEmailMailboxCapabilities2>(self)?;
2162         unsafe {
2163             let mut result__: bool = ::std::mem::zeroed();
2164             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
2165         }
2166     }
CanValidateCertificates(&self) -> ::windows::runtime::Result<bool>2167     pub fn CanValidateCertificates(&self) -> ::windows::runtime::Result<bool> {
2168         let this = &::windows::runtime::Interface::cast::<IEmailMailboxCapabilities2>(self)?;
2169         unsafe {
2170             let mut result__: bool = ::std::mem::zeroed();
2171             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
2172         }
2173     }
CanEmptyFolder(&self) -> ::windows::runtime::Result<bool>2174     pub fn CanEmptyFolder(&self) -> ::windows::runtime::Result<bool> {
2175         let this = &::windows::runtime::Interface::cast::<IEmailMailboxCapabilities2>(self)?;
2176         unsafe {
2177             let mut result__: bool = ::std::mem::zeroed();
2178             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
2179         }
2180     }
CanCreateFolder(&self) -> ::windows::runtime::Result<bool>2181     pub fn CanCreateFolder(&self) -> ::windows::runtime::Result<bool> {
2182         let this = &::windows::runtime::Interface::cast::<IEmailMailboxCapabilities2>(self)?;
2183         unsafe {
2184             let mut result__: bool = ::std::mem::zeroed();
2185             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
2186         }
2187     }
CanDeleteFolder(&self) -> ::windows::runtime::Result<bool>2188     pub fn CanDeleteFolder(&self) -> ::windows::runtime::Result<bool> {
2189         let this = &::windows::runtime::Interface::cast::<IEmailMailboxCapabilities2>(self)?;
2190         unsafe {
2191             let mut result__: bool = ::std::mem::zeroed();
2192             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
2193         }
2194     }
CanMoveFolder(&self) -> ::windows::runtime::Result<bool>2195     pub fn CanMoveFolder(&self) -> ::windows::runtime::Result<bool> {
2196         let this = &::windows::runtime::Interface::cast::<IEmailMailboxCapabilities2>(self)?;
2197         unsafe {
2198             let mut result__: bool = ::std::mem::zeroed();
2199             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
2200         }
2201     }
SetCanForwardMeetings(&self, value: bool) -> ::windows::runtime::Result<()>2202     pub fn SetCanForwardMeetings(&self, value: bool) -> ::windows::runtime::Result<()> {
2203         let this = &::windows::runtime::Interface::cast::<IEmailMailboxCapabilities3>(self)?;
2204         unsafe { (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), value).ok() }
2205     }
SetCanGetAndSetExternalAutoReplies(&self, value: bool) -> ::windows::runtime::Result<()>2206     pub fn SetCanGetAndSetExternalAutoReplies(&self, value: bool) -> ::windows::runtime::Result<()> {
2207         let this = &::windows::runtime::Interface::cast::<IEmailMailboxCapabilities3>(self)?;
2208         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
2209     }
SetCanGetAndSetInternalAutoReplies(&self, value: bool) -> ::windows::runtime::Result<()>2210     pub fn SetCanGetAndSetInternalAutoReplies(&self, value: bool) -> ::windows::runtime::Result<()> {
2211         let this = &::windows::runtime::Interface::cast::<IEmailMailboxCapabilities3>(self)?;
2212         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), value).ok() }
2213     }
SetCanUpdateMeetingResponses(&self, value: bool) -> ::windows::runtime::Result<()>2214     pub fn SetCanUpdateMeetingResponses(&self, value: bool) -> ::windows::runtime::Result<()> {
2215         let this = &::windows::runtime::Interface::cast::<IEmailMailboxCapabilities3>(self)?;
2216         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value).ok() }
2217     }
SetCanServerSearchFolders(&self, value: bool) -> ::windows::runtime::Result<()>2218     pub fn SetCanServerSearchFolders(&self, value: bool) -> ::windows::runtime::Result<()> {
2219         let this = &::windows::runtime::Interface::cast::<IEmailMailboxCapabilities3>(self)?;
2220         unsafe { (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), value).ok() }
2221     }
SetCanServerSearchMailbox(&self, value: bool) -> ::windows::runtime::Result<()>2222     pub fn SetCanServerSearchMailbox(&self, value: bool) -> ::windows::runtime::Result<()> {
2223         let this = &::windows::runtime::Interface::cast::<IEmailMailboxCapabilities3>(self)?;
2224         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value).ok() }
2225     }
SetCanProposeNewTimeForMeetings(&self, value: bool) -> ::windows::runtime::Result<()>2226     pub fn SetCanProposeNewTimeForMeetings(&self, value: bool) -> ::windows::runtime::Result<()> {
2227         let this = &::windows::runtime::Interface::cast::<IEmailMailboxCapabilities3>(self)?;
2228         unsafe { (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), value).ok() }
2229     }
SetCanSmartSend(&self, value: bool) -> ::windows::runtime::Result<()>2230     pub fn SetCanSmartSend(&self, value: bool) -> ::windows::runtime::Result<()> {
2231         let this = &::windows::runtime::Interface::cast::<IEmailMailboxCapabilities3>(self)?;
2232         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
2233     }
SetCanResolveRecipients(&self, value: bool) -> ::windows::runtime::Result<()>2234     pub fn SetCanResolveRecipients(&self, value: bool) -> ::windows::runtime::Result<()> {
2235         let this = &::windows::runtime::Interface::cast::<IEmailMailboxCapabilities3>(self)?;
2236         unsafe { (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), value).ok() }
2237     }
SetCanValidateCertificates(&self, value: bool) -> ::windows::runtime::Result<()>2238     pub fn SetCanValidateCertificates(&self, value: bool) -> ::windows::runtime::Result<()> {
2239         let this = &::windows::runtime::Interface::cast::<IEmailMailboxCapabilities3>(self)?;
2240         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
2241     }
SetCanEmptyFolder(&self, value: bool) -> ::windows::runtime::Result<()>2242     pub fn SetCanEmptyFolder(&self, value: bool) -> ::windows::runtime::Result<()> {
2243         let this = &::windows::runtime::Interface::cast::<IEmailMailboxCapabilities3>(self)?;
2244         unsafe { (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), value).ok() }
2245     }
SetCanCreateFolder(&self, value: bool) -> ::windows::runtime::Result<()>2246     pub fn SetCanCreateFolder(&self, value: bool) -> ::windows::runtime::Result<()> {
2247         let this = &::windows::runtime::Interface::cast::<IEmailMailboxCapabilities3>(self)?;
2248         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value).ok() }
2249     }
SetCanDeleteFolder(&self, value: bool) -> ::windows::runtime::Result<()>2250     pub fn SetCanDeleteFolder(&self, value: bool) -> ::windows::runtime::Result<()> {
2251         let this = &::windows::runtime::Interface::cast::<IEmailMailboxCapabilities3>(self)?;
2252         unsafe { (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), value).ok() }
2253     }
SetCanMoveFolder(&self, value: bool) -> ::windows::runtime::Result<()>2254     pub fn SetCanMoveFolder(&self, value: bool) -> ::windows::runtime::Result<()> {
2255         let this = &::windows::runtime::Interface::cast::<IEmailMailboxCapabilities3>(self)?;
2256         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), value).ok() }
2257     }
2258 }
2259 unsafe impl ::windows::runtime::RuntimeType for EmailMailboxCapabilities {
2260     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.ApplicationModel.Email.EmailMailboxCapabilities;{eedec3a6-89db-4305-82c4-439e0a33da11})");
2261 }
2262 unsafe impl ::windows::runtime::Interface for EmailMailboxCapabilities {
2263     type Vtable = IEmailMailboxCapabilities_abi;
2264     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4007576486, 35291, 17157, [130, 196, 67, 158, 10, 51, 218, 17]);
2265 }
2266 impl ::windows::runtime::RuntimeName for EmailMailboxCapabilities {
2267     const NAME: &'static str = "Windows.ApplicationModel.Email.EmailMailboxCapabilities";
2268 }
2269 impl ::std::convert::From<EmailMailboxCapabilities> for ::windows::runtime::IUnknown {
from(value: EmailMailboxCapabilities) -> Self2270     fn from(value: EmailMailboxCapabilities) -> Self {
2271         unsafe { ::std::mem::transmute(value) }
2272     }
2273 }
2274 impl ::std::convert::From<&EmailMailboxCapabilities> for ::windows::runtime::IUnknown {
from(value: &EmailMailboxCapabilities) -> Self2275     fn from(value: &EmailMailboxCapabilities) -> Self {
2276         ::std::convert::From::from(::std::clone::Clone::clone(value))
2277     }
2278 }
2279 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EmailMailboxCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2280     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2281         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2282     }
2283 }
2284 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EmailMailboxCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2285     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2286         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2287     }
2288 }
2289 impl ::std::convert::From<EmailMailboxCapabilities> for ::windows::runtime::IInspectable {
from(value: EmailMailboxCapabilities) -> Self2290     fn from(value: EmailMailboxCapabilities) -> Self {
2291         value.0
2292     }
2293 }
2294 impl ::std::convert::From<&EmailMailboxCapabilities> for ::windows::runtime::IInspectable {
from(value: &EmailMailboxCapabilities) -> Self2295     fn from(value: &EmailMailboxCapabilities) -> Self {
2296         value.0.clone()
2297     }
2298 }
2299 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EmailMailboxCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2300     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2301         ::windows::runtime::Param::Owned(self.0)
2302     }
2303 }
2304 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EmailMailboxCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2305     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2306         ::windows::runtime::Param::Borrowed(&self.0)
2307     }
2308 }
2309 unsafe impl ::std::marker::Send for EmailMailboxCapabilities {}
2310 unsafe impl ::std::marker::Sync for EmailMailboxCapabilities {}
2311 #[repr(transparent)]
2312 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2313 pub struct EmailMailboxChange(::windows::runtime::IInspectable);
2314 impl EmailMailboxChange {
ChangeType(&self) -> ::windows::runtime::Result<EmailMailboxChangeType>2315     pub fn ChangeType(&self) -> ::windows::runtime::Result<EmailMailboxChangeType> {
2316         let this = self;
2317         unsafe {
2318             let mut result__: EmailMailboxChangeType = ::std::mem::zeroed();
2319             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailMailboxChangeType>(result__)
2320         }
2321     }
2322     #[cfg(feature = "Foundation_Collections")]
MailboxActions(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<EmailMailboxAction>>2323     pub fn MailboxActions(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<EmailMailboxAction>> {
2324         let this = self;
2325         unsafe {
2326             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2327             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<EmailMailboxAction>>(result__)
2328         }
2329     }
Message(&self) -> ::windows::runtime::Result<EmailMessage>2330     pub fn Message(&self) -> ::windows::runtime::Result<EmailMessage> {
2331         let this = self;
2332         unsafe {
2333             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2334             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailMessage>(result__)
2335         }
2336     }
Folder(&self) -> ::windows::runtime::Result<EmailFolder>2337     pub fn Folder(&self) -> ::windows::runtime::Result<EmailFolder> {
2338         let this = self;
2339         unsafe {
2340             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2341             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailFolder>(result__)
2342         }
2343     }
2344 }
2345 unsafe impl ::windows::runtime::RuntimeType for EmailMailboxChange {
2346     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.ApplicationModel.Email.EmailMailboxChange;{61edf54b-11ef-400c-adde-8cde65c85e66})");
2347 }
2348 unsafe impl ::windows::runtime::Interface for EmailMailboxChange {
2349     type Vtable = IEmailMailboxChange_abi;
2350     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1642984779, 4591, 16396, [173, 222, 140, 222, 101, 200, 94, 102]);
2351 }
2352 impl ::windows::runtime::RuntimeName for EmailMailboxChange {
2353     const NAME: &'static str = "Windows.ApplicationModel.Email.EmailMailboxChange";
2354 }
2355 impl ::std::convert::From<EmailMailboxChange> for ::windows::runtime::IUnknown {
from(value: EmailMailboxChange) -> Self2356     fn from(value: EmailMailboxChange) -> Self {
2357         unsafe { ::std::mem::transmute(value) }
2358     }
2359 }
2360 impl ::std::convert::From<&EmailMailboxChange> for ::windows::runtime::IUnknown {
from(value: &EmailMailboxChange) -> Self2361     fn from(value: &EmailMailboxChange) -> Self {
2362         ::std::convert::From::from(::std::clone::Clone::clone(value))
2363     }
2364 }
2365 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EmailMailboxChange {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2366     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2367         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2368     }
2369 }
2370 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EmailMailboxChange {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2371     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2372         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2373     }
2374 }
2375 impl ::std::convert::From<EmailMailboxChange> for ::windows::runtime::IInspectable {
from(value: EmailMailboxChange) -> Self2376     fn from(value: EmailMailboxChange) -> Self {
2377         value.0
2378     }
2379 }
2380 impl ::std::convert::From<&EmailMailboxChange> for ::windows::runtime::IInspectable {
from(value: &EmailMailboxChange) -> Self2381     fn from(value: &EmailMailboxChange) -> Self {
2382         value.0.clone()
2383     }
2384 }
2385 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EmailMailboxChange {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2386     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2387         ::windows::runtime::Param::Owned(self.0)
2388     }
2389 }
2390 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EmailMailboxChange {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2391     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2392         ::windows::runtime::Param::Borrowed(&self.0)
2393     }
2394 }
2395 unsafe impl ::std::marker::Send for EmailMailboxChange {}
2396 unsafe impl ::std::marker::Sync for EmailMailboxChange {}
2397 #[repr(transparent)]
2398 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2399 pub struct EmailMailboxChangeReader(::windows::runtime::IInspectable);
2400 impl EmailMailboxChangeReader {
AcceptChanges(&self) -> ::windows::runtime::Result<()>2401     pub fn AcceptChanges(&self) -> ::windows::runtime::Result<()> {
2402         let this = self;
2403         unsafe { (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this)).ok() }
2404     }
AcceptChangesThrough<'a, Param0: ::windows::runtime::IntoParam<'a, EmailMailboxChange>>(&self, lastchangetoacknowledge: Param0) -> ::windows::runtime::Result<()>2405     pub fn AcceptChangesThrough<'a, Param0: ::windows::runtime::IntoParam<'a, EmailMailboxChange>>(&self, lastchangetoacknowledge: Param0) -> ::windows::runtime::Result<()> {
2406         let this = self;
2407         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), lastchangetoacknowledge.into_param().abi()).ok() }
2408     }
2409     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
ReadBatchAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<EmailMailboxChange>>>2410     pub fn ReadBatchAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<EmailMailboxChange>>> {
2411         let this = self;
2412         unsafe {
2413             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2414             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<EmailMailboxChange>>>(result__)
2415         }
2416     }
2417 }
2418 unsafe impl ::windows::runtime::RuntimeType for EmailMailboxChangeReader {
2419     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.ApplicationModel.Email.EmailMailboxChangeReader;{bdbd0ebb-c53d-4331-97be-be75a2146a75})");
2420 }
2421 unsafe impl ::windows::runtime::Interface for EmailMailboxChangeReader {
2422     type Vtable = IEmailMailboxChangeReader_abi;
2423     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3183283899, 50493, 17201, [151, 190, 190, 117, 162, 20, 106, 117]);
2424 }
2425 impl ::windows::runtime::RuntimeName for EmailMailboxChangeReader {
2426     const NAME: &'static str = "Windows.ApplicationModel.Email.EmailMailboxChangeReader";
2427 }
2428 impl ::std::convert::From<EmailMailboxChangeReader> for ::windows::runtime::IUnknown {
from(value: EmailMailboxChangeReader) -> Self2429     fn from(value: EmailMailboxChangeReader) -> Self {
2430         unsafe { ::std::mem::transmute(value) }
2431     }
2432 }
2433 impl ::std::convert::From<&EmailMailboxChangeReader> for ::windows::runtime::IUnknown {
from(value: &EmailMailboxChangeReader) -> Self2434     fn from(value: &EmailMailboxChangeReader) -> Self {
2435         ::std::convert::From::from(::std::clone::Clone::clone(value))
2436     }
2437 }
2438 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EmailMailboxChangeReader {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2439     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2440         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2441     }
2442 }
2443 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EmailMailboxChangeReader {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2444     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2445         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2446     }
2447 }
2448 impl ::std::convert::From<EmailMailboxChangeReader> for ::windows::runtime::IInspectable {
from(value: EmailMailboxChangeReader) -> Self2449     fn from(value: EmailMailboxChangeReader) -> Self {
2450         value.0
2451     }
2452 }
2453 impl ::std::convert::From<&EmailMailboxChangeReader> for ::windows::runtime::IInspectable {
from(value: &EmailMailboxChangeReader) -> Self2454     fn from(value: &EmailMailboxChangeReader) -> Self {
2455         value.0.clone()
2456     }
2457 }
2458 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EmailMailboxChangeReader {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2459     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2460         ::windows::runtime::Param::Owned(self.0)
2461     }
2462 }
2463 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EmailMailboxChangeReader {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2464     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2465         ::windows::runtime::Param::Borrowed(&self.0)
2466     }
2467 }
2468 unsafe impl ::std::marker::Send for EmailMailboxChangeReader {}
2469 unsafe impl ::std::marker::Sync for EmailMailboxChangeReader {}
2470 #[repr(transparent)]
2471 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2472 pub struct EmailMailboxChangeTracker(::windows::runtime::IInspectable);
2473 impl EmailMailboxChangeTracker {
IsTracking(&self) -> ::windows::runtime::Result<bool>2474     pub fn IsTracking(&self) -> ::windows::runtime::Result<bool> {
2475         let this = self;
2476         unsafe {
2477             let mut result__: bool = ::std::mem::zeroed();
2478             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
2479         }
2480     }
Enable(&self) -> ::windows::runtime::Result<()>2481     pub fn Enable(&self) -> ::windows::runtime::Result<()> {
2482         let this = self;
2483         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this)).ok() }
2484     }
GetChangeReader(&self) -> ::windows::runtime::Result<EmailMailboxChangeReader>2485     pub fn GetChangeReader(&self) -> ::windows::runtime::Result<EmailMailboxChangeReader> {
2486         let this = self;
2487         unsafe {
2488             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2489             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailMailboxChangeReader>(result__)
2490         }
2491     }
Reset(&self) -> ::windows::runtime::Result<()>2492     pub fn Reset(&self) -> ::windows::runtime::Result<()> {
2493         let this = self;
2494         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this)).ok() }
2495     }
2496 }
2497 unsafe impl ::windows::runtime::RuntimeType for EmailMailboxChangeTracker {
2498     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.ApplicationModel.Email.EmailMailboxChangeTracker;{7ae48638-5166-42b7-8882-fd21c92bdd4b})");
2499 }
2500 unsafe impl ::windows::runtime::Interface for EmailMailboxChangeTracker {
2501     type Vtable = IEmailMailboxChangeTracker_abi;
2502     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2061796920, 20838, 17079, [136, 130, 253, 33, 201, 43, 221, 75]);
2503 }
2504 impl ::windows::runtime::RuntimeName for EmailMailboxChangeTracker {
2505     const NAME: &'static str = "Windows.ApplicationModel.Email.EmailMailboxChangeTracker";
2506 }
2507 impl ::std::convert::From<EmailMailboxChangeTracker> for ::windows::runtime::IUnknown {
from(value: EmailMailboxChangeTracker) -> Self2508     fn from(value: EmailMailboxChangeTracker) -> Self {
2509         unsafe { ::std::mem::transmute(value) }
2510     }
2511 }
2512 impl ::std::convert::From<&EmailMailboxChangeTracker> for ::windows::runtime::IUnknown {
from(value: &EmailMailboxChangeTracker) -> Self2513     fn from(value: &EmailMailboxChangeTracker) -> Self {
2514         ::std::convert::From::from(::std::clone::Clone::clone(value))
2515     }
2516 }
2517 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EmailMailboxChangeTracker {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2518     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2519         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2520     }
2521 }
2522 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EmailMailboxChangeTracker {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2523     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2524         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2525     }
2526 }
2527 impl ::std::convert::From<EmailMailboxChangeTracker> for ::windows::runtime::IInspectable {
from(value: EmailMailboxChangeTracker) -> Self2528     fn from(value: EmailMailboxChangeTracker) -> Self {
2529         value.0
2530     }
2531 }
2532 impl ::std::convert::From<&EmailMailboxChangeTracker> for ::windows::runtime::IInspectable {
from(value: &EmailMailboxChangeTracker) -> Self2533     fn from(value: &EmailMailboxChangeTracker) -> Self {
2534         value.0.clone()
2535     }
2536 }
2537 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EmailMailboxChangeTracker {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2538     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2539         ::windows::runtime::Param::Owned(self.0)
2540     }
2541 }
2542 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EmailMailboxChangeTracker {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2543     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2544         ::windows::runtime::Param::Borrowed(&self.0)
2545     }
2546 }
2547 unsafe impl ::std::marker::Send for EmailMailboxChangeTracker {}
2548 unsafe impl ::std::marker::Sync for EmailMailboxChangeTracker {}
2549 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2550 #[repr(transparent)]
2551 pub struct EmailMailboxChangeType(pub i32);
2552 impl EmailMailboxChangeType {
2553     pub const MessageCreated: EmailMailboxChangeType = EmailMailboxChangeType(0i32);
2554     pub const MessageModified: EmailMailboxChangeType = EmailMailboxChangeType(1i32);
2555     pub const MessageDeleted: EmailMailboxChangeType = EmailMailboxChangeType(2i32);
2556     pub const FolderCreated: EmailMailboxChangeType = EmailMailboxChangeType(3i32);
2557     pub const FolderModified: EmailMailboxChangeType = EmailMailboxChangeType(4i32);
2558     pub const FolderDeleted: EmailMailboxChangeType = EmailMailboxChangeType(5i32);
2559     pub const ChangeTrackingLost: EmailMailboxChangeType = EmailMailboxChangeType(6i32);
2560 }
2561 impl ::std::convert::From<i32> for EmailMailboxChangeType {
from(value: i32) -> Self2562     fn from(value: i32) -> Self {
2563         Self(value)
2564     }
2565 }
2566 unsafe impl ::windows::runtime::Abi for EmailMailboxChangeType {
2567     type Abi = Self;
2568     type DefaultType = Self;
2569 }
2570 unsafe impl ::windows::runtime::RuntimeType for EmailMailboxChangeType {
2571     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.ApplicationModel.Email.EmailMailboxChangeType;i4)");
2572 }
2573 #[repr(transparent)]
2574 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2575 pub struct EmailMailboxChangedDeferral(::windows::runtime::IInspectable);
2576 impl EmailMailboxChangedDeferral {
Complete(&self) -> ::windows::runtime::Result<()>2577     pub fn Complete(&self) -> ::windows::runtime::Result<()> {
2578         let this = self;
2579         unsafe { (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this)).ok() }
2580     }
2581 }
2582 unsafe impl ::windows::runtime::RuntimeType for EmailMailboxChangedDeferral {
2583     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.ApplicationModel.Email.EmailMailboxChangedDeferral;{779a74c1-97c5-4b54-b30d-306232623e6d})");
2584 }
2585 unsafe impl ::windows::runtime::Interface for EmailMailboxChangedDeferral {
2586     type Vtable = IEmailMailboxChangedDeferral_abi;
2587     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2006611137, 38853, 19284, [179, 13, 48, 98, 50, 98, 62, 109]);
2588 }
2589 impl ::windows::runtime::RuntimeName for EmailMailboxChangedDeferral {
2590     const NAME: &'static str = "Windows.ApplicationModel.Email.EmailMailboxChangedDeferral";
2591 }
2592 impl ::std::convert::From<EmailMailboxChangedDeferral> for ::windows::runtime::IUnknown {
from(value: EmailMailboxChangedDeferral) -> Self2593     fn from(value: EmailMailboxChangedDeferral) -> Self {
2594         unsafe { ::std::mem::transmute(value) }
2595     }
2596 }
2597 impl ::std::convert::From<&EmailMailboxChangedDeferral> for ::windows::runtime::IUnknown {
from(value: &EmailMailboxChangedDeferral) -> Self2598     fn from(value: &EmailMailboxChangedDeferral) -> Self {
2599         ::std::convert::From::from(::std::clone::Clone::clone(value))
2600     }
2601 }
2602 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EmailMailboxChangedDeferral {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2603     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2604         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2605     }
2606 }
2607 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EmailMailboxChangedDeferral {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2608     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2609         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2610     }
2611 }
2612 impl ::std::convert::From<EmailMailboxChangedDeferral> for ::windows::runtime::IInspectable {
from(value: EmailMailboxChangedDeferral) -> Self2613     fn from(value: EmailMailboxChangedDeferral) -> Self {
2614         value.0
2615     }
2616 }
2617 impl ::std::convert::From<&EmailMailboxChangedDeferral> for ::windows::runtime::IInspectable {
from(value: &EmailMailboxChangedDeferral) -> Self2618     fn from(value: &EmailMailboxChangedDeferral) -> Self {
2619         value.0.clone()
2620     }
2621 }
2622 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EmailMailboxChangedDeferral {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2623     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2624         ::windows::runtime::Param::Owned(self.0)
2625     }
2626 }
2627 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EmailMailboxChangedDeferral {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2628     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2629         ::windows::runtime::Param::Borrowed(&self.0)
2630     }
2631 }
2632 unsafe impl ::std::marker::Send for EmailMailboxChangedDeferral {}
2633 unsafe impl ::std::marker::Sync for EmailMailboxChangedDeferral {}
2634 #[repr(transparent)]
2635 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2636 pub struct EmailMailboxChangedEventArgs(::windows::runtime::IInspectable);
2637 impl EmailMailboxChangedEventArgs {
GetDeferral(&self) -> ::windows::runtime::Result<EmailMailboxChangedDeferral>2638     pub fn GetDeferral(&self) -> ::windows::runtime::Result<EmailMailboxChangedDeferral> {
2639         let this = self;
2640         unsafe {
2641             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2642             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailMailboxChangedDeferral>(result__)
2643         }
2644     }
2645 }
2646 unsafe impl ::windows::runtime::RuntimeType for EmailMailboxChangedEventArgs {
2647     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.ApplicationModel.Email.EmailMailboxChangedEventArgs;{3cfd5f6e-01d4-4e4a-a44c-b22dd42ec207})");
2648 }
2649 unsafe impl ::windows::runtime::Interface for EmailMailboxChangedEventArgs {
2650     type Vtable = IEmailMailboxChangedEventArgs_abi;
2651     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1023237998, 468, 20042, [164, 76, 178, 45, 212, 46, 194, 7]);
2652 }
2653 impl ::windows::runtime::RuntimeName for EmailMailboxChangedEventArgs {
2654     const NAME: &'static str = "Windows.ApplicationModel.Email.EmailMailboxChangedEventArgs";
2655 }
2656 impl ::std::convert::From<EmailMailboxChangedEventArgs> for ::windows::runtime::IUnknown {
from(value: EmailMailboxChangedEventArgs) -> Self2657     fn from(value: EmailMailboxChangedEventArgs) -> Self {
2658         unsafe { ::std::mem::transmute(value) }
2659     }
2660 }
2661 impl ::std::convert::From<&EmailMailboxChangedEventArgs> for ::windows::runtime::IUnknown {
from(value: &EmailMailboxChangedEventArgs) -> Self2662     fn from(value: &EmailMailboxChangedEventArgs) -> Self {
2663         ::std::convert::From::from(::std::clone::Clone::clone(value))
2664     }
2665 }
2666 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EmailMailboxChangedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2667     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2668         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2669     }
2670 }
2671 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EmailMailboxChangedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2672     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2673         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2674     }
2675 }
2676 impl ::std::convert::From<EmailMailboxChangedEventArgs> for ::windows::runtime::IInspectable {
from(value: EmailMailboxChangedEventArgs) -> Self2677     fn from(value: EmailMailboxChangedEventArgs) -> Self {
2678         value.0
2679     }
2680 }
2681 impl ::std::convert::From<&EmailMailboxChangedEventArgs> for ::windows::runtime::IInspectable {
from(value: &EmailMailboxChangedEventArgs) -> Self2682     fn from(value: &EmailMailboxChangedEventArgs) -> Self {
2683         value.0.clone()
2684     }
2685 }
2686 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EmailMailboxChangedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2687     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2688         ::windows::runtime::Param::Owned(self.0)
2689     }
2690 }
2691 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EmailMailboxChangedEventArgs {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2692     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2693         ::windows::runtime::Param::Borrowed(&self.0)
2694     }
2695 }
2696 unsafe impl ::std::marker::Send for EmailMailboxChangedEventArgs {}
2697 unsafe impl ::std::marker::Sync for EmailMailboxChangedEventArgs {}
2698 #[repr(transparent)]
2699 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2700 pub struct EmailMailboxCreateFolderResult(::windows::runtime::IInspectable);
2701 impl EmailMailboxCreateFolderResult {
Status(&self) -> ::windows::runtime::Result<EmailMailboxCreateFolderStatus>2702     pub fn Status(&self) -> ::windows::runtime::Result<EmailMailboxCreateFolderStatus> {
2703         let this = self;
2704         unsafe {
2705             let mut result__: EmailMailboxCreateFolderStatus = ::std::mem::zeroed();
2706             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailMailboxCreateFolderStatus>(result__)
2707         }
2708     }
Folder(&self) -> ::windows::runtime::Result<EmailFolder>2709     pub fn Folder(&self) -> ::windows::runtime::Result<EmailFolder> {
2710         let this = self;
2711         unsafe {
2712             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2713             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailFolder>(result__)
2714         }
2715     }
2716 }
2717 unsafe impl ::windows::runtime::RuntimeType for EmailMailboxCreateFolderResult {
2718     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.ApplicationModel.Email.EmailMailboxCreateFolderResult;{b228557f-2885-4998-b595-8a2d374ce950})");
2719 }
2720 unsafe impl ::windows::runtime::Interface for EmailMailboxCreateFolderResult {
2721     type Vtable = IEmailMailboxCreateFolderResult_abi;
2722     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2988987775, 10373, 18840, [181, 149, 138, 45, 55, 76, 233, 80]);
2723 }
2724 impl ::windows::runtime::RuntimeName for EmailMailboxCreateFolderResult {
2725     const NAME: &'static str = "Windows.ApplicationModel.Email.EmailMailboxCreateFolderResult";
2726 }
2727 impl ::std::convert::From<EmailMailboxCreateFolderResult> for ::windows::runtime::IUnknown {
from(value: EmailMailboxCreateFolderResult) -> Self2728     fn from(value: EmailMailboxCreateFolderResult) -> Self {
2729         unsafe { ::std::mem::transmute(value) }
2730     }
2731 }
2732 impl ::std::convert::From<&EmailMailboxCreateFolderResult> for ::windows::runtime::IUnknown {
from(value: &EmailMailboxCreateFolderResult) -> Self2733     fn from(value: &EmailMailboxCreateFolderResult) -> Self {
2734         ::std::convert::From::from(::std::clone::Clone::clone(value))
2735     }
2736 }
2737 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EmailMailboxCreateFolderResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2738     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2739         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2740     }
2741 }
2742 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EmailMailboxCreateFolderResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2743     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2744         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2745     }
2746 }
2747 impl ::std::convert::From<EmailMailboxCreateFolderResult> for ::windows::runtime::IInspectable {
from(value: EmailMailboxCreateFolderResult) -> Self2748     fn from(value: EmailMailboxCreateFolderResult) -> Self {
2749         value.0
2750     }
2751 }
2752 impl ::std::convert::From<&EmailMailboxCreateFolderResult> for ::windows::runtime::IInspectable {
from(value: &EmailMailboxCreateFolderResult) -> Self2753     fn from(value: &EmailMailboxCreateFolderResult) -> Self {
2754         value.0.clone()
2755     }
2756 }
2757 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EmailMailboxCreateFolderResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2758     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2759         ::windows::runtime::Param::Owned(self.0)
2760     }
2761 }
2762 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EmailMailboxCreateFolderResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2763     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2764         ::windows::runtime::Param::Borrowed(&self.0)
2765     }
2766 }
2767 unsafe impl ::std::marker::Send for EmailMailboxCreateFolderResult {}
2768 unsafe impl ::std::marker::Sync for EmailMailboxCreateFolderResult {}
2769 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2770 #[repr(transparent)]
2771 pub struct EmailMailboxCreateFolderStatus(pub i32);
2772 impl EmailMailboxCreateFolderStatus {
2773     pub const Success: EmailMailboxCreateFolderStatus = EmailMailboxCreateFolderStatus(0i32);
2774     pub const NetworkError: EmailMailboxCreateFolderStatus = EmailMailboxCreateFolderStatus(1i32);
2775     pub const PermissionsError: EmailMailboxCreateFolderStatus = EmailMailboxCreateFolderStatus(2i32);
2776     pub const ServerError: EmailMailboxCreateFolderStatus = EmailMailboxCreateFolderStatus(3i32);
2777     pub const UnknownFailure: EmailMailboxCreateFolderStatus = EmailMailboxCreateFolderStatus(4i32);
2778     pub const NameCollision: EmailMailboxCreateFolderStatus = EmailMailboxCreateFolderStatus(5i32);
2779     pub const ServerRejected: EmailMailboxCreateFolderStatus = EmailMailboxCreateFolderStatus(6i32);
2780 }
2781 impl ::std::convert::From<i32> for EmailMailboxCreateFolderStatus {
from(value: i32) -> Self2782     fn from(value: i32) -> Self {
2783         Self(value)
2784     }
2785 }
2786 unsafe impl ::windows::runtime::Abi for EmailMailboxCreateFolderStatus {
2787     type Abi = Self;
2788     type DefaultType = Self;
2789 }
2790 unsafe impl ::windows::runtime::RuntimeType for EmailMailboxCreateFolderStatus {
2791     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.ApplicationModel.Email.EmailMailboxCreateFolderStatus;i4)");
2792 }
2793 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2794 #[repr(transparent)]
2795 pub struct EmailMailboxDeleteFolderStatus(pub i32);
2796 impl EmailMailboxDeleteFolderStatus {
2797     pub const Success: EmailMailboxDeleteFolderStatus = EmailMailboxDeleteFolderStatus(0i32);
2798     pub const NetworkError: EmailMailboxDeleteFolderStatus = EmailMailboxDeleteFolderStatus(1i32);
2799     pub const PermissionsError: EmailMailboxDeleteFolderStatus = EmailMailboxDeleteFolderStatus(2i32);
2800     pub const ServerError: EmailMailboxDeleteFolderStatus = EmailMailboxDeleteFolderStatus(3i32);
2801     pub const UnknownFailure: EmailMailboxDeleteFolderStatus = EmailMailboxDeleteFolderStatus(4i32);
2802     pub const CouldNotDeleteEverything: EmailMailboxDeleteFolderStatus = EmailMailboxDeleteFolderStatus(5i32);
2803 }
2804 impl ::std::convert::From<i32> for EmailMailboxDeleteFolderStatus {
from(value: i32) -> Self2805     fn from(value: i32) -> Self {
2806         Self(value)
2807     }
2808 }
2809 unsafe impl ::windows::runtime::Abi for EmailMailboxDeleteFolderStatus {
2810     type Abi = Self;
2811     type DefaultType = Self;
2812 }
2813 unsafe impl ::windows::runtime::RuntimeType for EmailMailboxDeleteFolderStatus {
2814     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.ApplicationModel.Email.EmailMailboxDeleteFolderStatus;i4)");
2815 }
2816 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2817 #[repr(transparent)]
2818 pub struct EmailMailboxEmptyFolderStatus(pub i32);
2819 impl EmailMailboxEmptyFolderStatus {
2820     pub const Success: EmailMailboxEmptyFolderStatus = EmailMailboxEmptyFolderStatus(0i32);
2821     pub const NetworkError: EmailMailboxEmptyFolderStatus = EmailMailboxEmptyFolderStatus(1i32);
2822     pub const PermissionsError: EmailMailboxEmptyFolderStatus = EmailMailboxEmptyFolderStatus(2i32);
2823     pub const ServerError: EmailMailboxEmptyFolderStatus = EmailMailboxEmptyFolderStatus(3i32);
2824     pub const UnknownFailure: EmailMailboxEmptyFolderStatus = EmailMailboxEmptyFolderStatus(4i32);
2825     pub const CouldNotDeleteEverything: EmailMailboxEmptyFolderStatus = EmailMailboxEmptyFolderStatus(5i32);
2826 }
2827 impl ::std::convert::From<i32> for EmailMailboxEmptyFolderStatus {
from(value: i32) -> Self2828     fn from(value: i32) -> Self {
2829         Self(value)
2830     }
2831 }
2832 unsafe impl ::windows::runtime::Abi for EmailMailboxEmptyFolderStatus {
2833     type Abi = Self;
2834     type DefaultType = Self;
2835 }
2836 unsafe impl ::windows::runtime::RuntimeType for EmailMailboxEmptyFolderStatus {
2837     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.ApplicationModel.Email.EmailMailboxEmptyFolderStatus;i4)");
2838 }
2839 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2840 #[repr(transparent)]
2841 pub struct EmailMailboxOtherAppReadAccess(pub i32);
2842 impl EmailMailboxOtherAppReadAccess {
2843     pub const SystemOnly: EmailMailboxOtherAppReadAccess = EmailMailboxOtherAppReadAccess(0i32);
2844     pub const Full: EmailMailboxOtherAppReadAccess = EmailMailboxOtherAppReadAccess(1i32);
2845     pub const None: EmailMailboxOtherAppReadAccess = EmailMailboxOtherAppReadAccess(2i32);
2846 }
2847 impl ::std::convert::From<i32> for EmailMailboxOtherAppReadAccess {
from(value: i32) -> Self2848     fn from(value: i32) -> Self {
2849         Self(value)
2850     }
2851 }
2852 unsafe impl ::windows::runtime::Abi for EmailMailboxOtherAppReadAccess {
2853     type Abi = Self;
2854     type DefaultType = Self;
2855 }
2856 unsafe impl ::windows::runtime::RuntimeType for EmailMailboxOtherAppReadAccess {
2857     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.ApplicationModel.Email.EmailMailboxOtherAppReadAccess;i4)");
2858 }
2859 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2860 #[repr(transparent)]
2861 pub struct EmailMailboxOtherAppWriteAccess(pub i32);
2862 impl EmailMailboxOtherAppWriteAccess {
2863     pub const None: EmailMailboxOtherAppWriteAccess = EmailMailboxOtherAppWriteAccess(0i32);
2864     pub const Limited: EmailMailboxOtherAppWriteAccess = EmailMailboxOtherAppWriteAccess(1i32);
2865 }
2866 impl ::std::convert::From<i32> for EmailMailboxOtherAppWriteAccess {
from(value: i32) -> Self2867     fn from(value: i32) -> Self {
2868         Self(value)
2869     }
2870 }
2871 unsafe impl ::windows::runtime::Abi for EmailMailboxOtherAppWriteAccess {
2872     type Abi = Self;
2873     type DefaultType = Self;
2874 }
2875 unsafe impl ::windows::runtime::RuntimeType for EmailMailboxOtherAppWriteAccess {
2876     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.ApplicationModel.Email.EmailMailboxOtherAppWriteAccess;i4)");
2877 }
2878 #[repr(transparent)]
2879 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2880 pub struct EmailMailboxPolicies(::windows::runtime::IInspectable);
2881 impl EmailMailboxPolicies {
AllowedSmimeEncryptionAlgorithmNegotiation(&self) -> ::windows::runtime::Result<EmailMailboxAllowedSmimeEncryptionAlgorithmNegotiation>2882     pub fn AllowedSmimeEncryptionAlgorithmNegotiation(&self) -> ::windows::runtime::Result<EmailMailboxAllowedSmimeEncryptionAlgorithmNegotiation> {
2883         let this = self;
2884         unsafe {
2885             let mut result__: EmailMailboxAllowedSmimeEncryptionAlgorithmNegotiation = ::std::mem::zeroed();
2886             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailMailboxAllowedSmimeEncryptionAlgorithmNegotiation>(result__)
2887         }
2888     }
AllowSmimeSoftCertificates(&self) -> ::windows::runtime::Result<bool>2889     pub fn AllowSmimeSoftCertificates(&self) -> ::windows::runtime::Result<bool> {
2890         let this = self;
2891         unsafe {
2892             let mut result__: bool = ::std::mem::zeroed();
2893             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
2894         }
2895     }
2896     #[cfg(feature = "Foundation")]
RequiredSmimeEncryptionAlgorithm(&self) -> ::windows::runtime::Result<super::super::Foundation::IReference<EmailMailboxSmimeEncryptionAlgorithm>>2897     pub fn RequiredSmimeEncryptionAlgorithm(&self) -> ::windows::runtime::Result<super::super::Foundation::IReference<EmailMailboxSmimeEncryptionAlgorithm>> {
2898         let this = self;
2899         unsafe {
2900             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2901             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IReference<EmailMailboxSmimeEncryptionAlgorithm>>(result__)
2902         }
2903     }
2904     #[cfg(feature = "Foundation")]
RequiredSmimeSigningAlgorithm(&self) -> ::windows::runtime::Result<super::super::Foundation::IReference<EmailMailboxSmimeSigningAlgorithm>>2905     pub fn RequiredSmimeSigningAlgorithm(&self) -> ::windows::runtime::Result<super::super::Foundation::IReference<EmailMailboxSmimeSigningAlgorithm>> {
2906         let this = self;
2907         unsafe {
2908             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
2909             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IReference<EmailMailboxSmimeSigningAlgorithm>>(result__)
2910         }
2911     }
MustEncryptSmimeMessages(&self) -> ::windows::runtime::Result<bool>2912     pub fn MustEncryptSmimeMessages(&self) -> ::windows::runtime::Result<bool> {
2913         let this = &::windows::runtime::Interface::cast::<IEmailMailboxPolicies2>(self)?;
2914         unsafe {
2915             let mut result__: bool = ::std::mem::zeroed();
2916             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
2917         }
2918     }
MustSignSmimeMessages(&self) -> ::windows::runtime::Result<bool>2919     pub fn MustSignSmimeMessages(&self) -> ::windows::runtime::Result<bool> {
2920         let this = &::windows::runtime::Interface::cast::<IEmailMailboxPolicies2>(self)?;
2921         unsafe {
2922             let mut result__: bool = ::std::mem::zeroed();
2923             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
2924         }
2925     }
SetAllowedSmimeEncryptionAlgorithmNegotiation(&self, value: EmailMailboxAllowedSmimeEncryptionAlgorithmNegotiation) -> ::windows::runtime::Result<()>2926     pub fn SetAllowedSmimeEncryptionAlgorithmNegotiation(&self, value: EmailMailboxAllowedSmimeEncryptionAlgorithmNegotiation) -> ::windows::runtime::Result<()> {
2927         let this = &::windows::runtime::Interface::cast::<IEmailMailboxPolicies3>(self)?;
2928         unsafe { (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), value).ok() }
2929     }
SetAllowSmimeSoftCertificates(&self, value: bool) -> ::windows::runtime::Result<()>2930     pub fn SetAllowSmimeSoftCertificates(&self, value: bool) -> ::windows::runtime::Result<()> {
2931         let this = &::windows::runtime::Interface::cast::<IEmailMailboxPolicies3>(self)?;
2932         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
2933     }
2934     #[cfg(feature = "Foundation")]
SetRequiredSmimeEncryptionAlgorithm<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::IReference<EmailMailboxSmimeEncryptionAlgorithm>>>(&self, value: Param0) -> ::windows::runtime::Result<()>2935     pub fn SetRequiredSmimeEncryptionAlgorithm<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::IReference<EmailMailboxSmimeEncryptionAlgorithm>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
2936         let this = &::windows::runtime::Interface::cast::<IEmailMailboxPolicies3>(self)?;
2937         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
2938     }
2939     #[cfg(feature = "Foundation")]
SetRequiredSmimeSigningAlgorithm<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::IReference<EmailMailboxSmimeSigningAlgorithm>>>(&self, value: Param0) -> ::windows::runtime::Result<()>2940     pub fn SetRequiredSmimeSigningAlgorithm<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::IReference<EmailMailboxSmimeSigningAlgorithm>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
2941         let this = &::windows::runtime::Interface::cast::<IEmailMailboxPolicies3>(self)?;
2942         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
2943     }
SetMustEncryptSmimeMessages(&self, value: bool) -> ::windows::runtime::Result<()>2944     pub fn SetMustEncryptSmimeMessages(&self, value: bool) -> ::windows::runtime::Result<()> {
2945         let this = &::windows::runtime::Interface::cast::<IEmailMailboxPolicies3>(self)?;
2946         unsafe { (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), value).ok() }
2947     }
SetMustSignSmimeMessages(&self, value: bool) -> ::windows::runtime::Result<()>2948     pub fn SetMustSignSmimeMessages(&self, value: bool) -> ::windows::runtime::Result<()> {
2949         let this = &::windows::runtime::Interface::cast::<IEmailMailboxPolicies3>(self)?;
2950         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value).ok() }
2951     }
2952 }
2953 unsafe impl ::windows::runtime::RuntimeType for EmailMailboxPolicies {
2954     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.ApplicationModel.Email.EmailMailboxPolicies;{1f3345c5-1c3b-4dc7-b410-6373783e545d})");
2955 }
2956 unsafe impl ::windows::runtime::Interface for EmailMailboxPolicies {
2957     type Vtable = IEmailMailboxPolicies_abi;
2958     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(523453893, 7227, 19911, [180, 16, 99, 115, 120, 62, 84, 93]);
2959 }
2960 impl ::windows::runtime::RuntimeName for EmailMailboxPolicies {
2961     const NAME: &'static str = "Windows.ApplicationModel.Email.EmailMailboxPolicies";
2962 }
2963 impl ::std::convert::From<EmailMailboxPolicies> for ::windows::runtime::IUnknown {
from(value: EmailMailboxPolicies) -> Self2964     fn from(value: EmailMailboxPolicies) -> Self {
2965         unsafe { ::std::mem::transmute(value) }
2966     }
2967 }
2968 impl ::std::convert::From<&EmailMailboxPolicies> for ::windows::runtime::IUnknown {
from(value: &EmailMailboxPolicies) -> Self2969     fn from(value: &EmailMailboxPolicies) -> Self {
2970         ::std::convert::From::from(::std::clone::Clone::clone(value))
2971     }
2972 }
2973 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EmailMailboxPolicies {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2974     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2975         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2976     }
2977 }
2978 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EmailMailboxPolicies {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2979     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2980         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2981     }
2982 }
2983 impl ::std::convert::From<EmailMailboxPolicies> for ::windows::runtime::IInspectable {
from(value: EmailMailboxPolicies) -> Self2984     fn from(value: EmailMailboxPolicies) -> Self {
2985         value.0
2986     }
2987 }
2988 impl ::std::convert::From<&EmailMailboxPolicies> for ::windows::runtime::IInspectable {
from(value: &EmailMailboxPolicies) -> Self2989     fn from(value: &EmailMailboxPolicies) -> Self {
2990         value.0.clone()
2991     }
2992 }
2993 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EmailMailboxPolicies {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2994     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
2995         ::windows::runtime::Param::Owned(self.0)
2996     }
2997 }
2998 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EmailMailboxPolicies {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>2999     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3000         ::windows::runtime::Param::Borrowed(&self.0)
3001     }
3002 }
3003 unsafe impl ::std::marker::Send for EmailMailboxPolicies {}
3004 unsafe impl ::std::marker::Sync for EmailMailboxPolicies {}
3005 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3006 #[repr(transparent)]
3007 pub struct EmailMailboxSmimeEncryptionAlgorithm(pub i32);
3008 impl EmailMailboxSmimeEncryptionAlgorithm {
3009     pub const Any: EmailMailboxSmimeEncryptionAlgorithm = EmailMailboxSmimeEncryptionAlgorithm(0i32);
3010     pub const TripleDes: EmailMailboxSmimeEncryptionAlgorithm = EmailMailboxSmimeEncryptionAlgorithm(1i32);
3011     pub const Des: EmailMailboxSmimeEncryptionAlgorithm = EmailMailboxSmimeEncryptionAlgorithm(2i32);
3012     pub const RC2128Bit: EmailMailboxSmimeEncryptionAlgorithm = EmailMailboxSmimeEncryptionAlgorithm(3i32);
3013     pub const RC264Bit: EmailMailboxSmimeEncryptionAlgorithm = EmailMailboxSmimeEncryptionAlgorithm(4i32);
3014     pub const RC240Bit: EmailMailboxSmimeEncryptionAlgorithm = EmailMailboxSmimeEncryptionAlgorithm(5i32);
3015 }
3016 impl ::std::convert::From<i32> for EmailMailboxSmimeEncryptionAlgorithm {
from(value: i32) -> Self3017     fn from(value: i32) -> Self {
3018         Self(value)
3019     }
3020 }
3021 unsafe impl ::windows::runtime::Abi for EmailMailboxSmimeEncryptionAlgorithm {
3022     type Abi = Self;
3023     type DefaultType = Self;
3024 }
3025 unsafe impl ::windows::runtime::RuntimeType for EmailMailboxSmimeEncryptionAlgorithm {
3026     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.ApplicationModel.Email.EmailMailboxSmimeEncryptionAlgorithm;i4)");
3027 }
3028 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3029 #[repr(transparent)]
3030 pub struct EmailMailboxSmimeSigningAlgorithm(pub i32);
3031 impl EmailMailboxSmimeSigningAlgorithm {
3032     pub const Any: EmailMailboxSmimeSigningAlgorithm = EmailMailboxSmimeSigningAlgorithm(0i32);
3033     pub const Sha1: EmailMailboxSmimeSigningAlgorithm = EmailMailboxSmimeSigningAlgorithm(1i32);
3034     pub const MD5: EmailMailboxSmimeSigningAlgorithm = EmailMailboxSmimeSigningAlgorithm(2i32);
3035 }
3036 impl ::std::convert::From<i32> for EmailMailboxSmimeSigningAlgorithm {
from(value: i32) -> Self3037     fn from(value: i32) -> Self {
3038         Self(value)
3039     }
3040 }
3041 unsafe impl ::windows::runtime::Abi for EmailMailboxSmimeSigningAlgorithm {
3042     type Abi = Self;
3043     type DefaultType = Self;
3044 }
3045 unsafe impl ::windows::runtime::RuntimeType for EmailMailboxSmimeSigningAlgorithm {
3046     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.ApplicationModel.Email.EmailMailboxSmimeSigningAlgorithm;i4)");
3047 }
3048 #[repr(transparent)]
3049 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
3050 pub struct EmailMailboxSyncManager(::windows::runtime::IInspectable);
3051 impl EmailMailboxSyncManager {
Status(&self) -> ::windows::runtime::Result<EmailMailboxSyncStatus>3052     pub fn Status(&self) -> ::windows::runtime::Result<EmailMailboxSyncStatus> {
3053         let this = self;
3054         unsafe {
3055             let mut result__: EmailMailboxSyncStatus = ::std::mem::zeroed();
3056             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailMailboxSyncStatus>(result__)
3057         }
3058     }
3059     #[cfg(feature = "Foundation")]
LastSuccessfulSyncTime(&self) -> ::windows::runtime::Result<super::super::Foundation::DateTime>3060     pub fn LastSuccessfulSyncTime(&self) -> ::windows::runtime::Result<super::super::Foundation::DateTime> {
3061         let this = self;
3062         unsafe {
3063             let mut result__: super::super::Foundation::DateTime = ::std::mem::zeroed();
3064             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::DateTime>(result__)
3065         }
3066     }
3067     #[cfg(feature = "Foundation")]
LastAttemptedSyncTime(&self) -> ::windows::runtime::Result<super::super::Foundation::DateTime>3068     pub fn LastAttemptedSyncTime(&self) -> ::windows::runtime::Result<super::super::Foundation::DateTime> {
3069         let this = self;
3070         unsafe {
3071             let mut result__: super::super::Foundation::DateTime = ::std::mem::zeroed();
3072             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::DateTime>(result__)
3073         }
3074     }
3075     #[cfg(feature = "Foundation")]
SyncAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>>3076     pub fn SyncAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<bool>> {
3077         let this = self;
3078         unsafe {
3079             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3080             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<bool>>(result__)
3081         }
3082     }
3083     #[cfg(feature = "Foundation")]
SyncStatusChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<EmailMailboxSyncManager, ::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken>3084     pub fn SyncStatusChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TypedEventHandler<EmailMailboxSyncManager, ::windows::runtime::IInspectable>>>(&self, handler: Param0) -> ::windows::runtime::Result<super::super::Foundation::EventRegistrationToken> {
3085         let this = self;
3086         unsafe {
3087             let mut result__: super::super::Foundation::EventRegistrationToken = ::std::mem::zeroed();
3088             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), handler.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::EventRegistrationToken>(result__)
3089         }
3090     }
3091     #[cfg(feature = "Foundation")]
RemoveSyncStatusChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()>3092     pub fn RemoveSyncStatusChanged<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::EventRegistrationToken>>(&self, token: Param0) -> ::windows::runtime::Result<()> {
3093         let this = self;
3094         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), token.into_param().abi()).ok() }
3095     }
SetStatus(&self, value: EmailMailboxSyncStatus) -> ::windows::runtime::Result<()>3096     pub fn SetStatus(&self, value: EmailMailboxSyncStatus) -> ::windows::runtime::Result<()> {
3097         let this = &::windows::runtime::Interface::cast::<IEmailMailboxSyncManager2>(self)?;
3098         unsafe { (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), value).ok() }
3099     }
3100     #[cfg(feature = "Foundation")]
SetLastSuccessfulSyncTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::DateTime>>(&self, value: Param0) -> ::windows::runtime::Result<()>3101     pub fn SetLastSuccessfulSyncTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::DateTime>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
3102         let this = &::windows::runtime::Interface::cast::<IEmailMailboxSyncManager2>(self)?;
3103         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
3104     }
3105     #[cfg(feature = "Foundation")]
SetLastAttemptedSyncTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::DateTime>>(&self, value: Param0) -> ::windows::runtime::Result<()>3106     pub fn SetLastAttemptedSyncTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::DateTime>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
3107         let this = &::windows::runtime::Interface::cast::<IEmailMailboxSyncManager2>(self)?;
3108         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
3109     }
3110 }
3111 unsafe impl ::windows::runtime::RuntimeType for EmailMailboxSyncManager {
3112     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.ApplicationModel.Email.EmailMailboxSyncManager;{517ac55a-3591-4b5d-85bc-c71dde862263})");
3113 }
3114 unsafe impl ::windows::runtime::Interface for EmailMailboxSyncManager {
3115     type Vtable = IEmailMailboxSyncManager_abi;
3116     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1367000410, 13713, 19293, [133, 188, 199, 29, 222, 134, 34, 99]);
3117 }
3118 impl ::windows::runtime::RuntimeName for EmailMailboxSyncManager {
3119     const NAME: &'static str = "Windows.ApplicationModel.Email.EmailMailboxSyncManager";
3120 }
3121 impl ::std::convert::From<EmailMailboxSyncManager> for ::windows::runtime::IUnknown {
from(value: EmailMailboxSyncManager) -> Self3122     fn from(value: EmailMailboxSyncManager) -> Self {
3123         unsafe { ::std::mem::transmute(value) }
3124     }
3125 }
3126 impl ::std::convert::From<&EmailMailboxSyncManager> for ::windows::runtime::IUnknown {
from(value: &EmailMailboxSyncManager) -> Self3127     fn from(value: &EmailMailboxSyncManager) -> Self {
3128         ::std::convert::From::from(::std::clone::Clone::clone(value))
3129     }
3130 }
3131 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EmailMailboxSyncManager {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3132     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3133         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
3134     }
3135 }
3136 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EmailMailboxSyncManager {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3137     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3138         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
3139     }
3140 }
3141 impl ::std::convert::From<EmailMailboxSyncManager> for ::windows::runtime::IInspectable {
from(value: EmailMailboxSyncManager) -> Self3142     fn from(value: EmailMailboxSyncManager) -> Self {
3143         value.0
3144     }
3145 }
3146 impl ::std::convert::From<&EmailMailboxSyncManager> for ::windows::runtime::IInspectable {
from(value: &EmailMailboxSyncManager) -> Self3147     fn from(value: &EmailMailboxSyncManager) -> Self {
3148         value.0.clone()
3149     }
3150 }
3151 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EmailMailboxSyncManager {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>3152     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3153         ::windows::runtime::Param::Owned(self.0)
3154     }
3155 }
3156 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EmailMailboxSyncManager {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>3157     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3158         ::windows::runtime::Param::Borrowed(&self.0)
3159     }
3160 }
3161 unsafe impl ::std::marker::Send for EmailMailboxSyncManager {}
3162 unsafe impl ::std::marker::Sync for EmailMailboxSyncManager {}
3163 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3164 #[repr(transparent)]
3165 pub struct EmailMailboxSyncStatus(pub i32);
3166 impl EmailMailboxSyncStatus {
3167     pub const Idle: EmailMailboxSyncStatus = EmailMailboxSyncStatus(0i32);
3168     pub const Syncing: EmailMailboxSyncStatus = EmailMailboxSyncStatus(1i32);
3169     pub const UpToDate: EmailMailboxSyncStatus = EmailMailboxSyncStatus(2i32);
3170     pub const AuthenticationError: EmailMailboxSyncStatus = EmailMailboxSyncStatus(3i32);
3171     pub const PolicyError: EmailMailboxSyncStatus = EmailMailboxSyncStatus(4i32);
3172     pub const UnknownError: EmailMailboxSyncStatus = EmailMailboxSyncStatus(5i32);
3173     pub const ManualAccountRemovalRequired: EmailMailboxSyncStatus = EmailMailboxSyncStatus(6i32);
3174 }
3175 impl ::std::convert::From<i32> for EmailMailboxSyncStatus {
from(value: i32) -> Self3176     fn from(value: i32) -> Self {
3177         Self(value)
3178     }
3179 }
3180 unsafe impl ::windows::runtime::Abi for EmailMailboxSyncStatus {
3181     type Abi = Self;
3182     type DefaultType = Self;
3183 }
3184 unsafe impl ::windows::runtime::RuntimeType for EmailMailboxSyncStatus {
3185     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.ApplicationModel.Email.EmailMailboxSyncStatus;i4)");
3186 }
3187 pub struct EmailManager {}
3188 impl EmailManager {
3189     #[cfg(feature = "Foundation")]
ShowComposeNewEmailAsync<'a, Param0: ::windows::runtime::IntoParam<'a, EmailMessage>>(message: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>3190     pub fn ShowComposeNewEmailAsync<'a, Param0: ::windows::runtime::IntoParam<'a, EmailMessage>>(message: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
3191         Self::IEmailManagerStatics(|this| unsafe {
3192             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3193             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), message.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
3194         })
3195     }
3196     #[cfg(feature = "Foundation")]
RequestStoreAsync(accesstype: EmailStoreAccessType) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailStore>>3197     pub fn RequestStoreAsync(accesstype: EmailStoreAccessType) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailStore>> {
3198         Self::IEmailManagerStatics2(|this| unsafe {
3199             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3200             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), accesstype, &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<EmailStore>>(result__)
3201         })
3202     }
3203     #[cfg(feature = "System")]
GetForUser<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::System::User>>(user: Param0) -> ::windows::runtime::Result<EmailManagerForUser>3204     pub fn GetForUser<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::System::User>>(user: Param0) -> ::windows::runtime::Result<EmailManagerForUser> {
3205         Self::IEmailManagerStatics3(|this| unsafe {
3206             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3207             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), user.into_param().abi(), &mut result__).from_abi::<EmailManagerForUser>(result__)
3208         })
3209     }
IEmailManagerStatics<R, F: FnOnce(&IEmailManagerStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>3210     pub fn IEmailManagerStatics<R, F: FnOnce(&IEmailManagerStatics) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
3211         static mut SHARED: ::windows::runtime::FactoryCache<EmailManager, IEmailManagerStatics> = ::windows::runtime::FactoryCache::new();
3212         unsafe { SHARED.call(callback) }
3213     }
IEmailManagerStatics2<R, F: FnOnce(&IEmailManagerStatics2) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>3214     pub fn IEmailManagerStatics2<R, F: FnOnce(&IEmailManagerStatics2) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
3215         static mut SHARED: ::windows::runtime::FactoryCache<EmailManager, IEmailManagerStatics2> = ::windows::runtime::FactoryCache::new();
3216         unsafe { SHARED.call(callback) }
3217     }
IEmailManagerStatics3<R, F: FnOnce(&IEmailManagerStatics3) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>3218     pub fn IEmailManagerStatics3<R, F: FnOnce(&IEmailManagerStatics3) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
3219         static mut SHARED: ::windows::runtime::FactoryCache<EmailManager, IEmailManagerStatics3> = ::windows::runtime::FactoryCache::new();
3220         unsafe { SHARED.call(callback) }
3221     }
3222 }
3223 impl ::windows::runtime::RuntimeName for EmailManager {
3224     const NAME: &'static str = "Windows.ApplicationModel.Email.EmailManager";
3225 }
3226 #[repr(transparent)]
3227 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
3228 pub struct EmailManagerForUser(::windows::runtime::IInspectable);
3229 impl EmailManagerForUser {
3230     #[cfg(feature = "Foundation")]
ShowComposeNewEmailAsync<'a, Param0: ::windows::runtime::IntoParam<'a, EmailMessage>>(&self, message: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction>3231     pub fn ShowComposeNewEmailAsync<'a, Param0: ::windows::runtime::IntoParam<'a, EmailMessage>>(&self, message: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncAction> {
3232         let this = self;
3233         unsafe {
3234             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3235             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), message.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncAction>(result__)
3236         }
3237     }
3238     #[cfg(feature = "Foundation")]
RequestStoreAsync(&self, accesstype: EmailStoreAccessType) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailStore>>3239     pub fn RequestStoreAsync(&self, accesstype: EmailStoreAccessType) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailStore>> {
3240         let this = self;
3241         unsafe {
3242             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3243             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), accesstype, &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<EmailStore>>(result__)
3244         }
3245     }
3246     #[cfg(feature = "System")]
User(&self) -> ::windows::runtime::Result<super::super::System::User>3247     pub fn User(&self) -> ::windows::runtime::Result<super::super::System::User> {
3248         let this = self;
3249         unsafe {
3250             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3251             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::System::User>(result__)
3252         }
3253     }
3254 }
3255 unsafe impl ::windows::runtime::RuntimeType for EmailManagerForUser {
3256     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.ApplicationModel.Email.EmailManagerForUser;{f773de9f-3ca5-4b0f-90c1-156e40174ce5})");
3257 }
3258 unsafe impl ::windows::runtime::Interface for EmailManagerForUser {
3259     type Vtable = IEmailManagerForUser_abi;
3260     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4151565983, 15525, 19215, [144, 193, 21, 110, 64, 23, 76, 229]);
3261 }
3262 impl ::windows::runtime::RuntimeName for EmailManagerForUser {
3263     const NAME: &'static str = "Windows.ApplicationModel.Email.EmailManagerForUser";
3264 }
3265 impl ::std::convert::From<EmailManagerForUser> for ::windows::runtime::IUnknown {
from(value: EmailManagerForUser) -> Self3266     fn from(value: EmailManagerForUser) -> Self {
3267         unsafe { ::std::mem::transmute(value) }
3268     }
3269 }
3270 impl ::std::convert::From<&EmailManagerForUser> for ::windows::runtime::IUnknown {
from(value: &EmailManagerForUser) -> Self3271     fn from(value: &EmailManagerForUser) -> Self {
3272         ::std::convert::From::from(::std::clone::Clone::clone(value))
3273     }
3274 }
3275 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EmailManagerForUser {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3276     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3277         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
3278     }
3279 }
3280 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EmailManagerForUser {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3281     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3282         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
3283     }
3284 }
3285 impl ::std::convert::From<EmailManagerForUser> for ::windows::runtime::IInspectable {
from(value: EmailManagerForUser) -> Self3286     fn from(value: EmailManagerForUser) -> Self {
3287         value.0
3288     }
3289 }
3290 impl ::std::convert::From<&EmailManagerForUser> for ::windows::runtime::IInspectable {
from(value: &EmailManagerForUser) -> Self3291     fn from(value: &EmailManagerForUser) -> Self {
3292         value.0.clone()
3293     }
3294 }
3295 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EmailManagerForUser {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>3296     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3297         ::windows::runtime::Param::Owned(self.0)
3298     }
3299 }
3300 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EmailManagerForUser {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>3301     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3302         ::windows::runtime::Param::Borrowed(&self.0)
3303     }
3304 }
3305 unsafe impl ::std::marker::Send for EmailManagerForUser {}
3306 unsafe impl ::std::marker::Sync for EmailManagerForUser {}
3307 #[repr(transparent)]
3308 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
3309 pub struct EmailMeetingInfo(::windows::runtime::IInspectable);
3310 impl EmailMeetingInfo {
new() -> ::windows::runtime::Result<Self>3311     pub fn new() -> ::windows::runtime::Result<Self> {
3312         Self::IActivationFactory(|f| f.activate_instance::<Self>())
3313     }
IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>3314     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
3315         static mut SHARED: ::windows::runtime::FactoryCache<EmailMeetingInfo, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
3316         unsafe { SHARED.call(callback) }
3317     }
AllowNewTimeProposal(&self) -> ::windows::runtime::Result<bool>3318     pub fn AllowNewTimeProposal(&self) -> ::windows::runtime::Result<bool> {
3319         let this = self;
3320         unsafe {
3321             let mut result__: bool = ::std::mem::zeroed();
3322             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
3323         }
3324     }
SetAllowNewTimeProposal(&self, value: bool) -> ::windows::runtime::Result<()>3325     pub fn SetAllowNewTimeProposal(&self, value: bool) -> ::windows::runtime::Result<()> {
3326         let this = self;
3327         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
3328     }
AppointmentRoamingId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>3329     pub fn AppointmentRoamingId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
3330         let this = self;
3331         unsafe {
3332             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
3333             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
3334         }
3335     }
SetAppointmentRoamingId<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()>3336     pub fn SetAppointmentRoamingId<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
3337         let this = self;
3338         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
3339     }
3340     #[cfg(feature = "Foundation")]
AppointmentOriginalStartTime(&self) -> ::windows::runtime::Result<super::super::Foundation::IReference<super::super::Foundation::DateTime>>3341     pub fn AppointmentOriginalStartTime(&self) -> ::windows::runtime::Result<super::super::Foundation::IReference<super::super::Foundation::DateTime>> {
3342         let this = self;
3343         unsafe {
3344             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3345             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IReference<super::super::Foundation::DateTime>>(result__)
3346         }
3347     }
3348     #[cfg(feature = "Foundation")]
SetAppointmentOriginalStartTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::IReference<super::super::Foundation::DateTime>>>(&self, value: Param0) -> ::windows::runtime::Result<()>3349     pub fn SetAppointmentOriginalStartTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::IReference<super::super::Foundation::DateTime>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
3350         let this = self;
3351         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
3352     }
3353     #[cfg(feature = "Foundation")]
Duration(&self) -> ::windows::runtime::Result<super::super::Foundation::TimeSpan>3354     pub fn Duration(&self) -> ::windows::runtime::Result<super::super::Foundation::TimeSpan> {
3355         let this = self;
3356         unsafe {
3357             let mut result__: super::super::Foundation::TimeSpan = ::std::mem::zeroed();
3358             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::TimeSpan>(result__)
3359         }
3360     }
3361     #[cfg(feature = "Foundation")]
SetDuration<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TimeSpan>>(&self, value: Param0) -> ::windows::runtime::Result<()>3362     pub fn SetDuration<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::TimeSpan>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
3363         let this = self;
3364         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
3365     }
IsAllDay(&self) -> ::windows::runtime::Result<bool>3366     pub fn IsAllDay(&self) -> ::windows::runtime::Result<bool> {
3367         let this = self;
3368         unsafe {
3369             let mut result__: bool = ::std::mem::zeroed();
3370             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
3371         }
3372     }
SetIsAllDay(&self, value: bool) -> ::windows::runtime::Result<()>3373     pub fn SetIsAllDay(&self, value: bool) -> ::windows::runtime::Result<()> {
3374         let this = self;
3375         unsafe { (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), value).ok() }
3376     }
IsResponseRequested(&self) -> ::windows::runtime::Result<bool>3377     pub fn IsResponseRequested(&self) -> ::windows::runtime::Result<bool> {
3378         let this = self;
3379         unsafe {
3380             let mut result__: bool = ::std::mem::zeroed();
3381             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
3382         }
3383     }
SetIsResponseRequested(&self, value: bool) -> ::windows::runtime::Result<()>3384     pub fn SetIsResponseRequested(&self, value: bool) -> ::windows::runtime::Result<()> {
3385         let this = self;
3386         unsafe { (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), value).ok() }
3387     }
Location(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>3388     pub fn Location(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
3389         let this = self;
3390         unsafe {
3391             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
3392             (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
3393         }
3394     }
SetLocation<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()>3395     pub fn SetLocation<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
3396         let this = self;
3397         unsafe { (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
3398     }
3399     #[cfg(feature = "Foundation")]
ProposedStartTime(&self) -> ::windows::runtime::Result<super::super::Foundation::IReference<super::super::Foundation::DateTime>>3400     pub fn ProposedStartTime(&self) -> ::windows::runtime::Result<super::super::Foundation::IReference<super::super::Foundation::DateTime>> {
3401         let this = self;
3402         unsafe {
3403             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3404             (::windows::runtime::Interface::vtable(this).20)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IReference<super::super::Foundation::DateTime>>(result__)
3405         }
3406     }
3407     #[cfg(feature = "Foundation")]
SetProposedStartTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::IReference<super::super::Foundation::DateTime>>>(&self, proposedstarttime: Param0) -> ::windows::runtime::Result<()>3408     pub fn SetProposedStartTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::IReference<super::super::Foundation::DateTime>>>(&self, proposedstarttime: Param0) -> ::windows::runtime::Result<()> {
3409         let this = self;
3410         unsafe { (::windows::runtime::Interface::vtable(this).21)(::std::mem::transmute_copy(this), proposedstarttime.into_param().abi()).ok() }
3411     }
3412     #[cfg(feature = "Foundation")]
ProposedDuration(&self) -> ::windows::runtime::Result<super::super::Foundation::IReference<super::super::Foundation::TimeSpan>>3413     pub fn ProposedDuration(&self) -> ::windows::runtime::Result<super::super::Foundation::IReference<super::super::Foundation::TimeSpan>> {
3414         let this = self;
3415         unsafe {
3416             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3417             (::windows::runtime::Interface::vtable(this).22)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IReference<super::super::Foundation::TimeSpan>>(result__)
3418         }
3419     }
3420     #[cfg(feature = "Foundation")]
SetProposedDuration<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::IReference<super::super::Foundation::TimeSpan>>>(&self, duration: Param0) -> ::windows::runtime::Result<()>3421     pub fn SetProposedDuration<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::IReference<super::super::Foundation::TimeSpan>>>(&self, duration: Param0) -> ::windows::runtime::Result<()> {
3422         let this = self;
3423         unsafe { (::windows::runtime::Interface::vtable(this).23)(::std::mem::transmute_copy(this), duration.into_param().abi()).ok() }
3424     }
3425     #[cfg(feature = "Foundation")]
RecurrenceStartTime(&self) -> ::windows::runtime::Result<super::super::Foundation::IReference<super::super::Foundation::DateTime>>3426     pub fn RecurrenceStartTime(&self) -> ::windows::runtime::Result<super::super::Foundation::IReference<super::super::Foundation::DateTime>> {
3427         let this = self;
3428         unsafe {
3429             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3430             (::windows::runtime::Interface::vtable(this).24)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IReference<super::super::Foundation::DateTime>>(result__)
3431         }
3432     }
3433     #[cfg(feature = "Foundation")]
SetRecurrenceStartTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::IReference<super::super::Foundation::DateTime>>>(&self, value: Param0) -> ::windows::runtime::Result<()>3434     pub fn SetRecurrenceStartTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::IReference<super::super::Foundation::DateTime>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
3435         let this = self;
3436         unsafe { (::windows::runtime::Interface::vtable(this).25)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
3437     }
3438     #[cfg(feature = "ApplicationModel_Appointments")]
Recurrence(&self) -> ::windows::runtime::Result<super::Appointments::AppointmentRecurrence>3439     pub fn Recurrence(&self) -> ::windows::runtime::Result<super::Appointments::AppointmentRecurrence> {
3440         let this = self;
3441         unsafe {
3442             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3443             (::windows::runtime::Interface::vtable(this).26)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::Appointments::AppointmentRecurrence>(result__)
3444         }
3445     }
3446     #[cfg(feature = "ApplicationModel_Appointments")]
SetRecurrence<'a, Param0: ::windows::runtime::IntoParam<'a, super::Appointments::AppointmentRecurrence>>(&self, value: Param0) -> ::windows::runtime::Result<()>3447     pub fn SetRecurrence<'a, Param0: ::windows::runtime::IntoParam<'a, super::Appointments::AppointmentRecurrence>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
3448         let this = self;
3449         unsafe { (::windows::runtime::Interface::vtable(this).27)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
3450     }
RemoteChangeNumber(&self) -> ::windows::runtime::Result<u64>3451     pub fn RemoteChangeNumber(&self) -> ::windows::runtime::Result<u64> {
3452         let this = self;
3453         unsafe {
3454             let mut result__: u64 = ::std::mem::zeroed();
3455             (::windows::runtime::Interface::vtable(this).28)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u64>(result__)
3456         }
3457     }
SetRemoteChangeNumber(&self, value: u64) -> ::windows::runtime::Result<()>3458     pub fn SetRemoteChangeNumber(&self, value: u64) -> ::windows::runtime::Result<()> {
3459         let this = self;
3460         unsafe { (::windows::runtime::Interface::vtable(this).29)(::std::mem::transmute_copy(this), value).ok() }
3461     }
3462     #[cfg(feature = "Foundation")]
StartTime(&self) -> ::windows::runtime::Result<super::super::Foundation::DateTime>3463     pub fn StartTime(&self) -> ::windows::runtime::Result<super::super::Foundation::DateTime> {
3464         let this = self;
3465         unsafe {
3466             let mut result__: super::super::Foundation::DateTime = ::std::mem::zeroed();
3467             (::windows::runtime::Interface::vtable(this).30)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::DateTime>(result__)
3468         }
3469     }
3470     #[cfg(feature = "Foundation")]
SetStartTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::DateTime>>(&self, value: Param0) -> ::windows::runtime::Result<()>3471     pub fn SetStartTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::DateTime>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
3472         let this = self;
3473         unsafe { (::windows::runtime::Interface::vtable(this).31)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
3474     }
IsReportedOutOfDateByServer(&self) -> ::windows::runtime::Result<bool>3475     pub fn IsReportedOutOfDateByServer(&self) -> ::windows::runtime::Result<bool> {
3476         let this = &::windows::runtime::Interface::cast::<IEmailMeetingInfo2>(self)?;
3477         unsafe {
3478             let mut result__: bool = ::std::mem::zeroed();
3479             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
3480         }
3481     }
3482 }
3483 unsafe impl ::windows::runtime::RuntimeType for EmailMeetingInfo {
3484     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.ApplicationModel.Email.EmailMeetingInfo;{31c03fa9-7933-415f-a275-d165ba07026b})");
3485 }
3486 unsafe impl ::windows::runtime::Interface for EmailMeetingInfo {
3487     type Vtable = IEmailMeetingInfo_abi;
3488     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(834682793, 31027, 16735, [162, 117, 209, 101, 186, 7, 2, 107]);
3489 }
3490 impl ::windows::runtime::RuntimeName for EmailMeetingInfo {
3491     const NAME: &'static str = "Windows.ApplicationModel.Email.EmailMeetingInfo";
3492 }
3493 impl ::std::convert::From<EmailMeetingInfo> for ::windows::runtime::IUnknown {
from(value: EmailMeetingInfo) -> Self3494     fn from(value: EmailMeetingInfo) -> Self {
3495         unsafe { ::std::mem::transmute(value) }
3496     }
3497 }
3498 impl ::std::convert::From<&EmailMeetingInfo> for ::windows::runtime::IUnknown {
from(value: &EmailMeetingInfo) -> Self3499     fn from(value: &EmailMeetingInfo) -> Self {
3500         ::std::convert::From::from(::std::clone::Clone::clone(value))
3501     }
3502 }
3503 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EmailMeetingInfo {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3504     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3505         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
3506     }
3507 }
3508 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EmailMeetingInfo {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3509     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3510         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
3511     }
3512 }
3513 impl ::std::convert::From<EmailMeetingInfo> for ::windows::runtime::IInspectable {
from(value: EmailMeetingInfo) -> Self3514     fn from(value: EmailMeetingInfo) -> Self {
3515         value.0
3516     }
3517 }
3518 impl ::std::convert::From<&EmailMeetingInfo> for ::windows::runtime::IInspectable {
from(value: &EmailMeetingInfo) -> Self3519     fn from(value: &EmailMeetingInfo) -> Self {
3520         value.0.clone()
3521     }
3522 }
3523 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EmailMeetingInfo {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>3524     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3525         ::windows::runtime::Param::Owned(self.0)
3526     }
3527 }
3528 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EmailMeetingInfo {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>3529     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3530         ::windows::runtime::Param::Borrowed(&self.0)
3531     }
3532 }
3533 unsafe impl ::std::marker::Send for EmailMeetingInfo {}
3534 unsafe impl ::std::marker::Sync for EmailMeetingInfo {}
3535 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3536 #[repr(transparent)]
3537 pub struct EmailMeetingResponseType(pub i32);
3538 impl EmailMeetingResponseType {
3539     pub const Accept: EmailMeetingResponseType = EmailMeetingResponseType(0i32);
3540     pub const Decline: EmailMeetingResponseType = EmailMeetingResponseType(1i32);
3541     pub const Tentative: EmailMeetingResponseType = EmailMeetingResponseType(2i32);
3542 }
3543 impl ::std::convert::From<i32> for EmailMeetingResponseType {
from(value: i32) -> Self3544     fn from(value: i32) -> Self {
3545         Self(value)
3546     }
3547 }
3548 unsafe impl ::windows::runtime::Abi for EmailMeetingResponseType {
3549     type Abi = Self;
3550     type DefaultType = Self;
3551 }
3552 unsafe impl ::windows::runtime::RuntimeType for EmailMeetingResponseType {
3553     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.ApplicationModel.Email.EmailMeetingResponseType;i4)");
3554 }
3555 #[repr(transparent)]
3556 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
3557 pub struct EmailMessage(::windows::runtime::IInspectable);
3558 impl EmailMessage {
new() -> ::windows::runtime::Result<Self>3559     pub fn new() -> ::windows::runtime::Result<Self> {
3560         Self::IActivationFactory(|f| f.activate_instance::<Self>())
3561     }
IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>3562     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
3563         static mut SHARED: ::windows::runtime::FactoryCache<EmailMessage, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
3564         unsafe { SHARED.call(callback) }
3565     }
Subject(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>3566     pub fn Subject(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
3567         let this = self;
3568         unsafe {
3569             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
3570             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
3571         }
3572     }
SetSubject<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()>3573     pub fn SetSubject<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
3574         let this = self;
3575         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
3576     }
Body(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>3577     pub fn Body(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
3578         let this = self;
3579         unsafe {
3580             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
3581             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
3582         }
3583     }
SetBody<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()>3584     pub fn SetBody<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
3585         let this = self;
3586         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
3587     }
3588     #[cfg(feature = "Foundation_Collections")]
To(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<EmailRecipient>>3589     pub fn To(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<EmailRecipient>> {
3590         let this = self;
3591         unsafe {
3592             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3593             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<EmailRecipient>>(result__)
3594         }
3595     }
3596     #[cfg(feature = "Foundation_Collections")]
CC(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<EmailRecipient>>3597     pub fn CC(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<EmailRecipient>> {
3598         let this = self;
3599         unsafe {
3600             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3601             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<EmailRecipient>>(result__)
3602         }
3603     }
3604     #[cfg(feature = "Foundation_Collections")]
Bcc(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<EmailRecipient>>3605     pub fn Bcc(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<EmailRecipient>> {
3606         let this = self;
3607         unsafe {
3608             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3609             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<EmailRecipient>>(result__)
3610         }
3611     }
3612     #[cfg(feature = "Foundation_Collections")]
Attachments(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<EmailAttachment>>3613     pub fn Attachments(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<EmailAttachment>> {
3614         let this = self;
3615         unsafe {
3616             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3617             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<EmailAttachment>>(result__)
3618         }
3619     }
Id(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>3620     pub fn Id(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
3621         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3622         unsafe {
3623             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
3624             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
3625         }
3626     }
RemoteId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>3627     pub fn RemoteId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
3628         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3629         unsafe {
3630             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
3631             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
3632         }
3633     }
SetRemoteId<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()>3634     pub fn SetRemoteId<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
3635         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3636         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
3637     }
MailboxId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>3638     pub fn MailboxId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
3639         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3640         unsafe {
3641             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
3642             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
3643         }
3644     }
ConversationId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>3645     pub fn ConversationId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
3646         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3647         unsafe {
3648             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
3649             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
3650         }
3651     }
FolderId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>3652     pub fn FolderId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
3653         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3654         unsafe {
3655             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
3656             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
3657         }
3658     }
AllowInternetImages(&self) -> ::windows::runtime::Result<bool>3659     pub fn AllowInternetImages(&self) -> ::windows::runtime::Result<bool> {
3660         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3661         unsafe {
3662             let mut result__: bool = ::std::mem::zeroed();
3663             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
3664         }
3665     }
SetAllowInternetImages(&self, value: bool) -> ::windows::runtime::Result<()>3666     pub fn SetAllowInternetImages(&self, value: bool) -> ::windows::runtime::Result<()> {
3667         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3668         unsafe { (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), value).ok() }
3669     }
ChangeNumber(&self) -> ::windows::runtime::Result<u64>3670     pub fn ChangeNumber(&self) -> ::windows::runtime::Result<u64> {
3671         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3672         unsafe {
3673             let mut result__: u64 = ::std::mem::zeroed();
3674             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u64>(result__)
3675         }
3676     }
DownloadState(&self) -> ::windows::runtime::Result<EmailMessageDownloadState>3677     pub fn DownloadState(&self) -> ::windows::runtime::Result<EmailMessageDownloadState> {
3678         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3679         unsafe {
3680             let mut result__: EmailMessageDownloadState = ::std::mem::zeroed();
3681             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailMessageDownloadState>(result__)
3682         }
3683     }
SetDownloadState(&self, value: EmailMessageDownloadState) -> ::windows::runtime::Result<()>3684     pub fn SetDownloadState(&self, value: EmailMessageDownloadState) -> ::windows::runtime::Result<()> {
3685         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3686         unsafe { (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), value).ok() }
3687     }
EstimatedDownloadSizeInBytes(&self) -> ::windows::runtime::Result<u32>3688     pub fn EstimatedDownloadSizeInBytes(&self) -> ::windows::runtime::Result<u32> {
3689         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3690         unsafe {
3691             let mut result__: u32 = ::std::mem::zeroed();
3692             (::windows::runtime::Interface::vtable(this).17)(::std::mem::transmute_copy(this), &mut result__).from_abi::<u32>(result__)
3693         }
3694     }
SetEstimatedDownloadSizeInBytes(&self, value: u32) -> ::windows::runtime::Result<()>3695     pub fn SetEstimatedDownloadSizeInBytes(&self, value: u32) -> ::windows::runtime::Result<()> {
3696         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3697         unsafe { (::windows::runtime::Interface::vtable(this).18)(::std::mem::transmute_copy(this), value).ok() }
3698     }
FlagState(&self) -> ::windows::runtime::Result<EmailFlagState>3699     pub fn FlagState(&self) -> ::windows::runtime::Result<EmailFlagState> {
3700         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3701         unsafe {
3702             let mut result__: EmailFlagState = ::std::mem::zeroed();
3703             (::windows::runtime::Interface::vtable(this).19)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailFlagState>(result__)
3704         }
3705     }
SetFlagState(&self, value: EmailFlagState) -> ::windows::runtime::Result<()>3706     pub fn SetFlagState(&self, value: EmailFlagState) -> ::windows::runtime::Result<()> {
3707         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3708         unsafe { (::windows::runtime::Interface::vtable(this).20)(::std::mem::transmute_copy(this), value).ok() }
3709     }
HasPartialBodies(&self) -> ::windows::runtime::Result<bool>3710     pub fn HasPartialBodies(&self) -> ::windows::runtime::Result<bool> {
3711         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3712         unsafe {
3713             let mut result__: bool = ::std::mem::zeroed();
3714             (::windows::runtime::Interface::vtable(this).21)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
3715         }
3716     }
Importance(&self) -> ::windows::runtime::Result<EmailImportance>3717     pub fn Importance(&self) -> ::windows::runtime::Result<EmailImportance> {
3718         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3719         unsafe {
3720             let mut result__: EmailImportance = ::std::mem::zeroed();
3721             (::windows::runtime::Interface::vtable(this).22)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailImportance>(result__)
3722         }
3723     }
SetImportance(&self, value: EmailImportance) -> ::windows::runtime::Result<()>3724     pub fn SetImportance(&self, value: EmailImportance) -> ::windows::runtime::Result<()> {
3725         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3726         unsafe { (::windows::runtime::Interface::vtable(this).23)(::std::mem::transmute_copy(this), value).ok() }
3727     }
InResponseToMessageId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>3728     pub fn InResponseToMessageId(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
3729         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3730         unsafe {
3731             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
3732             (::windows::runtime::Interface::vtable(this).24)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
3733         }
3734     }
IrmInfo(&self) -> ::windows::runtime::Result<EmailIrmInfo>3735     pub fn IrmInfo(&self) -> ::windows::runtime::Result<EmailIrmInfo> {
3736         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3737         unsafe {
3738             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3739             (::windows::runtime::Interface::vtable(this).25)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailIrmInfo>(result__)
3740         }
3741     }
SetIrmInfo<'a, Param0: ::windows::runtime::IntoParam<'a, EmailIrmInfo>>(&self, value: Param0) -> ::windows::runtime::Result<()>3742     pub fn SetIrmInfo<'a, Param0: ::windows::runtime::IntoParam<'a, EmailIrmInfo>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
3743         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3744         unsafe { (::windows::runtime::Interface::vtable(this).26)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
3745     }
IsDraftMessage(&self) -> ::windows::runtime::Result<bool>3746     pub fn IsDraftMessage(&self) -> ::windows::runtime::Result<bool> {
3747         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3748         unsafe {
3749             let mut result__: bool = ::std::mem::zeroed();
3750             (::windows::runtime::Interface::vtable(this).27)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
3751         }
3752     }
IsRead(&self) -> ::windows::runtime::Result<bool>3753     pub fn IsRead(&self) -> ::windows::runtime::Result<bool> {
3754         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3755         unsafe {
3756             let mut result__: bool = ::std::mem::zeroed();
3757             (::windows::runtime::Interface::vtable(this).28)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
3758         }
3759     }
SetIsRead(&self, value: bool) -> ::windows::runtime::Result<()>3760     pub fn SetIsRead(&self, value: bool) -> ::windows::runtime::Result<()> {
3761         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3762         unsafe { (::windows::runtime::Interface::vtable(this).29)(::std::mem::transmute_copy(this), value).ok() }
3763     }
IsSeen(&self) -> ::windows::runtime::Result<bool>3764     pub fn IsSeen(&self) -> ::windows::runtime::Result<bool> {
3765         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3766         unsafe {
3767             let mut result__: bool = ::std::mem::zeroed();
3768             (::windows::runtime::Interface::vtable(this).30)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
3769         }
3770     }
SetIsSeen(&self, value: bool) -> ::windows::runtime::Result<()>3771     pub fn SetIsSeen(&self, value: bool) -> ::windows::runtime::Result<()> {
3772         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3773         unsafe { (::windows::runtime::Interface::vtable(this).31)(::std::mem::transmute_copy(this), value).ok() }
3774     }
IsServerSearchMessage(&self) -> ::windows::runtime::Result<bool>3775     pub fn IsServerSearchMessage(&self) -> ::windows::runtime::Result<bool> {
3776         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3777         unsafe {
3778             let mut result__: bool = ::std::mem::zeroed();
3779             (::windows::runtime::Interface::vtable(this).32)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
3780         }
3781     }
IsSmartSendable(&self) -> ::windows::runtime::Result<bool>3782     pub fn IsSmartSendable(&self) -> ::windows::runtime::Result<bool> {
3783         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3784         unsafe {
3785             let mut result__: bool = ::std::mem::zeroed();
3786             (::windows::runtime::Interface::vtable(this).33)(::std::mem::transmute_copy(this), &mut result__).from_abi::<bool>(result__)
3787         }
3788     }
MessageClass(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>3789     pub fn MessageClass(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
3790         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3791         unsafe {
3792             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
3793             (::windows::runtime::Interface::vtable(this).34)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
3794         }
3795     }
SetMessageClass<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()>3796     pub fn SetMessageClass<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
3797         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3798         unsafe { (::windows::runtime::Interface::vtable(this).35)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
3799     }
NormalizedSubject(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>3800     pub fn NormalizedSubject(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
3801         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3802         unsafe {
3803             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
3804             (::windows::runtime::Interface::vtable(this).36)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
3805         }
3806     }
OriginalCodePage(&self) -> ::windows::runtime::Result<i32>3807     pub fn OriginalCodePage(&self) -> ::windows::runtime::Result<i32> {
3808         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3809         unsafe {
3810             let mut result__: i32 = ::std::mem::zeroed();
3811             (::windows::runtime::Interface::vtable(this).37)(::std::mem::transmute_copy(this), &mut result__).from_abi::<i32>(result__)
3812         }
3813     }
SetOriginalCodePage(&self, value: i32) -> ::windows::runtime::Result<()>3814     pub fn SetOriginalCodePage(&self, value: i32) -> ::windows::runtime::Result<()> {
3815         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3816         unsafe { (::windows::runtime::Interface::vtable(this).38)(::std::mem::transmute_copy(this), value).ok() }
3817     }
Preview(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>3818     pub fn Preview(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
3819         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3820         unsafe {
3821             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
3822             (::windows::runtime::Interface::vtable(this).39)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
3823         }
3824     }
SetPreview<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()>3825     pub fn SetPreview<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
3826         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3827         unsafe { (::windows::runtime::Interface::vtable(this).40)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
3828     }
LastResponseKind(&self) -> ::windows::runtime::Result<EmailMessageResponseKind>3829     pub fn LastResponseKind(&self) -> ::windows::runtime::Result<EmailMessageResponseKind> {
3830         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3831         unsafe {
3832             let mut result__: EmailMessageResponseKind = ::std::mem::zeroed();
3833             (::windows::runtime::Interface::vtable(this).41)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailMessageResponseKind>(result__)
3834         }
3835     }
SetLastResponseKind(&self, value: EmailMessageResponseKind) -> ::windows::runtime::Result<()>3836     pub fn SetLastResponseKind(&self, value: EmailMessageResponseKind) -> ::windows::runtime::Result<()> {
3837         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3838         unsafe { (::windows::runtime::Interface::vtable(this).42)(::std::mem::transmute_copy(this), value).ok() }
3839     }
Sender(&self) -> ::windows::runtime::Result<EmailRecipient>3840     pub fn Sender(&self) -> ::windows::runtime::Result<EmailRecipient> {
3841         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3842         unsafe {
3843             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3844             (::windows::runtime::Interface::vtable(this).43)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailRecipient>(result__)
3845         }
3846     }
SetSender<'a, Param0: ::windows::runtime::IntoParam<'a, EmailRecipient>>(&self, value: Param0) -> ::windows::runtime::Result<()>3847     pub fn SetSender<'a, Param0: ::windows::runtime::IntoParam<'a, EmailRecipient>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
3848         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3849         unsafe { (::windows::runtime::Interface::vtable(this).44)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
3850     }
3851     #[cfg(feature = "Foundation")]
SentTime(&self) -> ::windows::runtime::Result<super::super::Foundation::IReference<super::super::Foundation::DateTime>>3852     pub fn SentTime(&self) -> ::windows::runtime::Result<super::super::Foundation::IReference<super::super::Foundation::DateTime>> {
3853         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3854         unsafe {
3855             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3856             (::windows::runtime::Interface::vtable(this).45)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IReference<super::super::Foundation::DateTime>>(result__)
3857         }
3858     }
3859     #[cfg(feature = "Foundation")]
SetSentTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::IReference<super::super::Foundation::DateTime>>>(&self, value: Param0) -> ::windows::runtime::Result<()>3860     pub fn SetSentTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::IReference<super::super::Foundation::DateTime>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
3861         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3862         unsafe { (::windows::runtime::Interface::vtable(this).46)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
3863     }
MeetingInfo(&self) -> ::windows::runtime::Result<EmailMeetingInfo>3864     pub fn MeetingInfo(&self) -> ::windows::runtime::Result<EmailMeetingInfo> {
3865         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3866         unsafe {
3867             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3868             (::windows::runtime::Interface::vtable(this).47)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailMeetingInfo>(result__)
3869         }
3870     }
SetMeetingInfo<'a, Param0: ::windows::runtime::IntoParam<'a, EmailMeetingInfo>>(&self, value: Param0) -> ::windows::runtime::Result<()>3871     pub fn SetMeetingInfo<'a, Param0: ::windows::runtime::IntoParam<'a, EmailMeetingInfo>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
3872         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3873         unsafe { (::windows::runtime::Interface::vtable(this).48)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
3874     }
3875     #[cfg(feature = "Storage_Streams")]
GetBodyStream(&self, r#type: EmailMessageBodyKind) -> ::windows::runtime::Result<super::super::Storage::Streams::IRandomAccessStreamReference>3876     pub fn GetBodyStream(&self, r#type: EmailMessageBodyKind) -> ::windows::runtime::Result<super::super::Storage::Streams::IRandomAccessStreamReference> {
3877         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3878         unsafe {
3879             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3880             (::windows::runtime::Interface::vtable(this).49)(::std::mem::transmute_copy(this), r#type, &mut result__).from_abi::<super::super::Storage::Streams::IRandomAccessStreamReference>(result__)
3881         }
3882     }
3883     #[cfg(feature = "Storage_Streams")]
SetBodyStream<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Storage::Streams::IRandomAccessStreamReference>>(&self, r#type: EmailMessageBodyKind, stream: Param1) -> ::windows::runtime::Result<()>3884     pub fn SetBodyStream<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Storage::Streams::IRandomAccessStreamReference>>(&self, r#type: EmailMessageBodyKind, stream: Param1) -> ::windows::runtime::Result<()> {
3885         let this = &::windows::runtime::Interface::cast::<IEmailMessage2>(self)?;
3886         unsafe { (::windows::runtime::Interface::vtable(this).50)(::std::mem::transmute_copy(this), r#type, stream.into_param().abi()).ok() }
3887     }
3888     #[cfg(feature = "Storage_Streams")]
SmimeData(&self) -> ::windows::runtime::Result<super::super::Storage::Streams::IRandomAccessStreamReference>3889     pub fn SmimeData(&self) -> ::windows::runtime::Result<super::super::Storage::Streams::IRandomAccessStreamReference> {
3890         let this = &::windows::runtime::Interface::cast::<IEmailMessage3>(self)?;
3891         unsafe {
3892             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3893             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Storage::Streams::IRandomAccessStreamReference>(result__)
3894         }
3895     }
3896     #[cfg(feature = "Storage_Streams")]
SetSmimeData<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Storage::Streams::IRandomAccessStreamReference>>(&self, value: Param0) -> ::windows::runtime::Result<()>3897     pub fn SetSmimeData<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Storage::Streams::IRandomAccessStreamReference>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
3898         let this = &::windows::runtime::Interface::cast::<IEmailMessage3>(self)?;
3899         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
3900     }
SmimeKind(&self) -> ::windows::runtime::Result<EmailMessageSmimeKind>3901     pub fn SmimeKind(&self) -> ::windows::runtime::Result<EmailMessageSmimeKind> {
3902         let this = &::windows::runtime::Interface::cast::<IEmailMessage3>(self)?;
3903         unsafe {
3904             let mut result__: EmailMessageSmimeKind = ::std::mem::zeroed();
3905             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailMessageSmimeKind>(result__)
3906         }
3907     }
SetSmimeKind(&self, value: EmailMessageSmimeKind) -> ::windows::runtime::Result<()>3908     pub fn SetSmimeKind(&self, value: EmailMessageSmimeKind) -> ::windows::runtime::Result<()> {
3909         let this = &::windows::runtime::Interface::cast::<IEmailMessage3>(self)?;
3910         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value).ok() }
3911     }
3912     #[cfg(feature = "Foundation_Collections")]
ReplyTo(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<EmailRecipient>>3913     pub fn ReplyTo(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<EmailRecipient>> {
3914         let this = &::windows::runtime::Interface::cast::<IEmailMessage4>(self)?;
3915         unsafe {
3916             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3917             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<EmailRecipient>>(result__)
3918         }
3919     }
SentRepresenting(&self) -> ::windows::runtime::Result<EmailRecipient>3920     pub fn SentRepresenting(&self) -> ::windows::runtime::Result<EmailRecipient> {
3921         let this = &::windows::runtime::Interface::cast::<IEmailMessage4>(self)?;
3922         unsafe {
3923             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3924             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailRecipient>(result__)
3925         }
3926     }
SetSentRepresenting<'a, Param0: ::windows::runtime::IntoParam<'a, EmailRecipient>>(&self, value: Param0) -> ::windows::runtime::Result<()>3927     pub fn SetSentRepresenting<'a, Param0: ::windows::runtime::IntoParam<'a, EmailRecipient>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
3928         let this = &::windows::runtime::Interface::cast::<IEmailMessage4>(self)?;
3929         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
3930     }
3931 }
3932 unsafe impl ::windows::runtime::RuntimeType for EmailMessage {
3933     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.ApplicationModel.Email.EmailMessage;{6c6d948d-80b5-48f8-b0b1-e04e430f44e5})");
3934 }
3935 unsafe impl ::windows::runtime::Interface for EmailMessage {
3936     type Vtable = IEmailMessage_abi;
3937     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1819120781, 32949, 18680, [176, 177, 224, 78, 67, 15, 68, 229]);
3938 }
3939 impl ::windows::runtime::RuntimeName for EmailMessage {
3940     const NAME: &'static str = "Windows.ApplicationModel.Email.EmailMessage";
3941 }
3942 impl ::std::convert::From<EmailMessage> for ::windows::runtime::IUnknown {
from(value: EmailMessage) -> Self3943     fn from(value: EmailMessage) -> Self {
3944         unsafe { ::std::mem::transmute(value) }
3945     }
3946 }
3947 impl ::std::convert::From<&EmailMessage> for ::windows::runtime::IUnknown {
from(value: &EmailMessage) -> Self3948     fn from(value: &EmailMessage) -> Self {
3949         ::std::convert::From::from(::std::clone::Clone::clone(value))
3950     }
3951 }
3952 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EmailMessage {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3953     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3954         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
3955     }
3956 }
3957 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EmailMessage {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>3958     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
3959         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
3960     }
3961 }
3962 impl ::std::convert::From<EmailMessage> for ::windows::runtime::IInspectable {
from(value: EmailMessage) -> Self3963     fn from(value: EmailMessage) -> Self {
3964         value.0
3965     }
3966 }
3967 impl ::std::convert::From<&EmailMessage> for ::windows::runtime::IInspectable {
from(value: &EmailMessage) -> Self3968     fn from(value: &EmailMessage) -> Self {
3969         value.0.clone()
3970     }
3971 }
3972 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EmailMessage {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>3973     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3974         ::windows::runtime::Param::Owned(self.0)
3975     }
3976 }
3977 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EmailMessage {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>3978     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
3979         ::windows::runtime::Param::Borrowed(&self.0)
3980     }
3981 }
3982 unsafe impl ::std::marker::Send for EmailMessage {}
3983 unsafe impl ::std::marker::Sync for EmailMessage {}
3984 #[repr(transparent)]
3985 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
3986 pub struct EmailMessageBatch(::windows::runtime::IInspectable);
3987 impl EmailMessageBatch {
3988     #[cfg(feature = "Foundation_Collections")]
Messages(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<EmailMessage>>3989     pub fn Messages(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<EmailMessage>> {
3990         let this = self;
3991         unsafe {
3992             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
3993             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVectorView<EmailMessage>>(result__)
3994         }
3995     }
Status(&self) -> ::windows::runtime::Result<EmailBatchStatus>3996     pub fn Status(&self) -> ::windows::runtime::Result<EmailBatchStatus> {
3997         let this = self;
3998         unsafe {
3999             let mut result__: EmailBatchStatus = ::std::mem::zeroed();
4000             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailBatchStatus>(result__)
4001         }
4002     }
4003 }
4004 unsafe impl ::windows::runtime::RuntimeType for EmailMessageBatch {
4005     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.ApplicationModel.Email.EmailMessageBatch;{605cd08f-25d9-4f1b-9e51-0514c0149653})");
4006 }
4007 unsafe impl ::windows::runtime::Interface for EmailMessageBatch {
4008     type Vtable = IEmailMessageBatch_abi;
4009     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1616695439, 9689, 20251, [158, 81, 5, 20, 192, 20, 150, 83]);
4010 }
4011 impl ::windows::runtime::RuntimeName for EmailMessageBatch {
4012     const NAME: &'static str = "Windows.ApplicationModel.Email.EmailMessageBatch";
4013 }
4014 impl ::std::convert::From<EmailMessageBatch> for ::windows::runtime::IUnknown {
from(value: EmailMessageBatch) -> Self4015     fn from(value: EmailMessageBatch) -> Self {
4016         unsafe { ::std::mem::transmute(value) }
4017     }
4018 }
4019 impl ::std::convert::From<&EmailMessageBatch> for ::windows::runtime::IUnknown {
from(value: &EmailMessageBatch) -> Self4020     fn from(value: &EmailMessageBatch) -> Self {
4021         ::std::convert::From::from(::std::clone::Clone::clone(value))
4022     }
4023 }
4024 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EmailMessageBatch {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>4025     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4026         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
4027     }
4028 }
4029 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EmailMessageBatch {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>4030     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4031         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
4032     }
4033 }
4034 impl ::std::convert::From<EmailMessageBatch> for ::windows::runtime::IInspectable {
from(value: EmailMessageBatch) -> Self4035     fn from(value: EmailMessageBatch) -> Self {
4036         value.0
4037     }
4038 }
4039 impl ::std::convert::From<&EmailMessageBatch> for ::windows::runtime::IInspectable {
from(value: &EmailMessageBatch) -> Self4040     fn from(value: &EmailMessageBatch) -> Self {
4041         value.0.clone()
4042     }
4043 }
4044 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EmailMessageBatch {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>4045     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4046         ::windows::runtime::Param::Owned(self.0)
4047     }
4048 }
4049 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EmailMessageBatch {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>4050     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4051         ::windows::runtime::Param::Borrowed(&self.0)
4052     }
4053 }
4054 unsafe impl ::std::marker::Send for EmailMessageBatch {}
4055 unsafe impl ::std::marker::Sync for EmailMessageBatch {}
4056 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
4057 #[repr(transparent)]
4058 pub struct EmailMessageBodyKind(pub i32);
4059 impl EmailMessageBodyKind {
4060     pub const Html: EmailMessageBodyKind = EmailMessageBodyKind(0i32);
4061     pub const PlainText: EmailMessageBodyKind = EmailMessageBodyKind(1i32);
4062 }
4063 impl ::std::convert::From<i32> for EmailMessageBodyKind {
from(value: i32) -> Self4064     fn from(value: i32) -> Self {
4065         Self(value)
4066     }
4067 }
4068 unsafe impl ::windows::runtime::Abi for EmailMessageBodyKind {
4069     type Abi = Self;
4070     type DefaultType = Self;
4071 }
4072 unsafe impl ::windows::runtime::RuntimeType for EmailMessageBodyKind {
4073     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.ApplicationModel.Email.EmailMessageBodyKind;i4)");
4074 }
4075 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
4076 #[repr(transparent)]
4077 pub struct EmailMessageDownloadState(pub i32);
4078 impl EmailMessageDownloadState {
4079     pub const PartiallyDownloaded: EmailMessageDownloadState = EmailMessageDownloadState(0i32);
4080     pub const Downloading: EmailMessageDownloadState = EmailMessageDownloadState(1i32);
4081     pub const Downloaded: EmailMessageDownloadState = EmailMessageDownloadState(2i32);
4082     pub const Failed: EmailMessageDownloadState = EmailMessageDownloadState(3i32);
4083 }
4084 impl ::std::convert::From<i32> for EmailMessageDownloadState {
from(value: i32) -> Self4085     fn from(value: i32) -> Self {
4086         Self(value)
4087     }
4088 }
4089 unsafe impl ::windows::runtime::Abi for EmailMessageDownloadState {
4090     type Abi = Self;
4091     type DefaultType = Self;
4092 }
4093 unsafe impl ::windows::runtime::RuntimeType for EmailMessageDownloadState {
4094     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.ApplicationModel.Email.EmailMessageDownloadState;i4)");
4095 }
4096 #[repr(transparent)]
4097 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4098 pub struct EmailMessageReader(::windows::runtime::IInspectable);
4099 impl EmailMessageReader {
4100     #[cfg(feature = "Foundation")]
ReadBatchAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailMessageBatch>>4101     pub fn ReadBatchAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailMessageBatch>> {
4102         let this = self;
4103         unsafe {
4104             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4105             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<EmailMessageBatch>>(result__)
4106         }
4107     }
4108 }
4109 unsafe impl ::windows::runtime::RuntimeType for EmailMessageReader {
4110     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.ApplicationModel.Email.EmailMessageReader;{2f4abe9f-6213-4a85-a3b0-f92d1a839d19})");
4111 }
4112 unsafe impl ::windows::runtime::Interface for EmailMessageReader {
4113     type Vtable = IEmailMessageReader_abi;
4114     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(793427615, 25107, 19077, [163, 176, 249, 45, 26, 131, 157, 25]);
4115 }
4116 impl ::windows::runtime::RuntimeName for EmailMessageReader {
4117     const NAME: &'static str = "Windows.ApplicationModel.Email.EmailMessageReader";
4118 }
4119 impl ::std::convert::From<EmailMessageReader> for ::windows::runtime::IUnknown {
from(value: EmailMessageReader) -> Self4120     fn from(value: EmailMessageReader) -> Self {
4121         unsafe { ::std::mem::transmute(value) }
4122     }
4123 }
4124 impl ::std::convert::From<&EmailMessageReader> for ::windows::runtime::IUnknown {
from(value: &EmailMessageReader) -> Self4125     fn from(value: &EmailMessageReader) -> Self {
4126         ::std::convert::From::from(::std::clone::Clone::clone(value))
4127     }
4128 }
4129 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EmailMessageReader {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>4130     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4131         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
4132     }
4133 }
4134 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EmailMessageReader {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>4135     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4136         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
4137     }
4138 }
4139 impl ::std::convert::From<EmailMessageReader> for ::windows::runtime::IInspectable {
from(value: EmailMessageReader) -> Self4140     fn from(value: EmailMessageReader) -> Self {
4141         value.0
4142     }
4143 }
4144 impl ::std::convert::From<&EmailMessageReader> for ::windows::runtime::IInspectable {
from(value: &EmailMessageReader) -> Self4145     fn from(value: &EmailMessageReader) -> Self {
4146         value.0.clone()
4147     }
4148 }
4149 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EmailMessageReader {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>4150     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4151         ::windows::runtime::Param::Owned(self.0)
4152     }
4153 }
4154 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EmailMessageReader {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>4155     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4156         ::windows::runtime::Param::Borrowed(&self.0)
4157     }
4158 }
4159 unsafe impl ::std::marker::Send for EmailMessageReader {}
4160 unsafe impl ::std::marker::Sync for EmailMessageReader {}
4161 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
4162 #[repr(transparent)]
4163 pub struct EmailMessageResponseKind(pub i32);
4164 impl EmailMessageResponseKind {
4165     pub const None: EmailMessageResponseKind = EmailMessageResponseKind(0i32);
4166     pub const Reply: EmailMessageResponseKind = EmailMessageResponseKind(1i32);
4167     pub const ReplyAll: EmailMessageResponseKind = EmailMessageResponseKind(2i32);
4168     pub const Forward: EmailMessageResponseKind = EmailMessageResponseKind(3i32);
4169 }
4170 impl ::std::convert::From<i32> for EmailMessageResponseKind {
from(value: i32) -> Self4171     fn from(value: i32) -> Self {
4172         Self(value)
4173     }
4174 }
4175 unsafe impl ::windows::runtime::Abi for EmailMessageResponseKind {
4176     type Abi = Self;
4177     type DefaultType = Self;
4178 }
4179 unsafe impl ::windows::runtime::RuntimeType for EmailMessageResponseKind {
4180     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.ApplicationModel.Email.EmailMessageResponseKind;i4)");
4181 }
4182 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
4183 #[repr(transparent)]
4184 pub struct EmailMessageSmimeKind(pub i32);
4185 impl EmailMessageSmimeKind {
4186     pub const None: EmailMessageSmimeKind = EmailMessageSmimeKind(0i32);
4187     pub const ClearSigned: EmailMessageSmimeKind = EmailMessageSmimeKind(1i32);
4188     pub const OpaqueSigned: EmailMessageSmimeKind = EmailMessageSmimeKind(2i32);
4189     pub const Encrypted: EmailMessageSmimeKind = EmailMessageSmimeKind(3i32);
4190 }
4191 impl ::std::convert::From<i32> for EmailMessageSmimeKind {
from(value: i32) -> Self4192     fn from(value: i32) -> Self {
4193         Self(value)
4194     }
4195 }
4196 unsafe impl ::windows::runtime::Abi for EmailMessageSmimeKind {
4197     type Abi = Self;
4198     type DefaultType = Self;
4199 }
4200 unsafe impl ::windows::runtime::RuntimeType for EmailMessageSmimeKind {
4201     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.ApplicationModel.Email.EmailMessageSmimeKind;i4)");
4202 }
4203 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
4204 #[repr(transparent)]
4205 pub struct EmailQueryKind(pub i32);
4206 impl EmailQueryKind {
4207     pub const All: EmailQueryKind = EmailQueryKind(0i32);
4208     pub const Important: EmailQueryKind = EmailQueryKind(1i32);
4209     pub const Flagged: EmailQueryKind = EmailQueryKind(2i32);
4210     pub const Unread: EmailQueryKind = EmailQueryKind(3i32);
4211     pub const Read: EmailQueryKind = EmailQueryKind(4i32);
4212     pub const Unseen: EmailQueryKind = EmailQueryKind(5i32);
4213 }
4214 impl ::std::convert::From<i32> for EmailQueryKind {
from(value: i32) -> Self4215     fn from(value: i32) -> Self {
4216         Self(value)
4217     }
4218 }
4219 unsafe impl ::windows::runtime::Abi for EmailQueryKind {
4220     type Abi = Self;
4221     type DefaultType = Self;
4222 }
4223 unsafe impl ::windows::runtime::RuntimeType for EmailQueryKind {
4224     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.ApplicationModel.Email.EmailQueryKind;i4)");
4225 }
4226 #[repr(transparent)]
4227 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4228 pub struct EmailQueryOptions(::windows::runtime::IInspectable);
4229 impl EmailQueryOptions {
new() -> ::windows::runtime::Result<Self>4230     pub fn new() -> ::windows::runtime::Result<Self> {
4231         Self::IActivationFactory(|f| f.activate_instance::<Self>())
4232     }
IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>4233     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
4234         static mut SHARED: ::windows::runtime::FactoryCache<EmailQueryOptions, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
4235         unsafe { SHARED.call(callback) }
4236     }
TextSearch(&self) -> ::windows::runtime::Result<EmailQueryTextSearch>4237     pub fn TextSearch(&self) -> ::windows::runtime::Result<EmailQueryTextSearch> {
4238         let this = self;
4239         unsafe {
4240             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4241             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailQueryTextSearch>(result__)
4242         }
4243     }
SortDirection(&self) -> ::windows::runtime::Result<EmailQuerySortDirection>4244     pub fn SortDirection(&self) -> ::windows::runtime::Result<EmailQuerySortDirection> {
4245         let this = self;
4246         unsafe {
4247             let mut result__: EmailQuerySortDirection = ::std::mem::zeroed();
4248             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailQuerySortDirection>(result__)
4249         }
4250     }
SetSortDirection(&self, value: EmailQuerySortDirection) -> ::windows::runtime::Result<()>4251     pub fn SetSortDirection(&self, value: EmailQuerySortDirection) -> ::windows::runtime::Result<()> {
4252         let this = self;
4253         unsafe { (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), value).ok() }
4254     }
SortProperty(&self) -> ::windows::runtime::Result<EmailQuerySortProperty>4255     pub fn SortProperty(&self) -> ::windows::runtime::Result<EmailQuerySortProperty> {
4256         let this = self;
4257         unsafe {
4258             let mut result__: EmailQuerySortProperty = ::std::mem::zeroed();
4259             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailQuerySortProperty>(result__)
4260         }
4261     }
SetSortProperty(&self, value: EmailQuerySortProperty) -> ::windows::runtime::Result<()>4262     pub fn SetSortProperty(&self, value: EmailQuerySortProperty) -> ::windows::runtime::Result<()> {
4263         let this = self;
4264         unsafe { (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), value).ok() }
4265     }
Kind(&self) -> ::windows::runtime::Result<EmailQueryKind>4266     pub fn Kind(&self) -> ::windows::runtime::Result<EmailQueryKind> {
4267         let this = self;
4268         unsafe {
4269             let mut result__: EmailQueryKind = ::std::mem::zeroed();
4270             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailQueryKind>(result__)
4271         }
4272     }
SetKind(&self, value: EmailQueryKind) -> ::windows::runtime::Result<()>4273     pub fn SetKind(&self, value: EmailQueryKind) -> ::windows::runtime::Result<()> {
4274         let this = self;
4275         unsafe { (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), value).ok() }
4276     }
4277     #[cfg(feature = "Foundation_Collections")]
FolderIds(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<::windows::runtime::HSTRING>>4278     pub fn FolderIds(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVector<::windows::runtime::HSTRING>> {
4279         let this = self;
4280         unsafe {
4281             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4282             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVector<::windows::runtime::HSTRING>>(result__)
4283         }
4284     }
CreateWithText<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(text: Param0) -> ::windows::runtime::Result<EmailQueryOptions>4285     pub fn CreateWithText<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(text: Param0) -> ::windows::runtime::Result<EmailQueryOptions> {
4286         Self::IEmailQueryOptionsFactory(|this| unsafe {
4287             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4288             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), text.into_param().abi(), &mut result__).from_abi::<EmailQueryOptions>(result__)
4289         })
4290     }
CreateWithTextAndFields<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(text: Param0, fields: EmailQuerySearchFields) -> ::windows::runtime::Result<EmailQueryOptions>4291     pub fn CreateWithTextAndFields<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(text: Param0, fields: EmailQuerySearchFields) -> ::windows::runtime::Result<EmailQueryOptions> {
4292         Self::IEmailQueryOptionsFactory(|this| unsafe {
4293             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4294             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), text.into_param().abi(), fields, &mut result__).from_abi::<EmailQueryOptions>(result__)
4295         })
4296     }
IEmailQueryOptionsFactory<R, F: FnOnce(&IEmailQueryOptionsFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>4297     pub fn IEmailQueryOptionsFactory<R, F: FnOnce(&IEmailQueryOptionsFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
4298         static mut SHARED: ::windows::runtime::FactoryCache<EmailQueryOptions, IEmailQueryOptionsFactory> = ::windows::runtime::FactoryCache::new();
4299         unsafe { SHARED.call(callback) }
4300     }
4301 }
4302 unsafe impl ::windows::runtime::RuntimeType for EmailQueryOptions {
4303     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.ApplicationModel.Email.EmailQueryOptions;{45504b9b-3e7f-4d52-b6dd-d6fd4e1fbd9a})");
4304 }
4305 unsafe impl ::windows::runtime::Interface for EmailQueryOptions {
4306     type Vtable = IEmailQueryOptions_abi;
4307     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1162890139, 15999, 19794, [182, 221, 214, 253, 78, 31, 189, 154]);
4308 }
4309 impl ::windows::runtime::RuntimeName for EmailQueryOptions {
4310     const NAME: &'static str = "Windows.ApplicationModel.Email.EmailQueryOptions";
4311 }
4312 impl ::std::convert::From<EmailQueryOptions> for ::windows::runtime::IUnknown {
from(value: EmailQueryOptions) -> Self4313     fn from(value: EmailQueryOptions) -> Self {
4314         unsafe { ::std::mem::transmute(value) }
4315     }
4316 }
4317 impl ::std::convert::From<&EmailQueryOptions> for ::windows::runtime::IUnknown {
from(value: &EmailQueryOptions) -> Self4318     fn from(value: &EmailQueryOptions) -> Self {
4319         ::std::convert::From::from(::std::clone::Clone::clone(value))
4320     }
4321 }
4322 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EmailQueryOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>4323     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4324         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
4325     }
4326 }
4327 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EmailQueryOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>4328     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4329         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
4330     }
4331 }
4332 impl ::std::convert::From<EmailQueryOptions> for ::windows::runtime::IInspectable {
from(value: EmailQueryOptions) -> Self4333     fn from(value: EmailQueryOptions) -> Self {
4334         value.0
4335     }
4336 }
4337 impl ::std::convert::From<&EmailQueryOptions> for ::windows::runtime::IInspectable {
from(value: &EmailQueryOptions) -> Self4338     fn from(value: &EmailQueryOptions) -> Self {
4339         value.0.clone()
4340     }
4341 }
4342 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EmailQueryOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>4343     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4344         ::windows::runtime::Param::Owned(self.0)
4345     }
4346 }
4347 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EmailQueryOptions {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>4348     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4349         ::windows::runtime::Param::Borrowed(&self.0)
4350     }
4351 }
4352 unsafe impl ::std::marker::Send for EmailQueryOptions {}
4353 unsafe impl ::std::marker::Sync for EmailQueryOptions {}
4354 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
4355 #[repr(transparent)]
4356 pub struct EmailQuerySearchFields(pub u32);
4357 impl EmailQuerySearchFields {
4358     pub const None: EmailQuerySearchFields = EmailQuerySearchFields(0u32);
4359     pub const Subject: EmailQuerySearchFields = EmailQuerySearchFields(1u32);
4360     pub const Sender: EmailQuerySearchFields = EmailQuerySearchFields(2u32);
4361     pub const Preview: EmailQuerySearchFields = EmailQuerySearchFields(4u32);
4362     pub const Recipients: EmailQuerySearchFields = EmailQuerySearchFields(8u32);
4363     pub const All: EmailQuerySearchFields = EmailQuerySearchFields(4294967295u32);
4364 }
4365 impl ::std::convert::From<u32> for EmailQuerySearchFields {
from(value: u32) -> Self4366     fn from(value: u32) -> Self {
4367         Self(value)
4368     }
4369 }
4370 unsafe impl ::windows::runtime::Abi for EmailQuerySearchFields {
4371     type Abi = Self;
4372     type DefaultType = Self;
4373 }
4374 unsafe impl ::windows::runtime::RuntimeType for EmailQuerySearchFields {
4375     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.ApplicationModel.Email.EmailQuerySearchFields;u4)");
4376 }
4377 impl ::std::ops::BitOr for EmailQuerySearchFields {
4378     type Output = Self;
bitor(self, rhs: Self) -> Self4379     fn bitor(self, rhs: Self) -> Self {
4380         Self(self.0 | rhs.0)
4381     }
4382 }
4383 impl ::std::ops::BitAnd for EmailQuerySearchFields {
4384     type Output = Self;
bitand(self, rhs: Self) -> Self4385     fn bitand(self, rhs: Self) -> Self {
4386         Self(self.0 & rhs.0)
4387     }
4388 }
4389 impl ::std::ops::BitOrAssign for EmailQuerySearchFields {
bitor_assign(&mut self, rhs: Self)4390     fn bitor_assign(&mut self, rhs: Self) {
4391         self.0.bitor_assign(rhs.0)
4392     }
4393 }
4394 impl ::std::ops::BitAndAssign for EmailQuerySearchFields {
bitand_assign(&mut self, rhs: Self)4395     fn bitand_assign(&mut self, rhs: Self) {
4396         self.0.bitand_assign(rhs.0)
4397     }
4398 }
4399 impl ::std::ops::Not for EmailQuerySearchFields {
4400     type Output = Self;
not(self) -> Self4401     fn not(self) -> Self {
4402         Self(self.0.not())
4403     }
4404 }
4405 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
4406 #[repr(transparent)]
4407 pub struct EmailQuerySearchScope(pub i32);
4408 impl EmailQuerySearchScope {
4409     pub const Local: EmailQuerySearchScope = EmailQuerySearchScope(0i32);
4410     pub const Server: EmailQuerySearchScope = EmailQuerySearchScope(1i32);
4411 }
4412 impl ::std::convert::From<i32> for EmailQuerySearchScope {
from(value: i32) -> Self4413     fn from(value: i32) -> Self {
4414         Self(value)
4415     }
4416 }
4417 unsafe impl ::windows::runtime::Abi for EmailQuerySearchScope {
4418     type Abi = Self;
4419     type DefaultType = Self;
4420 }
4421 unsafe impl ::windows::runtime::RuntimeType for EmailQuerySearchScope {
4422     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.ApplicationModel.Email.EmailQuerySearchScope;i4)");
4423 }
4424 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
4425 #[repr(transparent)]
4426 pub struct EmailQuerySortDirection(pub i32);
4427 impl EmailQuerySortDirection {
4428     pub const Descending: EmailQuerySortDirection = EmailQuerySortDirection(0i32);
4429     pub const Ascending: EmailQuerySortDirection = EmailQuerySortDirection(1i32);
4430 }
4431 impl ::std::convert::From<i32> for EmailQuerySortDirection {
from(value: i32) -> Self4432     fn from(value: i32) -> Self {
4433         Self(value)
4434     }
4435 }
4436 unsafe impl ::windows::runtime::Abi for EmailQuerySortDirection {
4437     type Abi = Self;
4438     type DefaultType = Self;
4439 }
4440 unsafe impl ::windows::runtime::RuntimeType for EmailQuerySortDirection {
4441     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.ApplicationModel.Email.EmailQuerySortDirection;i4)");
4442 }
4443 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
4444 #[repr(transparent)]
4445 pub struct EmailQuerySortProperty(pub i32);
4446 impl EmailQuerySortProperty {
4447     pub const Date: EmailQuerySortProperty = EmailQuerySortProperty(0i32);
4448 }
4449 impl ::std::convert::From<i32> for EmailQuerySortProperty {
from(value: i32) -> Self4450     fn from(value: i32) -> Self {
4451         Self(value)
4452     }
4453 }
4454 unsafe impl ::windows::runtime::Abi for EmailQuerySortProperty {
4455     type Abi = Self;
4456     type DefaultType = Self;
4457 }
4458 unsafe impl ::windows::runtime::RuntimeType for EmailQuerySortProperty {
4459     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.ApplicationModel.Email.EmailQuerySortProperty;i4)");
4460 }
4461 #[repr(transparent)]
4462 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4463 pub struct EmailQueryTextSearch(::windows::runtime::IInspectable);
4464 impl EmailQueryTextSearch {
Fields(&self) -> ::windows::runtime::Result<EmailQuerySearchFields>4465     pub fn Fields(&self) -> ::windows::runtime::Result<EmailQuerySearchFields> {
4466         let this = self;
4467         unsafe {
4468             let mut result__: EmailQuerySearchFields = ::std::mem::zeroed();
4469             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailQuerySearchFields>(result__)
4470         }
4471     }
SetFields(&self, value: EmailQuerySearchFields) -> ::windows::runtime::Result<()>4472     pub fn SetFields(&self, value: EmailQuerySearchFields) -> ::windows::runtime::Result<()> {
4473         let this = self;
4474         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value).ok() }
4475     }
SearchScope(&self) -> ::windows::runtime::Result<EmailQuerySearchScope>4476     pub fn SearchScope(&self) -> ::windows::runtime::Result<EmailQuerySearchScope> {
4477         let this = self;
4478         unsafe {
4479             let mut result__: EmailQuerySearchScope = ::std::mem::zeroed();
4480             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailQuerySearchScope>(result__)
4481         }
4482     }
SetSearchScope(&self, value: EmailQuerySearchScope) -> ::windows::runtime::Result<()>4483     pub fn SetSearchScope(&self, value: EmailQuerySearchScope) -> ::windows::runtime::Result<()> {
4484         let this = self;
4485         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value).ok() }
4486     }
Text(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>4487     pub fn Text(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
4488         let this = self;
4489         unsafe {
4490             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
4491             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
4492         }
4493     }
SetText<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()>4494     pub fn SetText<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
4495         let this = self;
4496         unsafe { (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
4497     }
4498 }
4499 unsafe impl ::windows::runtime::RuntimeType for EmailQueryTextSearch {
4500     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.ApplicationModel.Email.EmailQueryTextSearch;{9fa0a288-3c5d-46a5-a6e2-31d6fd17e540})");
4501 }
4502 unsafe impl ::windows::runtime::Interface for EmailQueryTextSearch {
4503     type Vtable = IEmailQueryTextSearch_abi;
4504     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2678104712, 15453, 18085, [166, 226, 49, 214, 253, 23, 229, 64]);
4505 }
4506 impl ::windows::runtime::RuntimeName for EmailQueryTextSearch {
4507     const NAME: &'static str = "Windows.ApplicationModel.Email.EmailQueryTextSearch";
4508 }
4509 impl ::std::convert::From<EmailQueryTextSearch> for ::windows::runtime::IUnknown {
from(value: EmailQueryTextSearch) -> Self4510     fn from(value: EmailQueryTextSearch) -> Self {
4511         unsafe { ::std::mem::transmute(value) }
4512     }
4513 }
4514 impl ::std::convert::From<&EmailQueryTextSearch> for ::windows::runtime::IUnknown {
from(value: &EmailQueryTextSearch) -> Self4515     fn from(value: &EmailQueryTextSearch) -> Self {
4516         ::std::convert::From::from(::std::clone::Clone::clone(value))
4517     }
4518 }
4519 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EmailQueryTextSearch {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>4520     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4521         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
4522     }
4523 }
4524 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EmailQueryTextSearch {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>4525     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4526         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
4527     }
4528 }
4529 impl ::std::convert::From<EmailQueryTextSearch> for ::windows::runtime::IInspectable {
from(value: EmailQueryTextSearch) -> Self4530     fn from(value: EmailQueryTextSearch) -> Self {
4531         value.0
4532     }
4533 }
4534 impl ::std::convert::From<&EmailQueryTextSearch> for ::windows::runtime::IInspectable {
from(value: &EmailQueryTextSearch) -> Self4535     fn from(value: &EmailQueryTextSearch) -> Self {
4536         value.0.clone()
4537     }
4538 }
4539 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EmailQueryTextSearch {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>4540     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4541         ::windows::runtime::Param::Owned(self.0)
4542     }
4543 }
4544 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EmailQueryTextSearch {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>4545     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4546         ::windows::runtime::Param::Borrowed(&self.0)
4547     }
4548 }
4549 unsafe impl ::std::marker::Send for EmailQueryTextSearch {}
4550 unsafe impl ::std::marker::Sync for EmailQueryTextSearch {}
4551 #[repr(transparent)]
4552 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4553 pub struct EmailRecipient(::windows::runtime::IInspectable);
4554 impl EmailRecipient {
new() -> ::windows::runtime::Result<Self>4555     pub fn new() -> ::windows::runtime::Result<Self> {
4556         Self::IActivationFactory(|f| f.activate_instance::<Self>())
4557     }
IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>4558     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
4559         static mut SHARED: ::windows::runtime::FactoryCache<EmailRecipient, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
4560         unsafe { SHARED.call(callback) }
4561     }
Name(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>4562     pub fn Name(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
4563         let this = self;
4564         unsafe {
4565             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
4566             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
4567         }
4568     }
SetName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()>4569     pub fn SetName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
4570         let this = self;
4571         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
4572     }
Address(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING>4573     pub fn Address(&self) -> ::windows::runtime::Result<::windows::runtime::HSTRING> {
4574         let this = self;
4575         unsafe {
4576             let mut result__: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING> = ::std::mem::zeroed();
4577             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), &mut result__).from_abi::<::windows::runtime::HSTRING>(result__)
4578         }
4579     }
SetAddress<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()>4580     pub fn SetAddress<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
4581         let this = self;
4582         unsafe { (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
4583     }
Create<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(address: Param0) -> ::windows::runtime::Result<EmailRecipient>4584     pub fn Create<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(address: Param0) -> ::windows::runtime::Result<EmailRecipient> {
4585         Self::IEmailRecipientFactory(|this| unsafe {
4586             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4587             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), address.into_param().abi(), &mut result__).from_abi::<EmailRecipient>(result__)
4588         })
4589     }
CreateWithName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(address: Param0, name: Param1) -> ::windows::runtime::Result<EmailRecipient>4590     pub fn CreateWithName<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(address: Param0, name: Param1) -> ::windows::runtime::Result<EmailRecipient> {
4591         Self::IEmailRecipientFactory(|this| unsafe {
4592             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4593             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), address.into_param().abi(), name.into_param().abi(), &mut result__).from_abi::<EmailRecipient>(result__)
4594         })
4595     }
IEmailRecipientFactory<R, F: FnOnce(&IEmailRecipientFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>4596     pub fn IEmailRecipientFactory<R, F: FnOnce(&IEmailRecipientFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
4597         static mut SHARED: ::windows::runtime::FactoryCache<EmailRecipient, IEmailRecipientFactory> = ::windows::runtime::FactoryCache::new();
4598         unsafe { SHARED.call(callback) }
4599     }
4600 }
4601 unsafe impl ::windows::runtime::RuntimeType for EmailRecipient {
4602     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.ApplicationModel.Email.EmailRecipient;{cae825b3-4478-4814-b900-c902b5e19b53})");
4603 }
4604 unsafe impl ::windows::runtime::Interface for EmailRecipient {
4605     type Vtable = IEmailRecipient_abi;
4606     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3404211635, 17528, 18452, [185, 0, 201, 2, 181, 225, 155, 83]);
4607 }
4608 impl ::windows::runtime::RuntimeName for EmailRecipient {
4609     const NAME: &'static str = "Windows.ApplicationModel.Email.EmailRecipient";
4610 }
4611 impl ::std::convert::From<EmailRecipient> for ::windows::runtime::IUnknown {
from(value: EmailRecipient) -> Self4612     fn from(value: EmailRecipient) -> Self {
4613         unsafe { ::std::mem::transmute(value) }
4614     }
4615 }
4616 impl ::std::convert::From<&EmailRecipient> for ::windows::runtime::IUnknown {
from(value: &EmailRecipient) -> Self4617     fn from(value: &EmailRecipient) -> Self {
4618         ::std::convert::From::from(::std::clone::Clone::clone(value))
4619     }
4620 }
4621 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EmailRecipient {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>4622     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4623         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
4624     }
4625 }
4626 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EmailRecipient {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>4627     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4628         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
4629     }
4630 }
4631 impl ::std::convert::From<EmailRecipient> for ::windows::runtime::IInspectable {
from(value: EmailRecipient) -> Self4632     fn from(value: EmailRecipient) -> Self {
4633         value.0
4634     }
4635 }
4636 impl ::std::convert::From<&EmailRecipient> for ::windows::runtime::IInspectable {
from(value: &EmailRecipient) -> Self4637     fn from(value: &EmailRecipient) -> Self {
4638         value.0.clone()
4639     }
4640 }
4641 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EmailRecipient {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>4642     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4643         ::windows::runtime::Param::Owned(self.0)
4644     }
4645 }
4646 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EmailRecipient {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>4647     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4648         ::windows::runtime::Param::Borrowed(&self.0)
4649     }
4650 }
4651 unsafe impl ::std::marker::Send for EmailRecipient {}
4652 unsafe impl ::std::marker::Sync for EmailRecipient {}
4653 #[repr(transparent)]
4654 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4655 pub struct EmailRecipientResolutionResult(::windows::runtime::IInspectable);
4656 impl EmailRecipientResolutionResult {
new() -> ::windows::runtime::Result<Self>4657     pub fn new() -> ::windows::runtime::Result<Self> {
4658         Self::IActivationFactory(|f| f.activate_instance::<Self>())
4659     }
IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R>4660     fn IActivationFactory<R, F: FnOnce(&::windows::runtime::IActivationFactory) -> ::windows::runtime::Result<R>>(callback: F) -> ::windows::runtime::Result<R> {
4661         static mut SHARED: ::windows::runtime::FactoryCache<EmailRecipientResolutionResult, ::windows::runtime::IActivationFactory> = ::windows::runtime::FactoryCache::new();
4662         unsafe { SHARED.call(callback) }
4663     }
Status(&self) -> ::windows::runtime::Result<EmailRecipientResolutionStatus>4664     pub fn Status(&self) -> ::windows::runtime::Result<EmailRecipientResolutionStatus> {
4665         let this = self;
4666         unsafe {
4667             let mut result__: EmailRecipientResolutionStatus = ::std::mem::zeroed();
4668             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailRecipientResolutionStatus>(result__)
4669         }
4670     }
4671     #[cfg(all(feature = "Foundation_Collections", feature = "Security_Cryptography_Certificates"))]
PublicKeys(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<super::super::Security::Cryptography::Certificates::Certificate>>4672     pub fn PublicKeys(&self) -> ::windows::runtime::Result<super::super::Foundation::Collections::IVectorView<super::super::Security::Cryptography::Certificates::Certificate>> {
4673         let this = self;
4674         unsafe {
4675             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4676             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::Collections::IVectorView<super::super::Security::Cryptography::Certificates::Certificate>>(result__)
4677         }
4678     }
SetStatus(&self, value: EmailRecipientResolutionStatus) -> ::windows::runtime::Result<()>4679     pub fn SetStatus(&self, value: EmailRecipientResolutionStatus) -> ::windows::runtime::Result<()> {
4680         let this = &::windows::runtime::Interface::cast::<IEmailRecipientResolutionResult2>(self)?;
4681         unsafe { (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), value).ok() }
4682     }
4683     #[cfg(all(feature = "Foundation_Collections", feature = "Security_Cryptography_Certificates"))]
SetPublicKeys<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Security::Cryptography::Certificates::Certificate>>>(&self, value: Param0) -> ::windows::runtime::Result<()>4684     pub fn SetPublicKeys<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::Collections::IIterable<super::super::Security::Cryptography::Certificates::Certificate>>>(&self, value: Param0) -> ::windows::runtime::Result<()> {
4685         let this = &::windows::runtime::Interface::cast::<IEmailRecipientResolutionResult2>(self)?;
4686         unsafe { (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), value.into_param().abi()).ok() }
4687     }
4688 }
4689 unsafe impl ::windows::runtime::RuntimeType for EmailRecipientResolutionResult {
4690     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.ApplicationModel.Email.EmailRecipientResolutionResult;{918338fa-8d8d-4573-80d1-07172a34b98d})");
4691 }
4692 unsafe impl ::windows::runtime::Interface for EmailRecipientResolutionResult {
4693     type Vtable = IEmailRecipientResolutionResult_abi;
4694     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2441296122, 36237, 17779, [128, 209, 7, 23, 42, 52, 185, 141]);
4695 }
4696 impl ::windows::runtime::RuntimeName for EmailRecipientResolutionResult {
4697     const NAME: &'static str = "Windows.ApplicationModel.Email.EmailRecipientResolutionResult";
4698 }
4699 impl ::std::convert::From<EmailRecipientResolutionResult> for ::windows::runtime::IUnknown {
from(value: EmailRecipientResolutionResult) -> Self4700     fn from(value: EmailRecipientResolutionResult) -> Self {
4701         unsafe { ::std::mem::transmute(value) }
4702     }
4703 }
4704 impl ::std::convert::From<&EmailRecipientResolutionResult> for ::windows::runtime::IUnknown {
from(value: &EmailRecipientResolutionResult) -> Self4705     fn from(value: &EmailRecipientResolutionResult) -> Self {
4706         ::std::convert::From::from(::std::clone::Clone::clone(value))
4707     }
4708 }
4709 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EmailRecipientResolutionResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>4710     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4711         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
4712     }
4713 }
4714 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EmailRecipientResolutionResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>4715     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4716         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
4717     }
4718 }
4719 impl ::std::convert::From<EmailRecipientResolutionResult> for ::windows::runtime::IInspectable {
from(value: EmailRecipientResolutionResult) -> Self4720     fn from(value: EmailRecipientResolutionResult) -> Self {
4721         value.0
4722     }
4723 }
4724 impl ::std::convert::From<&EmailRecipientResolutionResult> for ::windows::runtime::IInspectable {
from(value: &EmailRecipientResolutionResult) -> Self4725     fn from(value: &EmailRecipientResolutionResult) -> Self {
4726         value.0.clone()
4727     }
4728 }
4729 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EmailRecipientResolutionResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>4730     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4731         ::windows::runtime::Param::Owned(self.0)
4732     }
4733 }
4734 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EmailRecipientResolutionResult {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>4735     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4736         ::windows::runtime::Param::Borrowed(&self.0)
4737     }
4738 }
4739 unsafe impl ::std::marker::Send for EmailRecipientResolutionResult {}
4740 unsafe impl ::std::marker::Sync for EmailRecipientResolutionResult {}
4741 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
4742 #[repr(transparent)]
4743 pub struct EmailRecipientResolutionStatus(pub i32);
4744 impl EmailRecipientResolutionStatus {
4745     pub const Success: EmailRecipientResolutionStatus = EmailRecipientResolutionStatus(0i32);
4746     pub const RecipientNotFound: EmailRecipientResolutionStatus = EmailRecipientResolutionStatus(1i32);
4747     pub const AmbiguousRecipient: EmailRecipientResolutionStatus = EmailRecipientResolutionStatus(2i32);
4748     pub const NoCertificate: EmailRecipientResolutionStatus = EmailRecipientResolutionStatus(3i32);
4749     pub const CertificateRequestLimitReached: EmailRecipientResolutionStatus = EmailRecipientResolutionStatus(4i32);
4750     pub const CannotResolveDistributionList: EmailRecipientResolutionStatus = EmailRecipientResolutionStatus(5i32);
4751     pub const ServerError: EmailRecipientResolutionStatus = EmailRecipientResolutionStatus(6i32);
4752     pub const UnknownFailure: EmailRecipientResolutionStatus = EmailRecipientResolutionStatus(7i32);
4753 }
4754 impl ::std::convert::From<i32> for EmailRecipientResolutionStatus {
from(value: i32) -> Self4755     fn from(value: i32) -> Self {
4756         Self(value)
4757     }
4758 }
4759 unsafe impl ::windows::runtime::Abi for EmailRecipientResolutionStatus {
4760     type Abi = Self;
4761     type DefaultType = Self;
4762 }
4763 unsafe impl ::windows::runtime::RuntimeType for EmailRecipientResolutionStatus {
4764     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.ApplicationModel.Email.EmailRecipientResolutionStatus;i4)");
4765 }
4766 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
4767 #[repr(transparent)]
4768 pub struct EmailSpecialFolderKind(pub i32);
4769 impl EmailSpecialFolderKind {
4770     pub const None: EmailSpecialFolderKind = EmailSpecialFolderKind(0i32);
4771     pub const Root: EmailSpecialFolderKind = EmailSpecialFolderKind(1i32);
4772     pub const Inbox: EmailSpecialFolderKind = EmailSpecialFolderKind(2i32);
4773     pub const Outbox: EmailSpecialFolderKind = EmailSpecialFolderKind(3i32);
4774     pub const Drafts: EmailSpecialFolderKind = EmailSpecialFolderKind(4i32);
4775     pub const DeletedItems: EmailSpecialFolderKind = EmailSpecialFolderKind(5i32);
4776     pub const Sent: EmailSpecialFolderKind = EmailSpecialFolderKind(6i32);
4777 }
4778 impl ::std::convert::From<i32> for EmailSpecialFolderKind {
from(value: i32) -> Self4779     fn from(value: i32) -> Self {
4780         Self(value)
4781     }
4782 }
4783 unsafe impl ::windows::runtime::Abi for EmailSpecialFolderKind {
4784     type Abi = Self;
4785     type DefaultType = Self;
4786 }
4787 unsafe impl ::windows::runtime::RuntimeType for EmailSpecialFolderKind {
4788     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.ApplicationModel.Email.EmailSpecialFolderKind;i4)");
4789 }
4790 #[repr(transparent)]
4791 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4792 pub struct EmailStore(::windows::runtime::IInspectable);
4793 impl EmailStore {
4794     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
FindMailboxesAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<EmailMailbox>>>4795     pub fn FindMailboxesAsync(&self) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<EmailMailbox>>> {
4796         let this = self;
4797         unsafe {
4798             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4799             (::windows::runtime::Interface::vtable(this).6)(::std::mem::transmute_copy(this), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<super::super::Foundation::Collections::IVectorView<EmailMailbox>>>(result__)
4800         }
4801     }
GetConversationReader(&self) -> ::windows::runtime::Result<EmailConversationReader>4802     pub fn GetConversationReader(&self) -> ::windows::runtime::Result<EmailConversationReader> {
4803         let this = self;
4804         unsafe {
4805             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4806             (::windows::runtime::Interface::vtable(this).7)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailConversationReader>(result__)
4807         }
4808     }
GetConversationReaderWithOptions<'a, Param0: ::windows::runtime::IntoParam<'a, EmailQueryOptions>>(&self, options: Param0) -> ::windows::runtime::Result<EmailConversationReader>4809     pub fn GetConversationReaderWithOptions<'a, Param0: ::windows::runtime::IntoParam<'a, EmailQueryOptions>>(&self, options: Param0) -> ::windows::runtime::Result<EmailConversationReader> {
4810         let this = self;
4811         unsafe {
4812             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4813             (::windows::runtime::Interface::vtable(this).8)(::std::mem::transmute_copy(this), options.into_param().abi(), &mut result__).from_abi::<EmailConversationReader>(result__)
4814         }
4815     }
GetMessageReader(&self) -> ::windows::runtime::Result<EmailMessageReader>4816     pub fn GetMessageReader(&self) -> ::windows::runtime::Result<EmailMessageReader> {
4817         let this = self;
4818         unsafe {
4819             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4820             (::windows::runtime::Interface::vtable(this).9)(::std::mem::transmute_copy(this), &mut result__).from_abi::<EmailMessageReader>(result__)
4821         }
4822     }
GetMessageReaderWithOptions<'a, Param0: ::windows::runtime::IntoParam<'a, EmailQueryOptions>>(&self, options: Param0) -> ::windows::runtime::Result<EmailMessageReader>4823     pub fn GetMessageReaderWithOptions<'a, Param0: ::windows::runtime::IntoParam<'a, EmailQueryOptions>>(&self, options: Param0) -> ::windows::runtime::Result<EmailMessageReader> {
4824         let this = self;
4825         unsafe {
4826             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4827             (::windows::runtime::Interface::vtable(this).10)(::std::mem::transmute_copy(this), options.into_param().abi(), &mut result__).from_abi::<EmailMessageReader>(result__)
4828         }
4829     }
4830     #[cfg(feature = "Foundation")]
GetMailboxAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, id: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailMailbox>>4831     pub fn GetMailboxAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, id: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailMailbox>> {
4832         let this = self;
4833         unsafe {
4834             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4835             (::windows::runtime::Interface::vtable(this).11)(::std::mem::transmute_copy(this), id.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<EmailMailbox>>(result__)
4836         }
4837     }
4838     #[cfg(feature = "Foundation")]
GetConversationAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, id: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailConversation>>4839     pub fn GetConversationAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, id: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailConversation>> {
4840         let this = self;
4841         unsafe {
4842             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4843             (::windows::runtime::Interface::vtable(this).12)(::std::mem::transmute_copy(this), id.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<EmailConversation>>(result__)
4844         }
4845     }
4846     #[cfg(feature = "Foundation")]
GetFolderAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, id: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailFolder>>4847     pub fn GetFolderAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, id: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailFolder>> {
4848         let this = self;
4849         unsafe {
4850             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4851             (::windows::runtime::Interface::vtable(this).13)(::std::mem::transmute_copy(this), id.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<EmailFolder>>(result__)
4852         }
4853     }
4854     #[cfg(feature = "Foundation")]
GetMessageAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, id: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailMessage>>4855     pub fn GetMessageAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, id: Param0) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailMessage>> {
4856         let this = self;
4857         unsafe {
4858             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4859             (::windows::runtime::Interface::vtable(this).14)(::std::mem::transmute_copy(this), id.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<EmailMessage>>(result__)
4860         }
4861     }
4862     #[cfg(feature = "Foundation")]
CreateMailboxAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, accountname: Param0, accountaddress: Param1) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailMailbox>>4863     pub fn CreateMailboxAsync<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::HSTRING>>(&self, accountname: Param0, accountaddress: Param1) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailMailbox>> {
4864         let this = self;
4865         unsafe {
4866             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4867             (::windows::runtime::Interface::vtable(this).15)(::std::mem::transmute_copy(this), accountname.into_param().abi(), accountaddress.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<EmailMailbox>>(result__)
4868         }
4869     }
4870     #[cfg(feature = "Foundation")]
CreateMailboxInAccountAsync<'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, accountname: Param0, accountaddress: Param1, userdataaccountid: Param2) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailMailbox>>4871     pub fn CreateMailboxInAccountAsync<'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, accountname: Param0, accountaddress: Param1, userdataaccountid: Param2) -> ::windows::runtime::Result<super::super::Foundation::IAsyncOperation<EmailMailbox>> {
4872         let this = self;
4873         unsafe {
4874             let mut result__: ::windows::runtime::RawPtr = ::std::mem::zeroed();
4875             (::windows::runtime::Interface::vtable(this).16)(::std::mem::transmute_copy(this), accountname.into_param().abi(), accountaddress.into_param().abi(), userdataaccountid.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::IAsyncOperation<EmailMailbox>>(result__)
4876         }
4877     }
4878 }
4879 unsafe impl ::windows::runtime::RuntimeType for EmailStore {
4880     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.ApplicationModel.Email.EmailStore;{f803226e-9137-4f8b-a470-279ac3058eb6})");
4881 }
4882 unsafe impl ::windows::runtime::Interface for EmailStore {
4883     type Vtable = IEmailStore_abi;
4884     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4160954990, 37175, 20363, [164, 112, 39, 154, 195, 5, 142, 182]);
4885 }
4886 impl ::windows::runtime::RuntimeName for EmailStore {
4887     const NAME: &'static str = "Windows.ApplicationModel.Email.EmailStore";
4888 }
4889 impl ::std::convert::From<EmailStore> for ::windows::runtime::IUnknown {
from(value: EmailStore) -> Self4890     fn from(value: EmailStore) -> Self {
4891         unsafe { ::std::mem::transmute(value) }
4892     }
4893 }
4894 impl ::std::convert::From<&EmailStore> for ::windows::runtime::IUnknown {
from(value: &EmailStore) -> Self4895     fn from(value: &EmailStore) -> Self {
4896         ::std::convert::From::from(::std::clone::Clone::clone(value))
4897     }
4898 }
4899 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EmailStore {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>4900     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4901         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
4902     }
4903 }
4904 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EmailStore {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>4905     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4906         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
4907     }
4908 }
4909 impl ::std::convert::From<EmailStore> for ::windows::runtime::IInspectable {
from(value: EmailStore) -> Self4910     fn from(value: EmailStore) -> Self {
4911         value.0
4912     }
4913 }
4914 impl ::std::convert::From<&EmailStore> for ::windows::runtime::IInspectable {
from(value: &EmailStore) -> Self4915     fn from(value: &EmailStore) -> Self {
4916         value.0.clone()
4917     }
4918 }
4919 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EmailStore {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>4920     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4921         ::windows::runtime::Param::Owned(self.0)
4922     }
4923 }
4924 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EmailStore {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>4925     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4926         ::windows::runtime::Param::Borrowed(&self.0)
4927     }
4928 }
4929 unsafe impl ::std::marker::Send for EmailStore {}
4930 unsafe impl ::std::marker::Sync for EmailStore {}
4931 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
4932 #[repr(transparent)]
4933 pub struct EmailStoreAccessType(pub i32);
4934 impl EmailStoreAccessType {
4935     pub const AppMailboxesReadWrite: EmailStoreAccessType = EmailStoreAccessType(0i32);
4936     pub const AllMailboxesLimitedReadWrite: EmailStoreAccessType = EmailStoreAccessType(1i32);
4937 }
4938 impl ::std::convert::From<i32> for EmailStoreAccessType {
from(value: i32) -> Self4939     fn from(value: i32) -> Self {
4940         Self(value)
4941     }
4942 }
4943 unsafe impl ::windows::runtime::Abi for EmailStoreAccessType {
4944     type Abi = Self;
4945     type DefaultType = Self;
4946 }
4947 unsafe impl ::windows::runtime::RuntimeType for EmailStoreAccessType {
4948     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"enum(Windows.ApplicationModel.Email.EmailStoreAccessType;i4)");
4949 }
4950 #[repr(transparent)]
4951 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
4952 pub struct EmailStoreNotificationTriggerDetails(::windows::runtime::IInspectable);
4953 impl EmailStoreNotificationTriggerDetails {}
4954 unsafe impl ::windows::runtime::RuntimeType for EmailStoreNotificationTriggerDetails {
4955     const SIGNATURE: ::windows::runtime::ConstBuffer = ::windows::runtime::ConstBuffer::from_slice(b"rc(Windows.ApplicationModel.Email.EmailStoreNotificationTriggerDetails;{ce17563c-46e6-43c9-96f7-facf7dd710cb})");
4956 }
4957 unsafe impl ::windows::runtime::Interface for EmailStoreNotificationTriggerDetails {
4958     type Vtable = IEmailStoreNotificationTriggerDetails_abi;
4959     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3457635900, 18150, 17353, [150, 247, 250, 207, 125, 215, 16, 203]);
4960 }
4961 impl ::windows::runtime::RuntimeName for EmailStoreNotificationTriggerDetails {
4962     const NAME: &'static str = "Windows.ApplicationModel.Email.EmailStoreNotificationTriggerDetails";
4963 }
4964 impl ::std::convert::From<EmailStoreNotificationTriggerDetails> for ::windows::runtime::IUnknown {
from(value: EmailStoreNotificationTriggerDetails) -> Self4965     fn from(value: EmailStoreNotificationTriggerDetails) -> Self {
4966         unsafe { ::std::mem::transmute(value) }
4967     }
4968 }
4969 impl ::std::convert::From<&EmailStoreNotificationTriggerDetails> for ::windows::runtime::IUnknown {
from(value: &EmailStoreNotificationTriggerDetails) -> Self4970     fn from(value: &EmailStoreNotificationTriggerDetails) -> Self {
4971         ::std::convert::From::from(::std::clone::Clone::clone(value))
4972     }
4973 }
4974 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for EmailStoreNotificationTriggerDetails {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>4975     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4976         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
4977     }
4978 }
4979 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &EmailStoreNotificationTriggerDetails {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>4980     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
4981         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
4982     }
4983 }
4984 impl ::std::convert::From<EmailStoreNotificationTriggerDetails> for ::windows::runtime::IInspectable {
from(value: EmailStoreNotificationTriggerDetails) -> Self4985     fn from(value: EmailStoreNotificationTriggerDetails) -> Self {
4986         value.0
4987     }
4988 }
4989 impl ::std::convert::From<&EmailStoreNotificationTriggerDetails> for ::windows::runtime::IInspectable {
from(value: &EmailStoreNotificationTriggerDetails) -> Self4990     fn from(value: &EmailStoreNotificationTriggerDetails) -> Self {
4991         value.0.clone()
4992     }
4993 }
4994 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for EmailStoreNotificationTriggerDetails {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>4995     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
4996         ::windows::runtime::Param::Owned(self.0)
4997     }
4998 }
4999 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IInspectable> for &'a EmailStoreNotificationTriggerDetails {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable>5000     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IInspectable> {
5001         ::windows::runtime::Param::Borrowed(&self.0)
5002     }
5003 }
5004 unsafe impl ::std::marker::Send for EmailStoreNotificationTriggerDetails {}
5005 unsafe impl ::std::marker::Sync for EmailStoreNotificationTriggerDetails {}
5006 #[repr(transparent)]
5007 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5008 #[doc(hidden)]
5009 pub struct IEmailAttachment(::windows::runtime::IInspectable);
5010 unsafe impl ::windows::runtime::Interface for IEmailAttachment {
5011     type Vtable = IEmailAttachment_abi;
5012     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4082354937, 22472, 19163, [185, 146, 96, 252, 235, 88, 79, 84]);
5013 }
5014 #[repr(C)]
5015 #[doc(hidden)]
5016 pub struct IEmailAttachment_abi(
5017     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5018     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5019     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5020     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5021     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5022     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5023     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5024     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5025     #[cfg(feature = "Storage_Streams")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5026     #[cfg(not(feature = "Storage_Streams"))] usize,
5027     #[cfg(feature = "Storage_Streams")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5028     #[cfg(not(feature = "Storage_Streams"))] usize,
5029 );
5030 #[repr(transparent)]
5031 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5032 #[doc(hidden)]
5033 pub struct IEmailAttachment2(::windows::runtime::IInspectable);
5034 unsafe impl ::windows::runtime::Interface for IEmailAttachment2 {
5035     type Vtable = IEmailAttachment2_abi;
5036     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(576655472, 45311, 17777, [157, 84, 167, 6, 196, 141, 85, 198]);
5037 }
5038 #[repr(C)]
5039 #[doc(hidden)]
5040 pub struct IEmailAttachment2_abi(
5041     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5042     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5043     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5044     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5045     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5046     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5047     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5048     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5049     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5050     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5051     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5052     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut EmailAttachmentDownloadState) -> ::windows::runtime::HRESULT,
5053     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: EmailAttachmentDownloadState) -> ::windows::runtime::HRESULT,
5054     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u64) -> ::windows::runtime::HRESULT,
5055     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: u64) -> ::windows::runtime::HRESULT,
5056     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5057     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5058     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5059     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5060     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5061 );
5062 #[repr(transparent)]
5063 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5064 #[doc(hidden)]
5065 pub struct IEmailAttachmentFactory(::windows::runtime::IInspectable);
5066 unsafe impl ::windows::runtime::Interface for IEmailAttachmentFactory {
5067     type Vtable = IEmailAttachmentFactory_abi;
5068     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2037296198, 60758, 18809, [135, 8, 171, 184, 188, 133, 75, 125]);
5069 }
5070 #[repr(C)]
5071 #[doc(hidden)]
5072 pub struct IEmailAttachmentFactory_abi(
5073     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5074     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5075     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5076     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5077     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5078     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5079     #[cfg(feature = "Storage_Streams")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, filename: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, data: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5080     #[cfg(not(feature = "Storage_Streams"))] usize,
5081 );
5082 #[repr(transparent)]
5083 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5084 #[doc(hidden)]
5085 pub struct IEmailAttachmentFactory2(::windows::runtime::IInspectable);
5086 unsafe impl ::windows::runtime::Interface for IEmailAttachmentFactory2 {
5087     type Vtable = IEmailAttachmentFactory2_abi;
5088     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(589665333, 20985, 17021, [173, 205, 36, 16, 35, 200, 207, 183]);
5089 }
5090 #[repr(C)]
5091 #[doc(hidden)]
5092 pub struct IEmailAttachmentFactory2_abi(
5093     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5094     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5095     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5096     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5097     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5098     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5099     #[cfg(feature = "Storage_Streams")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, filename: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, data: ::windows::runtime::RawPtr, mimetype: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5100     #[cfg(not(feature = "Storage_Streams"))] usize,
5101 );
5102 #[repr(transparent)]
5103 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5104 #[doc(hidden)]
5105 pub struct IEmailConversation(::windows::runtime::IInspectable);
5106 unsafe impl ::windows::runtime::Interface for IEmailConversation {
5107     type Vtable = IEmailConversation_abi;
5108     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3659055688, 41148, 17225, [144, 45, 144, 246, 99, 137, 245, 27]);
5109 }
5110 #[repr(C)]
5111 #[doc(hidden)]
5112 pub struct IEmailConversation_abi(
5113     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5114     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5115     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5116     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5117     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5118     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5119     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5120     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5121     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut EmailFlagState) -> ::windows::runtime::HRESULT,
5122     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5123     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut EmailImportance) -> ::windows::runtime::HRESULT,
5124     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut EmailMessageResponseKind) -> ::windows::runtime::HRESULT,
5125     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5126     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5127     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::DateTime) -> ::windows::runtime::HRESULT,
5128     #[cfg(not(feature = "Foundation"))] usize,
5129     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5130     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5131     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5132     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5133     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5134     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
5135     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: u32, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5136     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
5137 );
5138 #[repr(transparent)]
5139 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5140 #[doc(hidden)]
5141 pub struct IEmailConversationBatch(::windows::runtime::IInspectable);
5142 unsafe impl ::windows::runtime::Interface for IEmailConversationBatch {
5143     type Vtable = IEmailConversationBatch_abi;
5144     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3099700097, 453, 17194, [157, 241, 254, 133, 217, 138, 39, 154]);
5145 }
5146 #[repr(C)]
5147 #[doc(hidden)]
5148 pub struct IEmailConversationBatch_abi(
5149     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5150     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5151     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5152     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5153     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5154     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5155     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5156     #[cfg(not(feature = "Foundation_Collections"))] usize,
5157     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut EmailBatchStatus) -> ::windows::runtime::HRESULT,
5158 );
5159 #[repr(transparent)]
5160 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5161 #[doc(hidden)]
5162 pub struct IEmailConversationReader(::windows::runtime::IInspectable);
5163 unsafe impl ::windows::runtime::Interface for IEmailConversationReader {
5164     type Vtable = IEmailConversationReader_abi;
5165     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3026390914, 10357, 17608, [155, 140, 133, 190, 179, 163, 198, 83]);
5166 }
5167 #[repr(C)]
5168 #[doc(hidden)]
5169 pub struct IEmailConversationReader_abi(
5170     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5171     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5172     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5173     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5174     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5175     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5176     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5177     #[cfg(not(feature = "Foundation"))] usize,
5178 );
5179 #[repr(transparent)]
5180 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5181 #[doc(hidden)]
5182 pub struct IEmailFolder(::windows::runtime::IInspectable);
5183 unsafe impl ::windows::runtime::Interface for IEmailFolder {
5184     type Vtable = IEmailFolder_abi;
5185     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2723116913, 39276, 18532, [177, 186, 237, 18, 64, 229, 125, 17]);
5186 }
5187 #[repr(C)]
5188 #[doc(hidden)]
5189 pub struct IEmailFolder_abi(
5190     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5191     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5192     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5193     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5194     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5195     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5196     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5197     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5198     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5199     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5200     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5201     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5202     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5203     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5204     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5205     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::DateTime) -> ::windows::runtime::HRESULT,
5206     #[cfg(not(feature = "Foundation"))] usize,
5207     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: super::super::Foundation::DateTime) -> ::windows::runtime::HRESULT,
5208     #[cfg(not(feature = "Foundation"))] usize,
5209     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut EmailSpecialFolderKind) -> ::windows::runtime::HRESULT,
5210     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, name: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5211     #[cfg(not(feature = "Foundation"))] usize,
5212     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5213     #[cfg(not(feature = "Foundation"))] usize,
5214     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5215     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
5216     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5217     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, options: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5218     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, id: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5219     #[cfg(not(feature = "Foundation"))] usize,
5220     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5221     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, options: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5222     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5223     #[cfg(not(feature = "Foundation"))] usize,
5224     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, newparentfolder: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5225     #[cfg(not(feature = "Foundation"))] usize,
5226     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, newparentfolder: ::windows::runtime::RawPtr, newfoldername: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5227     #[cfg(not(feature = "Foundation"))] usize,
5228     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5229     #[cfg(not(feature = "Foundation"))] usize,
5230     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, message: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5231     #[cfg(not(feature = "Foundation"))] usize,
5232 );
5233 #[repr(transparent)]
5234 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5235 #[doc(hidden)]
5236 pub struct IEmailIrmInfo(::windows::runtime::IInspectable);
5237 unsafe impl ::windows::runtime::Interface for IEmailIrmInfo {
5238     type Vtable = IEmailIrmInfo_abi;
5239     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2431984019, 45472, 20157, [166, 182, 221, 202, 85, 96, 110, 14]);
5240 }
5241 #[repr(C)]
5242 #[doc(hidden)]
5243 pub struct IEmailIrmInfo_abi(
5244     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5245     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5246     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5247     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5248     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5249     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5250     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5251     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5252     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5253     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5254     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5255     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5256     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5257     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5258     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5259     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5260     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5261     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5262     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5263     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5264     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5265     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5266     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::DateTime) -> ::windows::runtime::HRESULT,
5267     #[cfg(not(feature = "Foundation"))] usize,
5268     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: super::super::Foundation::DateTime) -> ::windows::runtime::HRESULT,
5269     #[cfg(not(feature = "Foundation"))] usize,
5270     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5271     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5272     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5273     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5274     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5275     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5276 );
5277 #[repr(transparent)]
5278 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5279 #[doc(hidden)]
5280 pub struct IEmailIrmInfoFactory(::windows::runtime::IInspectable);
5281 unsafe impl ::windows::runtime::Interface for IEmailIrmInfoFactory {
5282     type Vtable = IEmailIrmInfoFactory_abi;
5283     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(827044236, 58342, 19835, [190, 141, 145, 169, 99, 17, 176, 27]);
5284 }
5285 #[repr(C)]
5286 #[doc(hidden)]
5287 pub struct IEmailIrmInfoFactory_abi(
5288     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5289     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5290     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5291     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5292     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5293     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5294     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, expiration: super::super::Foundation::DateTime, irmtemplate: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5295     #[cfg(not(feature = "Foundation"))] usize,
5296 );
5297 #[repr(transparent)]
5298 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5299 #[doc(hidden)]
5300 pub struct IEmailIrmTemplate(::windows::runtime::IInspectable);
5301 unsafe impl ::windows::runtime::Interface for IEmailIrmTemplate {
5302     type Vtable = IEmailIrmTemplate_abi;
5303     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4079449485, 21613, 19434, [169, 99, 84, 163, 139, 44, 192, 22]);
5304 }
5305 #[repr(C)]
5306 #[doc(hidden)]
5307 pub struct IEmailIrmTemplate_abi(
5308     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5309     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5310     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5311     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5312     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5313     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5314     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5315     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5316     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5317     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5318     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5319     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5320 );
5321 #[repr(transparent)]
5322 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5323 #[doc(hidden)]
5324 pub struct IEmailIrmTemplateFactory(::windows::runtime::IInspectable);
5325 unsafe impl ::windows::runtime::Interface for IEmailIrmTemplateFactory {
5326     type Vtable = IEmailIrmTemplateFactory_abi;
5327     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1034098806, 34616, 17432, [185, 203, 71, 27, 147, 111, 231, 30]);
5328 }
5329 #[repr(C)]
5330 #[doc(hidden)]
5331 pub struct IEmailIrmTemplateFactory_abi(
5332     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5333     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5334     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5335     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5336     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5337     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5338     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, id: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, name: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, description: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5339 );
5340 #[repr(transparent)]
5341 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5342 #[doc(hidden)]
5343 pub struct IEmailItemCounts(::windows::runtime::IInspectable);
5344 unsafe impl ::windows::runtime::Interface for IEmailItemCounts {
5345     type Vtable = IEmailItemCounts_abi;
5346     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1540436769, 65224, 19371, [131, 186, 11, 175, 60, 31, 108, 189]);
5347 }
5348 #[repr(C)]
5349 #[doc(hidden)]
5350 pub struct IEmailItemCounts_abi(
5351     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5352     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5353     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5354     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5355     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5356     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5357     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5358     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5359     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5360     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
5361 );
5362 #[repr(transparent)]
5363 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5364 #[doc(hidden)]
5365 pub struct IEmailMailbox(::windows::runtime::IInspectable);
5366 unsafe impl ::windows::runtime::Interface for IEmailMailbox {
5367     type Vtable = IEmailMailbox_abi;
5368     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2826503753, 53083, 16667, [128, 177, 74, 106, 20, 132, 206, 37]);
5369 }
5370 #[repr(C)]
5371 #[doc(hidden)]
5372 pub struct IEmailMailbox_abi(
5373     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5374     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5375     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5376     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5377     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5378     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5379     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5380     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5381     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5382     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5383     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5384     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5385     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5386     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5387     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5388     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5389     #[cfg(not(feature = "Foundation_Collections"))] usize,
5390     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut EmailMailboxOtherAppReadAccess) -> ::windows::runtime::HRESULT,
5391     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: EmailMailboxOtherAppReadAccess) -> ::windows::runtime::HRESULT,
5392     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut EmailMailboxOtherAppWriteAccess) -> ::windows::runtime::HRESULT,
5393     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: EmailMailboxOtherAppWriteAccess) -> ::windows::runtime::HRESULT,
5394     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5395     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5396     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5397     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5398     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5399     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, options: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5400     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5401     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, options: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5402     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5403     #[cfg(not(feature = "Foundation"))] usize,
5404     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, id: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5405     #[cfg(not(feature = "Foundation"))] usize,
5406     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, id: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5407     #[cfg(not(feature = "Foundation"))] usize,
5408     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, id: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5409     #[cfg(not(feature = "Foundation"))] usize,
5410     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, foldertype: EmailSpecialFolderKind, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5411     #[cfg(not(feature = "Foundation"))] usize,
5412     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5413     #[cfg(not(feature = "Foundation"))] usize,
5414     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, messageid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5415     #[cfg(not(feature = "Foundation"))] usize,
5416     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, folderid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5417     #[cfg(not(feature = "Foundation"))] usize,
5418     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, messageid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, isread: bool, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5419     #[cfg(not(feature = "Foundation"))] usize,
5420     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, messageid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, flagstate: EmailFlagState, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5421     #[cfg(not(feature = "Foundation"))] usize,
5422     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, messageid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, newparentfolderid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5423     #[cfg(not(feature = "Foundation"))] usize,
5424     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, folderid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, newparentfolderid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5425     #[cfg(not(feature = "Foundation"))] usize,
5426     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, folderid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, newparentfolderid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, newfoldername: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5427     #[cfg(not(feature = "Foundation"))] usize,
5428     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, messageid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5429     #[cfg(not(feature = "Foundation"))] usize,
5430     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, folderid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, issyncenabled: bool, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5431     #[cfg(not(feature = "Foundation"))] usize,
5432     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, message: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5433     #[cfg(not(feature = "Foundation"))] usize,
5434     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, message: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5435     #[cfg(not(feature = "Foundation"))] usize,
5436     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, messageid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5437     #[cfg(not(feature = "Foundation"))] usize,
5438     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, attachmentid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5439     #[cfg(not(feature = "Foundation"))] usize,
5440     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, messageid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, responsetype: EmailMessageResponseKind, subject: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, responseheadertype: EmailMessageBodyKind, responseheader: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5441     #[cfg(not(feature = "Foundation"))] usize,
5442     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, meeting: ::windows::runtime::RawPtr, response: EmailMeetingResponseType, subject: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, comment: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, sendupdate: bool, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5443     #[cfg(not(feature = "Foundation"))] usize,
5444     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))]
5445     pub  unsafe extern "system" fn(this: ::windows::runtime::RawPtr, meeting: ::windows::runtime::RawPtr, recipients: ::windows::runtime::RawPtr, subject: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, forwardheadertype: EmailMessageBodyKind, forwardheader: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, comment: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5446     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
5447     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, meeting: ::windows::runtime::RawPtr, newstarttime: super::super::Foundation::DateTime, newduration: super::super::Foundation::TimeSpan, subject: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, comment: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5448     #[cfg(not(feature = "Foundation"))] usize,
5449     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, phandler: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5450     #[cfg(not(feature = "Foundation"))] usize,
5451     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, token: super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5452     #[cfg(not(feature = "Foundation"))] usize,
5453     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, message: ::windows::runtime::RawPtr, smartsend: bool, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5454     #[cfg(not(feature = "Foundation"))] usize,
5455     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, autoreplysettings: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5456     #[cfg(not(feature = "Foundation"))] usize,
5457     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, requestedformat: EmailMailboxAutoReplyMessageResponseKind, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5458     #[cfg(not(feature = "Foundation"))] usize,
5459 );
5460 #[repr(transparent)]
5461 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5462 #[doc(hidden)]
5463 pub struct IEmailMailbox2(::windows::runtime::IInspectable);
5464 unsafe impl ::windows::runtime::Interface for IEmailMailbox2 {
5465     type Vtable = IEmailMailbox2_abi;
5466     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(351855620, 27810, 19122, [146, 65, 121, 205, 123, 244, 99, 70]);
5467 }
5468 #[repr(C)]
5469 #[doc(hidden)]
5470 pub struct IEmailMailbox2_abi(
5471     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5472     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5473     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5474     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5475     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5476     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5477     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5478     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5479     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5480 );
5481 #[repr(transparent)]
5482 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5483 #[doc(hidden)]
5484 pub struct IEmailMailbox3(::windows::runtime::IInspectable);
5485 unsafe impl ::windows::runtime::Interface for IEmailMailbox3 {
5486     type Vtable = IEmailMailbox3_abi;
5487     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1034258811, 17803, 16522, [142, 55, 172, 139, 5, 216, 175, 86]);
5488 }
5489 #[repr(C)]
5490 #[doc(hidden)]
5491 pub struct IEmailMailbox3_abi(
5492     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5493     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5494     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5495     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5496     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5497     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5498     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, recipients: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5499     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
5500     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections", feature = "Security_Cryptography_Certificates"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, certificates: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5501     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections", feature = "Security_Cryptography_Certificates")))] usize,
5502     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, folderid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5503     #[cfg(not(feature = "Foundation"))] usize,
5504     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, parentfolderid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, name: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5505     #[cfg(not(feature = "Foundation"))] usize,
5506     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, folderid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5507     #[cfg(not(feature = "Foundation"))] usize,
5508 );
5509 #[repr(transparent)]
5510 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5511 #[doc(hidden)]
5512 pub struct IEmailMailbox4(::windows::runtime::IInspectable);
5513 unsafe impl ::windows::runtime::Interface for IEmailMailbox4 {
5514     type Vtable = IEmailMailbox4_abi;
5515     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1562325019, 61986, 18599, [183, 182, 113, 99, 86, 205, 38, 161]);
5516 }
5517 #[repr(C)]
5518 #[doc(hidden)]
5519 pub struct IEmailMailbox4_abi(
5520     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5521     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5522     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5523     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5524     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5525     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5526     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5527     #[cfg(not(feature = "Foundation"))] usize,
5528 );
5529 #[repr(transparent)]
5530 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5531 #[doc(hidden)]
5532 pub struct IEmailMailbox5(::windows::runtime::IInspectable);
5533 unsafe impl ::windows::runtime::Interface for IEmailMailbox5 {
5534     type Vtable = IEmailMailbox5_abi;
5535     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(966160519, 146, 18878, [189, 14, 93, 77, 201, 217, 109, 144]);
5536 }
5537 #[repr(C)]
5538 #[doc(hidden)]
5539 pub struct IEmailMailbox5_abi(
5540     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5541     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5542     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5543     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5544     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5545     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5546     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, identity: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5547 );
5548 #[repr(transparent)]
5549 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5550 #[doc(hidden)]
5551 pub struct IEmailMailboxAction(::windows::runtime::IInspectable);
5552 unsafe impl ::windows::runtime::Interface for IEmailMailboxAction {
5553     type Vtable = IEmailMailboxAction_abi;
5554     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2895677946, 8698, 18727, [146, 16, 212, 16, 88, 47, 223, 62]);
5555 }
5556 #[repr(C)]
5557 #[doc(hidden)]
5558 pub struct IEmailMailboxAction_abi(
5559     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5560     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5561     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5562     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5563     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5564     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5565     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut EmailMailboxActionKind) -> ::windows::runtime::HRESULT,
5566     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u64) -> ::windows::runtime::HRESULT,
5567 );
5568 #[repr(transparent)]
5569 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5570 #[doc(hidden)]
5571 pub struct IEmailMailboxAutoReply(::windows::runtime::IInspectable);
5572 unsafe impl ::windows::runtime::Interface for IEmailMailboxAutoReply {
5573     type Vtable = IEmailMailboxAutoReply_abi;
5574     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3793954124, 35508, 18523, [179, 31, 4, 209, 84, 118, 189, 89]);
5575 }
5576 #[repr(C)]
5577 #[doc(hidden)]
5578 pub struct IEmailMailboxAutoReply_abi(
5579     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5580     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5581     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5582     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5583     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5584     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5585     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5586     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5587     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5588     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
5589 );
5590 #[repr(transparent)]
5591 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5592 #[doc(hidden)]
5593 pub struct IEmailMailboxAutoReplySettings(::windows::runtime::IInspectable);
5594 unsafe impl ::windows::runtime::Interface for IEmailMailboxAutoReplySettings {
5595     type Vtable = IEmailMailboxAutoReplySettings_abi;
5596     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2826608552, 2758, 19319, [186, 119, 166, 185, 158, 154, 39, 184]);
5597 }
5598 #[repr(C)]
5599 #[doc(hidden)]
5600 pub struct IEmailMailboxAutoReplySettings_abi(
5601     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5602     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5603     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5604     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5605     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5606     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5607     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5608     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5609     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut EmailMailboxAutoReplyMessageResponseKind) -> ::windows::runtime::HRESULT,
5610     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: EmailMailboxAutoReplyMessageResponseKind) -> ::windows::runtime::HRESULT,
5611     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5612     #[cfg(not(feature = "Foundation"))] usize,
5613     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5614     #[cfg(not(feature = "Foundation"))] usize,
5615     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5616     #[cfg(not(feature = "Foundation"))] usize,
5617     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5618     #[cfg(not(feature = "Foundation"))] usize,
5619     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5620     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5621     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5622 );
5623 #[repr(transparent)]
5624 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5625 #[doc(hidden)]
5626 pub struct IEmailMailboxCapabilities(::windows::runtime::IInspectable);
5627 unsafe impl ::windows::runtime::Interface for IEmailMailboxCapabilities {
5628     type Vtable = IEmailMailboxCapabilities_abi;
5629     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4007576486, 35291, 17157, [130, 196, 67, 158, 10, 51, 218, 17]);
5630 }
5631 #[repr(C)]
5632 #[doc(hidden)]
5633 pub struct IEmailMailboxCapabilities_abi(
5634     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5635     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5636     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5637     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5638     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5639     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5640     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5641     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5642     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5643     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5644     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5645     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5646     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5647     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5648 );
5649 #[repr(transparent)]
5650 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5651 #[doc(hidden)]
5652 pub struct IEmailMailboxCapabilities2(::windows::runtime::IInspectable);
5653 unsafe impl ::windows::runtime::Interface for IEmailMailboxCapabilities2 {
5654     type Vtable = IEmailMailboxCapabilities2_abi;
5655     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1769094884, 12065, 19644, [136, 171, 46, 118, 2, 164, 128, 107]);
5656 }
5657 #[repr(C)]
5658 #[doc(hidden)]
5659 pub struct IEmailMailboxCapabilities2_abi(
5660     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5661     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5662     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5663     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5664     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5665     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5666     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5667     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5668     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5669     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5670     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5671     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5672 );
5673 #[repr(transparent)]
5674 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5675 #[doc(hidden)]
5676 pub struct IEmailMailboxCapabilities3(::windows::runtime::IInspectable);
5677 unsafe impl ::windows::runtime::Interface for IEmailMailboxCapabilities3 {
5678     type Vtable = IEmailMailboxCapabilities3_abi;
5679     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4136692036, 22258, 17834, [135, 44, 12, 233, 243, 219, 11, 92]);
5680 }
5681 #[repr(C)]
5682 #[doc(hidden)]
5683 pub struct IEmailMailboxCapabilities3_abi(
5684     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5685     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5686     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5687     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5688     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5689     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5690     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5691     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5692     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5693     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5694     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5695     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5696     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5697     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5698     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5699     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5700     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5701     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5702     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5703     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5704 );
5705 #[repr(transparent)]
5706 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5707 #[doc(hidden)]
5708 pub struct IEmailMailboxChange(::windows::runtime::IInspectable);
5709 unsafe impl ::windows::runtime::Interface for IEmailMailboxChange {
5710     type Vtable = IEmailMailboxChange_abi;
5711     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1642984779, 4591, 16396, [173, 222, 140, 222, 101, 200, 94, 102]);
5712 }
5713 #[repr(C)]
5714 #[doc(hidden)]
5715 pub struct IEmailMailboxChange_abi(
5716     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5717     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5718     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5719     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5720     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5721     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5722     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut EmailMailboxChangeType) -> ::windows::runtime::HRESULT,
5723     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5724     #[cfg(not(feature = "Foundation_Collections"))] usize,
5725     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5726     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5727 );
5728 #[repr(transparent)]
5729 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5730 #[doc(hidden)]
5731 pub struct IEmailMailboxChangeReader(::windows::runtime::IInspectable);
5732 unsafe impl ::windows::runtime::Interface for IEmailMailboxChangeReader {
5733     type Vtable = IEmailMailboxChangeReader_abi;
5734     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3183283899, 50493, 17201, [151, 190, 190, 117, 162, 20, 106, 117]);
5735 }
5736 #[repr(C)]
5737 #[doc(hidden)]
5738 pub struct IEmailMailboxChangeReader_abi(
5739     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5740     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5741     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5742     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5743     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5744     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5745     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5746     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lastchangetoacknowledge: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5747     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5748     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
5749 );
5750 #[repr(transparent)]
5751 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5752 #[doc(hidden)]
5753 pub struct IEmailMailboxChangeTracker(::windows::runtime::IInspectable);
5754 unsafe impl ::windows::runtime::Interface for IEmailMailboxChangeTracker {
5755     type Vtable = IEmailMailboxChangeTracker_abi;
5756     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2061796920, 20838, 17079, [136, 130, 253, 33, 201, 43, 221, 75]);
5757 }
5758 #[repr(C)]
5759 #[doc(hidden)]
5760 pub struct IEmailMailboxChangeTracker_abi(
5761     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5762     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5763     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5764     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5765     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5766     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5767     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5768     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5769     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5770     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5771 );
5772 #[repr(transparent)]
5773 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5774 #[doc(hidden)]
5775 pub struct IEmailMailboxChangedDeferral(::windows::runtime::IInspectable);
5776 unsafe impl ::windows::runtime::Interface for IEmailMailboxChangedDeferral {
5777     type Vtable = IEmailMailboxChangedDeferral_abi;
5778     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2006611137, 38853, 19284, [179, 13, 48, 98, 50, 98, 62, 109]);
5779 }
5780 #[repr(C)]
5781 #[doc(hidden)]
5782 pub struct IEmailMailboxChangedDeferral_abi(
5783     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5784     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5785     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5786     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5787     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5788     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5789     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5790 );
5791 #[repr(transparent)]
5792 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5793 #[doc(hidden)]
5794 pub struct IEmailMailboxChangedEventArgs(::windows::runtime::IInspectable);
5795 unsafe impl ::windows::runtime::Interface for IEmailMailboxChangedEventArgs {
5796     type Vtable = IEmailMailboxChangedEventArgs_abi;
5797     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1023237998, 468, 20042, [164, 76, 178, 45, 212, 46, 194, 7]);
5798 }
5799 #[repr(C)]
5800 #[doc(hidden)]
5801 pub struct IEmailMailboxChangedEventArgs_abi(
5802     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5803     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5804     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5805     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5806     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5807     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5808     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5809 );
5810 #[repr(transparent)]
5811 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5812 #[doc(hidden)]
5813 pub struct IEmailMailboxCreateFolderResult(::windows::runtime::IInspectable);
5814 unsafe impl ::windows::runtime::Interface for IEmailMailboxCreateFolderResult {
5815     type Vtable = IEmailMailboxCreateFolderResult_abi;
5816     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2988987775, 10373, 18840, [181, 149, 138, 45, 55, 76, 233, 80]);
5817 }
5818 #[repr(C)]
5819 #[doc(hidden)]
5820 pub struct IEmailMailboxCreateFolderResult_abi(
5821     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5822     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5823     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5824     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5825     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5826     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5827     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut EmailMailboxCreateFolderStatus) -> ::windows::runtime::HRESULT,
5828     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5829 );
5830 #[repr(transparent)]
5831 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5832 #[doc(hidden)]
5833 pub struct IEmailMailboxPolicies(::windows::runtime::IInspectable);
5834 unsafe impl ::windows::runtime::Interface for IEmailMailboxPolicies {
5835     type Vtable = IEmailMailboxPolicies_abi;
5836     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(523453893, 7227, 19911, [180, 16, 99, 115, 120, 62, 84, 93]);
5837 }
5838 #[repr(C)]
5839 #[doc(hidden)]
5840 pub struct IEmailMailboxPolicies_abi(
5841     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5842     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5843     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5844     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5845     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5846     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5847     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut EmailMailboxAllowedSmimeEncryptionAlgorithmNegotiation) -> ::windows::runtime::HRESULT,
5848     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5849     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5850     #[cfg(not(feature = "Foundation"))] usize,
5851     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5852     #[cfg(not(feature = "Foundation"))] usize,
5853 );
5854 #[repr(transparent)]
5855 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5856 #[doc(hidden)]
5857 pub struct IEmailMailboxPolicies2(::windows::runtime::IInspectable);
5858 unsafe impl ::windows::runtime::Interface for IEmailMailboxPolicies2 {
5859     type Vtable = IEmailMailboxPolicies2_abi;
5860     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3132459771, 41291, 18812, [168, 226, 85, 234, 194, 156, 196, 181]);
5861 }
5862 #[repr(C)]
5863 #[doc(hidden)]
5864 pub struct IEmailMailboxPolicies2_abi(
5865     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5866     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5867     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5868     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5869     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5870     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5871     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5872     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
5873 );
5874 #[repr(transparent)]
5875 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5876 #[doc(hidden)]
5877 pub struct IEmailMailboxPolicies3(::windows::runtime::IInspectable);
5878 unsafe impl ::windows::runtime::Interface for IEmailMailboxPolicies3 {
5879     type Vtable = IEmailMailboxPolicies3_abi;
5880     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3184828447, 18535, 16714, [129, 162, 128, 57, 25, 196, 65, 145]);
5881 }
5882 #[repr(C)]
5883 #[doc(hidden)]
5884 pub struct IEmailMailboxPolicies3_abi(
5885     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5886     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5887     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5888     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5889     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5890     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5891     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: EmailMailboxAllowedSmimeEncryptionAlgorithmNegotiation) -> ::windows::runtime::HRESULT,
5892     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5893     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5894     #[cfg(not(feature = "Foundation"))] usize,
5895     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5896     #[cfg(not(feature = "Foundation"))] usize,
5897     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5898     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
5899 );
5900 #[repr(transparent)]
5901 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5902 #[doc(hidden)]
5903 pub struct IEmailMailboxSyncManager(::windows::runtime::IInspectable);
5904 unsafe impl ::windows::runtime::Interface for IEmailMailboxSyncManager {
5905     type Vtable = IEmailMailboxSyncManager_abi;
5906     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1367000410, 13713, 19293, [133, 188, 199, 29, 222, 134, 34, 99]);
5907 }
5908 #[repr(C)]
5909 #[doc(hidden)]
5910 pub struct IEmailMailboxSyncManager_abi(
5911     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5912     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5913     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5914     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5915     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5916     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5917     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut EmailMailboxSyncStatus) -> ::windows::runtime::HRESULT,
5918     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::DateTime) -> ::windows::runtime::HRESULT,
5919     #[cfg(not(feature = "Foundation"))] usize,
5920     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::DateTime) -> ::windows::runtime::HRESULT,
5921     #[cfg(not(feature = "Foundation"))] usize,
5922     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5923     #[cfg(not(feature = "Foundation"))] usize,
5924     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, handler: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5925     #[cfg(not(feature = "Foundation"))] usize,
5926     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, token: super::super::Foundation::EventRegistrationToken) -> ::windows::runtime::HRESULT,
5927     #[cfg(not(feature = "Foundation"))] usize,
5928 );
5929 #[repr(transparent)]
5930 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5931 #[doc(hidden)]
5932 pub struct IEmailMailboxSyncManager2(::windows::runtime::IInspectable);
5933 unsafe impl ::windows::runtime::Interface for IEmailMailboxSyncManager2 {
5934     type Vtable = IEmailMailboxSyncManager2_abi;
5935     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3448621438, 38337, 20361, [129, 183, 230, 174, 203, 102, 149, 252]);
5936 }
5937 #[repr(C)]
5938 #[doc(hidden)]
5939 pub struct IEmailMailboxSyncManager2_abi(
5940     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5941     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5942     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5943     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5944     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5945     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5946     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: EmailMailboxSyncStatus) -> ::windows::runtime::HRESULT,
5947     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: super::super::Foundation::DateTime) -> ::windows::runtime::HRESULT,
5948     #[cfg(not(feature = "Foundation"))] usize,
5949     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: super::super::Foundation::DateTime) -> ::windows::runtime::HRESULT,
5950     #[cfg(not(feature = "Foundation"))] usize,
5951 );
5952 #[repr(transparent)]
5953 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5954 #[doc(hidden)]
5955 pub struct IEmailManagerForUser(::windows::runtime::IInspectable);
5956 unsafe impl ::windows::runtime::Interface for IEmailManagerForUser {
5957     type Vtable = IEmailManagerForUser_abi;
5958     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4151565983, 15525, 19215, [144, 193, 21, 110, 64, 23, 76, 229]);
5959 }
5960 #[repr(C)]
5961 #[doc(hidden)]
5962 pub struct IEmailManagerForUser_abi(
5963     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5964     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5965     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5966     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5967     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5968     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5969     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, message: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5970     #[cfg(not(feature = "Foundation"))] usize,
5971     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, accesstype: EmailStoreAccessType, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5972     #[cfg(not(feature = "Foundation"))] usize,
5973     #[cfg(feature = "System")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5974     #[cfg(not(feature = "System"))] usize,
5975 );
5976 #[repr(transparent)]
5977 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5978 #[doc(hidden)]
5979 pub struct IEmailManagerStatics(::windows::runtime::IInspectable);
5980 unsafe impl ::windows::runtime::Interface for IEmailManagerStatics {
5981     type Vtable = IEmailManagerStatics_abi;
5982     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4111631956, 21957, 18576, [168, 36, 33, 108, 38, 24, 206, 127]);
5983 }
5984 #[repr(C)]
5985 #[doc(hidden)]
5986 pub struct IEmailManagerStatics_abi(
5987     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5988     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5989     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
5990     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
5991     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5992     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
5993     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, message: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
5994     #[cfg(not(feature = "Foundation"))] usize,
5995 );
5996 #[repr(transparent)]
5997 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
5998 #[doc(hidden)]
5999 pub struct IEmailManagerStatics2(::windows::runtime::IInspectable);
6000 unsafe impl ::windows::runtime::Interface for IEmailManagerStatics2 {
6001     type Vtable = IEmailManagerStatics2_abi;
6002     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2886020515, 45460, 16989, [182, 217, 208, 240, 65, 53, 237, 162]);
6003 }
6004 #[repr(C)]
6005 #[doc(hidden)]
6006 pub struct IEmailManagerStatics2_abi(
6007     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6008     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6009     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6010     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
6011     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6012     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
6013     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, accesstype: EmailStoreAccessType, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6014     #[cfg(not(feature = "Foundation"))] usize,
6015 );
6016 #[repr(transparent)]
6017 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6018 #[doc(hidden)]
6019 pub struct IEmailManagerStatics3(::windows::runtime::IInspectable);
6020 unsafe impl ::windows::runtime::Interface for IEmailManagerStatics3 {
6021     type Vtable = IEmailManagerStatics3_abi;
6022     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1248994197, 33854, 18757, [179, 170, 52, 158, 7, 163, 98, 197]);
6023 }
6024 #[repr(C)]
6025 #[doc(hidden)]
6026 pub struct IEmailManagerStatics3_abi(
6027     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6028     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6029     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6030     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
6031     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6032     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
6033     #[cfg(feature = "System")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, user: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6034     #[cfg(not(feature = "System"))] usize,
6035 );
6036 #[repr(transparent)]
6037 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6038 #[doc(hidden)]
6039 pub struct IEmailMeetingInfo(::windows::runtime::IInspectable);
6040 unsafe impl ::windows::runtime::Interface for IEmailMeetingInfo {
6041     type Vtable = IEmailMeetingInfo_abi;
6042     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(834682793, 31027, 16735, [162, 117, 209, 101, 186, 7, 2, 107]);
6043 }
6044 #[repr(C)]
6045 #[doc(hidden)]
6046 pub struct IEmailMeetingInfo_abi(
6047     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6048     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6049     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6050     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
6051     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6052     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
6053     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6054     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
6055     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
6056     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
6057     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6058     #[cfg(not(feature = "Foundation"))] usize,
6059     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6060     #[cfg(not(feature = "Foundation"))] usize,
6061     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::TimeSpan) -> ::windows::runtime::HRESULT,
6062     #[cfg(not(feature = "Foundation"))] usize,
6063     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: super::super::Foundation::TimeSpan) -> ::windows::runtime::HRESULT,
6064     #[cfg(not(feature = "Foundation"))] usize,
6065     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6066     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
6067     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6068     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
6069     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
6070     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
6071     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6072     #[cfg(not(feature = "Foundation"))] usize,
6073     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, proposedstarttime: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6074     #[cfg(not(feature = "Foundation"))] usize,
6075     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6076     #[cfg(not(feature = "Foundation"))] usize,
6077     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, duration: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6078     #[cfg(not(feature = "Foundation"))] usize,
6079     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6080     #[cfg(not(feature = "Foundation"))] usize,
6081     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6082     #[cfg(not(feature = "Foundation"))] usize,
6083     #[cfg(feature = "ApplicationModel_Appointments")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6084     #[cfg(not(feature = "ApplicationModel_Appointments"))] usize,
6085     #[cfg(feature = "ApplicationModel_Appointments")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6086     #[cfg(not(feature = "ApplicationModel_Appointments"))] usize,
6087     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u64) -> ::windows::runtime::HRESULT,
6088     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: u64) -> ::windows::runtime::HRESULT,
6089     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut super::super::Foundation::DateTime) -> ::windows::runtime::HRESULT,
6090     #[cfg(not(feature = "Foundation"))] usize,
6091     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: super::super::Foundation::DateTime) -> ::windows::runtime::HRESULT,
6092     #[cfg(not(feature = "Foundation"))] usize,
6093 );
6094 #[repr(transparent)]
6095 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6096 #[doc(hidden)]
6097 pub struct IEmailMeetingInfo2(::windows::runtime::IInspectable);
6098 unsafe impl ::windows::runtime::Interface for IEmailMeetingInfo2 {
6099     type Vtable = IEmailMeetingInfo2_abi;
6100     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2119776365, 45273, 20453, [134, 124, 227, 30, 210, 181, 136, 184]);
6101 }
6102 #[repr(C)]
6103 #[doc(hidden)]
6104 pub struct IEmailMeetingInfo2_abi(
6105     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6106     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6107     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6108     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
6109     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6110     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
6111     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6112 );
6113 #[repr(transparent)]
6114 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6115 #[doc(hidden)]
6116 pub struct IEmailMessage(::windows::runtime::IInspectable);
6117 unsafe impl ::windows::runtime::Interface for IEmailMessage {
6118     type Vtable = IEmailMessage_abi;
6119     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1819120781, 32949, 18680, [176, 177, 224, 78, 67, 15, 68, 229]);
6120 }
6121 #[repr(C)]
6122 #[doc(hidden)]
6123 pub struct IEmailMessage_abi(
6124     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6125     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6126     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6127     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
6128     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6129     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
6130     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
6131     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
6132     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
6133     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
6134     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6135     #[cfg(not(feature = "Foundation_Collections"))] usize,
6136     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6137     #[cfg(not(feature = "Foundation_Collections"))] usize,
6138     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6139     #[cfg(not(feature = "Foundation_Collections"))] usize,
6140     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6141     #[cfg(not(feature = "Foundation_Collections"))] usize,
6142 );
6143 #[repr(transparent)]
6144 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6145 #[doc(hidden)]
6146 pub struct IEmailMessage2(::windows::runtime::IInspectable);
6147 unsafe impl ::windows::runtime::Interface for IEmailMessage2 {
6148     type Vtable = IEmailMessage2_abi;
6149     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4257752203, 40730, 17627, [189, 60, 101, 195, 132, 119, 15, 134]);
6150 }
6151 #[repr(C)]
6152 #[doc(hidden)]
6153 pub struct IEmailMessage2_abi(
6154     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6155     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6156     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6157     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
6158     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6159     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
6160     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
6161     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
6162     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
6163     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
6164     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
6165     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
6166     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6167     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
6168     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u64) -> ::windows::runtime::HRESULT,
6169     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut EmailMessageDownloadState) -> ::windows::runtime::HRESULT,
6170     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: EmailMessageDownloadState) -> ::windows::runtime::HRESULT,
6171     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut u32) -> ::windows::runtime::HRESULT,
6172     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: u32) -> ::windows::runtime::HRESULT,
6173     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut EmailFlagState) -> ::windows::runtime::HRESULT,
6174     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: EmailFlagState) -> ::windows::runtime::HRESULT,
6175     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6176     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut EmailImportance) -> ::windows::runtime::HRESULT,
6177     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: EmailImportance) -> ::windows::runtime::HRESULT,
6178     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
6179     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6180     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6181     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6182     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6183     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
6184     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6185     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: bool) -> ::windows::runtime::HRESULT,
6186     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6187     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut bool) -> ::windows::runtime::HRESULT,
6188     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
6189     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
6190     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
6191     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut i32) -> ::windows::runtime::HRESULT,
6192     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: i32) -> ::windows::runtime::HRESULT,
6193     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
6194     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
6195     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut EmailMessageResponseKind) -> ::windows::runtime::HRESULT,
6196     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: EmailMessageResponseKind) -> ::windows::runtime::HRESULT,
6197     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6198     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6199     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6200     #[cfg(not(feature = "Foundation"))] usize,
6201     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6202     #[cfg(not(feature = "Foundation"))] usize,
6203     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6204     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6205     #[cfg(feature = "Storage_Streams")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, r#type: EmailMessageBodyKind, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6206     #[cfg(not(feature = "Storage_Streams"))] usize,
6207     #[cfg(feature = "Storage_Streams")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, r#type: EmailMessageBodyKind, stream: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6208     #[cfg(not(feature = "Storage_Streams"))] usize,
6209 );
6210 #[repr(transparent)]
6211 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6212 #[doc(hidden)]
6213 pub struct IEmailMessage3(::windows::runtime::IInspectable);
6214 unsafe impl ::windows::runtime::Interface for IEmailMessage3 {
6215     type Vtable = IEmailMessage3_abi;
6216     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2716493660, 58776, 19753, [160, 24, 252, 123, 126, 236, 224, 161]);
6217 }
6218 #[repr(C)]
6219 #[doc(hidden)]
6220 pub struct IEmailMessage3_abi(
6221     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6222     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6223     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6224     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
6225     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6226     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
6227     #[cfg(feature = "Storage_Streams")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6228     #[cfg(not(feature = "Storage_Streams"))] usize,
6229     #[cfg(feature = "Storage_Streams")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6230     #[cfg(not(feature = "Storage_Streams"))] usize,
6231     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut EmailMessageSmimeKind) -> ::windows::runtime::HRESULT,
6232     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: EmailMessageSmimeKind) -> ::windows::runtime::HRESULT,
6233 );
6234 #[repr(transparent)]
6235 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6236 #[doc(hidden)]
6237 pub struct IEmailMessage4(::windows::runtime::IInspectable);
6238 unsafe impl ::windows::runtime::Interface for IEmailMessage4 {
6239     type Vtable = IEmailMessage4_abi;
6240     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(830271873, 15999, 18949, [131, 148, 62, 16, 51, 109, 212, 53]);
6241 }
6242 #[repr(C)]
6243 #[doc(hidden)]
6244 pub struct IEmailMessage4_abi(
6245     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6246     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6247     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6248     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
6249     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6250     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
6251     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6252     #[cfg(not(feature = "Foundation_Collections"))] usize,
6253     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6254     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6255 );
6256 #[repr(transparent)]
6257 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6258 #[doc(hidden)]
6259 pub struct IEmailMessageBatch(::windows::runtime::IInspectable);
6260 unsafe impl ::windows::runtime::Interface for IEmailMessageBatch {
6261     type Vtable = IEmailMessageBatch_abi;
6262     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1616695439, 9689, 20251, [158, 81, 5, 20, 192, 20, 150, 83]);
6263 }
6264 #[repr(C)]
6265 #[doc(hidden)]
6266 pub struct IEmailMessageBatch_abi(
6267     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6268     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6269     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6270     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
6271     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6272     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
6273     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6274     #[cfg(not(feature = "Foundation_Collections"))] usize,
6275     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut EmailBatchStatus) -> ::windows::runtime::HRESULT,
6276 );
6277 #[repr(transparent)]
6278 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6279 #[doc(hidden)]
6280 pub struct IEmailMessageReader(::windows::runtime::IInspectable);
6281 unsafe impl ::windows::runtime::Interface for IEmailMessageReader {
6282     type Vtable = IEmailMessageReader_abi;
6283     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(793427615, 25107, 19077, [163, 176, 249, 45, 26, 131, 157, 25]);
6284 }
6285 #[repr(C)]
6286 #[doc(hidden)]
6287 pub struct IEmailMessageReader_abi(
6288     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6289     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6290     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6291     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
6292     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6293     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
6294     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6295     #[cfg(not(feature = "Foundation"))] usize,
6296 );
6297 #[repr(transparent)]
6298 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6299 #[doc(hidden)]
6300 pub struct IEmailQueryOptions(::windows::runtime::IInspectable);
6301 unsafe impl ::windows::runtime::Interface for IEmailQueryOptions {
6302     type Vtable = IEmailQueryOptions_abi;
6303     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1162890139, 15999, 19794, [182, 221, 214, 253, 78, 31, 189, 154]);
6304 }
6305 #[repr(C)]
6306 #[doc(hidden)]
6307 pub struct IEmailQueryOptions_abi(
6308     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6309     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6310     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6311     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
6312     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6313     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
6314     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6315     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut EmailQuerySortDirection) -> ::windows::runtime::HRESULT,
6316     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: EmailQuerySortDirection) -> ::windows::runtime::HRESULT,
6317     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut EmailQuerySortProperty) -> ::windows::runtime::HRESULT,
6318     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: EmailQuerySortProperty) -> ::windows::runtime::HRESULT,
6319     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut EmailQueryKind) -> ::windows::runtime::HRESULT,
6320     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: EmailQueryKind) -> ::windows::runtime::HRESULT,
6321     #[cfg(feature = "Foundation_Collections")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6322     #[cfg(not(feature = "Foundation_Collections"))] usize,
6323 );
6324 #[repr(transparent)]
6325 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6326 #[doc(hidden)]
6327 pub struct IEmailQueryOptionsFactory(::windows::runtime::IInspectable);
6328 unsafe impl ::windows::runtime::Interface for IEmailQueryOptionsFactory {
6329     type Vtable = IEmailQueryOptionsFactory_abi;
6330     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2297536952, 30891, 20200, [180, 227, 4, 109, 110, 47, 229, 226]);
6331 }
6332 #[repr(C)]
6333 #[doc(hidden)]
6334 pub struct IEmailQueryOptionsFactory_abi(
6335     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6336     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6337     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6338     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
6339     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6340     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
6341     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, text: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6342     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, text: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, fields: EmailQuerySearchFields, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6343 );
6344 #[repr(transparent)]
6345 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6346 #[doc(hidden)]
6347 pub struct IEmailQueryTextSearch(::windows::runtime::IInspectable);
6348 unsafe impl ::windows::runtime::Interface for IEmailQueryTextSearch {
6349     type Vtable = IEmailQueryTextSearch_abi;
6350     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2678104712, 15453, 18085, [166, 226, 49, 214, 253, 23, 229, 64]);
6351 }
6352 #[repr(C)]
6353 #[doc(hidden)]
6354 pub struct IEmailQueryTextSearch_abi(
6355     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6356     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6357     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6358     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
6359     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6360     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
6361     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut EmailQuerySearchFields) -> ::windows::runtime::HRESULT,
6362     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: EmailQuerySearchFields) -> ::windows::runtime::HRESULT,
6363     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut EmailQuerySearchScope) -> ::windows::runtime::HRESULT,
6364     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: EmailQuerySearchScope) -> ::windows::runtime::HRESULT,
6365     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
6366     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
6367 );
6368 #[repr(transparent)]
6369 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6370 #[doc(hidden)]
6371 pub struct IEmailRecipient(::windows::runtime::IInspectable);
6372 unsafe impl ::windows::runtime::Interface for IEmailRecipient {
6373     type Vtable = IEmailRecipient_abi;
6374     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3404211635, 17528, 18452, [185, 0, 201, 2, 181, 225, 155, 83]);
6375 }
6376 #[repr(C)]
6377 #[doc(hidden)]
6378 pub struct IEmailRecipient_abi(
6379     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6380     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6381     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6382     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
6383     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6384     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
6385     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
6386     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
6387     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
6388     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>) -> ::windows::runtime::HRESULT,
6389 );
6390 #[repr(transparent)]
6391 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6392 #[doc(hidden)]
6393 pub struct IEmailRecipientFactory(::windows::runtime::IInspectable);
6394 unsafe impl ::windows::runtime::Interface for IEmailRecipientFactory {
6395     type Vtable = IEmailRecipientFactory_abi;
6396     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1426110541, 51098, 20216, [185, 9, 114, 46, 24, 227, 147, 93]);
6397 }
6398 #[repr(C)]
6399 #[doc(hidden)]
6400 pub struct IEmailRecipientFactory_abi(
6401     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6402     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6403     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6404     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
6405     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6406     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
6407     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, address: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6408     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, address: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, name: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6409 );
6410 #[repr(transparent)]
6411 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6412 #[doc(hidden)]
6413 pub struct IEmailRecipientResolutionResult(::windows::runtime::IInspectable);
6414 unsafe impl ::windows::runtime::Interface for IEmailRecipientResolutionResult {
6415     type Vtable = IEmailRecipientResolutionResult_abi;
6416     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2441296122, 36237, 17779, [128, 209, 7, 23, 42, 52, 185, 141]);
6417 }
6418 #[repr(C)]
6419 #[doc(hidden)]
6420 pub struct IEmailRecipientResolutionResult_abi(
6421     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6422     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6423     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6424     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
6425     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6426     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
6427     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut EmailRecipientResolutionStatus) -> ::windows::runtime::HRESULT,
6428     #[cfg(all(feature = "Foundation_Collections", feature = "Security_Cryptography_Certificates"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6429     #[cfg(not(all(feature = "Foundation_Collections", feature = "Security_Cryptography_Certificates")))] usize,
6430 );
6431 #[repr(transparent)]
6432 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6433 #[doc(hidden)]
6434 pub struct IEmailRecipientResolutionResult2(::windows::runtime::IInspectable);
6435 unsafe impl ::windows::runtime::Interface for IEmailRecipientResolutionResult2 {
6436     type Vtable = IEmailRecipientResolutionResult2_abi;
6437     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1581386678, 52827, 19422, [185, 212, 225, 109, 160, 176, 159, 202]);
6438 }
6439 #[repr(C)]
6440 #[doc(hidden)]
6441 pub struct IEmailRecipientResolutionResult2_abi(
6442     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6443     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6444     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6445     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
6446     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6447     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
6448     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: EmailRecipientResolutionStatus) -> ::windows::runtime::HRESULT,
6449     #[cfg(all(feature = "Foundation_Collections", feature = "Security_Cryptography_Certificates"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6450     #[cfg(not(all(feature = "Foundation_Collections", feature = "Security_Cryptography_Certificates")))] usize,
6451 );
6452 #[repr(transparent)]
6453 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6454 #[doc(hidden)]
6455 pub struct IEmailStore(::windows::runtime::IInspectable);
6456 unsafe impl ::windows::runtime::Interface for IEmailStore {
6457     type Vtable = IEmailStore_abi;
6458     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4160954990, 37175, 20363, [164, 112, 39, 154, 195, 5, 142, 182]);
6459 }
6460 #[repr(C)]
6461 #[doc(hidden)]
6462 pub struct IEmailStore_abi(
6463     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6464     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6465     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6466     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
6467     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6468     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
6469     #[cfg(all(feature = "Foundation", feature = "Foundation_Collections"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6470     #[cfg(not(all(feature = "Foundation", feature = "Foundation_Collections")))] usize,
6471     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6472     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, options: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6473     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6474     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, options: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6475     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, id: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6476     #[cfg(not(feature = "Foundation"))] usize,
6477     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, id: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6478     #[cfg(not(feature = "Foundation"))] usize,
6479     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, id: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6480     #[cfg(not(feature = "Foundation"))] usize,
6481     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, id: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6482     #[cfg(not(feature = "Foundation"))] usize,
6483     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, accountname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, accountaddress: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6484     #[cfg(not(feature = "Foundation"))] usize,
6485     #[cfg(feature = "Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, accountname: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, accountaddress: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, userdataaccountid: ::std::mem::ManuallyDrop<::windows::runtime::HSTRING>, result__: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6486     #[cfg(not(feature = "Foundation"))] usize,
6487 );
6488 #[repr(transparent)]
6489 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
6490 #[doc(hidden)]
6491 pub struct IEmailStoreNotificationTriggerDetails(::windows::runtime::IInspectable);
6492 unsafe impl ::windows::runtime::Interface for IEmailStoreNotificationTriggerDetails {
6493     type Vtable = IEmailStoreNotificationTriggerDetails_abi;
6494     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3457635900, 18150, 17353, [150, 247, 250, 207, 125, 215, 16, 203]);
6495 }
6496 #[repr(C)]
6497 #[doc(hidden)]
6498 pub struct IEmailStoreNotificationTriggerDetails_abi(
6499     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6500     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6501     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
6502     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, count: *mut u32, values: *mut *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
6503     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
6504     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, value: *mut i32) -> ::windows::runtime::HRESULT,
6505 );
6506