#![allow(non_snake_case, non_camel_case_types, non_upper_case_globals, clashing_extern_declarations, clippy::all)] #[link(name = "windows")] extern "system" {} #[repr(C)] pub struct BackgroundDownloadProgress { pub BytesReceived: u64, pub TotalBytesToReceive: u64, pub Status: BackgroundTransferStatus, pub HasResponseChanged: bool, pub HasRestarted: bool, } impl ::core::marker::Copy for BackgroundDownloadProgress {} impl ::core::clone::Clone for BackgroundDownloadProgress { fn clone(&self) -> Self { *self } } pub type BackgroundDownloader = *mut ::core::ffi::c_void; #[repr(transparent)] pub struct BackgroundTransferBehavior(pub i32); impl BackgroundTransferBehavior { pub const Parallel: Self = Self(0i32); pub const Serialized: Self = Self(1i32); } impl ::core::marker::Copy for BackgroundTransferBehavior {} impl ::core::clone::Clone for BackgroundTransferBehavior { fn clone(&self) -> Self { *self } } pub type BackgroundTransferCompletionGroup = *mut ::core::ffi::c_void; pub type BackgroundTransferCompletionGroupTriggerDetails = *mut ::core::ffi::c_void; pub type BackgroundTransferContentPart = *mut ::core::ffi::c_void; #[repr(transparent)] pub struct BackgroundTransferCostPolicy(pub i32); impl BackgroundTransferCostPolicy { pub const Default: Self = Self(0i32); pub const UnrestrictedOnly: Self = Self(1i32); pub const Always: Self = Self(2i32); } impl ::core::marker::Copy for BackgroundTransferCostPolicy {} impl ::core::clone::Clone for BackgroundTransferCostPolicy { fn clone(&self) -> Self { *self } } #[repr(C)] pub struct BackgroundTransferFileRange { pub Offset: u64, pub Length: u64, } impl ::core::marker::Copy for BackgroundTransferFileRange {} impl ::core::clone::Clone for BackgroundTransferFileRange { fn clone(&self) -> Self { *self } } pub type BackgroundTransferGroup = *mut ::core::ffi::c_void; #[repr(transparent)] pub struct BackgroundTransferPriority(pub i32); impl BackgroundTransferPriority { pub const Default: Self = Self(0i32); pub const High: Self = Self(1i32); pub const Low: Self = Self(2i32); } impl ::core::marker::Copy for BackgroundTransferPriority {} impl ::core::clone::Clone for BackgroundTransferPriority { fn clone(&self) -> Self { *self } } pub type BackgroundTransferRangesDownloadedEventArgs = *mut ::core::ffi::c_void; #[repr(transparent)] pub struct BackgroundTransferStatus(pub i32); impl BackgroundTransferStatus { pub const Idle: Self = Self(0i32); pub const Running: Self = Self(1i32); pub const PausedByApplication: Self = Self(2i32); pub const PausedCostedNetwork: Self = Self(3i32); pub const PausedNoNetwork: Self = Self(4i32); pub const Completed: Self = Self(5i32); pub const Canceled: Self = Self(6i32); pub const Error: Self = Self(7i32); pub const PausedRecoverableWebErrorStatus: Self = Self(8i32); pub const PausedSystemPolicy: Self = Self(32i32); } impl ::core::marker::Copy for BackgroundTransferStatus {} impl ::core::clone::Clone for BackgroundTransferStatus { fn clone(&self) -> Self { *self } } #[repr(C)] pub struct BackgroundUploadProgress { pub BytesReceived: u64, pub BytesSent: u64, pub TotalBytesToReceive: u64, pub TotalBytesToSend: u64, pub Status: BackgroundTransferStatus, pub HasResponseChanged: bool, pub HasRestarted: bool, } impl ::core::marker::Copy for BackgroundUploadProgress {} impl ::core::clone::Clone for BackgroundUploadProgress { fn clone(&self) -> Self { *self } } pub type BackgroundUploader = *mut ::core::ffi::c_void; pub type DownloadOperation = *mut ::core::ffi::c_void; pub type IBackgroundTransferBase = *mut ::core::ffi::c_void; pub type IBackgroundTransferContentPartFactory = *mut ::core::ffi::c_void; pub type IBackgroundTransferOperation = *mut ::core::ffi::c_void; pub type IBackgroundTransferOperationPriority = *mut ::core::ffi::c_void; pub type ResponseInformation = *mut ::core::ffi::c_void; pub type UnconstrainedTransferRequestResult = *mut ::core::ffi::c_void; pub type UploadOperation = *mut ::core::ffi::c_void;