From d90ee1536e9e0cfdb62a70e36559e1cf2d8ce458 Mon Sep 17 00:00:00 2001
From: lpw
Date: Wed, 25 Sep 2024 14:48:52 +0800
Subject: [PATCH] 提交4.3.0

---
 frameworks/Didomi.xcframework/tvos-arm64_x86_64-simulator/Didomi.framework/Headers/Didomi-Swift.h |  410 ++++++++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 312 insertions(+), 98 deletions(-)

diff --git a/frameworks/Didomi.xcframework/tvos-arm64_x86_64-simulator/Didomi.framework/Headers/Didomi-Swift.h b/frameworks/Didomi.xcframework/tvos-arm64_x86_64-simulator/Didomi.framework/Headers/Didomi-Swift.h
index 24bfca4..7eeb8ee 100644
--- a/frameworks/Didomi.xcframework/tvos-arm64_x86_64-simulator/Didomi.framework/Headers/Didomi-Swift.h
+++ b/frameworks/Didomi.xcframework/tvos-arm64_x86_64-simulator/Didomi.framework/Headers/Didomi-Swift.h
@@ -1,6 +1,6 @@
 #if 0
 #elif defined(__arm64__) && __arm64__
-// Generated by Apple Swift version 5.8.1 (swiftlang-5.8.0.124.5 clang-1403.0.22.11.100)
+// Generated by Apple Swift version 5.9.2 (swiftlang-5.9.2.2.56 clang-1500.1.0.2.5)
 #ifndef DIDOMI_SWIFT_H
 #define DIDOMI_SWIFT_H
 #pragma clang diagnostic push
@@ -42,12 +42,18 @@
 #include <string.h>
 #endif
 #if defined(__cplusplus)
-#if __has_include(<ptrauth.h>)
+#if defined(__arm64e__) && __has_include(<ptrauth.h>)
 # include <ptrauth.h>
 #else
+#pragma clang diagnostic push
+#pragma clang diagnostic ignored "-Wreserved-macro-identifier"
 # ifndef __ptrauth_swift_value_witness_function_pointer
 #  define __ptrauth_swift_value_witness_function_pointer(x)
 # endif
+# ifndef __ptrauth_swift_class_method_pointer
+#  define __ptrauth_swift_class_method_pointer(x)
+# endif
+#pragma clang diagnostic pop
 #endif
 #endif
 
@@ -246,6 +252,17 @@
 #else
 # define SWIFT_NOEXCEPT 
 #endif
+#if !defined(SWIFT_C_INLINE_THUNK)
+# if __has_attribute(always_inline)
+# if __has_attribute(nodebug)
+#  define SWIFT_C_INLINE_THUNK inline __attribute__((always_inline)) __attribute__((nodebug))
+# else
+#  define SWIFT_C_INLINE_THUNK inline __attribute__((always_inline))
+# endif
+# else
+#  define SWIFT_C_INLINE_THUNK inline
+# endif
+#endif
 #if defined(_WIN32)
 #if !defined(SWIFT_IMPORT_STDLIB_SYMBOL)
 # define SWIFT_IMPORT_STDLIB_SYMBOL __declspec(dllimport)
@@ -283,6 +300,7 @@
 #endif
 
 #if defined(__OBJC__)
+
 
 /// Consent status to a vendor or purpose.
 typedef SWIFT_ENUM(NSInteger, ConsentStatus, open) {
@@ -452,17 +470,17 @@
 ///
 /// returns:
 /// <em>true</em> if consent is required, <em>false</em> if it is not required.
-- (BOOL)isConsentRequired SWIFT_WARN_UNUSED_RESULT;
+- (BOOL)isConsentRequired SWIFT_WARN_UNUSED_RESULT SWIFT_DEPRECATED_MSG("Use shouldUserStatusBeCollected() instead.");
 /// Determine if consent information is available for all purposes and vendors that are required
 ///
 /// returns:
 /// <em>true</em> if consent is required and consent information is available, <em>false</em> otherwise.
-- (BOOL)isUserConsentStatusPartial SWIFT_WARN_UNUSED_RESULT;
+- (BOOL)isUserConsentStatusPartial SWIFT_WARN_UNUSED_RESULT SWIFT_DEPRECATED_MSG("Use shouldUserStatusBeCollected() instead.");
 /// Determine if legitimate interest information is available for all purposes and vendors that are required
 ///
 /// returns:
 /// <em>true</em> if consent is required and legitimate interest information is available, <em>false</em> otherwise.
-- (BOOL)isUserLegitimateInterestStatusPartial SWIFT_WARN_UNUSED_RESULT;
+- (BOOL)isUserLegitimateInterestStatusPartial SWIFT_WARN_UNUSED_RESULT SWIFT_DEPRECATED_MSG("Use shouldUserStatusBeCollected() instead.");
 /// Set the user status for purposes and vendors for consent and legitimate interest.
 /// \param purposesConsentStatus boolean used to determine if consent will be enabled or disabled for all purposes.
 ///
@@ -769,26 +787,86 @@
 /// \param id Organization user ID
 ///
 - (void)setUserWithId:(NSString * _Nonnull)id;
+/// Set organization user information
+/// \param id Organization user ID
+///
+/// \param isUnderage Underage status of the user
+///
+- (void)setUserWithId:(NSString * _Nonnull)id isUnderage:(BOOL)isUnderage;
 /// Set organization user information and display consent notice if it is needed after synchronization
 /// \param id Organization user ID
 ///
 /// \param containerController View controller from which we can setup Didomi UI
 ///
 - (void)setUserWithId:(NSString * _Nonnull)id containerController:(UIViewController * _Nonnull)containerController;
+/// Set organization user information and display consent notice if it is needed after synchronization
+/// \param id Organization user ID
+///
+/// \param isUnderage Underage status of the user
+///
+/// \param containerController View controller from which we can setup Didomi UI
+///
+- (void)setUserWithId:(NSString * _Nonnull)id isUnderage:(BOOL)isUnderage containerController:(UIViewController * _Nonnull)containerController;
 /// Set organization user information with authentication
 /// \param userAuthParams Organization user authentication params
 ///
 - (void)setUserWithUserAuthParams:(UserAuthParams * _Nonnull)userAuthParams;
+/// Set organization user information with authentication
+/// \param userAuthParams Organization user authentication params
+///
+/// \param isUnderage Underage status of the user
+///
+- (void)setUserWithUserAuthParams:(UserAuthParams * _Nonnull)userAuthParams isUnderage:(BOOL)isUnderage;
+/// Set organization user information with authentication
+/// \param userAuthParams Organization user authentication params.
+///
+/// \param synchronizedUsers Additional users to synchronize user status.
+///
+- (void)setUserWithUserAuthParams:(UserAuthParams * _Nonnull)userAuthParams synchronizedUsers:(NSArray<UserAuthParams *> * _Nonnull)synchronizedUsers;
+/// Set organization user information with authentication
+/// \param userAuthParams Organization user authentication params.
+///
+/// \param synchronizedUsers Additional users to synchronize user status.
+///
+/// \param isUnderage Underage status of the user
+///
+- (void)setUserWithUserAuthParams:(UserAuthParams * _Nonnull)userAuthParams synchronizedUsers:(NSArray<UserAuthParams *> * _Nonnull)synchronizedUsers isUnderage:(BOOL)isUnderage;
 /// Set organization user information with authentication, and display consent notice if it is needed after synchronization
 /// \param userAuthParams Organization user authentication params
 ///
 /// \param containerController View controller from which we can setup Didomi UI
 ///
 - (void)setUserWithUserAuthParams:(UserAuthParams * _Nonnull)userAuthParams containerController:(UIViewController * _Nonnull)containerController;
+/// Set organization user information with authentication, and display consent notice if it is needed after synchronization
+/// \param userAuthParams Organization user authentication params
+///
+/// \param isUnderage Underage status of the user
+///
+/// \param containerController View controller from which we can setup Didomi UI
+///
+- (void)setUserWithUserAuthParams:(UserAuthParams * _Nonnull)userAuthParams isUnderage:(BOOL)isUnderage containerController:(UIViewController * _Nonnull)containerController;
+/// Set organization user information with authentication, and display consent notice if it is needed after synchronization
+/// \param userAuthParams Organization user authentication params.
+///
+/// \param synchronizedUsers Additional users to synchronize user status.
+///
+/// \param containerController View controller from which we can setup Didomi UI
+///
+- (void)setUserWithUserAuthParams:(UserAuthParams * _Nonnull)userAuthParams synchronizedUsers:(NSArray<UserAuthParams *> * _Nonnull)synchronizedUsers containerController:(UIViewController * _Nonnull)containerController;
+/// Set organization user information with authentication, and display consent notice if it is needed after synchronization
+/// \param userAuthParams Organization user authentication params.
+///
+/// \param synchronizedUsers Additional users to synchronize user status.
+///
+/// \param isUnderage Underage status of the user
+///
+/// \param containerController View controller from which we can setup Didomi UI
+///
+- (void)setUserWithUserAuthParams:(UserAuthParams * _Nonnull)userAuthParams synchronizedUsers:(NSArray<UserAuthParams *> * _Nonnull)synchronizedUsers isUnderage:(BOOL)isUnderage containerController:(UIViewController * _Nonnull)containerController;
 /// Remove organization user information (should be called when the SDK is initialized).
 - (void)clearUser;
 /// Get an instance of <code>UserStatus</code> containing all the information related to the user’s choices.
-- (DDMUserStatus * _Nonnull)getUserStatus SWIFT_WARN_UNUSED_RESULT;
+- (DDMUserStatus * _Nonnull)getUserStatus SWIFT_WARN_UNUSED_RESULT SWIFT_DEPRECATED_MSG("Use getCurrentUserStatus() instead.");
 /// Get an instance of <code>CurrentUserStatus</code> containing all the information related to the user’s choices.
 - (DDMCurrentUserStatus * _Nonnull)getCurrentUserStatus SWIFT_WARN_UNUSED_RESULT;
 /// Save user’s choices.
@@ -831,13 +909,14 @@
 /// Initialization parameters for Didomi SDK
 SWIFT_CLASS("_TtC6Didomi26DidomiInitializeParameters")
 @interface DidomiInitializeParameters : NSObject
-- (nonnull instancetype)initWithApiKey:(NSString * _Nonnull)apiKey localConfigurationPath:(NSString * _Nullable)localConfigurationPath remoteConfigurationURL:(NSString * _Nullable)remoteConfigurationURL providerID:(NSString * _Nullable)providerID disableDidomiRemoteConfig:(BOOL)disableDidomiRemoteConfig languageCode:(NSString * _Nullable)languageCode noticeID:(NSString * _Nullable)noticeID OBJC_DESIGNATED_INITIALIZER;
+- (nonnull instancetype)initWithApiKey:(NSString * _Nonnull)apiKey localConfigurationPath:(NSString * _Nullable)localConfigurationPath remoteConfigurationURL:(NSString * _Nullable)remoteConfigurationURL providerID:(NSString * _Nullable)providerID disableDidomiRemoteConfig:(BOOL)disableDidomiRemoteConfig languageCode:(NSString * _Nullable)languageCode noticeID:(NSString * _Nullable)noticeID countryCode:(NSString * _Nullable)countryCode regionCode:(NSString * _Nullable)regionCode isUnderage:(BOOL)isUnderage OBJC_DESIGNATED_INITIALIZER;
 - (nonnull instancetype)init SWIFT_UNAVAILABLE;
 + (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
 @end
 
 
 enum DDMEventType : NSInteger;
+@class DDMSyncReadyEvent;
 
 /// Class used as a listener for internal events occurred in the SDK.
 SWIFT_CLASS_NAMED("EventListener")
@@ -887,7 +966,8 @@
 @property (nonatomic, copy) void (^ _Nonnull onPreferencesClickSPICategoryDisagree)(enum DDMEventType, NSString * _Nullable);
 @property (nonatomic, copy) void (^ _Nonnull onPreferencesClickSPIPurposeSaveChoices)(enum DDMEventType);
 /// Sync
-@property (nonatomic, copy) void (^ _Nonnull onSyncDone)(enum DDMEventType, NSString * _Nullable);
+@property (nonatomic, copy) void (^ _Nonnull onSyncDone)(enum DDMEventType, NSString * _Nullable) SWIFT_DEPRECATED_MSG("Please use onSyncReady() instead");
+@property (nonatomic, copy) void (^ _Nonnull onSyncReady)(DDMSyncReadyEvent * _Nonnull);
 @property (nonatomic, copy) void (^ _Nonnull onSyncError)(enum DDMEventType, NSString * _Nullable);
 /// Language
 @property (nonatomic, copy) void (^ _Nonnull onLanguageUpdated)(enum DDMEventType, NSString * _Nullable);
@@ -928,18 +1008,19 @@
   DDMEventTypePreferencesClickVendorSaveChoices = 27,
 /// Sync
   DDMEventTypeSyncDone = 28,
-  DDMEventTypeSyncError = 29,
+  DDMEventTypeSyncReady = 29,
+  DDMEventTypeSyncError = 30,
 /// Language
-  DDMEventTypeLanguageUpdated = 30,
-  DDMEventTypeLanguageUpdateFailed = 31,
+  DDMEventTypeLanguageUpdated = 31,
+  DDMEventTypeLanguageUpdateFailed = 32,
 /// Preferences - Sensitive Personal Information
-  DDMEventTypeNoticeClickViewSPIPurposes = 32,
-  DDMEventTypePreferencesClickViewSPIPurposes = 33,
-  DDMEventTypePreferencesClickSPIPurposeAgree = 34,
-  DDMEventTypePreferencesClickSPIPurposeDisagree = 35,
-  DDMEventTypePreferencesClickSPICategoryAgree = 36,
-  DDMEventTypePreferencesClickSPICategoryDisagree = 37,
-  DDMEventTypePreferencesClickSPIPurposeSaveChoices = 38,
+  DDMEventTypeNoticeClickViewSPIPurposes = 33,
+  DDMEventTypePreferencesClickViewSPIPurposes = 34,
+  DDMEventTypePreferencesClickSPIPurposeAgree = 35,
+  DDMEventTypePreferencesClickSPIPurposeDisagree = 36,
+  DDMEventTypePreferencesClickSPICategoryAgree = 37,
+  DDMEventTypePreferencesClickSPICategoryDisagree = 38,
+  DDMEventTypePreferencesClickSPIPurposeSaveChoices = 39,
 };
 
 
@@ -994,10 +1075,32 @@
   RegulationCpa = 2,
   RegulationCpra = 3,
   RegulationCtdpa = 4,
-  RegulationUcpa = 5,
-  RegulationVcdpa = 6,
-  RegulationNone = 7,
+  RegulationDpdpa = 5,
+  RegulationFdbr = 6,
+  RegulationIcdpa = 7,
+  RegulationMcdpa = 8,
+  RegulationNhpa = 9,
+  RegulationNjdpa = 10,
+  RegulationOcpa = 11,
+  RegulationTdpsa = 12,
+  RegulationUcpa = 13,
+  RegulationVcdpa = 14,
+  RegulationNone = 15,
 };
+
+
+/// Class used to contain information about the occurrence of the Sync Ready event.
+SWIFT_CLASS_NAMED("SyncReadyEvent")
+@interface DDMSyncReadyEvent : NSObject
+/// Boolean that indicates whether remote user status has been applied locally.
+@property (nonatomic, readonly) BOOL statusApplied;
+/// Closure used to send a Sync Acknowledged API Event. Returns <em>true</em> if the API Event was sent, <em>false</em> otherwise.
+@property (nonatomic, readonly, copy) BOOL (^ _Nonnull syncAcknowledged)(void);
+- (nonnull instancetype)init SWIFT_UNAVAILABLE;
++ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
+@end
+
+
 
 
 
@@ -1103,10 +1206,13 @@
 @end
 
 
-SWIFT_CLASS_NAMED("IDs")
-@interface DDMUserStatusIDs : NSObject
-@property (nonatomic, readonly, copy) NSSet<NSString *> * _Nonnull enabled;
-@property (nonatomic, readonly, copy) NSSet<NSString *> * _Nonnull disabled;
+SWIFT_CLASS_NAMED("Vendors")
+@interface DDMUserStatusVendors : NSObject
+@property (nonatomic, readonly, strong) DDMUserStatusIDs * _Nonnull consent;
+@property (nonatomic, readonly, strong) DDMUserStatusIDs * _Nonnull legitimateInterest;
+@property (nonatomic, readonly, strong) DDMUserStatusIDs * _Nonnull global;
+@property (nonatomic, readonly, strong) DDMUserStatusIDs * _Nonnull globalConsent;
+@property (nonatomic, readonly, strong) DDMUserStatusIDs * _Nonnull globalLegitimateInterest;
 - (BOOL)isEqual:(id _Nullable)object SWIFT_WARN_UNUSED_RESULT;
 - (nonnull instancetype)init SWIFT_UNAVAILABLE;
 + (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@@ -1117,13 +1223,10 @@
 @end
 
 
-SWIFT_CLASS_NAMED("Vendors")
-@interface DDMUserStatusVendors : NSObject
-@property (nonatomic, readonly, strong) DDMUserStatusIDs * _Nonnull consent;
-@property (nonatomic, readonly, strong) DDMUserStatusIDs * _Nonnull legitimateInterest;
-@property (nonatomic, readonly, strong) DDMUserStatusIDs * _Nonnull global;
-@property (nonatomic, readonly, strong) DDMUserStatusIDs * _Nonnull globalConsent;
-@property (nonatomic, readonly, strong) DDMUserStatusIDs * _Nonnull globalLegitimateInterest;
+SWIFT_CLASS_NAMED("IDs")
+@interface DDMUserStatusIDs : NSObject
+@property (nonatomic, readonly, copy) NSSet<NSString *> * _Nonnull enabled;
+@property (nonatomic, readonly, copy) NSSet<NSString *> * _Nonnull disabled;
 - (BOOL)isEqual:(id _Nullable)object SWIFT_WARN_UNUSED_RESULT;
 - (nonnull instancetype)init SWIFT_UNAVAILABLE;
 + (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@@ -1157,6 +1260,8 @@
 @property (nonatomic, readonly, copy) NSSet<NSString *> * _Nonnull specialFeatureIDs;
 /// Privacy policy and LI disclaimer urls. Introduced in IAB TCF v2.2.
 @property (nonatomic, readonly, copy) NSArray<DDMVendorURL *> * _Nullable urls;
+/// Whether vendor is from the IAB Global Vendor List
+@property (nonatomic, readonly) BOOL isIAB;
 /// Initializer method for the Purpose class.
 /// \param id Unique ID of the vendor.
 ///
@@ -1180,21 +1285,9 @@
 ///
 /// \param urls Privacy policy and LI disclaimer urls.
 ///
-- (nonnull instancetype)initWithId:(NSString * _Nonnull)id name:(NSString * _Nonnull)name policyUrl:(NSString * _Nullable)policyUrl namespaces:(DDMVendorNamespaces * _Nullable)namespaces purposeIDs:(NSSet<NSString *> * _Nonnull)purposeIDs legIntPurposeIDs:(NSSet<NSString *> * _Nonnull)legIntPurposeIDs featureIDs:(NSSet<NSString *> * _Nonnull)featureIDs flexiblePurposeIDs:(NSSet<NSString *> * _Nonnull)flexiblePurposeIDs specialPurposeIDs:(NSSet<NSString *> * _Nonnull)specialPurposeIDs specialFeatureIDs:(NSSet<NSString *> * _Nonnull)specialFeatureIDs urls:(NSArray<DDMVendorURL *> * _Nullable)urls OBJC_DESIGNATED_INITIALIZER;
-- (BOOL)isEqual:(id _Nullable)object SWIFT_WARN_UNUSED_RESULT;
-- (nonnull instancetype)init SWIFT_UNAVAILABLE;
-+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
-@end
-
-
-@interface DDMVendor (SWIFT_EXTENSION(Didomi))
-@end
-
-
-/// Store additional IDs (IAB, num) for the Vendor.
-SWIFT_CLASS_NAMED("Namespaces")
-@interface DDMVendorNamespaces : NSObject
-@property (nonatomic, readonly, copy) NSString * _Nullable iab2;
+/// \param isIAB Whether vendor is from the IAB Global Vendor List.
+///
+- (nonnull instancetype)initWithId:(NSString * _Nonnull)id name:(NSString * _Nonnull)name policyUrl:(NSString * _Nullable)policyUrl namespaces:(DDMVendorNamespaces * _Nullable)namespaces purposeIDs:(NSSet<NSString *> * _Nonnull)purposeIDs legIntPurposeIDs:(NSSet<NSString *> * _Nonnull)legIntPurposeIDs featureIDs:(NSSet<NSString *> * _Nonnull)featureIDs flexiblePurposeIDs:(NSSet<NSString *> * _Nonnull)flexiblePurposeIDs specialPurposeIDs:(NSSet<NSString *> * _Nonnull)specialPurposeIDs specialFeatureIDs:(NSSet<NSString *> * _Nonnull)specialFeatureIDs urls:(NSArray<DDMVendorURL *> * _Nullable)urls isIAB:(BOOL)isIAB OBJC_DESIGNATED_INITIALIZER;
 - (BOOL)isEqual:(id _Nullable)object SWIFT_WARN_UNUSED_RESULT;
 - (nonnull instancetype)init SWIFT_UNAVAILABLE;
 + (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@@ -1217,18 +1310,32 @@
 @end
 
 
+@interface DDMVendor (SWIFT_EXTENSION(Didomi))
+@end
 
-#endif
-#if defined(__cplusplus)
+
+/// Store additional IDs (IAB, num) for the Vendor.
+SWIFT_CLASS_NAMED("Namespaces")
+@interface DDMVendorNamespaces : NSObject
+@property (nonatomic, readonly, copy) NSString * _Nullable iab2;
+- (BOOL)isEqual:(id _Nullable)object SWIFT_WARN_UNUSED_RESULT;
+- (nonnull instancetype)init SWIFT_UNAVAILABLE;
++ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
+@end
+
+
+
 #endif
 #if __has_attribute(external_source_symbol)
 # pragma clang attribute pop
+#endif
+#if defined(__cplusplus)
 #endif
 #pragma clang diagnostic pop
 #endif
 
 #elif defined(__x86_64__) && __x86_64__
-// Generated by Apple Swift version 5.8.1 (swiftlang-5.8.0.124.5 clang-1403.0.22.11.100)
+// Generated by Apple Swift version 5.9.2 (swiftlang-5.9.2.2.56 clang-1500.1.0.2.5)
 #ifndef DIDOMI_SWIFT_H
 #define DIDOMI_SWIFT_H
 #pragma clang diagnostic push
@@ -1270,12 +1377,18 @@
 #include <string.h>
 #endif
 #if defined(__cplusplus)
-#if __has_include(<ptrauth.h>)
+#if defined(__arm64e__) && __has_include(<ptrauth.h>)
 # include <ptrauth.h>
 #else
+#pragma clang diagnostic push
+#pragma clang diagnostic ignored "-Wreserved-macro-identifier"
 # ifndef __ptrauth_swift_value_witness_function_pointer
 #  define __ptrauth_swift_value_witness_function_pointer(x)
 # endif
+# ifndef __ptrauth_swift_class_method_pointer
+#  define __ptrauth_swift_class_method_pointer(x)
+# endif
+#pragma clang diagnostic pop
 #endif
 #endif
 
@@ -1474,6 +1587,17 @@
 #else
 # define SWIFT_NOEXCEPT 
 #endif
+#if !defined(SWIFT_C_INLINE_THUNK)
+# if __has_attribute(always_inline)
+# if __has_attribute(nodebug)
+#  define SWIFT_C_INLINE_THUNK inline __attribute__((always_inline)) __attribute__((nodebug))
+# else
+#  define SWIFT_C_INLINE_THUNK inline __attribute__((always_inline))
+# endif
+# else
+#  define SWIFT_C_INLINE_THUNK inline
+# endif
+#endif
 #if defined(_WIN32)
 #if !defined(SWIFT_IMPORT_STDLIB_SYMBOL)
 # define SWIFT_IMPORT_STDLIB_SYMBOL __declspec(dllimport)
@@ -1511,6 +1635,7 @@
 #endif
 
 #if defined(__OBJC__)
+
 
 /// Consent status to a vendor or purpose.
 typedef SWIFT_ENUM(NSInteger, ConsentStatus, open) {
@@ -1680,17 +1805,17 @@
 ///
 /// returns:
 /// <em>true</em> if consent is required, <em>false</em> if it is not required.
-- (BOOL)isConsentRequired SWIFT_WARN_UNUSED_RESULT;
+- (BOOL)isConsentRequired SWIFT_WARN_UNUSED_RESULT SWIFT_DEPRECATED_MSG("Use shouldUserStatusBeCollected() instead.");
 /// Determine if consent information is available for all purposes and vendors that are required
 ///
 /// returns:
 /// <em>true</em> if consent is required and consent information is available, <em>false</em> otherwise.
-- (BOOL)isUserConsentStatusPartial SWIFT_WARN_UNUSED_RESULT;
+- (BOOL)isUserConsentStatusPartial SWIFT_WARN_UNUSED_RESULT SWIFT_DEPRECATED_MSG("Use shouldUserStatusBeCollected() instead.");
 /// Determine if legitimate interest information is available for all purposes and vendors that are required
 ///
 /// returns:
 /// <em>true</em> if consent is required and legitimate interest information is available, <em>false</em> otherwise.
-- (BOOL)isUserLegitimateInterestStatusPartial SWIFT_WARN_UNUSED_RESULT;
+- (BOOL)isUserLegitimateInterestStatusPartial SWIFT_WARN_UNUSED_RESULT SWIFT_DEPRECATED_MSG("Use shouldUserStatusBeCollected() instead.");
 /// Set the user status for purposes and vendors for consent and legitimate interest.
 /// \param purposesConsentStatus boolean used to determine if consent will be enabled or disabled for all purposes.
 ///
@@ -1997,26 +2122,86 @@
 /// \param id Organization user ID
 ///
 - (void)setUserWithId:(NSString * _Nonnull)id;
+/// Set organization user information
+/// \param id Organization user ID
+///
+/// \param isUnderage Underage status of the user
+///
+- (void)setUserWithId:(NSString * _Nonnull)id isUnderage:(BOOL)isUnderage;
 /// Set organization user information and display consent notice if it is needed after synchronization
 /// \param id Organization user ID
 ///
 /// \param containerController View controller from which we can setup Didomi UI
 ///
 - (void)setUserWithId:(NSString * _Nonnull)id containerController:(UIViewController * _Nonnull)containerController;
+/// Set organization user information and display consent notice if it is needed after synchronization
+/// \param id Organization user ID
+///
+/// \param isUnderage Underage status of the user
+///
+/// \param containerController View controller from which we can setup Didomi UI
+///
+- (void)setUserWithId:(NSString * _Nonnull)id isUnderage:(BOOL)isUnderage containerController:(UIViewController * _Nonnull)containerController;
 /// Set organization user information with authentication
 /// \param userAuthParams Organization user authentication params
 ///
 - (void)setUserWithUserAuthParams:(UserAuthParams * _Nonnull)userAuthParams;
+/// Set organization user information with authentication
+/// \param userAuthParams Organization user authentication params
+///
+/// \param isUnderage Underage status of the user
+///
+- (void)setUserWithUserAuthParams:(UserAuthParams * _Nonnull)userAuthParams isUnderage:(BOOL)isUnderage;
+/// Set organization user information with authentication
+/// \param userAuthParams Organization user authentication params.
+///
+/// \param synchronizedUsers Additional users to synchronize user status.
+///
+- (void)setUserWithUserAuthParams:(UserAuthParams * _Nonnull)userAuthParams synchronizedUsers:(NSArray<UserAuthParams *> * _Nonnull)synchronizedUsers;
+/// Set organization user information with authentication
+/// \param userAuthParams Organization user authentication params.
+///
+/// \param synchronizedUsers Additional users to synchronize user status.
+///
+/// \param isUnderage Underage status of the user
+///
+- (void)setUserWithUserAuthParams:(UserAuthParams * _Nonnull)userAuthParams synchronizedUsers:(NSArray<UserAuthParams *> * _Nonnull)synchronizedUsers isUnderage:(BOOL)isUnderage;
 /// Set organization user information with authentication, and display consent notice if it is needed after synchronization
 /// \param userAuthParams Organization user authentication params
 ///
 /// \param containerController View controller from which we can setup Didomi UI
 ///
 - (void)setUserWithUserAuthParams:(UserAuthParams * _Nonnull)userAuthParams containerController:(UIViewController * _Nonnull)containerController;
+/// Set organization user information with authentication, and display consent notice if it is needed after synchronization
+/// \param userAuthParams Organization user authentication params
+///
+/// \param isUnderage Underage status of the user
+///
+/// \param containerController View controller from which we can setup Didomi UI
+///
+- (void)setUserWithUserAuthParams:(UserAuthParams * _Nonnull)userAuthParams isUnderage:(BOOL)isUnderage containerController:(UIViewController * _Nonnull)containerController;
+/// Set organization user information with authentication, and display consent notice if it is needed after synchronization
+/// \param userAuthParams Organization user authentication params.
+///
+/// \param synchronizedUsers Additional users to synchronize user status.
+///
+/// \param containerController View controller from which we can setup Didomi UI
+///
+- (void)setUserWithUserAuthParams:(UserAuthParams * _Nonnull)userAuthParams synchronizedUsers:(NSArray<UserAuthParams *> * _Nonnull)synchronizedUsers containerController:(UIViewController * _Nonnull)containerController;
+/// Set organization user information with authentication, and display consent notice if it is needed after synchronization
+/// \param userAuthParams Organization user authentication params.
+///
+/// \param synchronizedUsers Additional users to synchronize user status.
+///
+/// \param isUnderage Underage status of the user
+///
+/// \param containerController View controller from which we can setup Didomi UI
+///
+- (void)setUserWithUserAuthParams:(UserAuthParams * _Nonnull)userAuthParams synchronizedUsers:(NSArray<UserAuthParams *> * _Nonnull)synchronizedUsers isUnderage:(BOOL)isUnderage containerController:(UIViewController * _Nonnull)containerController;
 /// Remove organization user information (should be called when the SDK is initialized).
 - (void)clearUser;
 /// Get an instance of <code>UserStatus</code> containing all the information related to the user’s choices.
-- (DDMUserStatus * _Nonnull)getUserStatus SWIFT_WARN_UNUSED_RESULT;
+- (DDMUserStatus * _Nonnull)getUserStatus SWIFT_WARN_UNUSED_RESULT SWIFT_DEPRECATED_MSG("Use getCurrentUserStatus() instead.");
 /// Get an instance of <code>CurrentUserStatus</code> containing all the information related to the user’s choices.
 - (DDMCurrentUserStatus * _Nonnull)getCurrentUserStatus SWIFT_WARN_UNUSED_RESULT;
 /// Save user’s choices.
@@ -2059,13 +2244,14 @@
 /// Initialization parameters for Didomi SDK
 SWIFT_CLASS("_TtC6Didomi26DidomiInitializeParameters")
 @interface DidomiInitializeParameters : NSObject
-- (nonnull instancetype)initWithApiKey:(NSString * _Nonnull)apiKey localConfigurationPath:(NSString * _Nullable)localConfigurationPath remoteConfigurationURL:(NSString * _Nullable)remoteConfigurationURL providerID:(NSString * _Nullable)providerID disableDidomiRemoteConfig:(BOOL)disableDidomiRemoteConfig languageCode:(NSString * _Nullable)languageCode noticeID:(NSString * _Nullable)noticeID OBJC_DESIGNATED_INITIALIZER;
+- (nonnull instancetype)initWithApiKey:(NSString * _Nonnull)apiKey localConfigurationPath:(NSString * _Nullable)localConfigurationPath remoteConfigurationURL:(NSString * _Nullable)remoteConfigurationURL providerID:(NSString * _Nullable)providerID disableDidomiRemoteConfig:(BOOL)disableDidomiRemoteConfig languageCode:(NSString * _Nullable)languageCode noticeID:(NSString * _Nullable)noticeID countryCode:(NSString * _Nullable)countryCode regionCode:(NSString * _Nullable)regionCode isUnderage:(BOOL)isUnderage OBJC_DESIGNATED_INITIALIZER;
 - (nonnull instancetype)init SWIFT_UNAVAILABLE;
 + (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
 @end
 
 
 enum DDMEventType : NSInteger;
+@class DDMSyncReadyEvent;
 
 /// Class used as a listener for internal events occurred in the SDK.
 SWIFT_CLASS_NAMED("EventListener")
@@ -2115,7 +2301,8 @@
 @property (nonatomic, copy) void (^ _Nonnull onPreferencesClickSPICategoryDisagree)(enum DDMEventType, NSString * _Nullable);
 @property (nonatomic, copy) void (^ _Nonnull onPreferencesClickSPIPurposeSaveChoices)(enum DDMEventType);
 /// Sync
-@property (nonatomic, copy) void (^ _Nonnull onSyncDone)(enum DDMEventType, NSString * _Nullable);
+@property (nonatomic, copy) void (^ _Nonnull onSyncDone)(enum DDMEventType, NSString * _Nullable) SWIFT_DEPRECATED_MSG("Please use onSyncReady() instead");
+@property (nonatomic, copy) void (^ _Nonnull onSyncReady)(DDMSyncReadyEvent * _Nonnull);
 @property (nonatomic, copy) void (^ _Nonnull onSyncError)(enum DDMEventType, NSString * _Nullable);
 /// Language
 @property (nonatomic, copy) void (^ _Nonnull onLanguageUpdated)(enum DDMEventType, NSString * _Nullable);
@@ -2156,18 +2343,19 @@
   DDMEventTypePreferencesClickVendorSaveChoices = 27,
 /// Sync
   DDMEventTypeSyncDone = 28,
-  DDMEventTypeSyncError = 29,
+  DDMEventTypeSyncReady = 29,
+  DDMEventTypeSyncError = 30,
 /// Language
-  DDMEventTypeLanguageUpdated = 30,
-  DDMEventTypeLanguageUpdateFailed = 31,
+  DDMEventTypeLanguageUpdated = 31,
+  DDMEventTypeLanguageUpdateFailed = 32,
 /// Preferences - Sensitive Personal Information
-  DDMEventTypeNoticeClickViewSPIPurposes = 32,
-  DDMEventTypePreferencesClickViewSPIPurposes = 33,
-  DDMEventTypePreferencesClickSPIPurposeAgree = 34,
-  DDMEventTypePreferencesClickSPIPurposeDisagree = 35,
-  DDMEventTypePreferencesClickSPICategoryAgree = 36,
-  DDMEventTypePreferencesClickSPICategoryDisagree = 37,
-  DDMEventTypePreferencesClickSPIPurposeSaveChoices = 38,
+  DDMEventTypeNoticeClickViewSPIPurposes = 33,
+  DDMEventTypePreferencesClickViewSPIPurposes = 34,
+  DDMEventTypePreferencesClickSPIPurposeAgree = 35,
+  DDMEventTypePreferencesClickSPIPurposeDisagree = 36,
+  DDMEventTypePreferencesClickSPICategoryAgree = 37,
+  DDMEventTypePreferencesClickSPICategoryDisagree = 38,
+  DDMEventTypePreferencesClickSPIPurposeSaveChoices = 39,
 };
 
 
@@ -2222,10 +2410,32 @@
   RegulationCpa = 2,
   RegulationCpra = 3,
   RegulationCtdpa = 4,
-  RegulationUcpa = 5,
-  RegulationVcdpa = 6,
-  RegulationNone = 7,
+  RegulationDpdpa = 5,
+  RegulationFdbr = 6,
+  RegulationIcdpa = 7,
+  RegulationMcdpa = 8,
+  RegulationNhpa = 9,
+  RegulationNjdpa = 10,
+  RegulationOcpa = 11,
+  RegulationTdpsa = 12,
+  RegulationUcpa = 13,
+  RegulationVcdpa = 14,
+  RegulationNone = 15,
 };
+
+
+/// Class used to contain information about the occurrence of the Sync Ready event.
+SWIFT_CLASS_NAMED("SyncReadyEvent")
+@interface DDMSyncReadyEvent : NSObject
+/// Boolean that indicates whether remote user status has been applied locally.
+@property (nonatomic, readonly) BOOL statusApplied;
+/// Closure used to send a Sync Acknowledged API Event. Returns <em>true</em> if the API Event was sent, <em>false</em> otherwise.
+@property (nonatomic, readonly, copy) BOOL (^ _Nonnull syncAcknowledged)(void);
+- (nonnull instancetype)init SWIFT_UNAVAILABLE;
++ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
+@end
+
+
 
 
 
@@ -2331,10 +2541,13 @@
 @end
 
 
-SWIFT_CLASS_NAMED("IDs")
-@interface DDMUserStatusIDs : NSObject
-@property (nonatomic, readonly, copy) NSSet<NSString *> * _Nonnull enabled;
-@property (nonatomic, readonly, copy) NSSet<NSString *> * _Nonnull disabled;
+SWIFT_CLASS_NAMED("Vendors")
+@interface DDMUserStatusVendors : NSObject
+@property (nonatomic, readonly, strong) DDMUserStatusIDs * _Nonnull consent;
+@property (nonatomic, readonly, strong) DDMUserStatusIDs * _Nonnull legitimateInterest;
+@property (nonatomic, readonly, strong) DDMUserStatusIDs * _Nonnull global;
+@property (nonatomic, readonly, strong) DDMUserStatusIDs * _Nonnull globalConsent;
+@property (nonatomic, readonly, strong) DDMUserStatusIDs * _Nonnull globalLegitimateInterest;
 - (BOOL)isEqual:(id _Nullable)object SWIFT_WARN_UNUSED_RESULT;
 - (nonnull instancetype)init SWIFT_UNAVAILABLE;
 + (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@@ -2345,13 +2558,10 @@
 @end
 
 
-SWIFT_CLASS_NAMED("Vendors")
-@interface DDMUserStatusVendors : NSObject
-@property (nonatomic, readonly, strong) DDMUserStatusIDs * _Nonnull consent;
-@property (nonatomic, readonly, strong) DDMUserStatusIDs * _Nonnull legitimateInterest;
-@property (nonatomic, readonly, strong) DDMUserStatusIDs * _Nonnull global;
-@property (nonatomic, readonly, strong) DDMUserStatusIDs * _Nonnull globalConsent;
-@property (nonatomic, readonly, strong) DDMUserStatusIDs * _Nonnull globalLegitimateInterest;
+SWIFT_CLASS_NAMED("IDs")
+@interface DDMUserStatusIDs : NSObject
+@property (nonatomic, readonly, copy) NSSet<NSString *> * _Nonnull enabled;
+@property (nonatomic, readonly, copy) NSSet<NSString *> * _Nonnull disabled;
 - (BOOL)isEqual:(id _Nullable)object SWIFT_WARN_UNUSED_RESULT;
 - (nonnull instancetype)init SWIFT_UNAVAILABLE;
 + (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@@ -2385,6 +2595,8 @@
 @property (nonatomic, readonly, copy) NSSet<NSString *> * _Nonnull specialFeatureIDs;
 /// Privacy policy and LI disclaimer urls. Introduced in IAB TCF v2.2.
 @property (nonatomic, readonly, copy) NSArray<DDMVendorURL *> * _Nullable urls;
+/// Whether vendor is from the IAB Global Vendor List
+@property (nonatomic, readonly) BOOL isIAB;
 /// Initializer method for the Purpose class.
 /// \param id Unique ID of the vendor.
 ///
@@ -2408,21 +2620,9 @@
 ///
 /// \param urls Privacy policy and LI disclaimer urls.
 ///
-- (nonnull instancetype)initWithId:(NSString * _Nonnull)id name:(NSString * _Nonnull)name policyUrl:(NSString * _Nullable)policyUrl namespaces:(DDMVendorNamespaces * _Nullable)namespaces purposeIDs:(NSSet<NSString *> * _Nonnull)purposeIDs legIntPurposeIDs:(NSSet<NSString *> * _Nonnull)legIntPurposeIDs featureIDs:(NSSet<NSString *> * _Nonnull)featureIDs flexiblePurposeIDs:(NSSet<NSString *> * _Nonnull)flexiblePurposeIDs specialPurposeIDs:(NSSet<NSString *> * _Nonnull)specialPurposeIDs specialFeatureIDs:(NSSet<NSString *> * _Nonnull)specialFeatureIDs urls:(NSArray<DDMVendorURL *> * _Nullable)urls OBJC_DESIGNATED_INITIALIZER;
-- (BOOL)isEqual:(id _Nullable)object SWIFT_WARN_UNUSED_RESULT;
-- (nonnull instancetype)init SWIFT_UNAVAILABLE;
-+ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
-@end
-
-
-@interface DDMVendor (SWIFT_EXTENSION(Didomi))
-@end
-
-
-/// Store additional IDs (IAB, num) for the Vendor.
-SWIFT_CLASS_NAMED("Namespaces")
-@interface DDMVendorNamespaces : NSObject
-@property (nonatomic, readonly, copy) NSString * _Nullable iab2;
+/// \param isIAB Whether vendor is from the IAB Global Vendor List.
+///
+- (nonnull instancetype)initWithId:(NSString * _Nonnull)id name:(NSString * _Nonnull)name policyUrl:(NSString * _Nullable)policyUrl namespaces:(DDMVendorNamespaces * _Nullable)namespaces purposeIDs:(NSSet<NSString *> * _Nonnull)purposeIDs legIntPurposeIDs:(NSSet<NSString *> * _Nonnull)legIntPurposeIDs featureIDs:(NSSet<NSString *> * _Nonnull)featureIDs flexiblePurposeIDs:(NSSet<NSString *> * _Nonnull)flexiblePurposeIDs specialPurposeIDs:(NSSet<NSString *> * _Nonnull)specialPurposeIDs specialFeatureIDs:(NSSet<NSString *> * _Nonnull)specialFeatureIDs urls:(NSArray<DDMVendorURL *> * _Nullable)urls isIAB:(BOOL)isIAB OBJC_DESIGNATED_INITIALIZER;
 - (BOOL)isEqual:(id _Nullable)object SWIFT_WARN_UNUSED_RESULT;
 - (nonnull instancetype)init SWIFT_UNAVAILABLE;
 + (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
@@ -2445,13 +2645,27 @@
 @end
 
 
+@interface DDMVendor (SWIFT_EXTENSION(Didomi))
+@end
 
-#endif
-#if defined(__cplusplus)
+
+/// Store additional IDs (IAB, num) for the Vendor.
+SWIFT_CLASS_NAMED("Namespaces")
+@interface DDMVendorNamespaces : NSObject
+@property (nonatomic, readonly, copy) NSString * _Nullable iab2;
+- (BOOL)isEqual:(id _Nullable)object SWIFT_WARN_UNUSED_RESULT;
+- (nonnull instancetype)init SWIFT_UNAVAILABLE;
++ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
+@end
+
+
+
 #endif
 #if __has_attribute(external_source_symbol)
 # pragma clang attribute pop
 #endif
+#if defined(__cplusplus)
+#endif
 #pragma clang diagnostic pop
 #endif
 

--
Gitblit v1.8.0