Skip to content

UIKit iOS xcode16.3 b1

Rolf Bjarne Kvinge edited this page Feb 24, 2025 · 1 revision

#UIKit.framework

diff -ruN /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICalendarSelectionMultiDate.h /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICalendarSelectionMultiDate.h
--- /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICalendarSelectionMultiDate.h	2024-11-14 13:57:48
+++ /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICalendarSelectionMultiDate.h	2025-02-08 05:17:50
@@ -29,7 +29,7 @@
 
 @end
 
-API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(watchos, tvos)
+API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 @protocol UICalendarSelectionMultiDateDelegate <NSObject>
 
 /**
diff -ruN /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICalendarSelectionSingleDate.h /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICalendarSelectionSingleDate.h
--- /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICalendarSelectionSingleDate.h	2024-11-14 13:57:49
+++ /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICalendarSelectionSingleDate.h	2025-02-08 05:17:51
@@ -30,7 +30,7 @@
 
 @end
 
-API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(watchos, tvos)
+API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 @protocol UICalendarSelectionSingleDateDelegate <NSObject>
 
 /**
diff -ruN /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICalendarSelectionWeekOfYear.h /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICalendarSelectionWeekOfYear.h
--- /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICalendarSelectionWeekOfYear.h	2024-11-14 13:57:52
+++ /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICalendarSelectionWeekOfYear.h	2025-02-08 05:17:56
@@ -29,7 +29,7 @@
 
 @end
 
-API_AVAILABLE(ios(18.0)) API_UNAVAILABLE(watchos, tvos)
+API_AVAILABLE(ios(18.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 @protocol UICalendarSelectionWeekOfYearDelegate <NSObject>
 
 /**
diff -ruN /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICalendarView.h /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICalendarView.h
--- /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICalendarView.h	2024-11-14 13:57:51
+++ /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICalendarView.h	2025-02-07 19:39:56
@@ -70,7 +70,7 @@
 
 @end
 
-API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(watchos, tvos)
+API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(watchos, tvos) NS_SWIFT_UI_ACTOR
 @protocol UICalendarViewDelegate<NSObject>
 
 @optional
diff -ruN /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIConversationContext.h /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIConversationContext.h
--- /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIConversationContext.h	1970-01-01 01:00:00
+++ /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIConversationContext.h	2025-02-08 05:17:53
@@ -0,0 +1,41 @@
+#if (defined(USE_UIKIT_PUBLIC_HEADERS) && USE_UIKIT_PUBLIC_HEADERS) || !__has_include(<UIKitCore/UIConversationContext.h>)
+//
+//  UIConversationContext.h
+//  UIKit
+//
+//  Copyright © 2024 Apple Inc. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import <UIKit/UIConversationEntry.h>
+#import <UIKit/UIKitDefines.h>
+
+NS_HEADER_AUDIT_BEGIN(nullability, sendability)
+
+/// A base class that represents a conversation between participants, such as in an email or messaging app.
+UIKIT_EXTERN API_AVAILABLE(ios(18.4)) API_UNAVAILABLE(tvos, watchos, visionos, macCatalyst)
+@interface UIConversationContext : NSObject
+
+/// A string that uniquely identifies a conversation.
+/// This identifier is persistent for the life of the conversation.
+@property (copy, nonatomic, readwrite) NSString *threadIdentifier;
+
+/// Array of messages in the conversation
+@property (copy, nonatomic, readwrite) NSArray<UIConversationEntry *> *entries;
+
+/// A set of strings that identifies the active person in the conversation on the current device.
+@property (copy, nonatomic, readwrite) NSSet<NSString *> *selfIdentifiers;
+
+/// A dictionary that relates participant identifiers to participant names.
+@property (copy, nonatomic, readwrite) NSSet<NSString *> *responsePrimaryRecipientIdentifiers;
+
+/// Map of participant identifiers to participant names
+@property (copy, nonatomic, readwrite) NSDictionary<NSString *, NSPersonNameComponents *> *participantNameByIdentifier;
+
+@end
+
+NS_HEADER_AUDIT_END(nullability, sendability)
+
+#else
+#import <UIKitCore/UIConversationContext.h>
+#endif
diff -ruN /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIConversationEntry.h /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIConversationEntry.h
--- /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIConversationEntry.h	1970-01-01 01:00:00
+++ /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIConversationEntry.h	2025-02-08 05:17:54
@@ -0,0 +1,46 @@
+#if (defined(USE_UIKIT_PUBLIC_HEADERS) && USE_UIKIT_PUBLIC_HEADERS) || !__has_include(<UIKitCore/UIConversationEntry.h>)
+//
+//  UIConversationEntry.h
+//  UIKit
+//
+//  Copyright © 2024 Apple Inc. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import <UIKit/UIKitDefines.h>
+
+@class TIMutableInputContextEntry;
+
+NS_HEADER_AUDIT_BEGIN(nullability, sendability)
+
+/// A base class that represents a message in a conversation.
+UIKIT_EXTERN API_AVAILABLE(ios(18.4)) API_UNAVAILABLE(tvos, watchos, visionos, macCatalyst) NS_SWIFT_NAME(UIConversationContext.Entry)
+@interface UIConversationEntry : NSObject
+
+/// A string that contains the message’s text.
+@property (nonatomic, copy, readwrite) NSString *text;
+
+/// A string that identifies the message’s sender.
+@property (nonatomic, copy, readwrite) NSString *senderIdentifier;
+
+/// A date that notes when the sender added the message to the conversation.
+@property (nonatomic, copy, readwrite) NSDate *sentDate;
+
+/// A string that uniquely identifies this specific entry in the conversation.
+@property (nonatomic, copy, readwrite) NSString *entryIdentifier;
+
+/// An optional string that identifies another message in a conversation, when this entry is a reply to that message.
+///
+/// When an entry is a reply to another conversation entry, this contains the identifier of the conversation entry that the person replied to.
+@property (nonatomic, copy, readwrite, nullable) NSString *replyThreadIdentifier;
+
+/// A set of strings that identifies the primary recipients of the message.
+@property (nonatomic, copy, readwrite) NSSet<NSString *> *primaryRecipientIdentifiers;
+
+@end
+
+NS_HEADER_AUDIT_END(nullability, sendability)
+
+#else
+#import <UIKitCore/UIConversationEntry.h>
+#endif
diff -ruN /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDocumentInteractionController.h /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDocumentInteractionController.h
--- /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDocumentInteractionController.h	2024-11-10 11:02:11
+++ /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIDocumentInteractionController.h	2025-02-13 05:24:15
@@ -92,8 +92,8 @@
 - (void)documentInteractionController:(UIDocumentInteractionController *)controller didEndSendingToApplication:(nullable NSString *)application;
 
 // Used to handle additional menu items that can be performed on the item specified by URL.  Currently only supports the "copy:", "print:" and "saveToCameraRoll:" actions.
-- (BOOL)documentInteractionController:(UIDocumentInteractionController *)controller canPerformAction:(nullable SEL)action NS_DEPRECATED_IOS(3_2, 6_0);
-- (BOOL)documentInteractionController:(UIDocumentInteractionController *)controller performAction:(nullable SEL)action NS_DEPRECATED_IOS(3_2, 6_0);
+- (BOOL)documentInteractionController:(UIDocumentInteractionController *)controller canPerformAction:(nullable SEL)action NS_DEPRECATED_IOS(3_2, 6_0, "");
+- (BOOL)documentInteractionController:(UIDocumentInteractionController *)controller performAction:(nullable SEL)action NS_DEPRECATED_IOS(3_2, 6_0, "");
 
 @end 
 
diff -ruN /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIEditMenuInteraction.h /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIEditMenuInteraction.h
--- /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIEditMenuInteraction.h	2024-11-12 05:49:57
+++ /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIEditMenuInteraction.h	2025-02-07 23:34:32
@@ -95,7 +95,7 @@
 
 #pragma mark - UIEditMenuInteractionDelegate
 
-API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(tvos) API_UNAVAILABLE(watchos)
+API_AVAILABLE(ios(16.0)) API_UNAVAILABLE(tvos) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 @protocol UIEditMenuInteractionDelegate<NSObject>
 
 @optional
diff -ruN /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIInputSuggestion.h /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIInputSuggestion.h
--- /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIInputSuggestion.h	1970-01-01 01:00:00
+++ /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIInputSuggestion.h	2025-02-08 05:18:00
@@ -0,0 +1,26 @@
+#if (defined(USE_UIKIT_PUBLIC_HEADERS) && USE_UIKIT_PUBLIC_HEADERS) || !__has_include(<UIKitCore/UIInputSuggestion.h>)
+//
+//  UIInputSuggestion.h
+//  UIKit
+//
+//  Copyright © 2024 Apple Inc. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import <UIKit/UIKitDefines.h>
+
+NS_HEADER_AUDIT_BEGIN(nullability, sendability)
+
+///@abstract A base class you use to handle suggestions from the keyboard or system.
+UIKIT_EXTERN API_AVAILABLE(ios(18.4)) API_UNAVAILABLE(tvos, watchos, visionos, macCatalyst)
+@interface UIInputSuggestion : NSObject
+
+/// No properties at this time
+
+@end
+
+NS_HEADER_AUDIT_END(nullability, sendability)
+
+#else
+#import <UIKitCore/UIInputSuggestion.h>
+#endif
diff -ruN /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKitCore.h /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKitCore.h
--- /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKitCore.h	2024-11-12 05:49:38
+++ /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKitCore.h	2025-02-07 20:24:20
@@ -387,4 +387,12 @@
 #import <UIKit/UIWritingToolsCoordinator.h>
 #import <UIKit/UIWritingToolsCoordinatorContext.h>
 #import <UIKit/UIWritingToolsCoordinatorAnimationParameters.h>
+#import <UIKit/UIInputSuggestion.h>
+#import <UIKit/UISmartReplySuggestion.h>
+#import <UIKit/UIConversationContext.h>
+#import <UIKit/UIConversationEntry.h>
+#import <UIKit/UIMailConversationContext.h>
+#import <UIKit/UIMailConversationEntry.h>
+#import <UIKit/UIMessageConversationContext.h>
+#import <UIKit/UIMessageConversationEntry.h>
 #endif
diff -ruN /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIMailConversationContext.h /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIMailConversationContext.h
--- /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIMailConversationContext.h	1970-01-01 01:00:00
+++ /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIMailConversationContext.h	2025-02-08 05:18:00
@@ -0,0 +1,34 @@
+#if (defined(USE_UIKIT_PUBLIC_HEADERS) && USE_UIKIT_PUBLIC_HEADERS) || !__has_include(<UIKitCore/UIMailConversationContext.h>)
+//
+//  UIMailConversationContext.h
+//  UIKit
+//
+//  Copyright © 2024 Apple Inc. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import <UIKit/UIConversationContext.h>
+#import <UIKit/UIKitDefines.h>
+
+NS_HEADER_AUDIT_BEGIN(nullability, sendability)
+
+/// A class that represents an email conversation.
+UIKIT_EXTERN API_AVAILABLE(ios(18.4)) API_UNAVAILABLE(tvos, watchos, visionos, macCatalyst)
+@interface UIMailConversationContext : UIConversationContext
+
+/// A string that contains the subject line of an intended response.
+@property (copy, nonatomic, readwrite) NSString *responseSubject;
+
+/// A Boolean value that indicates whether the intended response contains a custom signature.
+@property (nonatomic, assign, readwrite) BOOL responseHasCustomSignature;
+
+/// A set of strings that identifies the secondary recipients of the message, such as those in CC or BCC messages.
+@property (copy, nonatomic, readwrite) NSSet<NSString *> *responseSecondaryRecipientIdentifiers;
+
+@end
+
+NS_HEADER_AUDIT_END(nullability, sendability)
+
+#else
+#import <UIKitCore/UIMailConversationContext.h>
+#endif
diff -ruN /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIMailConversationEntry.h /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIMailConversationEntry.h
--- /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIMailConversationEntry.h	1970-01-01 01:00:00
+++ /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIMailConversationEntry.h	2025-02-08 05:17:53
@@ -0,0 +1,47 @@
+#if (defined(USE_UIKIT_PUBLIC_HEADERS) && USE_UIKIT_PUBLIC_HEADERS) || !__has_include(<UIKitCore/UIMailConversationEntry.h>)
+//
+//  UIMailConversationEntry.h
+//  UIKit
+//
+//  Copyright © 2024 Apple Inc. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import <UIKit/UIConversationEntry.h>
+#import <UIKit/UIKitDefines.h>
+
+NS_HEADER_AUDIT_BEGIN(nullability, sendability)
+
+/// A set of categories for an email.
+typedef NS_ENUM(NSInteger, UIMailConversationEntryKind) {
+    /// The email does not fit in a specific category.
+    UIMailConversationEntryKindNone = 0,
+    /// The email is personal correspondence.
+    UIMailConversationEntryKindPersonal = 1,
+    /// The email contains a promotional offer.
+    UIMailConversationEntryKindPromotion = 2,
+    /// The email is related to social media.
+    UIMailConversationEntryKindSocial = 3,
+    /// The email is related to a purchase or transaction.
+    UIMailConversationEntryKindTransaction = 4,
+    /// The email is related to news or current events.
+    UIMailConversationEntryKindNews = 5,
+} API_AVAILABLE(ios(18.4)) API_UNAVAILABLE(tvos, watchos, visionos, macCatalyst) NS_SWIFT_NAME(UIMailConversationEntry.Kind);
+
+/// A class that represents a specific email in an email thread.
+UIKIT_EXTERN API_AVAILABLE(ios(18.4)) API_UNAVAILABLE(tvos, watchos, visionos, macCatalyst) NS_SWIFT_NAME(UIMailConversationContext.MailEntry)
+@interface UIMailConversationEntry : UIConversationEntry
+
+/// An item that reflects the category that describes an email.
+@property (nonatomic, assign, readwrite) UIMailConversationEntryKind kind;
+
+/// A set of strings that identifies the secondary recipients of the message, such as those in CC or BCC messages.
+@property (copy, nonatomic, readwrite) NSSet<NSString *> *responseSecondaryRecipientIdentifiers;
+
+@end
+
+NS_HEADER_AUDIT_END(nullability, sendability)
+
+#else
+#import <UIKitCore/UIMailConversationEntry.h>
+#endif
diff -ruN /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIMessageConversationContext.h /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIMessageConversationContext.h
--- /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIMessageConversationContext.h	1970-01-01 01:00:00
+++ /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIMessageConversationContext.h	2025-02-08 05:18:03
@@ -0,0 +1,29 @@
+#if (defined(USE_UIKIT_PUBLIC_HEADERS) && USE_UIKIT_PUBLIC_HEADERS) || !__has_include(<UIKitCore/UIMessageConversationContext.h>)
+//
+//  UIMessageConversationContext.h
+//  UIKit
+//
+//  Copyright © 2024 Apple Inc. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import <UIKit/UIConversationContext.h>
+#import <UIKit/UIMessageConversationEntry.h>
+#import <UIKit/UIKitDefines.h>
+
+NS_HEADER_AUDIT_BEGIN(nullability, sendability)
+
+/// A class that represents a message conversation.
+UIKIT_EXTERN API_AVAILABLE(ios(18.4)) API_UNAVAILABLE(tvos, watchos, visionos, macCatalyst)
+@interface UIMessageConversationContext : UIConversationContext
+
+/// A Boolean value that indicates whether the message thread is "junk", such as spam.
+@property (nonatomic, readwrite, assign) BOOL isJunk;
+
+@end
+
+NS_HEADER_AUDIT_END(nullability, sendability)
+
+#else
+#import <UIKitCore/UIMessageConversationContext.h>
+#endif
diff -ruN /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIMessageConversationEntry.h /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIMessageConversationEntry.h
--- /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIMessageConversationEntry.h	1970-01-01 01:00:00
+++ /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIMessageConversationEntry.h	2025-02-08 05:18:00
@@ -0,0 +1,41 @@
+#if (defined(USE_UIKIT_PUBLIC_HEADERS) && USE_UIKIT_PUBLIC_HEADERS) || !__has_include(<UIKitCore/UIMessageConversationEntry.h>)
+//
+//  UIMessageConversationEntry.h
+//  UIKit
+//
+//  Copyright © 2024 Apple Inc. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import <UIKit/UIConversationEntry.h>
+#import <UIKit/UIKitDefines.h>
+
+NS_ASSUME_NONNULL_BEGIN
+
+/// A list of options that represent the kinds of data a message can contain.
+typedef NS_ENUM(NSInteger, UIMessageConversationEntryDataKind) {
+    /// The message contains text.
+    UIMessageConversationEntryDataKindText = 0,
+    /// The message contains an attachment, such as an image or file.
+    UIMessageConversationEntryDataKindAttachment = 1,
+    /// The message contains other data, such as data that represents a sticker or a payment.
+    UIMessageConversationEntryDataKindOther = 2,
+} API_AVAILABLE(ios(18.4)) API_UNAVAILABLE(tvos, watchos, visionos, macCatalyst) NS_SWIFT_NAME(UIMessageConversationEntry.DataKind);
+
+/// A class that represents a message in a message conversation.
+UIKIT_EXTERN API_AVAILABLE(ios(18.4)) API_UNAVAILABLE(tvos, watchos, visionos, macCatalyst) NS_SWIFT_NAME(UIMessageConversationContext.MessageEntry)
+@interface UIMessageConversationEntry : UIConversationEntry
+
+/// Indicates the data format of the entry
+@property (nonatomic, assign, readwrite) UIMessageConversationEntryDataKind dataKind;
+
+/// A Boolean value that indicates whether the current user sent the message.
+@property (nonatomic, assign, readwrite) BOOL wasSentBySelf;
+
+@end
+
+NS_ASSUME_NONNULL_END
+
+#else
+#import <UIKitCore/UIMessageConversationEntry.h>
+#endif
diff -ruN /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UISmartReplySuggestion.h /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UISmartReplySuggestion.h
--- /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UISmartReplySuggestion.h	1970-01-01 01:00:00
+++ /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UISmartReplySuggestion.h	2025-02-08 05:18:00
@@ -0,0 +1,32 @@
+#if (defined(USE_UIKIT_PUBLIC_HEADERS) && USE_UIKIT_PUBLIC_HEADERS) || !__has_include(<UIKitCore/UISmartReplySuggestion.h>)
+//
+//  UISmartReplySuggestion.h
+//  UIKit
+//
+//  Copyright © 2024 Apple Inc. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+#import <UIKit/UIKitDefines.h>
+#import <UIKit/UIInputSuggestion.h>
+
+NS_HEADER_AUDIT_BEGIN(nullability, sendability)
+
+/// A class you use to handle a Smart Reply suggestion.
+///
+/// Use the ``smartReply`` string as a signal of the user’s intention when you generate long form text based on the option the user selected.
+UIKIT_EXTERN API_AVAILABLE(ios(18.4)) API_UNAVAILABLE(tvos, watchos, visionos, macCatalyst)
+@interface UISmartReplySuggestion : UIInputSuggestion
+
+/// A string from the Smart Reply option the user selected.
+///
+/// Use this as a signal of the user’s intention when you generate long form text based on the option the user selected.
+@property (copy, nonatomic, readonly) NSString *smartReply;
+
+@end
+
+NS_HEADER_AUDIT_END(nullability, sendability)
+
+#else
+#import <UIKitCore/UISmartReplySuggestion.h>
+#endif
diff -ruN /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITab.h /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITab.h
--- /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITab.h	2024-11-12 05:49:50
+++ /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITab.h	2025-02-08 05:17:51
@@ -44,6 +44,10 @@
 /// The identifier associated with the tab, must be unique across the tab bar controller.
 @property (nonatomic, strong, readonly) NSString *identifier;
 
+/// Determines if the tab is enabled. When NO, tabs will have a disabled appearance and cannot be selected by the user.
+/// Default is YES.
+@property (nonatomic, assign, getter=isEnabled) BOOL enabled API_AVAILABLE(ios(18.4), tvos(18.4), visionos(2.4)) API_UNAVAILABLE(watchos);
+
 /// The title of the tab.
 @property (nonatomic, copy) NSString *title;
 
@@ -64,7 +68,7 @@
 @property (nonatomic, strong, nullable) id userInfo;
 
 /// The parent group of the tab. This is only non-nil if the tab is part of a parent group, and returns nil otherwise.
-@property (nonatomic, strong, nullable, readonly) UITabGroup *parent;
+@property (nonatomic, weak, nullable, readonly) UITabGroup *parent;
 
 /// The tab bar controller managing the tab. This is non-nil when the tab
 /// or any of its ancestors is added to a UITabBarController; and is nil
@@ -95,6 +99,10 @@
 
 /// Determines if the tab's visibility can be changed by the user while editing. Default is NO.
 @property (nonatomic, assign) BOOL allowsHiding;
+
+/// Determines if the tab has a visible placement. Returns YES if the tab is visible in a tab bar
+/// that supports different tab placements. Otherwise returns NO.
+@property (nonatomic, assign, readonly) BOOL hasVisiblePlacement;
 
 /// Creates a tab with the specified identifier, title, image, and view controller provider.
 /// The view controller provider is called when a view controller is requested and is currently nil.
diff -ruN /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITabBarControllerSidebar.h /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITabBarControllerSidebar.h
--- /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITabBarControllerSidebar.h	2024-11-14 13:55:11
+++ /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITabBarControllerSidebar.h	2025-02-07 19:39:58
@@ -7,12 +7,13 @@
 //
 
 #import <UIKit/UIKitDefines.h>
+#import <UIKit/UIDropInteraction.h>
 
 NS_HEADER_AUDIT_BEGIN(nullability, sendability)
 
 @protocol UITabBarControllerSidebarDelegate, UIContentConfiguration;
 @class UITabSidebarScrollTarget, UITab, UITabBarController, UIView;
-@class UISwipeActionsConfiguration, UIContextMenuConfiguration;
+@class UISwipeActionsConfiguration, UIContextMenuConfiguration, UIDeferredMenuElement;
 
 #pragma mark - UITabBarControllerSidebarLayout
 
@@ -71,6 +72,11 @@
 
 #pragma mark Content
 
+/// Additional items to add to the overflow menu in the sidebar's navigation bar. Setting this property to a non-nil value will force the overflow button
+/// to appear, regardless of if you provide any content in the element's callback. Items returned are displayed directly in the presented menu. When
+/// set, the "Edit Sidebar" action will also be moved into the overflow menu after the app-provided items.
+@property (nonatomic, strong, nullable) UIDeferredMenuElement *navigationOverflowItems API_AVAILABLE(ios(18.2), visionos(2.2));
+
 /// Content configuration for an optional header to display in the sidebar.
 /// The header is displayed above all tab content in the sidebar.
 @property (nonatomic, copy, nullable) id<UIContentConfiguration> headerContentConfiguration NS_REFINED_FOR_SWIFT;
@@ -110,9 +116,10 @@
 
 #pragma mark - UITabBarControllerSidebarDelegate
 
-@class UITabSidebarItem, UITabSidebarItemRequest;
+@class UITabSidebarItem, UITabSidebarItemRequest, UIDragItem, UIAction, UITabGroup;
+@protocol UIDragSession;
 
-API_AVAILABLE(ios(18.0), visionos(2.0)) API_UNAVAILABLE(tvos) API_UNAVAILABLE(watchos)
+API_AVAILABLE(ios(18.0), visionos(2.0)) API_UNAVAILABLE(tvos) API_UNAVAILABLE(watchos) NS_SWIFT_UI_ACTOR
 NS_SWIFT_NAME(UITabBarControllerSidebar.Delegate)
 @protocol UITabBarControllerSidebarDelegate <NSObject>
 
@@ -166,6 +173,38 @@
 - (nullable UIContextMenuConfiguration *)tabBarController:(UITabBarController *)tabBarController
                                                   sidebar:(UITabBarControllerSidebar *)sidebar
                            contextMenuConfigurationForTab:(__kindof UITab *)tab;
+
+#pragma mark Drag and Drop
+
+/// Called when a new drag session has begun in the sidebar from the specified `tab`. Return drag items if the specified tab can be dragged, or an empty array if no drags should begin.
+/// Note that if drag items are returned on tabs in groups that allow reordering, then tab reordering is disabled when the sidebar is not in editing.
+- (NSArray<UIDragItem *> *)tabBarController:(UITabBarController *)tabBarController
+                                    sidebar:(UITabBarControllerSidebar *)sidebar
+               itemsForBeginningDragSession:(id<UIDragSession>)dragSession
+                                        tab:(UITab *)tab API_AVAILABLE(ios(18.4), visionos(2.4)) API_UNAVAILABLE(tvos);
+
+/// Called when a new drag session is requesting items to add to the existing drag session in the sidebar from the specified `tab`.
+/// Return items if the specified tab can add to the drag session, or an empty array if nothing should be added.
+- (NSArray<UIDragItem *> *)tabBarController:(UITabBarController *)tabBarController
+                                    sidebar:(UITabBarControllerSidebar *)sidebar
+                itemsForAddingToDragSession:(id<UIDragSession>)dragSession tab:(UITab *)tab API_AVAILABLE(ios(18.4), visionos(2.4)) API_UNAVAILABLE(tvos);
+
+/// Determines if items from the specified drop session can be dropped into the specified `sidebarAction`. If the operation is either a `.move` or `.copy`,
+/// then the drop will proceed and `tabBarController:sidebar:sidebarAction:acceptItemsFromDropSession:` is called. By default, the drop will be
+/// treated as a cancel operation if this is not implemented.
+- (UIDropOperation)tabBarController:(UITabBarController *)tabBarController
+                            sidebar:(UITabBarControllerSidebar *)sidebar
+                      sidebarAction:(UIAction *)sidebarAction
+                              group:(UITabGroup *)group
+operationForAcceptingItemsFromDropSession:(id<UIDropSession>)session API_AVAILABLE(ios(18.4), visionos(2.4)) API_UNAVAILABLE(tvos);
+
+/// Receive the drop from into the `sidebarAction` using the specified session. This is only called if the drop operation returned
+/// from `tabBarController:sidebar:sidebarAction:operationForAcceptingItemsFromDropSession` is valid for a drop.
+- (void)tabBarController:(UITabBarController *)tabBarController
+                 sidebar:(UITabBarControllerSidebar *)sidebar
+           sidebarAction:(UIAction *)sidebarAction
+                   group:(UITabGroup *)group
+acceptItemsFromDropSession:(id<UIDropSession>)session API_AVAILABLE(ios(18.4), visionos(2.4)) API_UNAVAILABLE(tvos);
 
 @end
 
diff -ruN /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextField.h /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextField.h
--- /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextField.h	2024-11-10 09:40:44
+++ /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextField.h	2025-02-08 05:17:54
@@ -18,6 +18,7 @@
 #import <UIKit/UIContentSizeCategoryAdjusting.h>
 #import <UIKit/UILetterformAwareAdjusting.h>
 #import <UIKit/UITextPasteConfigurationSupporting.h>
+#import <UIKit/UIInputSuggestion.h>
 
 NS_HEADER_AUDIT_BEGIN(nullability, sendability)
 
@@ -180,6 +181,13 @@
  * @param animator      Dismissal animator. Add animations to this object to run them alongside the dismissal transition.
  */
 - (void)textField:(UITextField *)textField willDismissEditMenuWithAnimator:(id<UIEditMenuInteractionAnimating>)animator API_AVAILABLE(ios(16.0))  API_UNAVAILABLE(tvos) API_UNAVAILABLE(watchos);
+
+/// Tells the delegate when the keyboard delivers an input suggestion.
+///
+/// - Parameters:
+///   - textField: The text field that is currently the first responder.
+///   - inputSuggestion: The input suggestion that the user or system selected.
+- (void)textField:(UITextField *)textField insertInputSuggestion:(UIInputSuggestion *)inputSuggestion API_AVAILABLE(ios(18.4)) API_UNAVAILABLE(macCatalyst, watchos, tvos, visionos, macos) NS_SWIFT_NAME(textField(_:insertInputSuggestion:));
 
 @end
 
diff -ruN /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h
--- /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h	2024-11-14 13:57:47
+++ /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInput.h	2025-02-07 23:30:20
@@ -41,6 +41,8 @@
 @class UIBarButtonItem;
 @class NSAdaptiveImageGlyph;
 @class NSAttributedString;
+@class UIConversationContext;
+@class UIInputSuggestion;
 
 @protocol UITextInputTokenizer;
 @protocol UITextInputDelegate;
@@ -264,8 +266,11 @@
 - (void)replaceRange:(UITextRange *)range withAttributedText:(NSAttributedString *)attributedText API_AVAILABLE(ios(13.0), tvos(13.0), macos(10.15), visionos(1.0)) API_UNAVAILABLE(watchos);
 
 // These methods are called when the Writing Tools panel is presented and dismissed
-- (void)willPresentWritingTools API_AVAILABLE(ios(18.0)) API_UNAVAILABLE(tvos, watchos, visionos);
-- (void)didDismissWritingTools API_AVAILABLE(ios(18.0)) API_UNAVAILABLE(tvos, watchos, visionos);
+- (void)willPresentWritingTools API_AVAILABLE(ios(18.0), visionos(2.4)) API_UNAVAILABLE(tvos, watchos);
+- (void)didDismissWritingTools API_AVAILABLE(ios(18.0), visionos(2.4)) API_UNAVAILABLE(tvos, watchos);
+
+/// Inserts the user or system’s input suggestion into the document.
+- (void)insertInputSuggestion:(UIInputSuggestion *)inputSuggestion API_AVAILABLE(ios(18.4)) API_UNAVAILABLE(tvos, watchos, visionos, macCatalyst);
 @end
 
 //---------------------------------------------------------------------------------------------------
@@ -321,6 +326,8 @@
 - (void)textWillChange:(nullable id <UITextInput>)textInput;
 - (void)textDidChange:(nullable id <UITextInput>)textInput;
 
+/// Tells the input delegate when text has changed in the input object for a conversation.
+- (void)conversationContext:(nullable UIConversationContext *)context didChange:(nullable id <UITextInput>)textInput API_AVAILABLE(ios(18.4)) API_UNAVAILABLE(tvos, watchos, visionos, macCatalyst);
 @end
 
 
diff -ruN /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInputTraits.h /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInputTraits.h
--- /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInputTraits.h	2024-11-10 11:25:15
+++ /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextInputTraits.h	2025-02-07 23:34:26
@@ -8,6 +8,7 @@
 
 #import <Foundation/Foundation.h>
 #import <UIKit/UIKitDefines.h>
+#import <UIKit/UIConversationContext.h>
 
 NS_HEADER_AUDIT_BEGIN(nullability, sendability)
 
@@ -186,7 +187,7 @@
     
     /// The limited, overlay-panel experience will be provided if possible.
     UIWritingToolsBehaviorLimited, 
-} API_AVAILABLE(ios(18.0)) API_UNAVAILABLE(visionos, tvos, watchos);
+} API_AVAILABLE(ios(18.0), visionos(2.4)) API_UNAVAILABLE(tvos, watchos);
 
 //
 // UIWritingToolsResultOptions
@@ -208,7 +209,7 @@
     
     /// implies `RichText`,  and Writing Tools may provide attributes for tabular layout
     UIWritingToolsResultTable = 1 << 3,
-} API_AVAILABLE(ios(18.0)) API_UNAVAILABLE(visionos, tvos, watchos);
+} API_AVAILABLE(ios(18.0), visionos(2.4)) API_UNAVAILABLE(tvos, watchos);
 
 typedef NSString * UITextContentType NS_TYPED_ENUM API_UNAVAILABLE(watchos);
 
@@ -262,8 +263,13 @@
 // on the Password Rules documentation guide.
 @property(nullable,nonatomic,copy) UITextInputPasswordRules *passwordRules API_AVAILABLE(ios(12.0)) API_UNAVAILABLE(watchos); // default is nil
 
-@property UIWritingToolsBehavior writingToolsBehavior API_AVAILABLE(ios(18.0)) API_UNAVAILABLE(visionos, tvos, watchos);
-@property UIWritingToolsResultOptions allowedWritingToolsResultOptions API_AVAILABLE(ios(18.0)) API_UNAVAILABLE(visionos, tvos, watchos);
+@property UIWritingToolsBehavior writingToolsBehavior API_AVAILABLE(ios(18.0), visionos(2.4)) API_UNAVAILABLE(tvos, watchos);
+@property UIWritingToolsResultOptions allowedWritingToolsResultOptions API_AVAILABLE(ios(18.0), visionos(2.4)) API_UNAVAILABLE(tvos, watchos);
+
+/// A reference to a conversation, such as a mail or messaging thread.
+/// 
+/// Set this conversation context before the keyboard appears; the keyboard uses this context to initialize its conversation context value. When updates occur in the conversation, call ``UITextInputDelegate/conversationContext(_:didChange:)`` on the ``inputDelegate`` property for ``UITextInput`` objects, such as UITextView/inputDelegate`` or ``UITextField/inputDelegate``.
+@property(nonatomic,strong,nullable) UIConversationContext *conversationContext API_AVAILABLE(ios(18.4)) API_UNAVAILABLE(tvos, watchos, visionos, macCatalyst);
 
 @end
 
diff -ruN /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextView.h /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextView.h
--- /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextView.h	2024-11-14 13:57:56
+++ /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UITextView.h	2025-02-08 05:18:01
@@ -21,6 +21,7 @@
 #import <UIKit/UIContentSizeCategoryAdjusting.h>
 #import <UIKit/UILetterformAwareAdjusting.h>
 #import <UIKit/UITextPasteConfigurationSupporting.h>
+#import <UIKit/UIInputSuggestion.h>
 
 NS_HEADER_AUDIT_BEGIN(nullability, sendability)
 
@@ -116,14 +117,14 @@
  *
  * @param textView  The text view interacting with Writing Tools
  */
-- (void)textViewWritingToolsWillBegin:(UITextView *)textView API_AVAILABLE(ios(18.0)) API_UNAVAILABLE(tvos, watchos, visionos);
+- (void)textViewWritingToolsWillBegin:(UITextView *)textView API_AVAILABLE(ios(18.0), visionos(2.4)) API_UNAVAILABLE(tvos, watchos);
 
 /**
  * @abstract Informs the delegate that Writing Tools has finished manipulating the text view
  *
  * @param textView  The text view interacting with Writing Tools
  */
-- (void)textViewWritingToolsDidEnd:(UITextView *)textView API_AVAILABLE(ios(18.0)) API_UNAVAILABLE(tvos, watchos, visionos);
+- (void)textViewWritingToolsDidEnd:(UITextView *)textView API_AVAILABLE(ios(18.0), visionos(2.4)) API_UNAVAILABLE(tvos, watchos);
 
 /**
  * @abstract Allows the delegate to specify ranges of text to be ignored by Writing Tools
@@ -133,7 +134,7 @@
  *
  * @return Return an array of ranges in the attributed substring of the textView storage with the enclosing range representing portions of text to be ignored by Writing Tools when evaluating the text for proofreading, summarization, rewrites, and so forth.
  */
-- (NSArray<NSValue *> *)textView:(UITextView *)textView writingToolsIgnoredRangesInEnclosingRange:(NSRange)enclosingRange API_AVAILABLE(ios(18.0)) API_UNAVAILABLE(tvos, watchos, visionos);
+- (NSArray<NSValue *> *)textView:(UITextView *)textView writingToolsIgnoredRangesInEnclosingRange:(NSRange)enclosingRange API_AVAILABLE(ios(18.0), visionos(2.4)) API_UNAVAILABLE(tvos, watchos);
 
 
 - (BOOL)textView:(UITextView *)textView shouldInteractWithURL:(NSURL *)URL inRange:(NSRange)characterRange interaction:(UITextItemInteraction)interaction API_DEPRECATED("Replaced by primaryActionForTextItem: and menuConfigurationForTextItem: for additional customization options.", ios(10.0, 17.0), visionos(1.0, 1.0)) API_UNAVAILABLE(watchos);
@@ -170,6 +171,13 @@
  */
 - (void)textView:(UITextView *)textView didEndFormattingWithViewController:(UITextFormattingViewController *)viewController API_AVAILABLE(ios(18.0)) API_UNAVAILABLE(visionos, macCatalyst) API_UNAVAILABLE(watchos, tvos);
 
+/// Tells the delegate when the keyboard delivers an input suggestion.
+///
+/// - Parameters:
+///   - textView: The text view that is currently the first responder.
+///   - inputSuggestion: The input suggestion that the user or system selected.
+- (void)textView:(UITextView *)textView insertInputSuggestion:(UIInputSuggestion *)inputSuggestion NS_SWIFT_NAME(textView(_:insertInputSuggestion:)) API_AVAILABLE(ios(18.4)) API_UNAVAILABLE(tvos, watchos, visionos, macCatalyst);
+
 @end
 
 /// The type of border around the text view.
@@ -264,15 +272,16 @@
  *
  * @return Returns @c YES while Writing Tools is interacting with the receiver (after @c -textViewWritingToolsWillBegin: completes until @c -textViewWritingToolsDidEnd: completes)
  */
-@property(nonatomic,readonly,getter=isWritingToolsActive) BOOL writingToolsActive API_AVAILABLE(ios(18.0)) API_UNAVAILABLE(tvos, watchos, visionos);
+@property(nonatomic,readonly,getter=isWritingToolsActive) BOOL writingToolsActive API_AVAILABLE(ios(18.0), visionos(2.4)) API_UNAVAILABLE(tvos, watchos);
 
 // Also see UITextInputTraits.h
-@property UIWritingToolsBehavior writingToolsBehavior API_AVAILABLE(ios(18.0)) API_UNAVAILABLE(visionos, tvos, watchos);
+@property UIWritingToolsBehavior writingToolsBehavior API_AVAILABLE(ios(18.0), visionos(2.4)) API_UNAVAILABLE(tvos, watchos);
 
 // WARNING: UITextView does not support UIWritingToolsResultOptionsTable and will throw an exception for this value
-@property UIWritingToolsResultOptions allowedWritingToolsResultOptions API_AVAILABLE(ios(18.0)) API_UNAVAILABLE(visionos, tvos, watchos);
+@property UIWritingToolsResultOptions allowedWritingToolsResultOptions API_AVAILABLE(ios(18.0), visionos(2.4)) API_UNAVAILABLE(tvos, watchos);
 
-@property(nonatomic,readonly) UIWritingToolsCoordinator *writingToolsCoordinator API_AVAILABLE(ios(18.2)) API_UNAVAILABLE(visionos, tvos, watchos);
+@property(nonatomic,readonly) Class subclassForWritingToolsCoordinator API_AVAILABLE(ios(18.2), visionos(2.4)) API_UNAVAILABLE(tvos, watchos); // Asserts this is actually a subclass of UIWritingToolsCoordinator
+@property(nonatomic,readonly) UIWritingToolsCoordinator *writingToolsCoordinator API_AVAILABLE(ios(18.2), visionos(2.4)) API_UNAVAILABLE(tvos, watchos);
 
 /// For text views that have flag `allowsEditingTextAttributes` set,
 /// this configuration will be used for `UITextFormattingViewController`
diff -ruN /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWritingToolsCoordinator.h /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWritingToolsCoordinator.h
--- /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWritingToolsCoordinator.h	2024-11-14 13:57:55
+++ /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWritingToolsCoordinator.h	2025-02-07 23:30:29
@@ -38,8 +38,7 @@
     /// Specify this option when an undo or redo command initiated the
     /// change to your view.
     UIWritingToolsCoordinatorTextUpdateReasonUndoRedo,
-    // Others? Paste?
-} API_AVAILABLE(ios(18.2)) API_UNAVAILABLE(visionos, tvos, watchos) NS_SWIFT_NAME(UIWritingToolsCoordinator.TextUpdateReason);
+} API_AVAILABLE(ios(18.2), visionos(2.4)) API_UNAVAILABLE(tvos, watchos) NS_SWIFT_NAME(UIWritingToolsCoordinator.TextUpdateReason);
 
 /// The states that indicate the current activity, if any, Writing Tools
 /// is performing in your view.
@@ -54,7 +53,6 @@
 /// its ``UIWritingToolsCoordinator/state`` property. You can use
 /// the current state as a guide to making decisions in other parts of your view.
 typedef NS_ENUM(NSInteger, UIWritingToolsCoordinatorState) {
-    // Open question: Do we also want a `Disabled` state?
     
     /// A state that indicates Writing Tools isn’t currently performing
     /// any work on your view’s content.
@@ -102,7 +100,7 @@
     /// the results back to your view. When the coordinator finishes delivering
     /// the results, it transitions back to the ``interactiveResting`` state.
     UIWritingToolsCoordinatorStateInteractiveStreaming, // Writing Tools is providing the full inline-editing experience, and is updating text, either because results are provided from AppleIntelligence, or because user interaction has requested changes, such as showing a different revision
-} API_AVAILABLE(ios(18.2)) API_UNAVAILABLE(visionos, tvos, watchos) NS_SWIFT_NAME(UIWritingToolsCoordinator.State);
+} API_AVAILABLE(ios(18.2), visionos(2.4)) API_UNAVAILABLE(tvos, watchos) NS_SWIFT_NAME(UIWritingToolsCoordinator.State);
 
 
 // MARK: - Coordinator
@@ -140,7 +138,7 @@
 /// <doc://com.apple.documentation/documentation/swiftui/texteditor> view.
 /// Those views already include the required support to handle Writing Tools
 /// interactions.
-UIKIT_EXTERN API_AVAILABLE(ios(18.2)) API_UNAVAILABLE(visionos, tvos, watchos) NS_SWIFT_UI_ACTOR
+UIKIT_EXTERN API_AVAILABLE(ios(18.2), visionos(2.4)) API_UNAVAILABLE(tvos, watchos) NS_SWIFT_UI_ACTOR
 @interface UIWritingToolsCoordinator : NSObject <UIInteraction>
 
 /// A Boolean value that indicates whether Writing Tools features are
@@ -152,7 +150,7 @@
 /// ready to process Writing Tools requests.
 @property (class, nonatomic, assign, readonly) BOOL isWritingToolsAvailable;
 
-// The delegate must be non-nil before the writingToolsCoodinator is added to a view.
+// The delegate must be non-nil when the UIWritingToolsCoordinator is added to a view.
 
 /// Creates a writing tools coordinator and assigns the specified
 /// delegate object to it.
@@ -175,7 +173,7 @@
 /// refreshing the view’s layout and appearance.
 @property(nonatomic,weak,nullable,readonly) id<UIWritingToolsCoordinatorDelegate> delegate;
 
-// Note: The effectContainerView and decorationContainerView may only be changed when UIWritingToolsCoordinator.State is .inactive, otherwise the setters will throw an exception
+// Note: The effectContainerView and decorationContainerView may only be changed when UIWritingToolsCoordinator.State is .inactive, otherwise the setters will throw an exception.
 
 /// The view that Writing Tools uses to display visual effects during
 /// the text-rewriting process.
@@ -189,7 +187,7 @@
 /// uses the object in its ``UIInteraction/view`` property to host any visual effects.
 ///
 /// If you display your view’s text using multiple text containers, implement the
-/// ``UIWritingToolsCoordinator/Delegate/writingToolsCoordinator(_:singleContainerSubrangesOf:in:)``
+/// ``UIWritingToolsCoordinator/Delegate/writingToolsCoordinator(_:requestsSingleContainerSubrangesOf:in:completion:)``
 /// method to request multiple previews.
 @property(nonatomic,weak,nullable) UIView *effectContainerView;
 
@@ -208,8 +206,8 @@
 /// property to host any visual elements.
 ///
 /// If you display your view’s text using multiple text containers, implement the
-/// ``UIWritingToolsCoordinator/Delegate/writingToolsCoordinator(_:singleContainerSubrangesOf:in:)``
-/// and ``UIWritingToolsCoordinator/Delegate/writingToolsCoordinator(_:decorationContainerViewFor:in:)``
+/// ``UIWritingToolsCoordinator/Delegate/writingToolsCoordinator(_:requestsSingleContainerSubrangesOf:in:completion:)``
+/// and ``UIWritingToolsCoordinator/Delegate/writingToolsCoordinator(_:requestsDecorationContainerViewFor:in:completion:)``
 /// methods to provide separate decoration views for each container.
 @property(nonatomic,weak,nullable) UIView *decorationContainerView;
 
@@ -225,7 +223,7 @@
 // Clients may cancel Writing Tools if external events occur such that further input 
 // from Writing Tools is not supportable, and then UIWritingToolsCoordinator will change 
 // to the Inactive state.
-// Also see UIResponder.startWritingTools.
+// Also see UIResponder.showWritingTools().
 
 /// Stops the current Writing Tools operation and dismisses the system UI.
 ///
@@ -250,7 +248,7 @@
 /// making the choice. The value in this property is never the default option,
 /// and is instead one of the specific options such as ``UIWritingToolsBehavior/none``,
 /// ``UIWritingToolsBehavior/limited``, or ``UIWritingToolsBehavior/complete``.
-@property(nonatomic,readonly) UIWritingToolsBehavior behavior; // Returns Inactive, Limited, or Complete after considering system information along with the value of preferredBehavior
+@property(nonatomic,readonly) UIWritingToolsBehavior behavior; // Returns None, Limited, or Complete after considering system information along with the value of preferredBehavior.
 
 /// The type of content you allow Writing Tools to generate for your custom
 /// text view.
@@ -258,7 +256,7 @@
 /// Writing Tools can create plain text or rich text, and it can format text
 /// using lists or tables as needed. If your view doesn’t support specific
 /// types of content, specify the types you do support in this property.
-/// The default value of this property is ``UIWritingToolsResult/default``,
+/// The default value of this property is ``UIWritingToolsResultOptions/default``,
 /// which lets the system determine the type of content to generate.
 @property(nonatomic) UIWritingToolsResultOptions preferredResultOptions; // Defaults to "Default"
 
@@ -354,7 +352,7 @@
     /// An option to animate the replacement of text in your view.
     ///
     /// When Writing Tools requests an interactive change in your delegate’s
-    /// ``UIWritingToolsCoordinator/writingToolsCoordinator(_:replaceRange:inContext:proposedText:reason:animationParameters:completion:)``
+    /// ``UIWritingToolsCoordinator/Delegate/writingToolsCoordinator(_:replaceRange:inContext:proposedText:reason:animationParameters:completion:)``
     /// method, it passes a valid set of animation parameters to that method.
     /// Update your view’s text storage and use the provided ``UIWritingToolsCoordinator/AnimationParameters``
     /// type to create any view-specific animations you need to support the
@@ -364,15 +362,15 @@
     /// An option to replace the text in your view without animating the change.
     ///
     /// When Writing Tools requests a noninteractive change in your delegate’s
-    /// ``UIWritingToolsCoordinator/writingToolsCoordinator(_:replaceRange:inContext:proposedText:reason:animationParameters:completion:)``
+    /// ``UIWritingToolsCoordinator/Delegate/writingToolsCoordinator(_:replaceRange:inContext:proposedText:reason:animationParameters:completion:)``
     /// method, update your view’s text storage without animating the change.
     UIWritingToolsCoordinatorTextReplacementReasonNoninteractive, // an unanimated replacement prompted from writing tools, perhaps copied from the overlay-panel experience, perhaps a reverted rewrite or individual proofreading suggestion, and so forth
-} API_AVAILABLE(ios(18.2)) API_UNAVAILABLE(visionos, tvos, watchos) NS_SWIFT_NAME(UIWritingToolsCoordinator.TextReplacementReason);
+} API_AVAILABLE(ios(18.2), visionos(2.4)) API_UNAVAILABLE(tvos, watchos) NS_SWIFT_NAME(UIWritingToolsCoordinator.TextReplacementReason);
 
 /// Options that indicate how much of your content Writing Tools requested.
 ///
 /// At the start of any Writing Tools interaction, you provide the text for
-/// the system to evaluate from your ``NS/UIWritingToolsCoordinator/Delegate``
+/// the system to evaluate from your ``UIWritingToolsCoordinator/Delegate``
 /// object. The request for your content comes with a scope constant that
 /// indicates how much of your view’s text to provide.
 typedef NS_ENUM(NSInteger, UIWritingToolsCoordinatorContextScope) {
@@ -399,7 +397,7 @@
     /// with some additional text before and after the visible text.
     UIWritingToolsCoordinatorContextScopeVisibleArea, // For best results return a context where attributedString includes all visible text.
     
-} API_AVAILABLE(ios(18.2)) API_UNAVAILABLE(visionos, tvos, watchos) NS_SWIFT_NAME(UIWritingToolsCoordinator.ContextScope);
+} API_AVAILABLE(ios(18.2), visionos(2.4)) API_UNAVAILABLE(tvos, watchos) NS_SWIFT_NAME(UIWritingToolsCoordinator.ContextRequestReason);
 
 /// The types of animations that Writing Tools performs during an interactive
 /// update of your view.
@@ -440,10 +438,10 @@
     /// also prepare any other animations you need. Writing Tools uses a preview
     /// object you provide to animate the insertion of the text.
     UIWritingToolsCoordinatorTextAnimationInsert, // The amimation effect for washing in replacement text from a Writing Tools delivery
-} API_AVAILABLE(ios(18.2)) API_UNAVAILABLE(visionos, tvos, watchos) NS_SWIFT_NAME(UIWritingToolsCoordinator.TextAnimation);
+} API_AVAILABLE(ios(18.2), visionos(2.4)) API_UNAVAILABLE(tvos, watchos) NS_SWIFT_NAME(UIWritingToolsCoordinator.TextAnimation);
 
 UIKIT_EXTERN 
-API_AVAILABLE(ios(18.2)) API_UNAVAILABLE(visionos, tvos, watchos)
+API_AVAILABLE(ios(18.2), visionos(2.4)) API_UNAVAILABLE(tvos, watchos)
 NSString *UIWritingToolsCoordinatorTextAnimationDebugDescription(UIWritingToolsCoordinatorTextAnimation animationType);
 
 /// An interface that you use to manage interactions between Writing Tools
@@ -463,7 +461,7 @@
 /// timely manner to allow Writing Tools to perform subsequent tasks. For example,
 /// Writing Tools waits for you to execute the handlers for animation-related methods
 /// before moving on to the next stage of the animations.
-API_AVAILABLE(ios(18.2)) API_UNAVAILABLE(visionos, tvos, watchos)
+API_AVAILABLE(ios(18.2), visionos(2.4)) API_UNAVAILABLE(tvos, watchos)
 NS_SWIFT_NAME(UIWritingToolsCoordinator.Delegate)
 @protocol UIWritingToolsCoordinatorDelegate <NSObject>
 
@@ -500,7 +498,7 @@
 /// example, it might use an entire paragraph, instead of only the selected sentence,
 /// to evaluate ways to rewrite that sentence. It’s best to include the text up
 /// to the nearest paragraph boundary before and after the selection. If you
-/// include extra text in your context object, set the ``NS/UIWritingToolsCoordinator/Context/range``
+/// include extra text in your context object, set the ``UIWritingToolsCoordinator/Context/range``
 /// property to the range of the selected text.
 ///
 /// > Note: When a context object stores only a subset of your view’s text, record
@@ -592,42 +590,6 @@
 /// changes, call the provided completion block to let Writing Tools know you’re finished.
 - (void)writingToolsCoordinator:(UIWritingToolsCoordinator *)writingToolsCoordinator selectRanges:(NSArray<NSValue * /* NSRange */> *)ranges inContext:(UIWritingToolsCoordinatorContext *)context completion:(void(^)(void))completion NS_SWIFT_NAME(writingToolsCoordinator(_:select:in:completion:));
 
-/// Asks the delegate to provide the location of the character at the
-/// specified point in your view’s coordinate system.
-///
-/// - Parameters:
-///     - writingToolsCoordinator: The coordinator object requesting
-///     information from your custom view.
-///     - point: A point in your view’s coordinate space. Find the
-///     location of the text under this point, if any.
-///     - completion: A handler to execute with the required information.
-///     This handler has no return value and takes an <doc://com.apple.documentation/documentation/foundation/nsrange>
-///     and <doc://com.apple.documentation/documentation/foundation/uuid>
-///     as parameters. Set the range to the character’s location in one of your
-///     ``UIWritingToolsCoordinator/Context`` objects, which you specify using
-///     the <doc://com.apple.documentation/documentation/foundation/uuid> parameter.
-///     You must call this handler at some point during your method’s implementation.
-///
-/// When someone interacts with your view during a proofreading operation, Writing Tools
-/// calls this method to get the location of the interaction. If the interaction
-/// occurs in the text of one of your ``UIWritingToolsCoordinator/Context`` objects,
-/// configure an <doc://com.apple.documentation/documentation/foundation/nsrange>
-/// with the character’s location in that context object and a length of `1`. If
-/// the interaction occurs outside of the text of your context objects, configure
-/// the range with a location of `NSNotFound`.
-///
-/// When specifying the location of a character in your context object, provide a
-/// location relative to the start of your context object’s text. The first character
-/// in a context object’s text is always at location `0`, and it’s your responsibility
-/// to track the location of the context object’s text in your text storage object.
-/// When the context object’s text begins in the middle of your text storage,
-/// subtract the starting location of the context object’s text from the location
-/// you specify in your range value. For example, if the context object’s text
-/// starts at character `100` in your text storage, and an interaction occurs
-/// with the character at location `102`, specify a range with a location of
-/// `2` and a length of `1`.
-- (void)writingToolsCoordinator:(UIWritingToolsCoordinator *)writingToolsCoordinator requestsRangeInContextWithIdentifierForPoint:(CGPoint)point completion:(void(^)(NSRange range, NSUUID *contextID))completion NS_SWIFT_ASYNC_NAME(writingToolsCoordinator(_:rangeInContextWithIdentifierFor:));
-
 /// Asks the delegate to provide the bounding paths for the specified
 /// text in your view.
 ///
@@ -745,7 +707,7 @@
 /// method to undo any changes you make to your content.
 ///
 /// For a single animation type, the system calls the
-/// ``writingToolsCoordinator(_:previewFor:range:context:completion:)`` method,
+/// ``writingToolsCoordinator(_:requestsPreviewFor:range:context:completion:)`` method,
 /// followed sequentially by this method and the ``writingToolsCoordinator(_:finish:for:in:completion:)``
 /// method. Each method executes asynchronously, but the system calls the next
 /// method in the sequence only after you call the completion handler of the previous
@@ -884,7 +846,7 @@
 /// you finish your cleanup work, call the completion handler to notify Writing Tools.
 ///
 /// Writing Tools calls this method only after previous calls to the
-/// ``writingToolsCoordinator(_:previewFor:range:context:completion:)``
+/// ``writingToolsCoordinator(_:requestsPreviewFor:range:context:completion:)``
 /// and ``writingToolsCoordinator(_:prepareFor:range:context:completion:)``
 /// methods for the same animation type. However, Writing Tools can interleave
 /// calls to this method with calls to prepare an animation of a different
@@ -936,7 +898,7 @@
 ///
 /// When configuring animations for your view, Writing Tools asks your delegate to
 /// provide separate previews for each of your view’s container object. Specifically,
-/// it calls your delegate’s ``writingToolsCoordinator(_:previewFor:range:context:completion:)``
+/// it calls your delegate’s ``writingToolsCoordinator(_:requestsPreviewFor:range:context:completion:)``
 /// method separately for each range of text you return in the completion handler.
 /// Your implementation of that method must create a preview suitable for animating
 /// the content from the underlying text container.
@@ -964,7 +926,7 @@
 ///
 /// If your view uses multiple ``NSTextContainer`` objects to draw text in different
 /// regions, use this method to provide Writing Tools with the view to use for the
-/// specified range of text. After calling your delegate’s ``writingToolsCoordinator(_:singleContainerSubrangesOf:in:)``
+/// specified range of text. After calling your delegate’s ``writingToolsCoordinator(_:requestsSingleContainerSubrangesOf:in:completion:)``
 /// method, Writing Tools calls this method for each subrange of text you provided.
 /// Find or provide a view situated visibly below the specified text in your text
 /// view. It's also satisfactory to provide a view that’s visually in front of the
@@ -1009,6 +971,46 @@
 /// your view’s content. For example, it moves to the ``UIWritingToolsCoordinator/State/interactiveStreaming``
 /// state when it’s making changes to your view’s text storage.
 - (void)writingToolsCoordinator:(UIWritingToolsCoordinator *)writingToolsCoordinator willChangeToState:(UIWritingToolsCoordinatorState)newState completion:(void(^)(void))completion;
+
+
+// Deprecated. Not called in iOS 18.4 or visionOS 2.4 or later
+
+/// Asks the delegate to provide the location of the character at the
+/// specified point in your view’s coordinate system.
+///
+/// - Parameters:
+///     - writingToolsCoordinator: The coordinator object requesting
+///     information from your custom view.
+///     - point: A point in your view’s coordinate space. Find the
+///     location of the text under this point, if any.
+///     - completion: A handler to execute with the required information.
+///     This handler has no return value and takes an <doc://com.apple.documentation/documentation/foundation/nsrange>
+///     and <doc://com.apple.documentation/documentation/foundation/uuid>
+///     as parameters. Set the range to the character’s location in one of your
+///     ``UIWritingToolsCoordinator/Context`` objects, which you specify using
+///     the <doc://com.apple.documentation/documentation/foundation/uuid> parameter.
+///     You must call this handler at some point during your method’s implementation.
+///
+/// When someone interacts with your view during a proofreading operation, Writing Tools
+/// calls this method to get the location of the interaction. If the interaction
+/// occurs in the text of one of your ``UIWritingToolsCoordinator/Context`` objects,
+/// configure an <doc://com.apple.documentation/documentation/foundation/nsrange>
+/// with the character’s location in that context object and a length of `1`. If
+/// the interaction occurs outside of the text of your context objects, configure
+/// the range with a location of `NSNotFound`.
+///
+/// When specifying the location of a character in your context object, provide a
+/// location relative to the start of your context object’s text. The first character
+/// in a context object’s text is always at location `0`, and it’s your responsibility
+/// to track the location of the context object’s text in your text storage object.
+/// When the context object’s text begins in the middle of your text storage,
+/// subtract the starting location of the context object’s text from the location
+/// you specify in your range value. For example, if the context object’s text
+/// starts at character `100` in your text storage, and an interaction occurs
+/// with the character at location `102`, specify a range with a location of
+/// `2` and a length of `1`.
+- (void)writingToolsCoordinator:(UIWritingToolsCoordinator *)writingToolsCoordinator requestsRangeInContextWithIdentifierForPoint:(CGPoint)point completion:(void(^)(NSRange range, NSUUID *contextID))completion API_DEPRECATED("In iOS 18.4 and later and visionOS 2.4 and later, UIWritingToolsCoordinator automatically determines the location of the character at the specified point in your view's coordinate system and no longer calls this method.", ios(18.2,18.4)) API_UNAVAILABLE(visionos) NS_SWIFT_ASYNC_NAME(writingToolsCoordinator(_:rangeInContextWithIdentifierFor:));
+
 @end
 NS_HEADER_AUDIT_END(nullability, sendability)
 
diff -ruN /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWritingToolsCoordinatorAnimationParameters.h /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWritingToolsCoordinatorAnimationParameters.h
--- /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWritingToolsCoordinatorAnimationParameters.h	2024-11-14 13:57:51
+++ /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWritingToolsCoordinatorAnimationParameters.h	2025-02-08 05:17:54
@@ -15,7 +15,7 @@
 /// run alongside the Writing Tools animations.
 ///
 /// When Writing Tools replaces text in one of your context objects,
-/// it provides an `NS/UIWritingToolsAnimationParameters` object for
+/// it provides a `UIWritingToolsCoordinator.AnimationParameters` object for
 /// you to use to configure any additional animations. During a Writing
 /// Tools session, you hide the text under evaluation and provide a
 /// targeted preview of your content. Writing Tools animations changes
@@ -25,12 +25,12 @@
 /// removal of text in other parts of your view. Use this object to
 /// configure those animations.
 ///
-/// You don’t create an `NS/UIWritingToolsCoordinator.AnimationParameters`
+/// You don’t create a `UIWritingToolsCoordinator.AnimationParameters`
 /// object directly. Instead, the system creates one and passes it to the
 ///``UIWritingToolsCoordinator/writingToolsCoordinator(_:replaceRange:inContext:proposedText:reason:animationParameters:completion:)``
 ///method of your ``UIWritingToolsCoordinatorDelegate`` object. Use that
 ///object to specify the blocks to run during and after the system animations.
-UIKIT_EXTERN API_AVAILABLE(ios(18.2)) API_UNAVAILABLE(visionos, tvos, watchos) NS_SWIFT_SENDABLE NS_SWIFT_NAME(UIWritingToolsCoordinator.AnimationParameters)
+UIKIT_EXTERN API_AVAILABLE(ios(18.2), visionos(2.4)) API_UNAVAILABLE(tvos, watchos) NS_SWIFT_SENDABLE NS_SWIFT_NAME(UIWritingToolsCoordinator.AnimationParameters)
 @interface UIWritingToolsCoordinatorAnimationParameters : NSObject
 - (instancetype)init NS_UNAVAILABLE;
 
diff -ruN /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWritingToolsCoordinatorContext.h /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWritingToolsCoordinatorContext.h
--- /Applications/Xcode_16.2.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWritingToolsCoordinatorContext.h	2024-11-12 05:50:00
+++ /Applications/Xcode_16.3.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIWritingToolsCoordinatorContext.h	2025-02-08 05:18:02
@@ -61,7 +61,7 @@
 /// characters of your <doc://com.apple.documentation/documentation/foundation/nsattributedstring>
 /// object. You might add this attribute if the text string includes a code
 /// listing or readonly content that you don’t want Writing Tools to change.
-UIKIT_EXTERN API_AVAILABLE(ios(18.2)) API_UNAVAILABLE(visionos, tvos, watchos) NS_SWIFT_SENDABLE NS_SWIFT_NAME(UIWritingToolsCoordinator.Context)
+UIKIT_EXTERN API_AVAILABLE(ios(18.2), visionos(2.4)) API_UNAVAILABLE(tvos, watchos) NS_SWIFT_SENDABLE NS_SWIFT_NAME(UIWritingToolsCoordinator.Context)
 @interface UIWritingToolsCoordinatorContext : NSObject
 
 /// Creates a context object with the specified attributed string and range
@@ -91,10 +91,10 @@
 
 /// The portion of your view’s text to evaluate.
 ///
-/// The `NSWritingToolsCoordinator/Context` object initializes the value of this
+/// The `UIWritingToolsCoordinator/Context` object initializes the value of this
 /// property at creation time and doesn’t change it during the course of an operation.
 /// Instead, it suggests changes to the text in the indicated range and reports
-/// those changes to your ``NS/UIWritingToolsCoordinatorDelegate`` object. Use the methods
+/// those changes to your ``UIWritingToolsCoordinator/Delegate`` object. Use the methods
 /// of your delegate object to integrate those changes back into your view’s text storage.
 ///
 /// It’s your responsibility to track the location of this text in your
@@ -107,13 +107,13 @@
 
 /// The unique identifier of the context object.
 ///
-/// The ``UIWritingToolsCoordinator.Context`` object initializes the value of this property
+/// The ``UIWritingToolsCoordinator/Context`` object initializes the value of this property
 /// at creation time. Use this value to identify the context object within your app.
 @property (nonatomic, readonly) NSRange range; // The range it was initialized with
 
 /// The unique identifier of the context object.
 ///
-/// The ``UIWritingToolsCoordinator.Context`` object initializes the value of
+/// The ``UIWritingToolsCoordinator/Context`` object initializes the value of
 /// this property at creation time. Use this value to identify the
 /// context object within your app.
 @property (nonatomic, strong, readonly) NSUUID *identifier;
@@ -129,11 +129,11 @@
 /// to the text.
 ///
 /// While the Writing Tools operation is active, make sure Writing Tools has
-/// exclusive access to the text in this range. Your ``UIWritingToolsCoordinatorDelegate``
+/// exclusive access to the text in this range. Your ``UIWritingToolsCoordinator/Delegate``
 /// object can make changes to the text as part of incorporating Writing Tools
 /// results, but don’t allow changes to come from other sources. For example,
 /// don’t let someone edit the text in this range directly until Writing Tools finishes.
-@property (nonatomic, readonly) NSRange resolvedRange; // The range that Writing Tools ends up using (sometimes larger than range)
+@property (nonatomic, readonly) NSRange resolvedRange; // The range where Writing Tools suggests replacements, may be larger than range
 @end
 
 NS_HEADER_AUDIT_END(nullability, sendability)
Clone this wiki locally