#![allow(non_snake_case, non_camel_case_types, non_upper_case_globals, clashing_extern_declarations, clippy::all)]
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub type CONFLICT_RESOLUTION_POLICY = i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const CRP_NONE: CONFLICT_RESOLUTION_POLICY = 0i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const CRP_DESTINATION_PROVIDER_WINS: CONFLICT_RESOLUTION_POLICY = 1i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const CRP_SOURCE_PROVIDER_WINS: CONFLICT_RESOLUTION_POLICY = 2i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const CRP_LAST: CONFLICT_RESOLUTION_POLICY = 3i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub type CONSTRAINT_CONFLICT_REASON = i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const CCR_OTHER: CONSTRAINT_CONFLICT_REASON = 0i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const CCR_COLLISION: CONSTRAINT_CONFLICT_REASON = 1i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const CCR_NOPARENT: CONSTRAINT_CONFLICT_REASON = 2i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const CCR_IDENTITY: CONSTRAINT_CONFLICT_REASON = 3i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub type FILTERING_TYPE = i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const FT_CURRENT_ITEMS_ONLY: FILTERING_TYPE = 0i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const FT_CURRENT_ITEMS_AND_VERSIONS_FOR_MOVED_OUT_ITEMS: FILTERING_TYPE = 1i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub type FILTER_COMBINATION_TYPE = i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const FCT_INTERSECTION: FILTER_COMBINATION_TYPE = 0i32;
pub type IAsynchronousDataRetriever = *mut ::core::ffi::c_void;
pub type IChangeConflict = *mut ::core::ffi::c_void;
pub type IChangeUnitException = *mut ::core::ffi::c_void;
pub type IChangeUnitListFilterInfo = *mut ::core::ffi::c_void;
pub type IClockVector = *mut ::core::ffi::c_void;
pub type IClockVectorElement = *mut ::core::ffi::c_void;
pub type ICombinedFilterInfo = *mut ::core::ffi::c_void;
pub type IConstraintConflict = *mut ::core::ffi::c_void;
pub type IConstructReplicaKeyMap = *mut ::core::ffi::c_void;
pub type ICoreFragment = *mut ::core::ffi::c_void;
pub type ICoreFragmentInspector = *mut ::core::ffi::c_void;
pub type ICustomFilterInfo = *mut ::core::ffi::c_void;
#[repr(C)]
#[doc = "*Required features: 'Win32_System_WindowsSync', 'Win32_Foundation'*"]
#[cfg(feature = "Win32_Foundation")]
pub struct ID_PARAMETERS {
    pub dwSize: u32,
    pub replicaId: ID_PARAMETER_PAIR,
    pub itemId: ID_PARAMETER_PAIR,
    pub changeUnitId: ID_PARAMETER_PAIR,
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for ID_PARAMETERS {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for ID_PARAMETERS {
    fn clone(&self) -> Self {
        *self
    }
}
#[repr(C)]
#[doc = "*Required features: 'Win32_System_WindowsSync', 'Win32_Foundation'*"]
#[cfg(feature = "Win32_Foundation")]
pub struct ID_PARAMETER_PAIR {
    pub fIsVariable: super::super::Foundation::BOOL,
    pub cbIdSize: u16,
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for ID_PARAMETER_PAIR {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for ID_PARAMETER_PAIR {
    fn clone(&self) -> Self {
        *self
    }
}
pub type IDataRetrieverCallback = *mut ::core::ffi::c_void;
pub type IEnumChangeUnitExceptions = *mut ::core::ffi::c_void;
pub type IEnumClockVector = *mut ::core::ffi::c_void;
pub type IEnumFeedClockVector = *mut ::core::ffi::c_void;
pub type IEnumItemIds = *mut ::core::ffi::c_void;
pub type IEnumRangeExceptions = *mut ::core::ffi::c_void;
pub type IEnumSingleItemExceptions = *mut ::core::ffi::c_void;
pub type IEnumSyncChangeUnits = *mut ::core::ffi::c_void;
pub type IEnumSyncChanges = *mut ::core::ffi::c_void;
pub type IEnumSyncProviderConfigUIInfos = *mut ::core::ffi::c_void;
pub type IEnumSyncProviderInfos = *mut ::core::ffi::c_void;
pub type IFeedClockVector = *mut ::core::ffi::c_void;
pub type IFeedClockVectorElement = *mut ::core::ffi::c_void;
pub type IFilterKeyMap = *mut ::core::ffi::c_void;
pub type IFilterRequestCallback = *mut ::core::ffi::c_void;
pub type IFilterTrackingProvider = *mut ::core::ffi::c_void;
pub type IFilterTrackingRequestCallback = *mut ::core::ffi::c_void;
pub type IFilterTrackingSyncChangeBuilder = *mut ::core::ffi::c_void;
pub type IForgottenKnowledge = *mut ::core::ffi::c_void;
pub type IKnowledgeSyncProvider = *mut ::core::ffi::c_void;
pub type ILoadChangeContext = *mut ::core::ffi::c_void;
pub type IProviderConverter = *mut ::core::ffi::c_void;
pub type IRangeException = *mut ::core::ffi::c_void;
pub type IRecoverableError = *mut ::core::ffi::c_void;
pub type IRecoverableErrorData = *mut ::core::ffi::c_void;
pub type IRegisteredSyncProvider = *mut ::core::ffi::c_void;
pub type IReplicaKeyMap = *mut ::core::ffi::c_void;
pub type IRequestFilteredSync = *mut ::core::ffi::c_void;
pub type ISingleItemException = *mut ::core::ffi::c_void;
pub type ISupportFilteredSync = *mut ::core::ffi::c_void;
pub type ISupportLastWriteTime = *mut ::core::ffi::c_void;
pub type ISyncCallback = *mut ::core::ffi::c_void;
pub type ISyncCallback2 = *mut ::core::ffi::c_void;
pub type ISyncChange = *mut ::core::ffi::c_void;
pub type ISyncChangeBatch = *mut ::core::ffi::c_void;
pub type ISyncChangeBatch2 = *mut ::core::ffi::c_void;
pub type ISyncChangeBatchAdvanced = *mut ::core::ffi::c_void;
pub type ISyncChangeBatchBase = *mut ::core::ffi::c_void;
pub type ISyncChangeBatchBase2 = *mut ::core::ffi::c_void;
pub type ISyncChangeBatchWithFilterKeyMap = *mut ::core::ffi::c_void;
pub type ISyncChangeBatchWithPrerequisite = *mut ::core::ffi::c_void;
pub type ISyncChangeBuilder = *mut ::core::ffi::c_void;
pub type ISyncChangeUnit = *mut ::core::ffi::c_void;
pub type ISyncChangeWithFilterKeyMap = *mut ::core::ffi::c_void;
pub type ISyncChangeWithPrerequisite = *mut ::core::ffi::c_void;
pub type ISyncConstraintCallback = *mut ::core::ffi::c_void;
pub type ISyncDataConverter = *mut ::core::ffi::c_void;
pub type ISyncFilter = *mut ::core::ffi::c_void;
pub type ISyncFilterDeserializer = *mut ::core::ffi::c_void;
pub type ISyncFilterInfo = *mut ::core::ffi::c_void;
pub type ISyncFilterInfo2 = *mut ::core::ffi::c_void;
pub type ISyncFullEnumerationChange = *mut ::core::ffi::c_void;
pub type ISyncFullEnumerationChangeBatch = *mut ::core::ffi::c_void;
pub type ISyncFullEnumerationChangeBatch2 = *mut ::core::ffi::c_void;
pub type ISyncKnowledge = *mut ::core::ffi::c_void;
pub type ISyncKnowledge2 = *mut ::core::ffi::c_void;
pub type ISyncMergeTombstoneChange = *mut ::core::ffi::c_void;
pub type ISyncProvider = *mut ::core::ffi::c_void;
pub type ISyncProviderConfigUI = *mut ::core::ffi::c_void;
pub type ISyncProviderConfigUIInfo = *mut ::core::ffi::c_void;
pub type ISyncProviderInfo = *mut ::core::ffi::c_void;
pub type ISyncProviderRegistration = *mut ::core::ffi::c_void;
pub type ISyncRegistrationChange = *mut ::core::ffi::c_void;
pub type ISyncSessionExtendedErrorInfo = *mut ::core::ffi::c_void;
pub type ISyncSessionState = *mut ::core::ffi::c_void;
pub type ISyncSessionState2 = *mut ::core::ffi::c_void;
pub type ISynchronousDataRetriever = *mut ::core::ffi::c_void;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub type KNOWLEDGE_COOKIE_COMPARISON_RESULT = i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const KCCR_COOKIE_KNOWLEDGE_EQUAL: KNOWLEDGE_COOKIE_COMPARISON_RESULT = 0i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const KCCR_COOKIE_KNOWLEDGE_CONTAINED: KNOWLEDGE_COOKIE_COMPARISON_RESULT = 1i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const KCCR_COOKIE_KNOWLEDGE_CONTAINS: KNOWLEDGE_COOKIE_COMPARISON_RESULT = 2i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const KCCR_COOKIE_KNOWLEDGE_NOT_COMPARABLE: KNOWLEDGE_COOKIE_COMPARISON_RESULT = 3i32;
#[doc = "*Required features: 'Win32_System_WindowsSync', 'Win32_UI_Shell_PropertiesSystem'*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub const PKEY_CONFIGUI_CAPABILITIES: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY { fmtid: ::windows_sys::core::GUID { data1: 1430988010, data2: 59619, data3: 17850, data4: [147, 82, 223, 181, 97, 225, 113, 228] }, pid: 5u32 };
#[doc = "*Required features: 'Win32_System_WindowsSync', 'Win32_UI_Shell_PropertiesSystem'*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub const PKEY_CONFIGUI_CLSID: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY { fmtid: ::windows_sys::core::GUID { data1: 1430988010, data2: 59619, data3: 17850, data4: [147, 82, 223, 181, 97, 225, 113, 228] }, pid: 3u32 };
#[doc = "*Required features: 'Win32_System_WindowsSync', 'Win32_UI_Shell_PropertiesSystem'*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub const PKEY_CONFIGUI_CONTENTTYPE: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY { fmtid: ::windows_sys::core::GUID { data1: 1430988010, data2: 59619, data3: 17850, data4: [147, 82, 223, 181, 97, 225, 113, 228] }, pid: 4u32 };
#[doc = "*Required features: 'Win32_System_WindowsSync', 'Win32_UI_Shell_PropertiesSystem'*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub const PKEY_CONFIGUI_DESCRIPTION: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY { fmtid: ::windows_sys::core::GUID { data1: 1430988010, data2: 59619, data3: 17850, data4: [147, 82, 223, 181, 97, 225, 113, 228] }, pid: 9u32 };
#[doc = "*Required features: 'Win32_System_WindowsSync', 'Win32_UI_Shell_PropertiesSystem'*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub const PKEY_CONFIGUI_ICON: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY { fmtid: ::windows_sys::core::GUID { data1: 1430988010, data2: 59619, data3: 17850, data4: [147, 82, 223, 181, 97, 225, 113, 228] }, pid: 11u32 };
#[doc = "*Required features: 'Win32_System_WindowsSync', 'Win32_UI_Shell_PropertiesSystem'*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub const PKEY_CONFIGUI_INSTANCEID: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY { fmtid: ::windows_sys::core::GUID { data1: 1430988010, data2: 59619, data3: 17850, data4: [147, 82, 223, 181, 97, 225, 113, 228] }, pid: 2u32 };
#[doc = "*Required features: 'Win32_System_WindowsSync', 'Win32_UI_Shell_PropertiesSystem'*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub const PKEY_CONFIGUI_IS_GLOBAL: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY { fmtid: ::windows_sys::core::GUID { data1: 1430988010, data2: 59619, data3: 17850, data4: [147, 82, 223, 181, 97, 225, 113, 228] }, pid: 7u32 };
#[doc = "*Required features: 'Win32_System_WindowsSync', 'Win32_UI_Shell_PropertiesSystem'*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub const PKEY_CONFIGUI_MENUITEM: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY { fmtid: ::windows_sys::core::GUID { data1: 1430988010, data2: 59619, data3: 17850, data4: [147, 82, 223, 181, 97, 225, 113, 228] }, pid: 13u32 };
#[doc = "*Required features: 'Win32_System_WindowsSync', 'Win32_UI_Shell_PropertiesSystem'*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub const PKEY_CONFIGUI_MENUITEM_NOUI: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY { fmtid: ::windows_sys::core::GUID { data1: 1430988010, data2: 59619, data3: 17850, data4: [147, 82, 223, 181, 97, 225, 113, 228] }, pid: 12u32 };
#[doc = "*Required features: 'Win32_System_WindowsSync', 'Win32_UI_Shell_PropertiesSystem'*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub const PKEY_CONFIGUI_NAME: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY { fmtid: ::windows_sys::core::GUID { data1: 1430988010, data2: 59619, data3: 17850, data4: [147, 82, 223, 181, 97, 225, 113, 228] }, pid: 8u32 };
#[doc = "*Required features: 'Win32_System_WindowsSync', 'Win32_UI_Shell_PropertiesSystem'*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub const PKEY_CONFIGUI_SUPPORTED_ARCHITECTURE: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY { fmtid: ::windows_sys::core::GUID { data1: 1430988010, data2: 59619, data3: 17850, data4: [147, 82, 223, 181, 97, 225, 113, 228] }, pid: 6u32 };
#[doc = "*Required features: 'Win32_System_WindowsSync', 'Win32_UI_Shell_PropertiesSystem'*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub const PKEY_CONFIGUI_TOOLTIPS: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY { fmtid: ::windows_sys::core::GUID { data1: 1430988010, data2: 59619, data3: 17850, data4: [147, 82, 223, 181, 97, 225, 113, 228] }, pid: 10u32 };
#[doc = "*Required features: 'Win32_System_WindowsSync', 'Win32_UI_Shell_PropertiesSystem'*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub const PKEY_PROVIDER_CAPABILITIES: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY { fmtid: ::windows_sys::core::GUID { data1: 2216140385, data2: 24822, data3: 19484, data4: [136, 237, 241, 197, 49, 179, 43, 218] }, pid: 6u32 };
#[doc = "*Required features: 'Win32_System_WindowsSync', 'Win32_UI_Shell_PropertiesSystem'*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub const PKEY_PROVIDER_CLSID: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY { fmtid: ::windows_sys::core::GUID { data1: 2216140385, data2: 24822, data3: 19484, data4: [136, 237, 241, 197, 49, 179, 43, 218] }, pid: 3u32 };
#[doc = "*Required features: 'Win32_System_WindowsSync', 'Win32_UI_Shell_PropertiesSystem'*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub const PKEY_PROVIDER_CONFIGUI: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY { fmtid: ::windows_sys::core::GUID { data1: 2216140385, data2: 24822, data3: 19484, data4: [136, 237, 241, 197, 49, 179, 43, 218] }, pid: 4u32 };
#[doc = "*Required features: 'Win32_System_WindowsSync', 'Win32_UI_Shell_PropertiesSystem'*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub const PKEY_PROVIDER_CONTENTTYPE: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY { fmtid: ::windows_sys::core::GUID { data1: 2216140385, data2: 24822, data3: 19484, data4: [136, 237, 241, 197, 49, 179, 43, 218] }, pid: 5u32 };
#[doc = "*Required features: 'Win32_System_WindowsSync', 'Win32_UI_Shell_PropertiesSystem'*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub const PKEY_PROVIDER_DESCRIPTION: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY { fmtid: ::windows_sys::core::GUID { data1: 2216140385, data2: 24822, data3: 19484, data4: [136, 237, 241, 197, 49, 179, 43, 218] }, pid: 9u32 };
#[doc = "*Required features: 'Win32_System_WindowsSync', 'Win32_UI_Shell_PropertiesSystem'*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub const PKEY_PROVIDER_ICON: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY { fmtid: ::windows_sys::core::GUID { data1: 2216140385, data2: 24822, data3: 19484, data4: [136, 237, 241, 197, 49, 179, 43, 218] }, pid: 11u32 };
#[doc = "*Required features: 'Win32_System_WindowsSync', 'Win32_UI_Shell_PropertiesSystem'*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub const PKEY_PROVIDER_INSTANCEID: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY { fmtid: ::windows_sys::core::GUID { data1: 2216140385, data2: 24822, data3: 19484, data4: [136, 237, 241, 197, 49, 179, 43, 218] }, pid: 2u32 };
#[doc = "*Required features: 'Win32_System_WindowsSync', 'Win32_UI_Shell_PropertiesSystem'*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub const PKEY_PROVIDER_NAME: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY { fmtid: ::windows_sys::core::GUID { data1: 2216140385, data2: 24822, data3: 19484, data4: [136, 237, 241, 197, 49, 179, 43, 218] }, pid: 8u32 };
#[doc = "*Required features: 'Win32_System_WindowsSync', 'Win32_UI_Shell_PropertiesSystem'*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub const PKEY_PROVIDER_SUPPORTED_ARCHITECTURE: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY { fmtid: ::windows_sys::core::GUID { data1: 2216140385, data2: 24822, data3: 19484, data4: [136, 237, 241, 197, 49, 179, 43, 218] }, pid: 7u32 };
#[doc = "*Required features: 'Win32_System_WindowsSync', 'Win32_UI_Shell_PropertiesSystem'*"]
#[cfg(feature = "Win32_UI_Shell_PropertiesSystem")]
pub const PKEY_PROVIDER_TOOLTIPS: super::super::UI::Shell::PropertiesSystem::PROPERTYKEY = super::super::UI::Shell::PropertiesSystem::PROPERTYKEY { fmtid: ::windows_sys::core::GUID { data1: 2216140385, data2: 24822, data3: 19484, data4: [136, 237, 241, 197, 49, 179, 43, 218] }, pid: 10u32 };
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SYNC_CHANGE_FLAG_DELETED: u32 = 1u32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SYNC_CHANGE_FLAG_DOES_NOT_EXIST: u32 = 2u32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SYNC_CHANGE_FLAG_GHOST: u32 = 4u32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub type SYNC_CONSTRAINT_RESOLVE_ACTION = i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SCRA_DEFER: SYNC_CONSTRAINT_RESOLVE_ACTION = 0i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SCRA_ACCEPT_DESTINATION_PROVIDER: SYNC_CONSTRAINT_RESOLVE_ACTION = 1i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SCRA_ACCEPT_SOURCE_PROVIDER: SYNC_CONSTRAINT_RESOLVE_ACTION = 2i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SCRA_TRANSFER_AND_DEFER: SYNC_CONSTRAINT_RESOLVE_ACTION = 3i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SCRA_MERGE: SYNC_CONSTRAINT_RESOLVE_ACTION = 4i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SCRA_RENAME_SOURCE: SYNC_CONSTRAINT_RESOLVE_ACTION = 5i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SCRA_RENAME_DESTINATION: SYNC_CONSTRAINT_RESOLVE_ACTION = 6i32;
#[repr(C)]
#[doc = "*Required features: 'Win32_System_WindowsSync', 'Win32_Foundation'*"]
#[cfg(feature = "Win32_Foundation")]
pub struct SYNC_FILTER_CHANGE {
    pub fMoveIn: super::super::Foundation::BOOL,
    pub moveVersion: SYNC_VERSION,
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for SYNC_FILTER_CHANGE {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for SYNC_FILTER_CHANGE {
    fn clone(&self) -> Self {
        *self
    }
}
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SYNC_FILTER_INFO_COMBINED: u32 = 8u32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SYNC_FILTER_INFO_FLAG_CHANGE_UNIT_LIST: u32 = 2u32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SYNC_FILTER_INFO_FLAG_CUSTOM: u32 = 4u32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SYNC_FILTER_INFO_FLAG_ITEM_LIST: u32 = 1u32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub type SYNC_FULL_ENUMERATION_ACTION = i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SFEA_FULL_ENUMERATION: SYNC_FULL_ENUMERATION_ACTION = 0i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SFEA_PARTIAL_SYNC: SYNC_FULL_ENUMERATION_ACTION = 1i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SFEA_ABORT: SYNC_FULL_ENUMERATION_ACTION = 2i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub type SYNC_PROGRESS_STAGE = i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SPS_CHANGE_DETECTION: SYNC_PROGRESS_STAGE = 0i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SPS_CHANGE_ENUMERATION: SYNC_PROGRESS_STAGE = 1i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SPS_CHANGE_APPLICATION: SYNC_PROGRESS_STAGE = 2i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub type SYNC_PROVIDER_ROLE = i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SPR_SOURCE: SYNC_PROVIDER_ROLE = 0i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SPR_DESTINATION: SYNC_PROVIDER_ROLE = 1i32;
#[repr(C)]
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub struct SYNC_RANGE {
    pub pbClosedLowerBound: *mut u8,
    pub pbClosedUpperBound: *mut u8,
}
impl ::core::marker::Copy for SYNC_RANGE {}
impl ::core::clone::Clone for SYNC_RANGE {
    fn clone(&self) -> Self {
        *self
    }
}
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub type SYNC_REGISTRATION_EVENT = i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SRE_PROVIDER_ADDED: SYNC_REGISTRATION_EVENT = 0i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SRE_PROVIDER_REMOVED: SYNC_REGISTRATION_EVENT = 1i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SRE_PROVIDER_UPDATED: SYNC_REGISTRATION_EVENT = 2i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SRE_PROVIDER_STATE_CHANGED: SYNC_REGISTRATION_EVENT = 3i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SRE_CONFIGUI_ADDED: SYNC_REGISTRATION_EVENT = 4i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SRE_CONFIGUI_REMOVED: SYNC_REGISTRATION_EVENT = 5i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SRE_CONFIGUI_UPDATED: SYNC_REGISTRATION_EVENT = 6i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub type SYNC_RESOLVE_ACTION = i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SRA_DEFER: SYNC_RESOLVE_ACTION = 0i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SRA_ACCEPT_DESTINATION_PROVIDER: SYNC_RESOLVE_ACTION = 1i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SRA_ACCEPT_SOURCE_PROVIDER: SYNC_RESOLVE_ACTION = 2i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SRA_MERGE: SYNC_RESOLVE_ACTION = 3i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SRA_TRANSFER_AND_DEFER: SYNC_RESOLVE_ACTION = 4i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SRA_LAST: SYNC_RESOLVE_ACTION = 5i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub type SYNC_SERIALIZATION_VERSION = i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SYNC_SERIALIZATION_VERSION_V1: SYNC_SERIALIZATION_VERSION = 1i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SYNC_SERIALIZATION_VERSION_V2: SYNC_SERIALIZATION_VERSION = 4i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SYNC_SERIALIZATION_VERSION_V3: SYNC_SERIALIZATION_VERSION = 5i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SYNC_SERIALIZE_REPLICA_KEY_MAP: u32 = 1u32;
#[repr(C)]
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub struct SYNC_SESSION_STATISTICS {
    pub dwChangesApplied: u32,
    pub dwChangesFailed: u32,
}
impl ::core::marker::Copy for SYNC_SESSION_STATISTICS {}
impl ::core::clone::Clone for SYNC_SESSION_STATISTICS {
    fn clone(&self) -> Self {
        *self
    }
}
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub type SYNC_STATISTICS = i32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SYNC_STATISTICS_RANGE_COUNT: SYNC_STATISTICS = 0i32;
#[repr(C)]
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub struct SYNC_TIME {
    pub dwDate: u32,
    pub dwTime: u32,
}
impl ::core::marker::Copy for SYNC_TIME {}
impl ::core::clone::Clone for SYNC_TIME {
    fn clone(&self) -> Self {
        *self
    }
}
#[repr(C)]
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub struct SYNC_VERSION {
    pub dwLastUpdatingReplicaKey: u32,
    pub ullTickCount: u64,
}
impl ::core::marker::Copy for SYNC_VERSION {}
impl ::core::clone::Clone for SYNC_VERSION {
    fn clone(&self) -> Self {
        *self
    }
}
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SYNC_VERSION_FLAG_FROM_FEED: u32 = 1u32;
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub const SYNC_VERSION_FLAG_HAS_BY: u32 = 2u32;
#[repr(C)]
#[doc = "*Required features: 'Win32_System_WindowsSync', 'Win32_Foundation'*"]
#[cfg(feature = "Win32_Foundation")]
pub struct SyncProviderConfigUIConfiguration {
    pub dwVersion: u32,
    pub guidInstanceId: ::windows_sys::core::GUID,
    pub clsidConfigUI: ::windows_sys::core::GUID,
    pub guidContentType: ::windows_sys::core::GUID,
    pub dwCapabilities: u32,
    pub dwSupportedArchitecture: u32,
    pub fIsGlobal: super::super::Foundation::BOOL,
}
#[cfg(feature = "Win32_Foundation")]
impl ::core::marker::Copy for SyncProviderConfigUIConfiguration {}
#[cfg(feature = "Win32_Foundation")]
impl ::core::clone::Clone for SyncProviderConfigUIConfiguration {
    fn clone(&self) -> Self {
        *self
    }
}
#[repr(C)]
#[doc = "*Required features: 'Win32_System_WindowsSync'*"]
pub struct SyncProviderConfiguration {
    pub dwVersion: u32,
    pub guidInstanceId: ::windows_sys::core::GUID,
    pub clsidProvider: ::windows_sys::core::GUID,
    pub guidConfigUIInstanceId: ::windows_sys::core::GUID,
    pub guidContentType: ::windows_sys::core::GUID,
    pub dwCapabilities: u32,
    pub dwSupportedArchitecture: u32,
}
impl ::core::marker::Copy for SyncProviderConfiguration {}
impl ::core::clone::Clone for SyncProviderConfiguration {
    fn clone(&self) -> Self {
        *self
    }
}
pub const SyncProviderRegistration: ::windows_sys::core::GUID = ::windows_sys::core::GUID { data1: 4163587825, data2: 37801, data3: 19934, data4: [128, 21, 247, 149, 10, 26, 110, 49] };
