Skip to content

ARKit iOS xcode27.0 b1

Alex Soto edited this page Jun 9, 2026 · 1 revision

#ARKit.framework

diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARAnchor.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARAnchor.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARAnchor.h	2026-04-18 22:34:51
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARAnchor.h	2026-05-30 22:01:31
@@ -11,6 +11,8 @@
 
 NS_ASSUME_NONNULL_BEGIN
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 @class ARAnchor;
 /**
  An anchor object that can be copied from values of an existing anchor.
@@ -20,10 +22,14 @@
 
 /**
  Initializes a new anchor object copying values from an existing anchor.
- @discussion This initializer will be called any time copy is called on anchor of this class.
+
+ This initializer will be called any time copy is called on anchor of this class.
  This method must be implemented for any ARAnchor subclasses that adds properties.
- @param anchor The anchor from which to copy values.
- */
+
+ - Parameter anchor: The anchor from which to copy values.
+
+ - Returns: An initialized anchor object.
+*/
 - (instancetype)initWithAnchor:(ARAnchor *)anchor;
 
 @end
@@ -35,10 +41,11 @@
 @protocol ARTrackable <NSObject>
 
 /**
- Tracking state of the anchor
- @discussion The isTracked value is used to determine the anchor transform’s validity. When the object being tracked is no longer detected in the
- camera image, its anchor will return NO for isTracked.
- */
+ Tracking state of the anchor.
+
+ The `isTracked` value is used to determine the anchor transform's validity. When the object being tracked is no longer detected in the
+ camera image, its anchor will return `NO` for `isTracked`.
+*/
 @property (nonatomic, readonly) BOOL isTracked;
 
 @end
@@ -60,13 +67,13 @@
 /**
  An optional name used to associate with the anchor.
  */
-@property (nonatomic, nullable, readonly) NSString *name API_AVAILABLE(ios(12.0));
+@property (nonatomic, nullable, readonly) NSString *name API_AVAILABLE(ios(12.0)) API_UNAVAILABLE(visionos);
 
 /**
  Identifier of the session that owns the anchor.
 
- @discussion The session identifier will be assigned to anchor when added to the session.
- */
+ The session identifier will be assigned to anchor when added to the session.
+*/
 @property (nonatomic, nullable, readonly) NSUUID *sessionIdentifier API_AVAILABLE(ios(13.0));
 
 /**
@@ -74,25 +81,43 @@
  */
 @property (nonatomic, readonly) simd_float4x4 transform;
 
-
 /**
  Initializes a new anchor object.
- @param transform The transformation matrix that defines the anchor’s rotation, translation and scale in world coordinates.
- */
+
+ - Parameter transform: The transformation matrix that defines the anchor's rotation, translation and scale in world coordinates.
+
+ - Returns: An initialized anchor object.
+*/
 - (instancetype)initWithTransform:(simd_float4x4)transform;
 
 /**
  Initializes a new anchor object with the provided identifier and name.
- @param name A name to associate with the anchor.
- @param transform The transformation matrix that defines the anchor’s rotation, translation and scale in world coordinates.
- */
-- (instancetype)initWithName:(NSString *)name transform:(simd_float4x4)transform API_AVAILABLE(ios(12.0));
 
-/** Unavailable */
+ - Parameters:
+   - name: A name to associate with the anchor.
+   - transform: The transformation matrix that defines the anchor's rotation, translation and scale in world coordinates.
+
+ - Returns: An initialized anchor object.
+*/
+- (instancetype)initWithName:(NSString *)name transform:(simd_float4x4)transform API_AVAILABLE(ios(12.0))API_UNAVAILABLE(visionos);
+
+/**
+ Unavailable.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)init NS_UNAVAILABLE;
+
+/**
+ Unavailable.
+
+ - Returns: This method is unavailable.
+*/
 + (instancetype)new NS_UNAVAILABLE;
 
 @end
+
+API_UNAVAILABLE_END
 
 NS_ASSUME_NONNULL_END
 #else
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARAppClipCodeAnchor.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARAppClipCodeAnchor.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARAppClipCodeAnchor.h	2026-04-18 22:34:52
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARAppClipCodeAnchor.h	2026-05-30 22:01:32
@@ -1,4 +1,5 @@
 #if (defined(USE_ARKIT_PUBLIC_HEADERS) && USE_ARKIT_PUBLIC_HEADERS) || !__has_include(<ARKitCore/ARAppClipCodeAnchor.h>)
+#import <TargetConditionals.h>
 //
 //  ARAppClipCodeAnchor.h
 //  ARKit
@@ -10,6 +11,8 @@
 
 NS_ASSUME_NONNULL_BEGIN
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 /**
 A value describing app clip code URL decoding state.
 */
@@ -32,7 +35,6 @@
 NS_SWIFT_SENDABLE
 @interface ARAppClipCodeAnchor : ARAnchor <ARTrackable>
 
-
 /**
 The URL encoded in this app clip code. Not nil only if urlDecodingState is .decoded.
  */
@@ -48,11 +50,29 @@
  */
 @property (nonatomic, assign, readonly) float radius;
 
-/** Unavailable */
+/**
+ Unavailable. App Clip Code anchors are created by the system.
+
+ - Parameter transform: The transformation matrix.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)initWithTransform:(simd_float4x4)transform NS_UNAVAILABLE;
+
+/**
+ Unavailable. App Clip Code anchors are created by the system.
+
+ - Parameters:
+   - name: The anchor name.
+   - transform: The transformation matrix.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)initWithName:(NSString *)name transform:(simd_float4x4)transform NS_UNAVAILABLE;
 
 @end
+
+API_UNAVAILABLE_END
 
 NS_ASSUME_NONNULL_END
 
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARBody2D.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARBody2D.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARBody2D.h	2026-04-18 22:34:52
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARBody2D.h	2026-05-30 22:01:32
@@ -9,9 +9,10 @@
 #import <ARKit/ARSkeleton.h>
 #import <simd/simd.h>
 
-
 NS_ASSUME_NONNULL_BEGIN
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 /**
  Representation of a body in 2D.
  */
@@ -24,11 +25,23 @@
  */
 @property (nonatomic, readonly) ARSkeleton2D *skeleton;
 
-/** Unavailable */
+/**
+ Unavailable.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)init NS_UNAVAILABLE;
+
+/**
+ Unavailable.
+
+ - Returns: This method is unavailable.
+*/
 + (instancetype)new NS_UNAVAILABLE;
 
 @end
+
+API_UNAVAILABLE_END
 
 NS_ASSUME_NONNULL_END
 #else
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARBodyAnchor.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARBodyAnchor.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARBodyAnchor.h	2026-04-18 22:34:52
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARBodyAnchor.h	2026-05-30 22:01:31
@@ -11,10 +11,11 @@
 
 NS_ASSUME_NONNULL_BEGIN
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 @class ARBody2D;
 @class ARSkeleton3D;
 
-
 /**
  An anchor representing a body in the world.
  */
@@ -24,25 +25,43 @@
 
 /**
  The tracked skeleton in 3D.
- @note The default height of this skeleton, measured from lowest to highest joint in standing position, is defined to be 1.71 meters.
- */
+ - Note: The default height of this skeleton, measured from lowest to highest joint in standing position, is defined to be 1.71 meters.
+*/
 @property (nonatomic, strong, readonly) ARSkeleton3D *skeleton;
 
 /**
  The factor between estimated physical size and default size of the skeleton.
- @see -[ARSkeletonDefinition neutralBodySkeleton3D]
 
- @discussion This value will be estimated if automaticSkeletonScaleEstimationEnabled is set to true on the ARBodyTrackingConfiguration.
- It is used to correct the transform's translation. Default value is 1.0.
- */
+ This value will be estimated if `automaticSkeletonScaleEstimationEnabled` is set to `true` on the `ARBodyTrackingConfiguration`.
+ It is used to correct the transform's translation. Default value is `1.0`.
+
+ - SeeAlso: ``ARSkeletonDefinition/neutralBodySkeleton3D``
+*/
 @property (nonatomic, readonly) CGFloat estimatedScaleFactor;
 
+/**
+ Unavailable.
 
-/** Unavailable */
+ - Parameter transform: The transformation matrix.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)initWithTransform:(simd_float4x4)transform NS_UNAVAILABLE;
+
+/**
+ Unavailable.
+
+ - Parameters:
+   - name: The anchor name.
+   - transform: The transformation matrix.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)initWithName:(NSString *)name transform:(simd_float4x4)transform NS_UNAVAILABLE;
 
 @end
+
+API_UNAVAILABLE_END
 
 NS_ASSUME_NONNULL_END
 #else
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARCamera.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARCamera.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARCamera.h	2026-04-18 22:34:52
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARCamera.h	2026-05-30 22:01:31
@@ -15,6 +15,8 @@
 
 NS_ASSUME_NONNULL_BEGIN
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 /**
  A model representing the camera and its parameters.
  */
@@ -53,14 +55,15 @@
 
 /**
  The camera intrinsics.
- @discussion The matrix has the following contents:
+
+ The matrix has the following contents:
  fx 0   px
  0  fy  py
  0  0   1
  fx and fy are the focal length in pixels.
  px and py are the coordinates of the principal point in pixels.
  The origin is at the center of the upper-left pixel.
- */
+*/
 @property (nonatomic, readonly) simd_float3x3 intrinsics;
 
 /**
@@ -80,23 +83,31 @@
 
 /**
  The projection matrix of the camera.
- @discussion The projection matrix assumes no far clipping plane limit.
+
+ The projection matrix assumes no far clipping plane limit.
 */
 @property (nonatomic, readonly) simd_float4x4 projectionMatrix;
 
 
+/**
+ Interface orientation enumeration type (from UIKit).
+ */
 typedef NS_ENUM(NSInteger, UIInterfaceOrientation);
 
 /**
  Creates a projection matrix for the camera given rendering parameters.
 
- @discussion The projection matrix returned provides an aspect fill for the provided viewport size and orientation.
+ The projection matrix returned provides an aspect fill for the provided viewport size and orientation.
  If zFar is set to 0, an infinite projection matrix will be returned.
- @param orientation Viewport orientation.
- @param viewportSize Viewport size.
- @param zNear Near depth limit.
- @param zFar Far depth limit.
- */
+
+ - Parameters:
+   - orientation: Viewport orientation.
+   - viewportSize: Viewport size.
+   - zNear: Near depth limit.
+   - zFar: Far depth limit.
+
+ - Returns: The projection matrix for the given parameters.
+*/
 - (simd_float4x4)projectionMatrixForOrientation:(UIInterfaceOrientation)orientation
                                    viewportSize:(CGSize)viewportSize
                                           zNear:(CGFloat)zNear
@@ -105,23 +116,28 @@
 /**
  Project a 3D point in world coordinate system into 2D viewport space.
 
- @param point 3D point in world coordinate system.
- @param orientation Viewport orientation.
- @param viewportSize Viewport (or image) size.
- @return 2D point in viewport coordinate system with origin at top-left.
- */
+ - Parameters:
+   - point: 3D point in world coordinate system.
+   - orientation: Viewport orientation.
+   - viewportSize: Viewport (or image) size.
+
+ - Returns: 2D point in viewport coordinate system with origin at top-left.
+*/
 - (CGPoint)projectPoint:(simd_float3)point orientation:(UIInterfaceOrientation)orientation viewportSize:(CGSize)viewportSize;
 
 /**
  Unproject a 2D point from the viewport onto a plane in 3D world coordinates.
 
- @discussion A 2D point in the viewport coordinate space can refer to any point along a line segment
+ A 2D point in the viewport coordinate space can refer to any point along a line segment
  in the 3D coordinate space. Unprojecting calculates the 3D position of the point along this line segment that intersects the provided plane.
- @param point A point in the viewport coordinate system with origin at top-left.
- @param planeTransform The transform used to define the coordinate system of the plane.
- The coordinate system’s positive Y axis is assumed to be the normal of the plane.
- @return 3D position in world coordinates or a NAN values if unprojection is not possible.
- */
+
+ - Parameters:
+   - point: A point in the viewport coordinate system with origin at top-left.
+   - planeTransform: The transform used to define the coordinate system of the plane.
+     The coordinate system's positive Y axis is assumed to be the normal of the plane.
+
+ - Returns: 3D position in world coordinates or `NAN` values if unprojection is not possible.
+*/
 - (simd_float3)unprojectPoint:(CGPoint)point
        ontoPlaneWithTransform:(simd_float4x4)planeTransform
                   orientation:(UIInterfaceOrientation)orientation
@@ -130,17 +146,32 @@
 /**
  Returns the view matrix for the camera with a given interface orientation.
 
- @discussion The view matrix can be used to transform geometry from world space into camera space for a given orientation.
- @param orientation The interface orientation that will be used to render the camera’s view.
- */
+ The view matrix can be used to transform geometry from world space into camera space for a given orientation.
+
+ - Parameter orientation: The interface orientation that will be used to render the camera's view.
+
+ - Returns: The view matrix for the given orientation.
+*/
 - (simd_float4x4)viewMatrixForOrientation:(UIInterfaceOrientation)orientation;
 
 
-/** Unavailable */
+/**
+ Unavailable.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)init NS_UNAVAILABLE;
+
+/**
+ Unavailable.
+
+ - Returns: This method is unavailable.
+*/
 + (instancetype)new NS_UNAVAILABLE;
 
 @end
+
+API_UNAVAILABLE_END
 
 NS_ASSUME_NONNULL_END
 #else
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARCoachingOverlayView.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARCoachingOverlayView.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARCoachingOverlayView.h	2026-04-18 22:47:14
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARCoachingOverlayView.h	2026-05-30 22:17:26
@@ -8,6 +8,8 @@
 
 #import <UIKit/UIKit.h>
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 NS_ASSUME_NONNULL_BEGIN
 
 @class ARSession;
@@ -34,10 +36,11 @@
 
 /**
  A view that guides users through session initialization
- 
- @discussion The view will use context aware messaging and animations to instruct the user on gathering required info for the AR session.
- */
+
+ The view will use context aware messaging and animations to instruct the user on gathering required info for the AR session.
+*/
 API_AVAILABLE(ios(13.0))
+API_DEPRECATED("This API is deprecated on visionOS.", visionos(1.0, 1.0))
 @interface ARCoachingOverlayView : UIView
 
 /**
@@ -48,9 +51,9 @@
 /**
  A provider of a session to use
 
- @discussion This property can be used to set the `session` when loading from a storyboard. Setting this property at runtime will also
+ This property can be used to set the `session` when loading from a storyboard. Setting this property at runtime will also
  set the `session` property.
- */
+*/
 @property (nonatomic, weak, nullable) IBOutlet NSObject<ARSessionProviding> *sessionProvider;
 
 /**
@@ -66,38 +69,45 @@
 
 /**
  Whether or not the view should activate/deactivate automatically, depending on the current state of the session
+
  Defaults to `YES`
- 
- @discussion When set to automatically activate, the view will transition to active when the session loses normal tracking for a set amount
+
+ When set to automatically activate, the view will transition to active when the session loses normal tracking for a set amount
  of time.
  When tracking resumes and other requirements (based on `goal`) are met, the view will deactivate.
- */
+*/
 @property (nonatomic, assign) BOOL activatesAutomatically;
 
 /**
  Whether or not the view is currently active.
 
- @see -[ARCoachingOverlayView setActive:animated:]
+ - SeeAlso: ``ARCoachingOverlayView/setActive:animated:``
  */
 @property (nonatomic, readonly) BOOL isActive;
 
 /**
  Transition the view to either an activated or deactivated state
- 
- @discussion On activation the view will check the current session, and if relocalization is needed it will present a modified UI with
+
+ On activation the view will check the current session, and if relocalization is needed it will present a modified UI with
  relocalization coaching and a reset button.
- 
+
  On deactivation the view will become hidden
- @param active Whether the view should activate, or deactivate
- @param animated Whether the view animated to activated/deactivated states, or transitions instantly
 
- @see -[ARCoachingOverlayViewDelegate coachingOverlayViewDidTriggerReset:]
- */
+ - Parameters:
+   - active: Whether the view should activate, or deactivate.
+   - animated: Whether the view animated to activated/deactivated states, or transitions instantly.
+
+ - SeeAlso: ``ARCoachingOverlayViewDelegate/coachingOverlayViewDidRequestSessionReset:``
+*/
 - (void)setActive:(BOOL)active animated:(BOOL)animated;
 
 @end
 
+/**
+ A delegate protocol for receiving coaching overlay view events.
+ */
 API_AVAILABLE(ios(13.0))
+API_DEPRECATED("This API is deprecated on visionOS.", visionos(1.0, 1.0))
 @protocol ARCoachingOverlayViewDelegate <NSObject>
 
 @optional
@@ -105,33 +115,36 @@
 /**
  This is called when the user taps the reset button in the relocalization state
 
- @discussion By default, when the relocalization reset button is tapped, the overlay will call run on the session using the current
+ By default, when the relocalization reset button is tapped, the overlay will call run on the session using the current
  `configuration`, and the `ARSessionRunOptionResetTracking` and `ARSessionRunOptionRemoveExistingAnchors` options. The delegate may
  implement this method to override this behavior. The delegate is then responsible for resetting the session.
- 
- @param coachingOverlayView The view currently active
- */
+
+ - Parameter coachingOverlayView: The view currently active.
+*/
 - (void)coachingOverlayViewDidRequestSessionReset:(ARCoachingOverlayView *)coachingOverlayView;
 
 /**
  This is called when the view activate, either manually or automatically
- 
- @discussion The Developer may hide their application UI in in this callback, and take other appropriate actions to allow
+
+ The Developer may hide their application UI in this callback, and take other appropriate actions to allow
  `ARCoachingOverlayView` to take over the full screen.
- @param coachingOverlayView The view that will be activated
- */
+
+ - Parameter coachingOverlayView: The view that will be activated.
+*/
 - (void)coachingOverlayViewWillActivate:(ARCoachingOverlayView *)coachingOverlayView;
 
 /**
- This is called when the view has been deactivated, either manually or automatically
- 
- @param coachingOverlayView The view that was deactivated
- */
+ This is called when the view has been deactivated, either manually or automatically.
+
+ - Parameter coachingOverlayView: The view that was deactivated.
+*/
 - (void)coachingOverlayViewDidDeactivate:(ARCoachingOverlayView *)coachingOverlayView;
 
 @end
 
 NS_ASSUME_NONNULL_END
+
+API_UNAVAILABLE_END
 #else
 #import <ARKitUI/ARCoachingOverlayView.h> 
 #endif // #if (defined(USE_ARKIT_PUBLIC_HEADERS) \&\& USE_ARKIT_PUBLIC_HEADERS) || !__has_include(<ARKitUI/ARCoachingOverlayView.h>)
\ No newline at end of file
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARCollaborationData.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARCollaborationData.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARCollaborationData.h	2026-04-18 22:34:51
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARCollaborationData.h	2026-05-30 22:01:31
@@ -6,30 +6,33 @@
 //  Copyright © 2019 Apple Inc. All rights reserved.
 //
 
-#import <Foundation/Foundation.h>
 #import <ARKit/ARSession.h>
+#import <Foundation/Foundation.h>
 
 NS_ASSUME_NONNULL_BEGIN
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 /**
  A value describing the priority of the collaboration data.
  */
 API_AVAILABLE(ios(13.0))
 typedef NS_ENUM(NSInteger, ARCollaborationDataPriority) {
-    
-    /// The data is important for establishing or continuing a collaborative session. For best results, use network transmission mechanisms that ensure delivery, such as MCSessionSendDataModeReliable.
+    /// The data is important for establishing or continuing a collaborative session. For best results, use network transmission mechanisms that
+    /// ensure delivery, such as MCSessionSendDataModeReliable.
     ARCollaborationDataPriorityCritical,
-    
-    /// The data is time-sensitive but not important to collaborative session quality. Timely synchronization of this data between participants produces a smoother shared session, but the session can continue if the data is not received.
-    /// For best results, use network transmission mechanisms that prioritize speed over delivery guarantees, such as MCSessionSendDataModeUnreliable.
+
+    /// The data is time-sensitive but not important to collaborative session quality. Timely synchronization of this data between participants
+    /// produces a smoother shared session, but the session can continue if the data is not received. For best results, use network transmission
+    /// mechanisms that prioritize speed over delivery guarantees, such as MCSessionSendDataModeUnreliable.
     ARCollaborationDataPriorityOptional,
 } NS_SWIFT_NAME(ARCollaborationData.Priority);
 
 /**
  Object representing data for collaborative session.
- 
- @discussion This data needs to be sent to each participants in the collaborative session.
- */
+
+ This data needs to be sent to each participant in the collaborative session.
+*/
 API_AVAILABLE(ios(13.0))
 NS_SWIFT_NAME(ARSession.CollaborationData)
 NS_SWIFT_SENDABLE
@@ -37,15 +40,28 @@
 
 /**
  Network priority of the data.
- @discussion The network implementation should respect this flag and choose the appropriate protocol.
- */
+
+ The network implementation should respect this flag and choose the appropriate protocol.
+*/
 @property (nonatomic, readonly) ARCollaborationDataPriority priority;
 
-/** Unavailable */
+/**
+ Unavailable.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)init NS_UNAVAILABLE;
+
+/**
+ Unavailable.
+
+ - Returns: This method is unavailable.
+*/
 + (instancetype)new NS_UNAVAILABLE;
 
 @end
+
+API_UNAVAILABLE_END
 
 NS_ASSUME_NONNULL_END
 #else
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARConfiguration.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARConfiguration.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARConfiguration.h	2026-04-18 22:34:51
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARConfiguration.h	2026-05-30 22:01:30
@@ -14,6 +14,8 @@
 
 NS_ASSUME_NONNULL_BEGIN
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 @class ARReferenceImage;
 @class ARReferenceObject;
 @class ARVideoFormat;
@@ -29,40 +31,50 @@
 
     /**
      Person segmentation.
-     @discussion A pixel in the image frame that gets classified as person will have an intensity value equal to 'ARSegmentationClassPerson'.
-     @see -[ARFrame segmentationBuffer]
-     @see ARSegmentationClass
+
+     A pixel in the image frame that gets classified as person will have an intensity value equal to 'ARSegmentationClassPerson'.
+
+     - SeeAlso: ``ARFrame/segmentationBuffer``
+     - SeeAlso: ``ARSegmentationClass``
     */
     ARFrameSemanticPersonSegmentation = (1 << 0),
 
     /**
      Person segmentation with depth.
-     @discussion A pixel in the image frame that gets classified as person will have an intensity value equal to 'ARSegmentationClassPerson'.
+
+     A pixel in the image frame that gets classified as person will have an intensity value equal to 'ARSegmentationClassPerson'.
      Additionally, every pixel in the image frame that gets classified as person will also have a depth value.
-     @see -[ARFrame estimatedDepthData]
-     @see -[ARFrame segmentationBuffer]
+
+     - SeeAlso: ``ARFrame/estimatedDepthData``
+     - SeeAlso: ``ARFrame/segmentationBuffer``
      */
     ARFrameSemanticPersonSegmentationWithDepth = (1 << 1) | (1 << 0),
 
     /**
      Body detection.
-     @discussion Once activated an ARFrame will contain information about a detected body.
-     @see -[ARFrame detectedBody]
-     @see ARBody2D
-     */
+
+     Once activated an `ARFrame` will contain information about a detected body.
+
+     - SeeAlso: ``ARFrame/detectedBody``
+     - SeeAlso: ``ARBody2D``
+    */
     ARFrameSemanticBodyDetection = (1 << 2),
 
     /**
      Scene Depth.
-     @discussion Each capturedImage will have an associated scene depth data.
-     @see - [ARFrame sceneDepth]
+
+     Each `capturedImage` will have an associated scene depth data.
+
+     - SeeAlso: ``ARFrame/sceneDepth``
     */
     ARFrameSemanticSceneDepth API_AVAILABLE(ios(14.0)) = (1 << 3),
 
     /**
      Smoothed Scene Depth.
-     @discussion Each capturedImage will have an associated scene depth data that is temporally smoothed.
-     @see - [ARFrame smoothedSceneDepth]
+
+     Each `capturedImage` will have an associated scene depth data that is temporally smoothed.
+
+     - SeeAlso: ``ARFrame/smoothedSceneDepth``
     */
     ARFrameSemanticSmoothedSceneDepth API_AVAILABLE(ios(14.0)) = (1 << 4),
 
@@ -128,8 +140,9 @@
 
 /**
  A list of supported video formats for this configuration and device.
- @discussion The first element in the list is the default format for session output.
- */
+
+ The first element in the list is the default format for session output.
+*/
 @property (class, nonatomic, readonly) NSArray<ARVideoFormat *> *supportedVideoFormats API_AVAILABLE(ios(11.3));
 
 /**
@@ -139,73 +152,96 @@
 
 /**
  Determines how the coordinate system should be aligned with the world.
- @discussion The default is ARWorldAlignmentGravity.
- */
+
+ The default is `ARWorldAlignmentGravity`.
+*/
 @property (nonatomic, assign) ARWorldAlignment worldAlignment;
 
 /**
  Enable or disable light estimation.
- @discussion Enabled by default.
- */
+
+ Enabled by default.
+*/
 @property (nonatomic, assign, getter=isLightEstimationEnabled) BOOL lightEstimationEnabled;
 
 /**
  Determines whether to capture and provide audio data.
- @discussion Disabled by default.
- */
+
+ Disabled by default.
+*/
 @property (nonatomic, assign) BOOL providesAudioData;
 
 /**
  The type of semantic understanding to provide with each frame.
 
- @discussion Use the `supportsFrameSemantics` class method to check if the configuration type you intend to run supports the set of frame semantics.
- For example, when running a session with a configuration of type ARWorldTrackingConfiguration one would need to use `+[ ARWorldTrackingConfiguration
- supportsFrameSemantics:]` to perform said check. An exception is thrown if the option is not supported. Defaults to ARFrameSemanticNone.
- @see ARFrameSemantics
- @see +[ARConfiguration supportsFrameSemantics:]
+ Use the `supportsFrameSemantics` class method to check if the configuration type you intend to run supports the set of frame semantics.
+ For example, when running a session with a configuration of type `ARWorldTrackingConfiguration` one would need to use `+[
+ ARWorldTrackingConfiguration supportsFrameSemantics:]` to perform said check. An exception is thrown if the option is not supported. Defaults to
+ `ARFrameSemanticNone`.
+
+ - SeeAlso: ``ARFrameSemantics``
+ - SeeAlso: ``ARConfiguration/supportsFrameSemantics:``
 */
 @property (nonatomic, assign) ARFrameSemantics frameSemantics API_AVAILABLE(ios(13.0));
 
 /**
  Determines whether the type of frame semantics is supported by the device and ARConfiguration class.
 
- @discussion Semantic frame understanding is not supported on all devices. Use the `supportsFrameSemantics` class method to check if the configuration
+ Semantic frame understanding is not supported on all devices. Use the `supportsFrameSemantics` class method to check if the configuration
  type you intend to run supports the set of frame semantics. For example, when running a session with a configuration of type
  ARWorldTrackingConfiguration one would need to use
  `+[ ARWorldTrackingConfiguration supportsFrameSemantics:]` to perform said check.
- @see ARFrameSemantics
+
+ - Parameter frameSemantics: The frame semantics to check for support.
+
+ - Returns: `YES` if the frame semantics are supported on this device and configuration class, `NO` otherwise.
+
+ - SeeAlso: ``ARFrameSemantics``
 */
 + (BOOL)supportsFrameSemantics:(ARFrameSemantics)frameSemantics API_AVAILABLE(ios(13.0));
 
 /**
  Returns a pointer to the capture device of the camera that's used for rendering, so developers can adjust capture settings.
- @discussion May return nil if it is not recommended to modify capture settings, for example if the primary camera is used for tracking.
- */
-@property (class, nonatomic, nullable, readonly) AVCaptureDevice *configurableCaptureDeviceForPrimaryCamera
-        API_AVAILABLE(ios(16.0));
 
+ Note: Modifying capture settings can impact performance of tracking or other algorithms, particularly on devices with a single rear camera.
+*/
+@property (class, nonatomic, nullable, readonly) AVCaptureDevice *configurableCaptureDeviceForPrimaryCamera API_AVAILABLE(ios(16.0));
+
 /**
  Returns a video format using a 4K resolution from the list of supported video formats.
- @discussion May return nil if 4K is not supported for this configuration or device.
- */
+
+ May return `nil` if 4K is not supported for this configuration or device.
+*/
 @property (class, nonatomic, nullable, readonly) ARVideoFormat *recommendedVideoFormatFor4KResolution API_AVAILABLE(ios(16.0));
 
 /**
  Returns a recommended video format that supports capturing high resolution frames with a significantly higher resolution than the streaming camera
  resolution.
- @discussion Using this format may consume more power. Other video formats may support capturing high resolution frames as well, albeit at a lower
+
+ Using this format may consume more power. Other video formats may support capturing high resolution frames as well, albeit at a lower
  quality or resolution.
- @see [ARSession captureHighResolutionFrameWithCompletion:]
- */
+
+ - SeeAlso: ``ARSession/captureHighResolutionFrameWithCompletion:``
+*/
 @property (class, nonatomic, nullable, readonly) ARVideoFormat *recommendedVideoFormatForHighResolutionFrameCapturing API_AVAILABLE(ios(16.0));
 
 /**
- Whether HDR capturing is allowed if the current video format supports it. Defaults to @c NO.
+ Whether HDR capturing is allowed if the current video format supports it. Defaults to `NO`.
  */
 @property (nonatomic, assign, readwrite) BOOL videoHDRAllowed API_AVAILABLE(ios(16.0));
 
-/** Unavailable */
+/**
+ Unavailable. Use configuration subclasses instead.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)init NS_UNAVAILABLE;
+
+/**
+ Unavailable. Use configuration subclasses instead.
+
+ - Returns: This method is unavailable.
+*/
 + (instancetype)new NS_UNAVAILABLE;
 
 @end
@@ -213,25 +249,27 @@
 /**
  A configuration for running world tracking.
 
- @discussion World tracking provides 6 degrees of freedom tracking of the device.
+ World tracking provides `6` degrees of freedom tracking of the device.
  By finding feature points in the scene, world tracking enables performing hit-tests against the frame.
  Tracking can no longer be resumed once the session is paused.
- */
+*/
 API_AVAILABLE(ios(11.0))
 @interface ARWorldTrackingConfiguration : ARConfiguration
 
 /**
  Enable or disable continuous auto focus.
- @discussion Enabled by default.
- */
+
+ Enabled by default.
+*/
 @property (nonatomic, assign, getter=isAutoFocusEnabled) BOOL autoFocusEnabled API_AVAILABLE(ios(11.3));
 
 /**
  The mode of environment texturing to run.
- @discussion If set, texture information will be accumulated and updated. Adding an AREnvironmentProbeAnchor to the session
+
+ If set, texture information will be accumulated and updated. Adding an `AREnvironmentProbeAnchor` to the session
  will get the current environment texture available from that probe's perspective which can be used for lighting
- virtual objects in the scene. Defaults to AREnvironmentTexturingNone.
- */
+ virtual objects in the scene. Defaults to `AREnvironmentTexturingNone`.
+*/
 @property (nonatomic, assign) AREnvironmentTexturing environmentTexturing API_AVAILABLE(ios(12.0));
 
 /**
@@ -241,56 +279,72 @@
 
 /**
  Type of planes to detect in the scene.
- @discussion If set, new planes will continue to be detected and updated over time. Detected planes will be added to the session as
+
+ If set, new planes will continue to be detected and updated over time. Detected planes will be added to the session as
  ARPlaneAnchor objects. In the event that two planes are merged, the newer plane will be removed. Defaults to ARPlaneDetectionNone.
- */
+*/
 @property (nonatomic, assign) ARPlaneDetection planeDetection;
 
 /**
  The initial map of the physical space that world tracking will localize to and track.
- @discussion If set, the session will attempt to localize to the provided map with
+
+ If set, the session will attempt to localize to the provided map with
  a limited tracking state until localization is successful or run is called again
  with a different (or no) initial map specified. Once localized, the map will be extended
  and can again be saved using the `getCurrentWorldMap` method on the session.
- */
+*/
 @property (nonatomic, strong, nullable) ARWorldMap *initialWorldMap API_AVAILABLE(ios(12.0));
 
 /**
  Images to detect in the scene.
- @discussion If set the session will attempt to detect the specified images. When an image is detected an ARImageAnchor will be added to the session.
- */
+
+ If set the session will attempt to detect the specified images. When an image is detected an `ARImageAnchor` will be added to the session.
+*/
 @property (nonatomic, copy, null_resettable) NSSet<ARReferenceImage *> *detectionImages API_AVAILABLE(ios(11.3));
 
 /**
  Enables the estimation of a scale factor which may be used to correct the physical size of an image.
- @discussion If set to true ARKit will attempt to use the computed camera positions in order to compute the scale by which the given physical size
+
+ If set to `true` ARKit will attempt to use the computed camera positions in order to compute the scale by which the given physical size
  differs from the estimated one. The information about the estimated scale can be found as the property estimatedScaleFactor on the ARImageAnchor.
- @note When set to true the transform of a returned ARImageAnchor will use the estimated scale factor to correct the translation. Default value is NO.
-  */
+
+ - Note: When set to true the transform of a returned `ARImageAnchor` will use the estimated scale factor to correct the translation. Default value is
+ `NO`.
+*/
 @property (nonatomic, assign) BOOL automaticImageScaleEstimationEnabled API_AVAILABLE(ios(13.0));
 
 /**
  Maximum number of images to track simultaneously.
- @discussion Setting the maximum number of tracked images will limit the number of images that can be tracked in a given frame.
+
+ Setting the maximum number of tracked images will limit the number of images that can be tracked in a given frame.
  If more than the maximum is visible, only the images already being tracked will continue to track until tracking is lost or another image is removed.
  Images will continue to be detected regardless of images tracked. Default value is zero.
- */
+*/
 @property (nonatomic, assign) NSInteger maximumNumberOfTrackedImages API_AVAILABLE(ios(12.0));
 
 /**
  Objects to detect in the scene.
- @discussion If set the session will attempt to detect the specified objects. When an object is detected an ARObjectAnchor will be added to the
+
+ If set, the session will attempt to detect the specified objects. When an object is detected an `ARObjectAnchor` will be added to the
  session.
- */
+*/
 @property (nonatomic, copy) NSSet<ARReferenceObject *> *detectionObjects API_AVAILABLE(ios(12.0));
 
 /**
+ Objects to track in the scene.
+
+ If set, the session will attempt to track the specified objects. When an object is detected an `ARObjectAnchor` will be added to the
+ session.
+*/
+@property (nonatomic, copy) NSSet<ARReferenceObject *> *trackingObjects API_AVAILABLE(ios(27.0));
+
+/**
  Enable/disable a collaborative session. Disabled by default.
 
- @discussion When enabled, ARSession will output collaboration data for other participants using its delegate didOutputCollaborationData.
+ When enabled, `ARSession` will output collaboration data for other participants using its delegate `didOutputCollaborationData`.
  It is the responsibility of the caller to send the data to each participant. When data is received by a participant, it
  should be passed to the ARSession by calling updateWithCollaborationData.
- */
+*/
 @property (nonatomic, assign, getter=isCollaborationEnabled) BOOL collaborationEnabled API_AVAILABLE(ios(13.0));
 
 /**
@@ -300,12 +354,14 @@
 
 /**
  Enable or disable running Face Tracking using the front facing camera. Disabled by default.
+
  When enabled, ARSession detects faces (if visible in the front-facing camera image) and adds to its list of anchors,
  an ARFaceAnchor object representing each face.
 
- @discussion The transform of the ARFaceAnchor objects will be in the world coordinate space.
- @see ARFaceAnchor
- */
+ The transform of the `ARFaceAnchor` objects will be in the world coordinate space.
+
+ - SeeAlso: ``ARFaceAnchor``
+*/
 @property (nonatomic, assign, getter=userFaceTrackingEnabled) BOOL userFaceTrackingEnabled API_AVAILABLE(ios(13.0));
 
 /**
@@ -320,18 +376,35 @@
 
 /**
  Indicates whether the scene reconstruction type is supported for the configuration on this device.
- */
+
+ - Parameter sceneReconstruction: The scene reconstruction type to check for support.
+
+ - Returns: `YES` if the scene reconstruction type is supported on this device, `NO` otherwise.
+*/
 + (BOOL)supportsSceneReconstruction:(ARSceneReconstruction)sceneReconstruction API_AVAILABLE(ios(13.4));
 
 /**
  Type of scene reconstruction to run. Defaults to ARSceneReconstructionNone.
- @see ARMeshAnchor
- @discussion If set to a value other than ARSceneReconstructionNone, output of scene reconstruction will be added to the session as
+
+ If set to a value other than `ARSceneReconstructionNone`, output of scene reconstruction will be added to the session as
  ARMeshAnchor objects.
- */
+
+ - SeeAlso: ``ARMeshAnchor``
+*/
 @property (nonatomic, assign) ARSceneReconstruction sceneReconstruction API_AVAILABLE(ios(13.4));
 
+/**
+ Initializes a new world tracking configuration.
+
+ - Returns: An initialized world tracking configuration.
+*/
 - (instancetype)init;
+
+/**
+ Unavailable. Use init instead.
+
+ - Returns: This method is unavailable.
+*/
 + (instancetype)new NS_SWIFT_UNAVAILABLE("Use init() instead");
 
 @end
@@ -339,18 +412,30 @@
 /**
  A configuration for running orientation tracking.
 
- @discussion Orientation tracking provides 3 degrees of freedom tracking of the device.
- */
+ Orientation tracking provides `3` degrees of freedom tracking of the device.
+*/
 API_AVAILABLE(ios(11.0))
 @interface AROrientationTrackingConfiguration : ARConfiguration
 
 /**
  Enable or disable continuous auto focus.
- @discussion Enabled by default.
- */
+
+ Enabled by default.
+*/
 @property (nonatomic, assign, getter=isAutoFocusEnabled) BOOL autoFocusEnabled API_AVAILABLE(ios(11.3));
 
+/**
+ Initializes a new orientation tracking configuration.
+
+ - Returns: An initialized orientation tracking configuration.
+*/
 - (instancetype)init;
+
+/**
+ Unavailable. Use init instead.
+
+ - Returns: This method is unavailable.
+*/
 + (instancetype)new NS_SWIFT_UNAVAILABLE("Use init() instead");
 
 @end
@@ -358,10 +443,10 @@
 /**
  A configuration for running face tracking.
 
- @discussion Face tracking uses the front facing camera to track the face in 3D providing details on the topology and expression of the face.
+ Face tracking uses the front facing camera to track the face in 3D providing details on the topology and expression of the face.
  A detected face will be added to the session as an ARFaceAnchor object which contains information about head pose, mesh, eye pose, and blend shape
  coefficients. If light estimation is enabled the detected face will be treated as a light probe and used to estimate the direction of incoming light.
- */
+*/
 API_AVAILABLE(ios(11.0))
 @interface ARFaceTrackingConfiguration : ARConfiguration
 
@@ -372,10 +457,11 @@
 
 /**
  Maximum number of faces to track simultaneously.
- @discussion Setting the maximum number of tracked faces will limit the number of faces that can be tracked in a given frame.
+
+ Setting the maximum number of tracked faces will limit the number of faces that can be tracked in a given frame.
  If more than the maximum is visible, only the faces already being tracked will continue to track until tracking is lost or another face is removed.
  Default value is one.
- */
+*/
 @property (nonatomic, assign) NSInteger maximumNumberOfTrackedFaces API_AVAILABLE(ios(13.0));
 
 /**
@@ -386,12 +472,30 @@
 /**
  Enable or disable World Tracking. Disabled by default.
 
- @discussion When enabled, ARSession uses the back facing camera to track the device's orientation and position in the world. The camera transform and
+ When enabled, `ARSession` uses the back facing camera to track the device's orientation and position in the world. The camera transform and
  the ARFaceAnchor transform will be in the world coordinate space.
- */
+*/
 @property (nonatomic, assign, getter=isWorldTrackingEnabled) BOOL worldTrackingEnabled API_AVAILABLE(ios(13.0));
 
+/**
+ Enable or disable environment texturing.
+
+ When enabled, the system automatically generates and updates the environment texture at the device position. Disabled by default.
+*/
+@property (nonatomic, assign, getter=isEnvironmentTexturingEnabled) BOOL environmentTexturingEnabled API_AVAILABLE(ios(27.0));
+
+/**
+ Initializes a new face tracking configuration.
+
+ - Returns: An initialized face tracking configuration.
+*/
 - (instancetype)init;
+
+/**
+ Unavailable. Use init instead.
+
+ - Returns: This method is unavailable.
+*/
 + (instancetype)new NS_SWIFT_UNAVAILABLE("Use init() instead");
 
 @end
@@ -399,15 +503,16 @@
 /**
  A configuration for running image tracking.
 
- @discussion Image tracking provides 6 degrees of freedom tracking of known images. Four images may be tracked simultaneously.
- */
+ Image tracking provides 6 degrees of freedom tracking of known images. Four images may be tracked simultaneously.
+*/
 API_AVAILABLE(ios(12.0))
 @interface ARImageTrackingConfiguration : ARConfiguration
 
 /**
  Enable or disable continuous auto focus.
- @discussion Enabled by default.
- */
+
+ Enabled by default.
+*/
 @property (nonatomic, assign, getter=isAutoFocusEnabled) BOOL autoFocusEnabled;
 
 /**
@@ -417,13 +522,25 @@
 
 /**
  Maximum number of images to track simultaneously.
- @discussion Setting the maximum number of tracked images will limit the number of images that can be tracked in a given frame.
+
+ Setting the maximum number of tracked images will limit the number of images that can be tracked in a given frame.
  If more than the maximum is visible, only the images already being tracked will continue to track until tracking is lost or another image is removed.
  Default value is one.
- */
+*/
 @property (nonatomic, assign) NSInteger maximumNumberOfTrackedImages;
 
+/**
+ Initializes a new image tracking configuration.
+
+ - Returns: An initialized image tracking configuration.
+*/
 - (instancetype)init;
+
+/**
+ Unavailable. Use init instead.
+
+ - Returns: This method is unavailable.
+*/
 + (instancetype)new NS_SWIFT_UNAVAILABLE("Use init() instead");
 
 @end
@@ -431,27 +548,40 @@
 /**
  A configuration for scanning objects.
 
- @discussion The object scanning configuration runs world tracking, capturing additional detail in order to create reference objects.
+ The object scanning configuration runs world tracking, capturing additional detail in order to create reference objects.
  Running object scanning will consume additional power in order to provide more detailed features.
  The createReferenceObject method can be called on the session to capture a scan of an object in the world.
- */
-API_AVAILABLE(ios(12.0))
+*/
+API_DEPRECATED("Please consider migrating to the new reference object format.", ios(12.0, 27.0));
 @interface ARObjectScanningConfiguration : ARConfiguration
 
 /**
  Enable or disable continuous auto focus.
- @discussion Enabled by default.
- */
+
+ Enabled by default.
+*/
 @property (nonatomic, assign, getter=isAutoFocusEnabled) BOOL autoFocusEnabled;
 
 /**
  Type of planes to detect in the scene.
- @discussion If set, new planes will continue to be detected and updated over time. Detected planes will be added to the session as
+
+ If set, new planes will continue to be detected and updated over time. Detected planes will be added to the session as
  ARPlaneAnchor objects. In the event that two planes are merged, the newer plane will be removed. Defaults to ARPlaneDetectionNone.
- */
+*/
 @property (nonatomic, assign) ARPlaneDetection planeDetection;
 
+/**
+ Initializes a new object scanning configuration.
+
+ - Returns: An initialized object scanning configuration.
+*/
 - (instancetype)init;
+
+/**
+ Unavailable. Use init instead.
+
+ - Returns: This method is unavailable.
+*/
 + (instancetype)new NS_SWIFT_UNAVAILABLE("Use init() instead");
 
 @end
@@ -459,35 +589,39 @@
 /**
  A configuration for running body tracking.
 
- @discussion Body tracking provides 6 degrees of freedom tracking of a detected body in the scene. By default, ARFrameSemanticBodyDetection will be
+ Body tracking provides 6 degrees of freedom tracking of a detected body in the scene. By default, `ARFrameSemanticBodyDetection` will be
  enabled.
- @see ARBodyAnchor
- @see -[ARFrame detectedBody]
- */
+
+ - SeeAlso: ``ARBodyAnchor``
+ - SeeAlso: ``ARFrame/detectedBody``
+*/
 API_AVAILABLE(ios(13.0))
 @interface ARBodyTrackingConfiguration : ARConfiguration
 
 /**
  Enable or disable continuous auto focus.
- @discussion Enabled by default.
- */
+
+ Enabled by default.
+*/
 @property (nonatomic, assign, getter=isAutoFocusEnabled) BOOL autoFocusEnabled;
 
 /**
  The initial map of the physical space that world tracking will localize to and track.
- @discussion If set, the session will attempt to localize to the provided map with
+
+ If set, the session will attempt to localize to the provided map with
  a limited tracking state until localization is successful or run is called again
  with a different (or no) initial map specified. Once localized, the map will be extended
  and can again be saved using the `getCurrentWorldMap` method on the session.
- */
+*/
 @property (nonatomic, strong, nullable) ARWorldMap *initialWorldMap;
 
 /**
  The mode of environment texturing to run.
- @discussion If set, texture information will be accumulated and updated. Adding an AREnvironmentProbeAnchor to the session
+
+ If set, texture information will be accumulated and updated. Adding an `AREnvironmentProbeAnchor` to the session
  will get the current environment texture available from that probe's perspective which can be used for lighting
  virtual objects in the scene. Defaults to AREnvironmentTexturingNone.
- */
+*/
 @property (nonatomic, assign) AREnvironmentTexturing environmentTexturing;
 
 /**
@@ -497,38 +631,47 @@
 
 /**
  Type of planes to detect in the scene.
- @discussion If set, new planes will continue to be detected and updated over time. Detected planes will be added to the session as
+
+ If set, new planes will continue to be detected and updated over time. Detected planes will be added to the session as
  ARPlaneAnchor objects. In the event that two planes are merged, the newer plane will be removed. Defaults to ARPlaneDetectionNone.
- */
+*/
 @property (nonatomic, assign) ARPlaneDetection planeDetection;
 
 /**
-Images to detect in the scene.
-@discussion If set the session will attempt to detect the specified images. When an image is detected an ARImageAnchor will be added to the session.
+ Images to detect in the scene.
+
+ If set the session will attempt to detect the specified images. When an image is detected an `ARImageAnchor` will be added to the session.
 */
 @property (nonatomic, copy) NSSet<ARReferenceImage *> *detectionImages;
 
 /**
  Enables the estimation of a scale factor which may be used to correct the physical size of an image.
- @discussion If set to true ARKit will attempt to use the computed camera positions in order to compute the scale by which the given physical size
+
+ If set to true ARKit will attempt to use the computed camera positions in order to compute the scale by which the given physical size
  differs from the estimated one. The information about the estimated scale can be found as the property estimatedScaleFactor on the ARImageAnchor.
- @note When set to true the transform of a returned ARImageAnchor will use the estimated scale factor to correct the translation. Default value is NO.
- */
+
+ - Note: When set to true the transform of a returned `ARImageAnchor` will use the estimated scale factor to correct the translation. Default value is
+ `NO`.
+*/
 @property (nonatomic, assign) BOOL automaticImageScaleEstimationEnabled;
 
 /**
  Enables the estimation of a scale factor which may be used to correct the physical size of a skeleton in 3D.
- @discussion If set to true ARKit will attempt to use the computed camera positions in order to compute the scale by which the given physical size
+
+ If set to true ARKit will attempt to use the computed camera positions in order to compute the scale by which the given physical size
  differs from the default one. The information about the estimated scale can be found as the property estimatedScaleFactor on the ARBodyAnchor.
- @note When set to true the transform of a returned ARBodyAnchor will use the estimated scale factor to correct the translation. Default value is NO.
- */
+
+ - Note: When set to true the transform of a returned `ARBodyAnchor` will use the estimated scale factor to correct the translation. Default value is
+ `NO`.
+*/
 @property (nonatomic, assign) BOOL automaticSkeletonScaleEstimationEnabled;
 /**
  Maximum number of images to track simultaneously.
- @discussion Setting the maximum number of tracked images will limit the number of images that can be tracked in a given frame.
+
+ Setting the maximum number of tracked images will limit the number of images that can be tracked in a given frame.
  If more than the maximum is visible, only the images already being tracked will continue to track until tracking is lost or another image is removed.
  Images will continue to be detected regardless of images tracked. Default value is zero.
- */
+*/
 @property (nonatomic, assign) NSInteger maximumNumberOfTrackedImages;
 
 /**
@@ -541,7 +684,18 @@
  */
 @property (class, nonatomic, readonly) BOOL supportsAppClipCodeTracking API_AVAILABLE(ios(14.3));
 
+/**
+ Initializes a new body tracking configuration.
+
+ - Returns: An initialized body tracking configuration.
+*/
 - (instancetype)init;
+
+/**
+ Unavailable. Use init instead.
+
+ - Returns: This method is unavailable.
+*/
 + (instancetype)new NS_SWIFT_UNAVAILABLE("Use init() instead");
 
 @end
@@ -549,29 +703,42 @@
 /**
  A configuration for running positional tracking.
 
- @discussion Positional tracking provides 6 degrees of freedom tracking of the device by running the camera at lowest possible resolution and frame
+ Positional tracking provides `6` degrees of freedom tracking of the device by running the camera at lowest possible resolution and frame
  rate.
- */
+*/
 API_AVAILABLE(ios(13.0))
 @interface ARPositionalTrackingConfiguration : ARConfiguration
 
 /**
  Type of planes to detect in the scene.
- @discussion If set, new planes will continue to be detected and updated over time. Detected planes will be added to the session as
+
+ If set, new planes will continue to be detected and updated over time. Detected planes will be added to the session as
  ARPlaneAnchor objects. In the event that two planes are merged, the newer plane will be removed. Defaults to ARPlaneDetectionNone.
- */
+*/
 @property (nonatomic, assign) ARPlaneDetection planeDetection;
 
 /**
  The initial map of the physical space that world tracking will localize to and track.
- @discussion If set, the session will attempt to localize to the provided map with
+
+ If set, the session will attempt to localize to the provided map with
  a limited tracking state until localization is successful or run is called again
  with a different (or no) initial map specified. Once localized, the map will be extended
  and can again be saved using the `getCurrentWorldMap` method on the session.
- */
+*/
 @property (nonatomic, strong, nullable) ARWorldMap *initialWorldMap;
 
+/**
+ Initializes a new positional tracking configuration.
+
+ - Returns: An initialized positional tracking configuration.
+*/
 - (instancetype)init;
+
+/**
+ Unavailable. Use init instead.
+
+ - Returns: This method is unavailable.
+*/
 + (instancetype)new NS_SWIFT_UNAVAILABLE("Use init() instead");
 
 @end
@@ -579,8 +746,8 @@
 /**
  A configuration for running geographical world tracking.
 
- @discussion It allows placing geo-referenced anchors (ARGeoAnchor) in the scene by running world tracking with location and compass.
- */
+ It allows placing geo-referenced anchors (ARGeoAnchor) in the scene by running world tracking with location and compass.
+*/
 API_AVAILABLE(ios(14.0))
 @interface ARGeoTrackingConfiguration : ARConfiguration
 
@@ -589,10 +756,11 @@
 
 /**
  The mode of environment texturing to run.
- @discussion If set, texture information will be accumulated and updated. Adding an AREnvironmentProbeAnchor to the session
+
+ If set, texture information will be accumulated and updated. Adding an `AREnvironmentProbeAnchor` to the session
  will get the current environment texture available from that probe's perspective which can be used for lighting
  virtual objects in the scene. Defaults to AREnvironmentTexturingNone.
- */
+*/
 @property (nonatomic, assign) AREnvironmentTexturing environmentTexturing;
 
 /**
@@ -602,41 +770,56 @@
 
 /**
  Type of planes to detect in the scene.
- @discussion If set, new planes will continue to be detected and updated over time. Detected planes will be added to the session as
+
+ If set, new planes will continue to be detected and updated over time. Detected planes will be added to the session as
  ARPlaneAnchor objects. In the event that two planes are merged, the newer plane will be removed. Defaults to ARPlaneDetectionNone.
- */
+*/
 @property (nonatomic, assign) ARPlaneDetection planeDetection;
 
 /**
  Images to detect in the scene.
- @discussion If set the session will attempt to detect the specified images. When an image is detected an ARImageAnchor will be added to the session.
- */
+
+ If set the session will attempt to detect the specified images. When an image is detected an `ARImageAnchor` will be added to the session.
+*/
 @property (nonatomic, copy, null_resettable) NSSet<ARReferenceImage *> *detectionImages;
 
 /**
  Enables the estimation of a scale factor which may be used to correct the physical size of an image.
- @discussion If set to true ARKit will attempt to use the computed camera positions in order to compute the scale by which the given physical size
+
+ If set to true ARKit will attempt to use the computed camera positions in order to compute the scale by which the given physical size
  differs from the estimated one. The information about the estimated scale can be found as the property estimatedScaleFactor on the ARImageAnchor.
- @note When set to true the transform of a returned ARImageAnchor will use the estimated scale factor to correct the translation. Default value is NO.
-  */
+
+ - Note: When set to true the transform of a returned `ARImageAnchor` will use the estimated scale factor to correct the translation. Default value is
+ `NO`.
+*/
 @property (nonatomic, assign) BOOL automaticImageScaleEstimationEnabled;
 
 /**
  Maximum number of images to track simultaneously.
- @discussion Setting the maximum number of tracked images will limit the number of images that can be tracked in a given frame.
+
+ Setting the maximum number of tracked images will limit the number of images that can be tracked in a given frame.
  If more than the maximum is visible, only the images already being tracked will continue to track until tracking is lost or another image is removed.
  Images will continue to be detected regardless of images tracked. Default value is zero.
- */
+*/
 @property (nonatomic, assign) NSInteger maximumNumberOfTrackedImages;
 
 /**
  Objects to detect in the scene.
- @discussion If set the session will attempt to detect the specified objects. When an object is detected an ARObjectAnchor will be added to the
+
+ If set, the session will attempt to detect the specified objects. When an object is detected an `ARObjectAnchor` will be added to the
  session.
- */
+*/
 @property (nonatomic, copy) NSSet<ARReferenceObject *> *detectionObjects;
 
 /**
+ Objects to track in the scene.
+
+ If set, the session will attempt to track the specified objects. When an object is detected an `ARObjectAnchor` will be added to the
+ session.
+*/
+@property (nonatomic, copy) NSSet<ARReferenceObject *> *trackingObjects API_AVAILABLE(ios(27.0));
+
+/**
  Enable or disable app clip code tracking. Disabled by default. When enabled, detected app clip codes will be surfaced as an ARAppClipCodeAnchor.
  */
 @property (nonatomic, assign) BOOL appClipCodeTrackingEnabled API_AVAILABLE(ios(14.3));
@@ -649,29 +832,43 @@
 /**
  Determines the availability of geo tracking at the current location.
 
- @discussion This method will attempt to acquire a location fix on a background thread, then check availability.
+ This method will attempt to acquire a location fix on a background thread, then check availability.
 
- @param completionHandler Completion handler that is called when availability has been determined. This handler is executed on an arbitrary serial
- queue. It takes the following parameters: isAvailable - True if geo tracking is available at the current location, otherwise false. error - An error
- that indicates why geo tracking is not available at the current location.
- */
+ - Parameter completionHandler: Completion handler that is called when availability has been determined. This handler is executed on an arbitrary
+ serial queue. It takes the following parameters: isAvailable - True if geo tracking is available at the current location, otherwise false. error - An
+ error that indicates why geo tracking is not available at the current location.
+*/
 + (void)checkAvailabilityWithCompletionHandler:(void (^)(BOOL isAvailable, NSError *_Nullable error))completionHandler NS_SWIFT_DISABLE_ASYNC;
 
 /**
-Determines the availability of geo tracking at the given location.
+ Determines the availability of geo tracking at the given location.
 
-@param coordinate Location at which to check.
-@param completionHandler Completion handler that is called when availability has been determined. This handler is executed on an arbitrary serial
-queue. It takes the following parameters: isAvailable - True if geo tracking is available at the given location, otherwise false. error - An error
-that indicates why geo tracking is not available at the given location.
+ - Parameters:
+   - coordinate: Location at which to check.
+   - completionHandler: Completion handler that is called when availability has been determined. This handler is executed on an arbitrary serial
+    queue. It takes the following parameters: isAvailable - True if geo tracking is available at the given location, otherwise false. error - An error
+    that indicates why geo tracking is not available at the given location.
 */
 + (void)checkAvailabilityAtCoordinate:(CLLocationCoordinate2D)coordinate
                     completionHandler:(void (^)(BOOL isAvailable, NSError *_Nullable error))completionHandler NS_SWIFT_DISABLE_ASYNC;
 
+/**
+ Initializes a new geo tracking configuration.
+
+ - Returns: An initialized geo tracking configuration.
+*/
 - (instancetype)init;
+
+/**
+ Unavailable. Use init instead.
+
+ - Returns: This method is unavailable.
+*/
 + (instancetype)new NS_SWIFT_UNAVAILABLE("Use init() instead");
 
 @end
+
+API_UNAVAILABLE_END
 
 NS_ASSUME_NONNULL_END
 #else
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARDepthData.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARDepthData.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARDepthData.h	2026-04-18 20:38:19
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARDepthData.h	2026-05-30 21:52:11
@@ -6,9 +6,11 @@
 //  Copyright © 2020 Apple Inc. All rights reserved.
 //
 
-#import <Foundation/Foundation.h>
 #import <CoreVideo/CoreVideo.h>
+#import <Foundation/Foundation.h>
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 NS_ASSUME_NONNULL_BEGIN
 /**
  Constants indicating the confidence level of per-pixel depth data.
@@ -38,6 +40,9 @@
 @property (nonatomic, assign, nullable, readonly) CVPixelBufferRef confidenceMap;
 
 @end
+
+API_UNAVAILABLE_END
+
 NS_ASSUME_NONNULL_END
 #else
 #import <ARKitFoundation/ARDepthData.h> 
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/AREnvironmentProbeAnchor.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/AREnvironmentProbeAnchor.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/AREnvironmentProbeAnchor.h	2026-04-18 22:34:53
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/AREnvironmentProbeAnchor.h	2026-05-30 22:01:32
@@ -12,44 +12,59 @@
 
 NS_ASSUME_NONNULL_BEGIN
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 /**
  An object representing an environment probe in the world.
- @discussion Environment probes are used to light virtual geometry by producing environment
+
+ Environment probes are used to light virtual geometry by producing environment
  textures from the probe's location in the world.
- */
+*/
 API_AVAILABLE(ios(12.0))
 NS_SWIFT_SENDABLE
 @interface AREnvironmentProbeAnchor : ARAnchor
 
 /**
  The environment texture of the probe.
- @discussion The texture is provided as a cube using MTLTextureTypeCube.
- */
+
+ The texture is provided as a cube using MTLTextureTypeCube.
+*/
 @property (nonatomic, strong, nullable, readonly) id<MTLTexture> environmentTexture;
 
 /**
  The extent of the probe in the anchor's coordinate space.
- @discussion This is the size of the box that is assumed when projecting the environment texture for parallax correction.
+
+ This is the size of the box that is assumed when projecting the environment texture for parallax correction.
  The extent defaults to infinity for probes that do not need parallax correction.
- */
+*/
 @property (nonatomic, readonly) simd_float3 extent;
 
 /**
  Initializes a new environment probe anchor with the provided transform and extent.
- @param transform The transformation matrix that defines the anchor’s rotation, translation and scale in world coordinates.
- @param extent The extent of the probe in the anchor's coordinate space.
- */
+
+ - Parameters:
+   - transform: The transformation matrix that defines the anchor's rotation, translation and scale in world coordinates.
+   - extent: The extent of the probe in the anchor's coordinate space.
+
+ - Returns: An initialized environment probe anchor.
+*/
 - (instancetype)initWithTransform:(simd_float4x4)transform extent:(simd_float3)extent;
 
 /**
  Initializes a new environment probe anchor with the provided name, transform, and extent.
- @param name A name to associate with the anchor.
- @param transform The transformation matrix that defines the anchor’s rotation, translation and scale in world coordinates.
- @param extent The extent of the probe in the anchor's coordinate space.
- */
-- (instancetype)initWithName:(NSString *)name transform:(simd_float4x4)transform extent:(simd_float3)extent;
 
+ - Parameters:
+   - name: A name to associate with the anchor.
+   - transform: The transformation matrix that defines the anchor's rotation, translation and scale in world coordinates.
+   - extent: The extent of the probe in the anchor's coordinate space.
+
+ - Returns: An initialized environment probe anchor.
+*/
+- (instancetype)initWithName:(NSString *)name transform:(simd_float4x4)transform extent:(simd_float3)extent API_UNAVAILABLE(visionos);
+
 @end
+
+API_UNAVAILABLE_END
 
 NS_ASSUME_NONNULL_END
 #else
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARError.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARError.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARError.h	2026-04-18 22:34:52
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARError.h	2026-05-30 22:01:31
@@ -7,9 +7,12 @@
 //
 
 #import <Foundation/Foundation.h>
+#import <TargetConditionals.h>
 
 NS_ASSUME_NONNULL_BEGIN
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 API_AVAILABLE(ios(11.0))
 FOUNDATION_EXTERN NSString *const ARErrorDomain;
 
@@ -74,9 +77,9 @@
 
     /** Generic request failure. */
     ARErrorCodeRequestFailed API_AVAILABLE(ios(14.0)) = 501,
-
-
 };
+
+API_UNAVAILABLE_END
 
 NS_ASSUME_NONNULL_END
 #else
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARFaceAnchor.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARFaceAnchor.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARFaceAnchor.h	2026-04-18 22:34:52
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARFaceAnchor.h	2026-05-30 22:01:31
@@ -11,14 +11,18 @@
 
 NS_ASSUME_NONNULL_BEGIN
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 /**
  Blend shape locations of a face geometry.
- @discussion Each location defines an area of the face that can be displaced with a provided coefficient.
- blend shape activation  by ARKit.
- @note Blend shapes are computed based on the captured image. For example, if the detected person has a closed right eye, the eye on the left side of
- the captured image will appear closed and reported as blend shape activation  by ARKit.
- @see -[ARFrame capturedImage]
- */
+
+ Each location defines an area of the face that can be displaced with a provided coefficient.
+
+ - Note: Blend shapes are computed based on the captured image. For example, if the detected person has a closed right eye, the eye on the left side
+ of the captured image will appear closed and reported as blend shape activation by ARKit.
+
+ - SeeAlso: ``ARFrame/capturedImage``
+*/
 typedef NSString *ARBlendShapeLocation NS_STRING_ENUM NS_SWIFT_NAME(ARFaceAnchor.BlendShapeLocation) API_AVAILABLE(ios(11.0));
 FOUNDATION_EXTERN ARBlendShapeLocation const ARBlendShapeLocationBrowDownLeft API_AVAILABLE(ios(11.0));
 FOUNDATION_EXTERN ARBlendShapeLocation const ARBlendShapeLocationBrowDownRight API_AVAILABLE(ios(11.0));
@@ -104,15 +108,34 @@
 
 /**
  A dictionary of blend shape coefficients for each blend shape location.
- @discussion Blend shapes coefficients define the amount of displacement of a neutral shape at a specific location on the face.
- */
-@property (nonatomic, strong, readonly) NSDictionary<ARBlendShapeLocation, NSNumber*> *blendShapes;
 
-/** Unavailable */
+ Blend shapes coefficients define the amount of displacement of a neutral shape at a specific location on the face.
+*/
+@property (nonatomic, strong, readonly) NSDictionary<ARBlendShapeLocation, NSNumber *> *blendShapes;
+
+/**
+ Unavailable.
+
+ - Parameter transform: The transformation matrix.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)initWithTransform:(simd_float4x4)transform NS_UNAVAILABLE;
+
+/**
+ Unavailable.
+
+ - Parameters:
+   - name: The anchor name.
+   - transform: The transformation matrix.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)initWithName:(NSString *)name transform:(simd_float4x4)transform NS_UNAVAILABLE;
 
 @end
+
+API_UNAVAILABLE_END
 
 NS_ASSUME_NONNULL_END
 #else
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARFaceGeometry.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARFaceGeometry.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARFaceGeometry.h	2026-04-18 22:34:52
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARFaceGeometry.h	2026-05-30 22:01:32
@@ -6,8 +6,8 @@
 //  Copyright © 2016-2021 Apple Inc. All rights reserved.
 //
 
-#import <Foundation/Foundation.h>
 #import <ARKit/ARFaceAnchor.h>
+#import <Foundation/Foundation.h>
 
 @protocol MTLBuffer;
 @protocol MTLDevice;
@@ -15,14 +15,17 @@
 
 NS_ASSUME_NONNULL_BEGIN
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 /**
  An object representing the geometry of a face.
- @discussion The face geometry will have a constant number of triangles
+
+ The face geometry will have a constant number of triangles
  and vertices, updating only the vertex positions from frame to frame.
- */
+*/
 API_AVAILABLE(ios(11.0))
 NS_SWIFT_SENDABLE
-@interface ARFaceGeometry : NSObject<NSSecureCoding, NSCopying>
+@interface ARFaceGeometry : NSObject <NSSecureCoding, NSCopying>
 
 /**
 The number of mesh vertices of the geometry.
@@ -56,18 +59,32 @@
 
 /**
  Creates and returns a face geometry by applying a set of given blend shape coefficients.
- 
- @discussion An empty dictionary can be provided to create a neutral face geometry.
- @param blendShapes A dictionary of blend shape coefficients.
- @return Face geometry after applying the blend shapes.
- */
-- (nullable instancetype)initWithBlendShapes:(NSDictionary<ARBlendShapeLocation, NSNumber*> *)blendShapes;
 
-/** Unavailable */
+ An empty dictionary can be provided to create a neutral face geometry.
+
+ - Parameter blendShapes: A dictionary of blend shape coefficients.
+
+ - Returns: Face geometry after applying the blend shapes.
+*/
+- (nullable instancetype)initWithBlendShapes:(NSDictionary<ARBlendShapeLocation, NSNumber *> *)blendShapes;
+
+/**
+ Unavailable.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)init NS_UNAVAILABLE;
+
+/**
+ Unavailable.
+
+ - Returns: This method is unavailable.
+*/
 + (instancetype)new NS_UNAVAILABLE;
 
 @end
+
+API_UNAVAILABLE_END
 
 NS_ASSUME_NONNULL_END
 #else
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARFrame.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARFrame.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARFrame.h	2026-04-18 22:34:51
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARFrame.h	2026-05-30 22:01:31
@@ -21,17 +21,22 @@
 @class AVDepthData;
 @class ARBody2D;
 @class ARDepthData;
+@class AVMetadataObject;
 
 @protocol MTLTexture;
 
 NS_ASSUME_NONNULL_BEGIN
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 /**
  Segmentation classes which defines a pixel's semantic label.
- @discussion When running a configuration with 'ARFrameSemanticPersonSegmentation' every pixel in the
+
+ When running a configuration with 'ARFrameSemanticPersonSegmentation' every pixel in the
  segmentationBuffer on the ARFrame will conform to one of these classes.
- @see -[ARConfiguration setFrameSemantics:]
- @see -[ARFrame segmentationBuffer]
+
+ - SeeAlso: ``ARConfiguration/frameSemantics``
+ - SeeAlso: ``ARFrame/segmentationBuffer``
 */
 API_AVAILABLE(ios(13.0))
 typedef NS_ENUM(uint8_t, ARSegmentationClass) {
@@ -66,8 +71,9 @@
 
 /**
  An object encapsulating the state of everything being tracked for a given moment in time.
- @discussion The model provides a snapshot of all data needed to render a given frame.
- */
+
+ The model provides a snapshot of all data needed to render a given frame.
+*/
 API_AVAILABLE(ios(11.0))
 NS_SWIFT_SENDABLE
 @interface ARFrame : NSObject <NSCopying>
@@ -88,30 +94,30 @@
 @property (nonatomic, strong, readonly) NSDictionary<NSString *, id> *exifData API_AVAILABLE(ios(16.0));
 
 /**
- A tileable texture that contains image noise matching the current camera streams
- noise properties.
+ A tileable texture that contains image noise matching the current camera stream's noise properties.
 
- @discussion A camera stream depicts image noise that gives the captured image
-    a grainy look and varies with light conditions.
+ A camera stream depicts image noise that gives the captured image
+ a grainy look and varies with light conditions.
  The variations are stored along the depth dimension of the camera grain texture
  and can be selected at runtime using the camera grain intensity of the current frame.
- */
+*/
 @property (nonatomic, nullable, readonly) id<MTLTexture> cameraGrainTexture API_AVAILABLE(ios(13.0));
 
 /**
  The frame’s camera grain intensity in range 0 to 1.
 
- @discussion A camera stream depicts image noise that gives the captured image
+ A camera stream depicts image noise that gives the captured image
  a grainy look and varies with light conditions.
  The camera grain intensity can be used to select a texture slice from the frames
  camera grain texture.
- */
+*/
 @property (nonatomic, readonly) float cameraGrainIntensity API_AVAILABLE(ios(13.0));
 
 /**
  The frame’s captured depth data.
- @discussion Depth data is only provided with face tracking on frames where depth data was captured.
- */
+
+ Depth data is only provided with face tracking on frames where depth data was captured.
+*/
 @property (nonatomic, strong, nullable, readonly) AVDepthData *capturedDepthData;
 
 /**
@@ -121,8 +127,9 @@
 
 /**
  The camera used to capture the frame’s image.
- @discussion The camera provides the device’s position and orientation as well as camera parameters.
- */
+
+ The camera provides the device’s position and orientation as well as camera parameters.
+*/
 @property (nonatomic, copy, readonly) ARCamera *camera;
 
 /**
@@ -132,43 +139,51 @@
 
 /**
  A light estimate representing the light in the scene.
- @discussion Returns nil if there is no light estimation.
- */
+
+ Returns `nil` if there is no light estimation.
+*/
 @property (nonatomic, strong, nullable, readonly) ARLightEstimate *lightEstimate;
 
 /**
  Feature points in the scene with respect to the frame’s origin.
- @discussion The feature points are only provided for configurations using world tracking.
- */
+
+ The feature points are only provided for configurations using world tracking.
+*/
 @property (nonatomic, strong, nullable, readonly) ARPointCloud *rawFeaturePoints;
 
 /**
  The status of world mapping for the area visible to the frame.
- @discussion This can be used to identify the state of the world map for the visible area and if additional scanning
+
+ This can be used to identify the state of the world map for the visible area and if additional scanning
  should be done before saving a world map.
- */
+*/
 @property (nonatomic, readonly) ARWorldMappingStatus worldMappingStatus API_AVAILABLE(ios(12.0));
 
 /**
  A buffer that represents the segmented content of the capturedImage.
- @discussion In order to identify to which class a pixel has been classified one needs to compare its intensity value with the values
+
+ In order to identify to which class a pixel has been classified one needs to compare its intensity value with the values
  found in `ARSegmentationClass`.
- @see ARSegmentationClass
- @see -[ARConfiguration setFrameSemantics:]
+
+ - SeeAlso: ``ARSegmentationClass``
+ - SeeAlso: ``ARConfiguration/frameSemantics``
 */
 @property (nonatomic, nullable, readonly) CVPixelBufferRef segmentationBuffer API_AVAILABLE(ios(13.0));
 
 /**
  A buffer that represents the estimated depth values for a performed segmentation.
- @discussion For each non-background pixel in the segmentation buffer the corresponding depth value can be accessed in this buffer.
- @see -[ARConfiguration setFrameSemantics:]
- @see -[ARFrame segmentationBuffer]
- */
+
+ For each non-background pixel in the segmentation buffer the corresponding depth value can be accessed in this buffer.
+
+ - SeeAlso: ``ARConfiguration/frameSemantics``
+ - SeeAlso: ``ARFrame/segmentationBuffer``
+*/
 @property (nonatomic, nullable, readonly) CVPixelBufferRef estimatedDepthData API_AVAILABLE(ios(13.0));
 
 /**
  A detected body in the current frame.
- @see -[ARConfiguration setFrameSemantics:]
+
+ - SeeAlso: ``ARConfiguration/frameSemantics``
  */
 @property (nonatomic, nullable, readonly) ARBody2D *detectedBody API_AVAILABLE(ios(13.0));
 
@@ -179,63 +194,102 @@
 
 /**
  Scene depth data.
- @see ARFrameSemanticSceneDepth.
- @see -[ARConfiguration setFrameSemantics:]
+
+ - SeeAlso: ``ARFrameSemanticSceneDepth``
+ - SeeAlso: ``ARConfiguration/frameSemantics``
  */
 @property (nonatomic, strong, nullable, readonly) ARDepthData *sceneDepth API_AVAILABLE(ios(14.0));
 
 /**
  Scene depth data, smoothed for temporal consistency.
- @see ARFrameSemanticSmoothedSceneDepth.
- @see -[ARConfiguration setFrameSemantics:]
+
+ - SeeAlso: ``ARFrameSemanticSmoothedSceneDepth``
+ - SeeAlso: ``ARConfiguration/frameSemantics``
  */
 @property (nonatomic, strong, nullable, readonly) ARDepthData *smoothedSceneDepth API_AVAILABLE(ios(14.0));
 
 /**
+ Metadata objects associated with the current frame.
+
+ This array contains `AVMetadataFaceObject`s for detected faces when running an `ARFaceTrackingConfiguration` and face tracking is not
+ active (`maximumNumberOfTrackedFaces` set to 0).
+
+ - SeeAlso: ``ARFaceTrackingConfiguration/maximumNumberOfTrackedFaces``
+ */
+@property (nonatomic, strong, readonly) NSArray<__kindof AVMetadataObject *> *metadataObjects API_AVAILABLE(ios(27.0)) API_UNAVAILABLE(visionos);
+
+/**
  Searches the frame for objects corresponding to a point in the captured image.
 
- @discussion A 2D point in the captured image’s coordinate space can refer to any point along a line segment
+ A 2D point in the captured image’s coordinate space can refer to any point along a line segment
  in the 3D coordinate space. Hit-testing is the process of finding objects in the world located along this line segment.
- @param point A point in the image-space coordinate system of the captured image.
- Values should range from (0,0) - upper left corner to (1,1) - lower right corner.
- @param types The types of results to search for.
- @return An array of all hit-test results sorted from nearest to farthest.
- */
+
+ - Parameters:
+   - point: A point in the image-space coordinate system of the captured image.
+     Values should range from (0,0) - upper left corner to (1,1) - lower right corner.
+   - types: The types of results to search for.
+
+ - Returns: An array of all hit-test results sorted from nearest to farthest.
+*/
 - (NSArray<ARHitTestResult *> *)hitTest:(CGPoint)point types:(ARHitTestResultType)types API_DEPRECATED("Use [ARSession raycast:]", ios(11.0, 14.0));
 
 /**
  Creates a raycast query originating from the point on the captured image, aligned along the center of the field of view of the camera.
- @discussion A 2D point in the captured image’s coordinate space and the field of view of the frame's camera is used to create a ray in the 3D
- cooridnate space originating at the point.
- @param point A point in the image-space coordinate system of the captured image.
- Values should range from (0,0) - upper left corner to (1,1) - lower right corner.
- @param target Type of target where the ray should terminate.
- @param alignment Alignment of the target.
- */
+
+ A 2D point in the captured image's coordinate space and the field of view of the frame's camera is used to create a ray in the 3D
+ coordinate space originating at the point.
+
+ - Parameters:
+   - point: A point in the image-space coordinate system of the captured image.
+     Values should range from (0,0) - upper left corner to (1,1) - lower right corner.
+   - target: Type of target where the ray should terminate.
+   - alignment: Alignment of the target.
+
+ - Returns: A raycast query configured with the specified parameters.
+*/
 - (ARRaycastQuery *)raycastQueryFromPoint:(CGPoint)point
                            allowingTarget:(ARRaycastTarget)target
                                 alignment:(ARRaycastTargetAlignment)alignment API_AVAILABLE(ios(13.0));
 
 
+/**
+ Interface orientation enumeration type (from UIKit).
+ */
 typedef NS_ENUM(NSInteger, UIInterfaceOrientation);
 
 /**
  Returns a display transform for the provided viewport size and orientation.
 
- @discussion The display transform can be used to convert normalized points in the image-space coordinate system
- of the captured image to normalized points in the view’s coordinate space. The transform provides the correct rotation
+ The display transform can be used to convert normalized points in the image-space coordinate system
+ of the captured image to normalized points in the view's coordinate space. The transform provides the correct rotation
  and aspect-fill for presenting the captured image in the given orientation and size.
- @param orientation The orientation of the viewport.
- @param viewportSize The size of the viewport.
- */
+
+ - Parameters:
+   - orientation: The orientation of the viewport.
+   - viewportSize: The size of the viewport.
+
+ - Returns: The display transform matrix.
+*/
 - (CGAffineTransform)displayTransformForOrientation:(UIInterfaceOrientation)orientation viewportSize:(CGSize)viewportSize;
 
 
-/** Unavailable */
+/**
+ Unavailable.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)init NS_UNAVAILABLE;
+
+/**
+ Unavailable.
+
+ - Returns: This method is unavailable.
+*/
 + (instancetype)new NS_UNAVAILABLE;
 
 @end
+
+API_UNAVAILABLE_END
 
 NS_ASSUME_NONNULL_END
 #else
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARGeoAnchor.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARGeoAnchor.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARGeoAnchor.h	2026-04-18 22:34:52
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARGeoAnchor.h	2026-05-30 22:01:32
@@ -12,11 +12,14 @@
 
 NS_ASSUME_NONNULL_BEGIN
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 /**
  An anchor representing a geographical location in the world.
- @discussion The anchor's transform will be automatically updated by the session based on location and heading.
+
+ The anchor's transform will be automatically updated by the session based on location and heading.
  The session needs to be configured with ARGeoTrackingConfiguration.
- */
+*/
 API_AVAILABLE(ios(14.0))
 NS_SWIFT_SENDABLE
 @interface ARGeoAnchor : ARAnchor <ARTrackable>
@@ -24,15 +27,15 @@
 /**
  The coordinate where this anchor will be placed.
 
- @discussion The anchor's transform will be automatically updated by the session when ARGeoTrackingConfiguration is set.
- */
+ The anchor's transform will be automatically updated by the session when `ARGeoTrackingConfiguration` is set.
+*/
 @property (nonatomic, readonly) CLLocationCoordinate2D coordinate;
 
 /**
  The distance to mean sea level, in meters (negative values indicate it's below sea level).
 
- @discussion Only valid when altitudeSource is not ARAltitudeSourceUnknown.
- */
+ Only valid when `altitudeSource` is not `ARAltitudeSourceUnknown`.
+*/
 @property (nonatomic, readonly) CLLocationDistance altitude NS_REFINED_FOR_SWIFT;
 
 /**
@@ -44,42 +47,75 @@
 /**
  Initializes a new ARGeoAnchor with the given coordinates.
 
- @discussion ARKit will query the ground level altitude during runtime, and populate the altitude as soon as that information becomes available.
- @param coordinate Coordinates.
- */
+ ARKit will query the ground level altitude during runtime, and populate the altitude as soon as that information becomes available.
+
+ - Parameter coordinate: The coordinates.
+
+ - Returns: An initialized geo anchor.
+*/
 - (instancetype)initWithCoordinate:(CLLocationCoordinate2D)coordinate NS_REFINED_FOR_SWIFT;
 
 /**
  Initializes a new ARGeoAnchor with the given coordinates and altitude.
 
- @param coordinate Coordinates.
- @param altitude Altitude in meters.
- */
+ - Parameters:
+   - coordinate: The coordinates.
+   - altitude: Altitude in meters.
+
+ - Returns: An initialized geo anchor.
+*/
 - (instancetype)initWithCoordinate:(CLLocationCoordinate2D)coordinate altitude:(CLLocationDistance)altitude NS_REFINED_FOR_SWIFT;
 
 /**
  Initializes a new named ARGeoAnchor with the given coordinates.
 
- @discussion ARKit will query the ground level altitude during runtime, and populate the altitude as soon as that information becomes available.
- @param name Name of the anchor.
- @param coordinate Coordinates.
- */
-- (instancetype)initWithName:(NSString *)name coordinate:(CLLocationCoordinate2D)coordinate NS_REFINED_FOR_SWIFT;
+ ARKit will query the ground level altitude during runtime, and populate the altitude as soon as that information becomes available.
 
+ - Parameters:
+   - name: Name of the anchor.
+   - coordinate: The coordinates.
+
+ - Returns: An initialized geo anchor.
+*/
+- (instancetype)initWithName:(NSString *)name coordinate:(CLLocationCoordinate2D)coordinate NS_REFINED_FOR_SWIFT API_UNAVAILABLE(visionos);
+
 /**
  Initializes a new named ARGeoAnchor with the given coordinates and altitude.
 
- @param name Name of the anchor.
- @param coordinate Coordinates.
- @param altitude Altitude in meters.
- */
-- (instancetype)initWithName:(NSString *)name coordinate:(CLLocationCoordinate2D)coordinate altitude:(CLLocationDistance)altitude;
+ - Parameters:
+   - name: Name of the anchor.
+   - coordinate: The coordinates.
+   - altitude: Altitude in meters.
 
-/** Unavailable */
+ - Returns: An initialized geo anchor.
+*/
+- (instancetype)initWithName:(NSString *)name
+                  coordinate:(CLLocationCoordinate2D)coordinate
+                    altitude:(CLLocationDistance)altitude API_UNAVAILABLE(visionos);
+
+/**
+ Unavailable.
+
+ - Parameter transform: The transformation matrix.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)initWithTransform:(simd_float4x4)transform NS_UNAVAILABLE;
+
+/**
+ Unavailable.
+
+ - Parameters:
+   - name: The anchor name.
+   - transform: The transformation matrix.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)initWithName:(NSString *)name transform:(simd_float4x4)transform NS_UNAVAILABLE;
 
 @end
+
+API_UNAVAILABLE_END
 
 NS_ASSUME_NONNULL_END
 
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARGeoTrackingTypes.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARGeoTrackingTypes.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARGeoTrackingTypes.h	2026-04-18 22:34:51
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARGeoTrackingTypes.h	2026-05-30 22:01:31
@@ -10,6 +10,8 @@
 
 NS_ASSUME_NONNULL_BEGIN
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 /**
  Keeps track of where an altitude value came from and informs the user about the expected accuracy.
  */
@@ -18,7 +20,8 @@
     /** Altitude could not be determined (yet). */
     ARAltitudeSourceUnknown,
 
-    /** ARKit determined altitude based on a coarse digital elevation model. The provided value is too imprecise to be used at close range, but is sufficient to anchor far away content. */
+    /** ARKit determined altitude based on a coarse digital elevation model. The provided value is too imprecise to be used at close range, but is
+     * sufficient to anchor far away content. */
     ARAltitudeSourceCoarse,
 
     /** ARKit determined altitude based on a high resolution digital elevation model. */
@@ -35,13 +38,13 @@
 typedef NS_ENUM(NSInteger, ARGeoTrackingState) {
     /** Geo tracking is not available. */
     ARGeoTrackingStateNotAvailable,
-    
+
     /** Geo tracking is being initialized. */
     ARGeoTrackingStateInitializing,
-    
+
     /** Geo tracking is attempting to localize against a Map. */
     ARGeoTrackingStateLocalizing,
-    
+
     /** Geo tracking is localized. */
     ARGeoTrackingStateLocalized,
 } NS_SWIFT_NAME(ARGeoTrackingStatus.State);
@@ -56,10 +59,10 @@
 
     /** Localized with low accuracy. */
     ARGeoTrackingAccuracyLow,
-    
+
     /** Localized with medium accuracy. */
     ARGeoTrackingAccuracyMedium,
-    
+
     /** Localized with high accuracy. */
     ARGeoTrackingAccuracyHigh
 } NS_SWIFT_NAME(ARGeoTrackingStatus.Accuracy);
@@ -119,10 +122,23 @@
  */
 @property (nonatomic, readonly) ARGeoTrackingStateReason stateReason;
 
+/**
+ Unavailable. Geo tracking status objects are created by the system.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)init NS_UNAVAILABLE;
+
+/**
+ Unavailable. Geo tracking status objects are created by the system.
+
+ - Returns: This method is unavailable.
+*/
 + (instancetype)new NS_UNAVAILABLE;
 
 @end
+
+API_UNAVAILABLE_END
 
 NS_ASSUME_NONNULL_END
 
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARHitTestResult.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARHitTestResult.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARHitTestResult.h	2026-04-18 22:34:52
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARHitTestResult.h	2026-05-30 22:01:32
@@ -6,8 +6,8 @@
 //  Copyright © 2017 Apple Inc. All rights reserved.
 //
 
-#import <Foundation/Foundation.h>
 #import <CoreGraphics/CGGeometry.h>
+#import <Foundation/Foundation.h>
 #import <simd/simd.h>
 
 @class ARAnchor;
@@ -18,26 +18,28 @@
 API_DEPRECATED("Use raycasting", ios(11.0, 14.0))
 typedef NS_OPTIONS(NSUInteger, ARHitTestResultType) {
     /** Result type from intersecting the nearest feature point. */
-    ARHitTestResultTypeFeaturePoint                                        = (1 << 0),
-    
+    ARHitTestResultTypeFeaturePoint = (1 << 0),
+
     /** Result type from intersecting a horizontal plane estimate, determined for the current frame. */
-    ARHitTestResultTypeEstimatedHorizontalPlane                            = (1 << 1),
-    
+    ARHitTestResultTypeEstimatedHorizontalPlane = (1 << 1),
+
     /** Result type from intersecting a vertical plane estimate, determined for the current frame. */
-    ARHitTestResultTypeEstimatedVerticalPlane API_AVAILABLE(ios(11.3))     = (1 << 2),
-    
+    ARHitTestResultTypeEstimatedVerticalPlane API_AVAILABLE(ios(11.3)) = (1 << 2),
+
     /** Result type from intersecting with an existing plane anchor. */
-    ARHitTestResultTypeExistingPlane                                       = (1 << 3),
-    
+    ARHitTestResultTypeExistingPlane = (1 << 3),
+
     /** Result type from intersecting with an existing plane anchor, taking into account the plane’s extent. */
-    ARHitTestResultTypeExistingPlaneUsingExtent                            = (1 << 4),
-    
+    ARHitTestResultTypeExistingPlaneUsingExtent = (1 << 4),
+
     /** Result type from intersecting with an existing plane anchor, taking into account the plane’s geometry. */
     ARHitTestResultTypeExistingPlaneUsingGeometry API_AVAILABLE(ios(11.3)) = (1 << 5),
 } NS_SWIFT_NAME(ARHitTestResult.ResultType);
 
 NS_ASSUME_NONNULL_BEGIN
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 /**
  A result of an intersection found during a hit-test.
  */
@@ -68,16 +70,28 @@
 
 /**
  The anchor that the hit-test intersected.
- 
- @discussion An anchor will only be provided for existing plane result types.
- */
+
+ An anchor will only be provided for existing plane result types.
+*/
 @property (nonatomic, strong, nullable, readonly) ARAnchor *anchor;
 
-/** Unavailable */
+/**
+ Unavailable.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)init NS_UNAVAILABLE;
+
+/**
+ Unavailable.
+
+ - Returns: This method is unavailable.
+*/
 + (instancetype)new NS_UNAVAILABLE;
 
 @end
+
+API_UNAVAILABLE_END
 
 NS_ASSUME_NONNULL_END
 #else
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARImageAnchor.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARImageAnchor.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARImageAnchor.h	2026-04-18 22:34:52
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARImageAnchor.h	2026-05-30 22:01:31
@@ -13,6 +13,8 @@
 
 NS_ASSUME_NONNULL_BEGIN
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 /**
  An anchor representing an image in the world.
  */
@@ -28,16 +30,34 @@
 /**
  The factor between estimated physical size and provided size.
 
- @discussion This value will be estimated if automaticImageScaleEstimationEnabled is set to true on the ARWorldTrackingConfiguration. It is used to
- correct the transform's translation. Default value is 1.0.
- */
+ This value will be estimated if `automaticImageScaleEstimationEnabled` is set to `true` on the `ARWorldTrackingConfiguration`. It is used to
+ correct the transform's translation. Default value is `1.0`.
+*/
 @property (nonatomic, readonly) CGFloat estimatedScaleFactor API_AVAILABLE(ios(13.0));
 
-/** Unavailable */
+/**
+ Unavailable.
+
+ - Parameter transform: The transformation matrix.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)initWithTransform:(simd_float4x4)transform NS_UNAVAILABLE;
+
+/**
+ Unavailable.
+
+ - Parameters:
+   - name: The anchor name.
+   - transform: The transformation matrix.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)initWithName:(NSString *)name transform:(simd_float4x4)transform NS_UNAVAILABLE;
 
 @end
+
+API_UNAVAILABLE_END
 
 NS_ASSUME_NONNULL_END
 #else
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARKit.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARKit.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARKit.h	2026-04-18 22:47:13
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARKit.h	2026-05-30 22:17:25
@@ -4,7 +4,7 @@
 //  Copyright © 2016-2023 Apple Inc. All rights reserved.
 //
 
-#include <TargetConditionals.h>
+#import <TargetConditionals.h>
 
 /** @framework ARKit
     @abstract A high-level Augmented Reality framework.
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARKitCore.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARKitCore.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARKitCore.h	2026-04-18 22:34:51
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARKitCore.h	2026-05-30 22:01:28
@@ -5,10 +5,9 @@
 //  Copyright © 2020 Apple Inc. All rights reserved.
 //
 
-#include <TargetConditionals.h>
+#import <TargetConditionals.h>
 
 #ifdef __OBJC__
-
 
 #import <ARKit/ARKitFoundation.h>
 
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARKitFoundation.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARKitFoundation.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARKitFoundation.h	2026-04-18 20:38:19
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARKitFoundation.h	2026-05-30 21:52:11
@@ -4,9 +4,12 @@
 //
 //  Copyright © 2020 Apple Inc. All rights reserved.
 //
-#include <TargetConditionals.h>
+#import <TargetConditionals.h>
 
+#ifdef __OBJC__
 
+
 #import <ARKit/ARDepthData.h>
 
 
+#endif // __OBJC__
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARKitUI.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARKitUI.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARKitUI.h	2026-04-18 22:47:13
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARKitUI.h	2026-05-30 22:17:26
@@ -4,12 +4,12 @@
 //  Copyright © 2016-2021 Apple Inc. All rights reserved.
 //
 
-#include <TargetConditionals.h>
+#import <TargetConditionals.h>
 
 
-#import <ARKit/ARSCNView.h>
 #import <ARKit/ARSCNFaceGeometry.h>
 #import <ARKit/ARSCNPlaneGeometry.h>
+#import <ARKit/ARSCNView.h>
 #if __has_include(<ARKit/ARSKView.h>)
 #import <ARKit/ARSKView.h>
 #endif //__has_include(<ARKit/ARSKView.h>)
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARLightEstimate.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARLightEstimate.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARLightEstimate.h	2026-04-18 22:34:52
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARLightEstimate.h	2026-05-30 22:01:32
@@ -6,12 +6,14 @@
 //  Copyright © 2016-2021 Apple Inc. All rights reserved.
 //
 
-#import <Foundation/Foundation.h>
 #import <CoreGraphics/CoreGraphics.h>
+#import <Foundation/Foundation.h>
 #import <simd/simd.h>
 
 NS_ASSUME_NONNULL_BEGIN
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 /**
  A light estimate representing the light in the scene.
  */
@@ -21,25 +23,34 @@
 
 /**
  Ambient intensity of the lighting.
- 
- @discussion In a well lit environment, this value is close to 1000. It typically ranges from 0 (very dark) to around 2000 (very bright).
- */
+
+ In a well lit environment, this value is close to `1000`. It typically ranges from `0` (very dark) to around `2000` (very bright).
+*/
 @property (nonatomic, readonly) CGFloat ambientIntensity;
 
 /**
  The ambient color temperature of the lighting.
 
- @discussion This specifies the ambient color temperature of the lighting in Kelvin (6500 corresponds to pure white).
+ This specifies the ambient color temperature of the lighting in Kelvin (`6500` corresponds to pure white).
 */
 @property (nonatomic, readonly) CGFloat ambientColorTemperature;
 
-/** Unavailable */
+/**
+ Unavailable.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)init NS_UNAVAILABLE;
+
+/**
+ Unavailable.
+
+ - Returns: This method is unavailable.
+*/
 + (instancetype)new NS_UNAVAILABLE;
 
 @end
 
-
 /**
  A directional light estimate representing the light intensity and direction in the scene.
  */
@@ -49,10 +60,10 @@
 
 /**
  Second degree spherical harmonics coefficients representing the intensity of light.
- 
- @discussion The data is an array of 27 32-bit floating-point values, containing three non-interleaved data sets
+
+ The data is an array of `27` 32-bit floating-point values, containing three non-interleaved data sets
  corresponding to the red, green, and blue sets of coefficients.
- */
+*/
 @property (nonatomic, copy, readonly) NSData *sphericalHarmonicsCoefficients;
 
 /**
@@ -66,6 +77,8 @@
 @property (nonatomic, readonly) CGFloat primaryLightIntensity;
 
 @end
+
+API_UNAVAILABLE_END
 
 NS_ASSUME_NONNULL_END
 #else
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARMatteGenerator.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARMatteGenerator.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARMatteGenerator.h	2026-04-18 22:34:51
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARMatteGenerator.h	2026-05-30 22:01:31
@@ -16,64 +16,94 @@
 
 NS_ASSUME_NONNULL_BEGIN
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 /**
  The resolution at which the matte is to be generated.
- @discussion The matte generated per frame can be full resolution of the captured camera image or half resolution. The caller chooses one of the options from ARMatteResolution during initialization.
- */
+
+ The matte generated per frame can be full resolution of the captured camera image or half resolution. The caller chooses one of the
+ options from ARMatteResolution during initialization.
+*/
 API_AVAILABLE(ios(13.0))
 typedef NS_ENUM(NSInteger, ARMatteResolution) {
-    
     /* Matte generated at camera image resolution. */
-    ARMatteResolutionFull      = 0,
-    
+    ARMatteResolutionFull = 0,
+
     /* Matte generated at half the camera image resolution. */
-    ARMatteResolutionHalf    = 1
-    
+    ARMatteResolutionHalf = 1
+
 } NS_SWIFT_NAME(ARMatteGenerator.Resolution);
 
 /**
  An object designed to generate either full resolution or half resolution matte given the ARFrame.
- @discussion The caller initializes the object once and calls the alpha matte generation API for every ARFrame with the captured image and segmentation stencil.
- */
+
+ The caller initializes the object once and calls the alpha matte generation API for every `ARFrame` with the captured image and
+ segmentation stencil.
+*/
 API_AVAILABLE(ios(13.0))
 @interface ARMatteGenerator : NSObject
 
 /**
  Initializes an instance of ARMatteGenerator.
- 
- @discussion For efficient creation of alpha mattes in real time it is recommended to instantiate this object only once and to generate an alpha matte for every incoming frame.
- @see ARFrame
- @see -[ARMatteGenerator generateMatteFromFrame:commandBuffer:]
- @param device The device the filter will run on.
- @param matteResolution The resolution at which the matte is to be generated. Set using one of the values from 'ARMatteResolution'.
- @see ARMatteResolution
- @return Instance of ARMatteGenerator.
- */
-- (instancetype)initWithDevice:(id <MTLDevice>)device matteResolution:(ARMatteResolution)matteResolution NS_DESIGNATED_INITIALIZER;
 
+ For efficient creation of alpha mattes in real time it is recommended to instantiate this object only once and to generate an alpha matte
+ for every incoming frame.
+
+ - Parameters:
+   - device: The device the filter will run on.
+   - matteResolution: The resolution at which the matte is to be generated. Set using one of the values from 'ARMatteResolution'.
+
+ - Returns: Instance of `ARMatteGenerator`.
+
+ - SeeAlso: ``ARFrame``
+ - SeeAlso: ``ARMatteGenerator/generateMatteFromFrame:commandBuffer:``
+ - SeeAlso: ``ARMatteResolution``
+*/
+- (instancetype)initWithDevice:(id<MTLDevice>)device matteResolution:(ARMatteResolution)matteResolution NS_DESIGNATED_INITIALIZER;
+
 /**
  Generates alpha matte at either full resolution or half the resolution of the captured image.
- 
- @param frame Current ARFrame containing camera image and segmentation stencil. The caller is to ensure that a valid segmentation buffer is present.
- @param commandBuffer Metal command buffer for encoding matting related operations. The command buffer is committed by the caller externally.
- @return Alpha matte MTLTexture for the given ARFrame at full resolution or half resolution as chosen by the  caller during initialization.
- */
-- (id <MTLTexture>)generateMatteFromFrame:(ARFrame*)frame commandBuffer:(id <MTLCommandBuffer>)commandBuffer;
 
+ - Parameters:
+   - frame: Current `ARFrame` containing camera image and segmentation stencil. The caller is to ensure that a valid segmentation buffer is present.
+   - commandBuffer: Metal command buffer for encoding matting related operations. The command buffer is committed by the caller externally.
+
+ - Returns: Alpha matte `MTLTexture` for the given `ARFrame` at full resolution or half resolution as chosen by the  caller during initialization.
+*/
+- (id<MTLTexture>)generateMatteFromFrame:(ARFrame *)frame commandBuffer:(id<MTLCommandBuffer>)commandBuffer;
+
 /**
  Generates dilated depth at the resolution of the segmentation stencil.
- @discussion The caller can use depth information when compositing a virtual object with the captured scene. This API returns the dilated linear depth to the caller. The reprojection of this depth to the caller's scene space is carried out externally.
- @param frame Current ARFrame containing camera image and estimated depth buffer. The caller is to ensure that a valid depth buffer is present.
- @param commandBuffer Metal command buffer for encoding depth dilation operations. The command buffer is committed by the caller externally.
- @return Dilated depth MTLTexture for the given ARFrame at the segmentation stencil resolution. The texture consists of a single channel and is of type float16.
- */
-- (id <MTLTexture>)generateDilatedDepthFromFrame:(ARFrame*)frame commandBuffer:(id <MTLCommandBuffer>)commandBuffer;
 
-/** Unavailable */
+ The caller can use depth information when compositing a virtual object with the captured scene. This API returns the dilated linear depth
+ to the caller. The reprojection of this depth to the caller's scene space is carried out externally.
+
+ - Parameters:
+   - frame: Current `ARFrame` containing camera image and estimated depth buffer. The caller is to ensure that a valid depth buffer is present.
+   - commandBuffer: Metal command buffer for encoding depth dilation operations. The command buffer is committed by the caller externally.
+
+ - Returns: Dilated depth `MTLTexture` for the given `ARFrame` at the segmentation stencil resolution. The texture consists of a single channel and is
+ of type `float16`.
+*/
+- (id<MTLTexture>)generateDilatedDepthFromFrame:(ARFrame *)frame commandBuffer:(id<MTLCommandBuffer>)commandBuffer;
+
+/**
+ Unavailable. ARMatteGenerator objects are created using designated initializers.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)init NS_UNAVAILABLE;
+
+/**
+ Unavailable. ARMatteGenerator objects are created using designated initializers.
+
+ - Returns: This method is unavailable.
+*/
 + (instancetype)new NS_UNAVAILABLE;
 
 @end
+
+API_UNAVAILABLE_END
 
 NS_ASSUME_NONNULL_END
 #else
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARMeshAnchor.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARMeshAnchor.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARMeshAnchor.h	2026-04-18 22:34:51
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARMeshAnchor.h	2026-05-30 22:01:31
@@ -10,6 +10,8 @@
 
 NS_ASSUME_NONNULL_BEGIN
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 @class ARMeshGeometry;
 
 /*
@@ -24,11 +26,29 @@
  */
 @property (nonatomic, readonly) ARMeshGeometry *geometry;
 
-/** Unavailable */
+/**
+ Unavailable.
+
+ - Parameter transform: The transformation matrix.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)initWithTransform:(simd_float4x4)transform NS_UNAVAILABLE;
+
+/**
+ Unavailable.
+
+ - Parameters:
+   - name: The anchor name.
+   - transform: The transformation matrix.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)initWithName:(NSString *)name transform:(simd_float4x4)transform NS_UNAVAILABLE;
 
 @end
+
+API_UNAVAILABLE_END
 
 NS_ASSUME_NONNULL_END
 #else
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARMeshGeometry.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARMeshGeometry.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARMeshGeometry.h	2026-04-18 22:34:52
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARMeshGeometry.h	2026-05-30 22:01:32
@@ -11,12 +11,14 @@
 
 NS_ASSUME_NONNULL_BEGIN
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 /**
  A container for vector data of a geometry.
  */
 API_AVAILABLE(ios(13.4))
 NS_SWIFT_SENDABLE
-@interface ARGeometrySource : NSObject<NSSecureCoding>
+@interface ARGeometrySource : NSObject <NSSecureCoding>
 
 /**
  A Metal buffer containing per-vector data for the source.
@@ -48,8 +50,18 @@
  */
 @property (nonatomic, assign, readonly) NSInteger stride;
 
-/** Unavailable */
+/**
+ Unavailable. ARGeometrySource objects are created by the system.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)init NS_UNAVAILABLE;
+
+/**
+ Unavailable. ARGeometrySource objects are created by the system.
+
+ - Returns: This method is unavailable.
+*/
 + (instancetype)new NS_UNAVAILABLE;
 
 @end
@@ -70,7 +82,7 @@
  */
 API_AVAILABLE(ios(13.4))
 NS_SWIFT_SENDABLE
-@interface ARGeometryElement : NSObject<NSSecureCoding>
+@interface ARGeometryElement : NSObject <NSSecureCoding>
 
 /**
  A Metal buffer containing index data that defines the geometry.
@@ -89,18 +101,30 @@
 
 /**
  The number of indices for each primitive.
- @see ARGeometryPrimitiveType
- @discussion This is based on the primitiveType. For ARGeometryPrimitiveTypeTriangle the value is 3.
- */
+
+ This is based on the primitiveType. For `ARGeometryPrimitiveTypeTriangle` the value is `3`.
+
+ - SeeAlso: ``ARGeometryPrimitiveType``
+*/
 @property (nonatomic, assign, readonly) NSInteger indexCountPerPrimitive;
 
 /**
  The type of the geometry element.
  */
-@property(nonatomic, assign, readonly) ARGeometryPrimitiveType primitiveType;
+@property (nonatomic, assign, readonly) ARGeometryPrimitiveType primitiveType;
 
-/** Unavailable */
+/**
+ Unavailable. ARGeometryElement objects are created by the system.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)init NS_UNAVAILABLE;
+
+/**
+ Unavailable. ARGeometryElement objects are created by the system.
+
+ - Returns: This method is unavailable.
+*/
 + (instancetype)new NS_UNAVAILABLE;
 
 @end
@@ -125,7 +149,7 @@
 */
 API_AVAILABLE(ios(13.4))
 NS_SWIFT_SENDABLE
-@interface ARMeshGeometry : NSObject<NSSecureCoding>
+@interface ARMeshGeometry : NSObject <NSSecureCoding>
 
 /**
  The vertices of the mesh.
@@ -147,11 +171,23 @@
  */
 @property (nonatomic, strong, readonly, nullable) ARGeometrySource *classification;
 
-/** Unavailable */
+/**
+ Unavailable. ARMeshGeometry objects are created by the system.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)init NS_UNAVAILABLE;
+
+/**
+ Unavailable. ARMeshGeometry objects are created by the system.
+
+ - Returns: This method is unavailable.
+*/
 + (instancetype)new NS_UNAVAILABLE;
 
 @end
+
+API_UNAVAILABLE_END
 
 NS_ASSUME_NONNULL_END
 #else
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARObjectAnchor.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARObjectAnchor.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARObjectAnchor.h	2026-04-18 22:34:52
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARObjectAnchor.h	2026-05-30 22:01:32
@@ -10,6 +10,8 @@
 
 NS_ASSUME_NONNULL_BEGIN
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 @class ARReferenceObject;
 
 /**
@@ -17,18 +19,41 @@
  */
 API_AVAILABLE(ios(12.0))
 NS_SWIFT_SENDABLE
-@interface ARObjectAnchor : ARAnchor
+@interface ARObjectAnchor : ARAnchor <ARTrackable>
 
 /**
  Reference to the detected object.
  */
 @property (nonatomic, strong, readonly) ARReferenceObject *referenceObject;
 
-/** Unavailable */
+/**
+ A Boolean value indicating whether the anchor is currently being tracked.
+ */
+@property (nonatomic, readonly) BOOL isTracked API_AVAILABLE(ios(27.0));
+
+/**
+ Unavailable.
+
+ - Parameter transform: The transformation matrix.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)initWithTransform:(simd_float4x4)transform NS_UNAVAILABLE;
+
+/**
+ Unavailable.
+
+ - Parameters:
+   - name: The anchor name.
+   - transform: The transformation matrix.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)initWithName:(NSString *)name transform:(simd_float4x4)transform NS_UNAVAILABLE;
 
 @end
+
+API_UNAVAILABLE_END
 
 NS_ASSUME_NONNULL_END
 #else
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARParticipantAnchor.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARParticipantAnchor.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARParticipantAnchor.h	2026-04-18 22:34:52
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARParticipantAnchor.h	2026-05-30 22:01:32
@@ -10,21 +10,41 @@
 
 NS_ASSUME_NONNULL_BEGIN
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 /**
  This anchor represents the physical position and orientation of another participant in the collaborative session.
- 
- @discussion The participant anchors are automatically added to the ARSession and are updated with each frame.
+
+ The participant anchors are automatically added to the `ARSession` and are updated with each frame.
            The participant can be identified by `sessionIdentifier` property of the anchor.
- */
+*/
 API_AVAILABLE(ios(13.0))
 NS_SWIFT_SENDABLE
 @interface ARParticipantAnchor : ARAnchor
 
-/** Unavailable */
+/**
+ Unavailable.
+
+ - Parameter transform: The transformation matrix.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)initWithTransform:(simd_float4x4)transform NS_UNAVAILABLE;
+
+/**
+ Unavailable.
+
+ - Parameters:
+   - name: The anchor name.
+   - transform: The transformation matrix.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)initWithName:(NSString *)name transform:(simd_float4x4)transform NS_UNAVAILABLE;
 
 @end
+
+API_UNAVAILABLE_END
 
 NS_ASSUME_NONNULL_END
 #else
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARPlaneAnchor.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARPlaneAnchor.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARPlaneAnchor.h	2026-04-18 22:34:51
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARPlaneAnchor.h	2026-05-30 22:01:31
@@ -8,9 +8,10 @@
 
 #import <ARKit/ARAnchor.h>
 
-
 NS_ASSUME_NONNULL_BEGIN
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 @class ARPlaneGeometry;
 
 /**
@@ -23,7 +24,6 @@
 
     /** A plane that is vertical with respect to gravity. */
     ARPlaneAnchorAlignmentVertical API_AVAILABLE(ios(11.3)),
-
 } NS_SWIFT_NAME(ARPlaneAnchor.Alignment);
 
 /**
@@ -83,8 +83,9 @@
 
 /**
  An anchor representing a planar surface in the world.
- @discussion Planes are defined in the X and Z direction, where Y is the surface’s normal.
- */
+
+ Planes are defined in the X and Z direction, where Y is the surface’s normal.
+*/
 API_AVAILABLE(ios(11.0))
 NS_SWIFT_SENDABLE
 @interface ARPlaneAnchor : ARAnchor
@@ -129,11 +130,29 @@
  */
 @property (nonatomic, assign, readonly) ARPlaneClassification classification API_AVAILABLE(ios(12.0)) NS_REFINED_FOR_SWIFT;
 
-/** Unavailable */
+/**
+ Unavailable.
+
+ - Parameter transform: The transformation matrix.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)initWithTransform:(simd_float4x4)transform NS_UNAVAILABLE;
+
+/**
+ Unavailable.
+
+ - Parameters:
+   - name: The anchor name.
+   - transform: The transformation matrix.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)initWithName:(NSString *)name transform:(simd_float4x4)transform NS_UNAVAILABLE;
 
 @end
+
+API_UNAVAILABLE_END
 
 NS_ASSUME_NONNULL_END
 #else
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARPlaneDetectionTypes.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARPlaneDetectionTypes.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARPlaneDetectionTypes.h	2026-04-18 22:34:52
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARPlaneDetectionTypes.h	2026-05-30 22:01:32
@@ -8,21 +8,24 @@
 
 #import <Foundation/Foundation.h>
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 /**
  Option set indicating the type of planes to detect.
  */
 API_AVAILABLE(ios(11.0))
 typedef NS_OPTIONS(NSUInteger, ARPlaneDetection) {
     /** No plane detection is run. */
-    ARPlaneDetectionNone                              = 0,
+    ARPlaneDetectionNone = 0,
 
     /** Plane detection determines horizontal planes in the scene. */
-    ARPlaneDetectionHorizontal                        = (1 << 0),
+    ARPlaneDetectionHorizontal = (1 << 0),
 
     /** Plane detection determines vertical planes in the scene. */
     ARPlaneDetectionVertical API_AVAILABLE(ios(11.3)) = (1 << 1),
-    
 } NS_SWIFT_NAME(ARWorldTrackingConfiguration.PlaneDetection);
+
+API_UNAVAILABLE_END
 #else
 #import <ARKitCore/ARPlaneDetectionTypes.h> 
 #endif // #if (defined(USE_ARKIT_PUBLIC_HEADERS) \&\& USE_ARKIT_PUBLIC_HEADERS) || !__has_include(<ARKitCore/ARPlaneDetectionTypes.h>)
\ No newline at end of file
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARPlaneGeometry.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARPlaneGeometry.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARPlaneGeometry.h	2026-04-18 22:34:51
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARPlaneGeometry.h	2026-05-30 22:01:30
@@ -13,14 +13,17 @@
 
 NS_ASSUME_NONNULL_BEGIN
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 /**
  Object representing the geometry of a plane.
- @discussion The plane geometry will have a growing number of triangles
+
+ The plane geometry will have a growing number of triangles
  and vertices updated from frame to frame.
- */
+*/
 API_AVAILABLE(ios(11.3))
 NS_SWIFT_SENDABLE
-@interface ARPlaneGeometry : NSObject<NSSecureCoding>
+@interface ARPlaneGeometry : NSObject <NSSecureCoding>
 
 /**
  The number of mesh vertices of the geometry.
@@ -62,11 +65,23 @@
  */
 @property (nonatomic, readonly) const simd_float3 *boundaryVertices NS_REFINED_FOR_SWIFT;
 
-/** Unavailable */
+/**
+ Unavailable. ARPlaneGeometry objects are created by the system.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)init NS_UNAVAILABLE;
+
+/**
+ Unavailable. ARPlaneGeometry objects are created by the system.
+
+ - Returns: This method is unavailable.
+*/
 + (instancetype)new NS_UNAVAILABLE;
 
 @end
+
+API_UNAVAILABLE_END
 
 NS_ASSUME_NONNULL_END
 #else
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARPointCloud.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARPointCloud.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARPointCloud.h	2026-04-18 22:34:52
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARPointCloud.h	2026-05-30 22:01:32
@@ -11,6 +11,11 @@
 
 NS_ASSUME_NONNULL_BEGIN
 
+API_UNAVAILABLE_BEGIN(visionos)
+
+/**
+ A collection of 3D points representing features in the environment.
+ */
 API_AVAILABLE(ios(11.0))
 NS_SWIFT_SENDABLE
 @interface ARPointCloud : NSObject <NSSecureCoding>
@@ -30,11 +35,23 @@
  */
 @property (nonatomic, readonly) const uint64_t *identifiers NS_REFINED_FOR_SWIFT;
 
-/** Unavailable */
+/**
+ Unavailable. ARPointCloud objects are created by the system.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)init NS_UNAVAILABLE;
+
+/**
+ Unavailable. ARPointCloud objects are created by the system.
+
+ - Returns: This method is unavailable.
+*/
 + (instancetype)new NS_UNAVAILABLE;
 
 @end
+
+API_UNAVAILABLE_END
 
 NS_ASSUME_NONNULL_END
 #else
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARRaycastQuery.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARRaycastQuery.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARRaycastQuery.h	2026-04-18 22:34:52
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARRaycastQuery.h	2026-05-30 22:01:31
@@ -11,18 +11,19 @@
 
 NS_ASSUME_NONNULL_BEGIN
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 /**
  A value describing the target of a ray used for raycasting.
  */
 API_AVAILABLE(ios(13.0))
 typedef NS_ENUM(NSInteger, ARRaycastTarget) {
-    
     /** Ray's target is an already detected plane, considering the plane's estimated size and shape. */
     ARRaycastTargetExistingPlaneGeometry,
-    
+
     /** Ray's target is an already detected plane, without considering the plane's size. */
     ARRaycastTargetExistingPlaneInfinite,
-    
+
     /**
      Ray's target is a plane that is estimated using the feature points around the ray.
      When alignment is ARRaycastTargetAlignmentAny, alignment of estimated planes is based on the normal of the real world
@@ -38,20 +39,20 @@
 typedef NS_ENUM(NSInteger, ARRaycastTargetAlignment) {
     /** A target that is horizontal with respect to gravity. */
     ARRaycastTargetAlignmentHorizontal,
-    
+
     /** A target that is vertical with respect to gravity. */
     ARRaycastTargetAlignmentVertical,
-    
+
     /** A target that is in any alignment, inclusive of horizontal and vertical. */
     ARRaycastTargetAlignmentAny
-    
+
 } NS_SWIFT_NAME(ARRaycastQuery.TargetAlignment);
 
-
 /**
  Representation of a ray and its target which is used for raycasting.
- @discussion Represents a 3D ray and its target which is used to perform raycasting.
- */
+
+ Represents a 3D ray and its target which is used to perform raycasting.
+*/
 API_AVAILABLE(ios(13.0))
 @interface ARRaycastQuery : NSObject
 
@@ -77,17 +78,37 @@
 
 /**
  Create a new ARRaycastQuery with the provided origin, direction, allowed target and its alignment.
- @param origin Origin of the ray.
- @param direction Direction of the ray.
- @param target Type of target where the ray is allowed to terminate.
- @param alignment Alignment of the target that should be considered for raycasting.
- */
-- (instancetype)initWithOrigin:(simd_float3)origin direction:(simd_float3)direction allowingTarget:(ARRaycastTarget)target alignment:(ARRaycastTargetAlignment)alignment;
 
+ - Parameters:
+   - origin: Origin of the ray.
+   - direction: Direction of the ray.
+   - target: Type of target where the ray is allowed to terminate.
+   - alignment: Alignment of the target that should be considered for raycasting.
+
+ - Returns: An initialized raycast query.
+*/
+- (instancetype)initWithOrigin:(simd_float3)origin
+                     direction:(simd_float3)direction
+                allowingTarget:(ARRaycastTarget)target
+                     alignment:(ARRaycastTargetAlignment)alignment;
+
+/**
+ Unavailable.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)init NS_UNAVAILABLE;
-- (instancetype)new NS_UNAVAILABLE;
 
+/**
+ Unavailable.
+
+ - Returns: This method is unavailable.
+*/
++ (instancetype)new NS_UNAVAILABLE;
+
 @end
+
+API_UNAVAILABLE_END
 
 NS_ASSUME_NONNULL_END
 #else
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARRaycastResult.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARRaycastResult.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARRaycastResult.h	2026-04-18 22:34:52
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARRaycastResult.h	2026-05-30 22:01:31
@@ -6,14 +6,16 @@
 //  Copyright © 2018 Apple Inc. All rights reserved.
 //
 
+#import <ARKit/ARRaycastQuery.h>
 #import <Foundation/Foundation.h>
 #import <simd/simd.h>
-#import <ARKit/ARRaycastQuery.h>
 
 @class ARAnchor;
 
 NS_ASSUME_NONNULL_BEGIN
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 /**
  Result of a raycast on a single target.
  */
@@ -37,16 +39,29 @@
 
 /**
  The anchor that the ray intersected.
- 
- @discussion In case of an existing plane target, an anchor will always be provided. In case of an estimated plane target,
+
+ In case of an existing plane target, an anchor will always be provided. In case of an estimated plane target,
  an anchor may be provided if the ray hit an existing plane.
- */
+*/
 @property (nonatomic, readonly, strong, nullable) ARAnchor *anchor;
 
+/**
+ Unavailable. Raycast results are created by the system.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)init NS_UNAVAILABLE;
-- (instancetype)new NS_UNAVAILABLE;
 
+/**
+ Unavailable. Raycast results are created by the system.
+
+ - Returns: This method is unavailable.
+*/
++ (instancetype)new NS_UNAVAILABLE;
+
 @end
+
+API_UNAVAILABLE_END
 
 NS_ASSUME_NONNULL_END
 #else
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARReferenceImage.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARReferenceImage.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARReferenceImage.h	2026-04-18 22:34:52
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARReferenceImage.h	2026-05-30 22:01:31
@@ -6,15 +6,17 @@
 //  Copyright © 2016-2021 Apple Inc. All rights reserved.
 //
 
-#import <Foundation/Foundation.h>
 #import <CoreGraphics/CoreGraphics.h>
-#import <ImageIO/CGImageProperties.h>
 #import <CoreVideo/CVPixelBuffer.h>
+#import <Foundation/Foundation.h>
+#import <ImageIO/CGImageProperties.h>
 
 @class CIImage;
 
 NS_ASSUME_NONNULL_BEGIN
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 /**
  A reference image to be detected in the scene.
  */
@@ -34,52 +36,79 @@
 
 /**
  The AR resource group name for this image.
- @discussion If this image was loaded via an AR resource group in the Xcode asset catalogue this property will have the name of the resource group,
+
+ If this image was loaded via an AR resource group in the Xcode asset catalogue this property will have the name of the resource group,
  else be set to nil.
- */
+*/
 @property (nonatomic, strong, nullable, readonly) NSString *resourceGroupName API_AVAILABLE(ios(13.0));
 
 /**
  Validate if this image can be used for image detection or tracking.
- @discussion When loading reference images from the asset catalog this verification is not needed as the same verification happens
+
+ When loading reference images from the asset catalog this verification is not needed as the same verification happens
  at compile time.
- @param completionHandler Completion handler invoked when validation is done. The completion handler takes the following parameters:
- error - An error that indicates why the image is not suitable for tracking, or nil if no error occurred.
- */
-- (void)validateWithCompletionHandler:(void (^)(NSError * _Nullable error))completionHandler API_AVAILABLE(ios(13.0));
 
+ - Parameter completionHandler: Completion handler invoked when validation is done. The completion handler takes the following parameters:
+   error - An error that indicates why the image is not suitable for tracking, or `nil` if no error occurred.
+*/
+- (void)validateWithCompletionHandler:(void (^)(NSError *_Nullable error))completionHandler API_AVAILABLE(ios(13.0));
+
 /**
  Creates a new reference image.
- 
- @param image The reference image as CGImage.
- @param orientation The image orientation.
- @param physicalWidth The width in meters of the physical object.
- */
-- (instancetype)initWithCGImage:(CGImageRef)image orientation:(CGImagePropertyOrientation)orientation physicalWidth:(CGFloat)physicalWidth NS_SWIFT_NAME(init(_:orientation:physicalWidth:));
 
+ - Parameters:
+   - image: The reference image as `CGImage`.
+   - orientation: The image orientation.
+   - physicalWidth: The width in meters of the physical object.
+
+ - Returns: An initialized reference image.
+*/
+- (instancetype)initWithCGImage:(CGImageRef)image
+                    orientation:(CGImagePropertyOrientation)orientation
+                  physicalWidth:(CGFloat)physicalWidth NS_SWIFT_NAME(init(_:orientation:physicalWidth:));
+
 /**
  Creates a new reference image.
- 
- @param pixelBuffer The reference image as CVPixelBuffer.
- @param physicalWidth The width in meters of the physical object.
- @param orientation The image orientation.
- */
-- (instancetype)initWithPixelBuffer:(CVPixelBufferRef)pixelBuffer orientation:(CGImagePropertyOrientation)orientation physicalWidth:(CGFloat)physicalWidth NS_SWIFT_NAME(init(_:orientation:physicalWidth:));
 
+ - Parameters:
+   - pixelBuffer: The reference image as `CVPixelBuffer`.
+   - physicalWidth: The width in meters of the physical object.
+   - orientation: The image orientation.
+
+ - Returns: An initialized reference image.
+*/
+- (instancetype)initWithPixelBuffer:(CVPixelBufferRef)pixelBuffer
+                        orientation:(CGImagePropertyOrientation)orientation
+                      physicalWidth:(CGFloat)physicalWidth NS_SWIFT_NAME(init(_:orientation:physicalWidth:));
+
 /**
  Returns the set of ARReferenceImages in the specified resource group and bundle.
 
- @param name The name of the resource group.
- @param bundle The bundle containing the image file or asset catalog. Specify nil to search the app’s main bundle.
- @return The set of reference images or nil on error.
- */
+ - Parameters:
+   - name: The name of the resource group.
+   - bundle: The bundle containing the image file or asset catalog. Specify `nil` to search the app’s main bundle.
+
+ - Returns: The set of reference images or `nil` on error.
+*/
 + (nullable NSSet<ARReferenceImage *> *)referenceImagesInGroupNamed:(NSString *)name bundle:(nullable NSBundle *)bundle;
 
-/** Unavailable */
+/**
+ Unavailable.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)init NS_UNAVAILABLE;
+
+/**
+ Unavailable.
+
+ - Returns: This method is unavailable.
+*/
 + (instancetype)new NS_UNAVAILABLE;
 
 @end
+
+API_UNAVAILABLE_END
 
 NS_ASSUME_NONNULL_END
 #else
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARReferenceObject.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARReferenceObject.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARReferenceObject.h	2026-04-18 22:34:53
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARReferenceObject.h	2026-05-30 22:01:32
@@ -13,8 +13,12 @@
 
 NS_ASSUME_NONNULL_BEGIN
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 API_AVAILABLE(ios(12.0))
-FOUNDATION_EXTERN NSString *const ARReferenceObjectArchiveExtension NS_SWIFT_NAME(ARReferenceObject.archiveExtension);
+FOUNDATION_EXTERN NSString *const ARReferenceObjectArchiveExtension NS_SWIFT_NAME(ARReferenceObject.archiveExtension)
+                                                                                      API_DEPRECATED("Only supported for legacy reference objects.",
+                                                                                                     ios(12.0, 27.0));
 
 @class ARPointCloud;
 
@@ -42,74 +46,118 @@
 
 /**
  The scale of the object’s local coordinate space.
- @discussion Multiplying the extent by this scale will result in the physical extent of the object, measured in meters.
- */
+
+ Multiplying the extent by this scale will result in the physical extent of the object, measured in meters.
+*/
 @property (nonatomic, readonly) simd_float3 scale;
 
 /**
  The AR resource group name for this object.
- @discussion If this object was loaded via an AR resource group in the Xcode asset catalogue this property will have the name of the resource group,
- else be set to nil.
- */
-@property (nonatomic, strong, nullable, readonly) NSString *resourceGroupName API_AVAILABLE(ios(13.0));
 
+ If this object was loaded via an AR resource group in the Xcode asset catalogue this property will have the name of the resource group,
+ else be set to `nil`.
+*/
+@property (nonatomic, strong, nullable, readonly)
+    NSString *resourceGroupName API_DEPRECATED("Only supported for legacy reference objects.", ios(13.0, 27.0));
+
 /**
  The feature points of the object.
  */
-@property (nonatomic, strong, readonly) ARPointCloud *rawFeaturePoints;
+@property (nonatomic, strong, readonly) ARPointCloud *rawFeaturePoints API_DEPRECATED("Only supported for legacy reference objects.", ios(12.0, 27.0))
+    ;
 
 /**
+ The URL to the extracted USDZ model, if available.
+ */
+@property (nonatomic, strong, nullable, readonly) NSURL *usdzFile API_AVAILABLE(ios(27.0));
+
+/**
  Returns the set of ARReferenceObjects in the specified resource group and bundle.
 
- @param name The name of the resource group.
- @param bundle The bundle containing the image file or asset catalog. Specify nil to search the app’s main bundle.
- @return The set of reference objects or nil on error.
- */
-+ (nullable NSSet<ARReferenceObject *> *)referenceObjectsInGroupNamed:(NSString *)name bundle:(nullable NSBundle *)bundle;
+ - Parameters:
+   - name: The name of the resource group.
+   - bundle: The bundle containing the image file or asset catalog. Specify `nil` to search the app’s main bundle.
 
+ - Returns: The set of reference objects or `nil` on error.
+*/
++ (nullable NSSet<ARReferenceObject *> *)referenceObjectsInGroupNamed:(NSString *)name
+                                                               bundle:(nullable NSBundle *)bundle
+    API_DEPRECATED("Only supported for legacy reference objects.", ios(12.0, 27.0));
+
 /**
  Initializes a new reference object with the contents of an archive at the specified URL.
- @param url The URL from which to read data (.arobject archive).
- @param error The error to populate if the object could not be initialized.
- */
+
+ - Parameters:
+   - url: The `URL` from which to read data (.arobject archive).
+   - error: The error to populate if the object could not be initialized.
+
+ - Returns: An initialized reference object.
+*/
 - (nullable instancetype)initWithArchiveURL:(NSURL *)url error:(NSError **)error;
 
 /**
  Exports the object as an archive at the given URL.
 
- @discussion The URL path should use ARReferenceObjectArchiveExtension (.arobject) for the file extension.
+ The `URL` path should use `ARReferenceObjectArchiveExtension` (.arobject) for the file extension.
  If serialization across devices is desired, NSKeyedArchiver should be used instead.
- @param url The URL at which to write the exported object.
- @param previewImage An optional preview image to include in the archive.
- @param error The error to populate if the write is not successful.
- @return YES if the location is written successfully, otherwise NO.
- */
-- (BOOL)exportObjectToURL:(NSURL *)url previewImage:(nullable UIImage *)previewImage error:(NSError **)error;
 
+ - Parameters:
+   - url: The `URL` at which to write the exported object.
+   - previewImage: An optional preview image to include in the archive.
+   - error: The error to populate if the write is not successful.
+
+ - Returns: `YES` if the location is written successfully, otherwise `NO`.
+*/
+- (BOOL)exportObjectToURL:(NSURL *)url
+             previewImage:(nullable UIImage *)previewImage
+                    error:(NSError **)error API_DEPRECATED("Only supported for legacy reference objects.", ios(12.0, 27.0));
+
 /**
  Returns a new reference object by applying the specified transform to the object's origin.
- @discussion This can be used to change the reference object's origin with respect to the physical object. Providing
+
+ This can be used to change the reference object's origin with respect to the physical object. Providing
  a transform local to the current object's coordinate space will return an object with the transform's position and orientation as the origin.
- @param transform The rotation and translation to apply to the object's origin.
- @return A reference object with updated origin.
+
+ - Parameter transform: The rotation and translation to apply to the object's origin.
+
+ - Returns: A reference object with updated origin.
 */
-- (ARReferenceObject *)referenceObjectByApplyingTransform:(simd_float4x4)transform;
+- (ARReferenceObject *)referenceObjectByApplyingTransform:(simd_float4x4)transform
+    API_DEPRECATED("Only supported for legacy reference objects.", ios(12.0, 27.0));
 
 /**
  Returns a new reference object by aligning and merging the provided object with this reference.
- @discussion This can be used to combine multiple scans of the same object for detection in different conditions. The object being merged
+
+ This can be used to combine multiple scans of the same object for detection in different conditions. The object being merged
  must share similar feature points for the merge to succeed.
- @param object The reference object to align and merge.
- @param error The error to populate if the merge is not successful.
- @return A new reference object combining features of both scans or nil if the merge was not successful.
- */
-- (nullable ARReferenceObject *)referenceObjectByMergingObject:(ARReferenceObject *)object error:(NSError **)error;
 
-/** Unavailable */
+ - Parameters:
+   - object: The reference object to align and merge.
+   - error: The error to populate if the merge is not successful.
+
+ - Returns: A new reference object combining features of both scans or `nil` if the merge was not successful.
+*/
+- (nullable ARReferenceObject *)referenceObjectByMergingObject:(ARReferenceObject *)object
+                                                         error:(NSError **)error
+    API_DEPRECATED("Only supported for legacy reference objects.", ios(12.0, 27.0));
+
+/**
+ Unavailable.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)init NS_UNAVAILABLE;
+
+/**
+ Unavailable.
+
+ - Returns: This method is unavailable.
+*/
 + (instancetype)new NS_UNAVAILABLE;
 
 @end
+
+API_UNAVAILABLE_END
 
 NS_ASSUME_NONNULL_END
 #else
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARSCNFaceGeometry.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARSCNFaceGeometry.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARSCNFaceGeometry.h	2026-04-18 22:47:13
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARSCNFaceGeometry.h	2026-05-30 22:17:26
@@ -10,6 +10,9 @@
 #import <SceneKit/SCNGeometry.h>
 
 @protocol MTLDevice;
+
+API_UNAVAILABLE_BEGIN(visionos)
+
 @class ARFaceGeometry;
 
 NS_ASSUME_NONNULL_BEGIN
@@ -22,42 +25,57 @@
 
 /**
  Creates a new face geometry using a Metal device.
- 
- @param device A Metal device.
- @return A new face geometry.
- */
+
+ - Parameter device: A Metal device.
+
+ - Returns: A new face geometry.
+*/
 + (nullable instancetype)faceGeometryWithDevice:(id<MTLDevice>)device;
 
 /**
  Creates a new face geometry using a Metal device.
- 
- @discussion By default the regions between the eye lids as well as the region
+
+ By default the regions between the eye lids as well as the region
  between the lips are not covered by geometry. For using the face geometry as an
  occlusion geometry set \p fillMesh to YES. This will fill
  in additional geometry into the gaps between the eye lids as well as into the
  gap between the lips.
- @param fillMesh Whether to fill in additional geometry into the
- gaps between the eye lids as well as into the gap between the lips.
- 
- @return A new face geometry.
- */
-+ (nullable instancetype)faceGeometryWithDevice:(id<MTLDevice>)device
-                              fillMesh:(BOOL)fillMesh;
 
+ - Parameters:
+   - device: A Metal device.
+   - fillMesh: Whether to fill in additional geometry into the
+     gaps between the eye lids as well as into the gap between the lips.
+
+ - Returns: A new face geometry.
+*/
++ (nullable instancetype)faceGeometryWithDevice:(id<MTLDevice>)device fillMesh:(BOOL)fillMesh;
+
 /**
  Updates the geometry with the vertices of a face geometry.
- 
- @param faceGeometry A face geometry.
- */
+
+ - Parameter faceGeometry: A face geometry.
+*/
 - (void)updateFromFaceGeometry:(ARFaceGeometry *)faceGeometry;
 
-/** Unavailable */
+/**
+ Unavailable. ARSCNFaceGeometry objects are created by the system.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)init NS_UNAVAILABLE;
+
+/**
+ Unavailable. ARSCNFaceGeometry objects are created by the system.
+
+ - Returns: This method is unavailable.
+*/
 + (instancetype)new NS_UNAVAILABLE;
 
 @end
 
 NS_ASSUME_NONNULL_END
+
+API_UNAVAILABLE_END
 #else
 #import <ARKitUI/ARSCNFaceGeometry.h> 
 #endif // #if (defined(USE_ARKIT_PUBLIC_HEADERS) \&\& USE_ARKIT_PUBLIC_HEADERS) || !__has_include(<ARKitUI/ARSCNFaceGeometry.h>)
\ No newline at end of file
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARSCNPlaneGeometry.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARSCNPlaneGeometry.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARSCNPlaneGeometry.h	2026-04-18 22:47:14
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARSCNPlaneGeometry.h	2026-05-30 22:17:26
@@ -10,6 +10,9 @@
 #import <SceneKit/SCNGeometry.h>
 
 @protocol MTLDevice;
+
+API_UNAVAILABLE_BEGIN(visionos)
+
 @class ARPlaneGeometry;
 
 NS_ASSUME_NONNULL_BEGIN
@@ -22,22 +25,25 @@
 
 /**
  Creates a new plane geometry using a Metal device.
- 
- @param device A Metal device.
- @return A new plane geometry.
- */
+
+ - Parameter device: A Metal device.
+
+ - Returns: A new plane geometry.
+*/
 + (nullable instancetype)planeGeometryWithDevice:(id<MTLDevice>)device;
 
 /**
  Updates the geometry with the vertices of a plane geometry.
- 
- @param planeGeometry A plane geometry.
- */
+
+ - Parameter planeGeometry: A plane geometry.
+*/
 - (void)updateFromPlaneGeometry:(ARPlaneGeometry *)planeGeometry;
 
 @end
 
 NS_ASSUME_NONNULL_END
+
+API_UNAVAILABLE_END
 #else
 #import <ARKitUI/ARSCNPlaneGeometry.h> 
 #endif // #if (defined(USE_ARKIT_PUBLIC_HEADERS) \&\& USE_ARKIT_PUBLIC_HEADERS) || !__has_include(<ARKitUI/ARSCNPlaneGeometry.h>)
\ No newline at end of file
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARSCNView.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARSCNView.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARSCNView.h	2026-04-18 22:47:13
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARSCNView.h	2026-05-30 22:17:26
@@ -6,23 +6,26 @@
 //  Copyright © 2016-2021 Apple Inc. All rights reserved.
 //
 
-#import <SceneKit/SceneKit.h>
-#import <ARKit/ARSession.h>
 #import <ARKit/ARHitTestResult.h>
+#import <ARKit/ARSession.h>
 #import <ARKit/ARTrackedRaycast.h>
+#import <SceneKit/SceneKit.h>
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 @protocol ARSCNViewDelegate;
 
 NS_ASSUME_NONNULL_BEGIN
 
 /**
  A view that integrates ARSession rendering into SceneKit.
- 
- @discussion The view draws the camera background, provides and updates a camera,
+
+ The view draws the camera background, provides and updates a camera,
  manages nodes for anchors, and updates lighting.
- */
+*/
 API_AVAILABLE(ios(11.0))
-@interface ARSCNView : SCNView<ARSessionProviding>
+API_DEPRECATED_WITH_REPLACEMENT("Please use RealityView instead.", visionos(1.0, 1.0))
+@interface ARSCNView : SCNView <ARSessionProviding>
 
 /**
  Specifies the renderer delegate.
@@ -41,134 +44,164 @@
 
 /**
  Determines whether the view will update the scene’s lighting.
- 
- @discussion When set, the view will automatically create and update lighting for 
- light estimates the session provides. Defaults to YES.
- */
+
+ When set, the view will automatically create and update lighting for
+ light estimates the session provides. Defaults to `YES`.
+*/
 @property (nonatomic, assign) BOOL automaticallyUpdatesLighting;
 
 /**
  Determines whether view renders camera grain.
- 
- @discussion When set, the view will automatically add camera grain to rendered
+
+ When set, the view will automatically add camera grain to rendered
  content that matches the grainy noise of the camera stream. Enabled by default.
- */
+*/
 @property (nonatomic, assign) BOOL rendersCameraGrain API_AVAILABLE(ios(13.0));
 
 /**
  Determines whether view renders motion blur.
- 
- @discussion When set, the view will automatically add motion blur to rendered
+
+ When set, the view will automatically add motion blur to rendered
  content that matches the motion blur of the camera stream.
  Overwrites SCNCamera's motionBlurIntensity property. Disabled by default.
- */
+*/
 @property (nonatomic, assign) BOOL rendersMotionBlur API_AVAILABLE(ios(13.0));
 
 /**
  Searches the scene hierarchy for an anchor associated with the provided node.
- @param node A node in the view’s scene.
- */
+
+ - Parameter node: A node in the view's scene.
+
+ - Returns: The anchor associated with the node, or `nil` if none exists.
+*/
 - (nullable ARAnchor *)anchorForNode:(SCNNode *)node;
 
 /**
  Returns the node that has been mapped to a specific anchor.
- @param anchor An anchor with an existing node mapping.
- */
+
+ - Parameter anchor: An anchor with an existing node mapping.
+
+ - Returns: The node mapped to the anchor, or `nil` if none exists.
+*/
 - (nullable SCNNode *)nodeForAnchor:(ARAnchor *)anchor;
 
 /**
  Searches the current frame for objects corresponding to a point in the view.
- 
- @discussion A 2D point in the view’s coordinate space can refer to any point along a line segment
+
+ A 2D point in the view’s coordinate space can refer to any point along a line segment
  in the 3D coordinate space. Hit-testing is the process of finding objects in the world located along this line segment.
- @param point A point in the view’s coordinate system.
- @param types The types of results to search for.
- @return An array of all hit-test results sorted from nearest to farthest.
- */
-- (NSArray<ARHitTestResult *> *)hitTest:(CGPoint)point types:(ARHitTestResultType)types API_DEPRECATED("Use [ARSCNView raycastQueryFromPoint:allowingTarget:alignment]", ios(11.0, 14.0));
 
+ - Parameters:
+   - point: A point in the view’s coordinate system.
+   - types: The types of results to search for.
+
+ - Returns: An array of all hit-test results sorted from nearest to farthest.
+*/
+- (NSArray<ARHitTestResult *> *)hitTest:(CGPoint)point
+                                  types:(ARHitTestResultType)types
+    API_DEPRECATED("Use [ARSCNView raycastQueryFromPoint:allowingTarget:alignment]", ios(11.0, 14.0));
+
 /**
  Unproject a 2D point from the view onto a plane in 3D world coordinates.
- 
- @discussion A 2D point in the view’s coordinate space can refer to any point along a line segment
+
+ A 2D point in the view’s coordinate space can refer to any point along a line segment
  in the 3D coordinate space. Unprojecting gets the 3D position of the point along this line segment that intersects the provided plane.
- @param point A point in the view’s coordinate system.
- @param planeTransform The transform used to define the coordinate system of the plane.
- The coordinate system’s positive Y axis is assumed to be the normal of the plane.
- @return 3D position in world coordinates or a NAN values if unprojection is not possible.
- */
-- (simd_float3)unprojectPoint:(CGPoint)point ontoPlaneWithTransform:(simd_float4x4)planeTransform API_AVAILABLE(ios(12.0)) NS_REFINED_FOR_SWIFT;
 
+ - Parameters:
+   - point: A point in the view’s coordinate system.
+   - planeTransform: The transform used to define the coordinate system of the plane. The coordinate system’s positive Y axis is assumed to be the
+ normal of the plane.
+
+ - Returns: 3D position in world coordinates or `NAN` values if unprojection is not possible.
+*/
+- (simd_float3)unprojectPoint:(CGPoint)point ontoPlaneWithTransform:(simd_float4x4)planeTransform API_AVAILABLE(ios(12.0))NS_REFINED_FOR_SWIFT;
+
 /**
  Creates a raycast query originating from the point on view, aligned along the center of the field of view of the camera.
- @discussion A 2D point in the view's coordinate space and the frame camera's field of view is used to create a ray in the 3D cooridnate space originating at the point.
- @param point A point in the view’s coordinate system.
- @param target Type of target where the ray should terminate.
- @param alignment Alignment of the target.
- */
-- (nullable ARRaycastQuery *)raycastQueryFromPoint:(CGPoint)point allowingTarget:(ARRaycastTarget)target alignment:(ARRaycastTargetAlignment)alignment API_AVAILABLE(ios(13.0));
 
-@end
+ A 2D point in the view's coordinate space and the frame camera's field of view is used to create a ray in the 3D coordinate space
+ originating at the point.
 
+ - Parameters:
+   - point: A point in the view's coordinate system.
+   - target: Type of target where the ray should terminate.
+   - alignment: Alignment of the target.
 
-#pragma mark - ARSCNViewDelegate
+ - Returns: A raycast query, or `nil` if the query cannot be created.
+*/
+- (nullable ARRaycastQuery *)raycastQueryFromPoint:(CGPoint)point
+                                    allowingTarget:(ARRaycastTarget)target
+                                         alignment:(ARRaycastTargetAlignment)alignment API_AVAILABLE(ios(13.0));
 
+@end
 
+#pragma mark - ARSCNViewDelegate
+
+/**
+ A delegate protocol for SceneKit-based AR view events and node mapping.
+ */
 API_AVAILABLE(ios(11.0))
+API_DEPRECATED_WITH_REPLACEMENT("Please use RealityView instead.", visionos(1.0, 1.0))
 @protocol ARSCNViewDelegate <SCNSceneRendererDelegate, ARSessionObserver>
 @optional
 
 /**
  Implement this to provide a custom node for the given anchor.
- 
- @discussion This node will automatically be added to the scene graph.
+
+ This node will automatically be added to the scene graph.
  If this method is not implemented, a node will be automatically created.
  If nil is returned the anchor will be ignored.
- @param renderer The renderer that will render the scene.
- @param anchor The added anchor.
- @return Node that will be mapped to the anchor or nil.
- */
-- (nullable SCNNode *)renderer:(id <SCNSceneRenderer>)renderer nodeForAnchor:(ARAnchor *)anchor;
 
+ - Parameters:
+   - renderer: The renderer that will render the scene.
+   - anchor: The added anchor.
+
+ - Returns: Node that will be mapped to the anchor or `nil`.
+*/
+- (nullable SCNNode *)renderer:(id<SCNSceneRenderer>)renderer nodeForAnchor:(ARAnchor *)anchor;
+
 /**
  Called when a new node has been mapped to the given anchor.
- 
- @param renderer The renderer that will render the scene.
- @param node The node that maps to the anchor.
- @param anchor The added anchor.
- */
-- (void)renderer:(id <SCNSceneRenderer>)renderer didAddNode:(SCNNode *)node forAnchor:(ARAnchor *)anchor;
 
+ - Parameters:
+   - renderer: The renderer that will render the scene.
+   - node: The node that maps to the anchor.
+   - anchor: The added anchor.
+*/
+- (void)renderer:(id<SCNSceneRenderer>)renderer didAddNode:(SCNNode *)node forAnchor:(ARAnchor *)anchor;
+
 /**
  Called when a node will be updated with data from the given anchor.
- 
- @param renderer The renderer that will render the scene.
- @param node The node that will be updated.
- @param anchor The anchor that was updated.
- */
-- (void)renderer:(id <SCNSceneRenderer>)renderer willUpdateNode:(SCNNode *)node forAnchor:(ARAnchor *)anchor;
 
+ - Parameters:
+   - renderer: The renderer that will render the scene.
+   - node: The node that will be updated.
+   - anchor: The anchor that was updated.
+*/
+- (void)renderer:(id<SCNSceneRenderer>)renderer willUpdateNode:(SCNNode *)node forAnchor:(ARAnchor *)anchor;
+
 /**
  Called when a node has been updated with data from the given anchor.
- 
- @param renderer The renderer that will render the scene.
- @param node The node that was updated.
- @param anchor The anchor that was updated.
- */
-- (void)renderer:(id <SCNSceneRenderer>)renderer didUpdateNode:(SCNNode *)node forAnchor:(ARAnchor *)anchor;
 
+ - Parameters:
+   - renderer: The renderer that will render the scene.
+   - node: The node that was updated.
+   - anchor: The anchor that was updated.
+*/
+- (void)renderer:(id<SCNSceneRenderer>)renderer didUpdateNode:(SCNNode *)node forAnchor:(ARAnchor *)anchor;
+
 /**
  Called when a mapped node has been removed from the scene graph for the given anchor.
- 
- @param renderer The renderer that will render the scene.
- @param node The node that was removed.
- @param anchor The anchor that was removed.
- */
-- (void)renderer:(id <SCNSceneRenderer>)renderer didRemoveNode:(SCNNode *)node forAnchor:(ARAnchor *)anchor;
 
+ - Parameters:
+   - renderer: The renderer that will render the scene.
+   - node: The node that was removed.
+   - anchor: The anchor that was removed.
+*/
+- (void)renderer:(id<SCNSceneRenderer>)renderer didRemoveNode:(SCNNode *)node forAnchor:(ARAnchor *)anchor;
+
 @end
 
-
 /**
  Extended debug options for an ARSCNView
  */
@@ -183,6 +216,8 @@
 FOUNDATION_EXTERN const SCNDebugOptions ARSCNDebugOptionShowFeaturePoints NS_SWIFT_NAME(ARSCNDebugOptions.showFeaturePoints);
 
 NS_ASSUME_NONNULL_END
+
+API_UNAVAILABLE_END
 #else
 #import <ARKitUI/ARSCNView.h> 
 #endif // #if (defined(USE_ARKIT_PUBLIC_HEADERS) \&\& USE_ARKIT_PUBLIC_HEADERS) || !__has_include(<ARKitUI/ARSCNView.h>)
\ No newline at end of file
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARSKView.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARSKView.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARSKView.h	2026-04-18 22:47:14
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARSKView.h	2026-05-30 22:17:26
@@ -6,86 +6,98 @@
 //  Copyright © 2017 Apple Inc. All rights reserved.
 //
 
-#import <SpriteKit/SpriteKit.h>
-#import <ARKit/ARSession.h>
 #import <ARKit/ARHitTestResult.h>
+#import <ARKit/ARSession.h>
+#import <SpriteKit/SpriteKit.h>
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 NS_ASSUME_NONNULL_BEGIN
 
 @class ARSKView;
 
 #pragma mark ARSKViewDelegate
 
+/**
+ A delegate protocol for SpriteKit-based AR view events and node mapping.
+ */
 API_AVAILABLE(ios(11.0))
+API_DEPRECATED("This API is deprecated on visionOS.", visionos(1.0, 1.0))
 @protocol ARSKViewDelegate <SKViewDelegate, ARSessionObserver>
 @optional
 
 /**
  Implement this to provide a custom node for the given anchor.
- 
- @discussion This node will automatically be added to the scene graph.
+
+ This node will automatically be added to the scene graph.
  If this method is not implemented, a node will be automatically created.
  If nil is returned the anchor will be ignored.
- @param view The view that will render the scene.
- @param anchor The added anchor.
- @return Node that will be mapped to the anchor or nil.
- */
+
+ - Parameters:
+   - view: The view that will render the scene.
+   - anchor: The added anchor.
+
+ - Returns: Node that will be mapped to the anchor or `nil`.
+*/
 - (nullable SKNode *)view:(ARSKView *)view nodeForAnchor:(ARAnchor *)anchor;
 
 /**
  Called when a new node has been mapped to the given anchor.
- 
- @param view The view that will render the scene.
- @param node The node that maps to the anchor.
- @param anchor The added anchor.
- */
+
+ - Parameters:
+   - view: The view that will render the scene.
+   - node: The node that maps to the anchor.
+   - anchor: The added anchor.
+*/
 - (void)view:(ARSKView *)view didAddNode:(SKNode *)node forAnchor:(ARAnchor *)anchor;
 
 /**
  Called when a node will be updated with data from the given anchor.
- 
- @param view The view that will render the scene.
- @param node The node that will be updated.
- @param anchor The anchor that was updated.
- */
+
+ - Parameters:
+   - view: The view that will render the scene.
+   - node: The node that will be updated.
+   - anchor: The anchor that was updated.
+*/
 - (void)view:(ARSKView *)view willUpdateNode:(SKNode *)node forAnchor:(ARAnchor *)anchor;
 
 /**
  Called when a node has been updated with data from the given anchor.
- 
- @param view The view that will render the scene.
- @param node The node that was updated.
- @param anchor The anchor that was updated.
- */
+
+ - Parameters:
+   - view: The view that will render the scene.
+   - node: The node that was updated.
+   - anchor: The anchor that was updated.
+*/
 - (void)view:(ARSKView *)view didUpdateNode:(SKNode *)node forAnchor:(ARAnchor *)anchor;
 
 /**
  Called when a mapped node has been removed from the scene graph for the given anchor.
- 
- @param view The view that will render the scene.
- @param node The node that was removed.
- @param anchor The anchor that was removed.
- */
+
+ - Parameters:
+   - view: The view that will render the scene.
+   - node: The node that was removed.
+   - anchor: The anchor that was removed.
+*/
 - (void)view:(ARSKView *)view didRemoveNode:(SKNode *)node forAnchor:(ARAnchor *)anchor;
 
 @end
 
-
 #pragma mark ARSKView
 
-
 /**
  A view that integrates ARSession rendering into SpriteKit.
- 
- @discussion The view draws the camera background, and projects and maps anchors to nodes.
- */
+
+ The view draws the camera background, and projects and maps anchors to nodes.
+*/
 API_AVAILABLE(ios(11.0))
-@interface ARSKView : SKView<ARSessionProviding>
+API_DEPRECATED("This API is deprecated on visionOS.", visionos(1.0, 1.0))
+@interface ARSKView : SKView <ARSessionProviding>
 
 /**
  Specifies the view’s delegate.
  */
-@property (nonatomic, weak, nullable) NSObject <ARSKViewDelegate> *delegate;
+@property (nonatomic, weak, nullable) NSObject<ARSKViewDelegate> *delegate;
 
 /**
  The session that the view uses to update the view.
@@ -94,30 +106,41 @@
 
 /**
  Searches the scene hierarchy for an anchor associated with the provided node.
- @param node A node in the view’s scene.
- */
+
+ - Parameter node: A node in the view's scene.
+
+ - Returns: The anchor associated with the node, or `nil` if none exists.
+*/
 - (nullable ARAnchor *)anchorForNode:(SKNode *)node;
 
 /**
  Returns the node that has been mapped to a specific anchor.
- @param anchor An anchor with an existing node mapping.
- */
+
+ - Parameter anchor: An anchor with an existing node mapping.
+
+ - Returns: The node mapped to the anchor, or `nil` if none exists.
+*/
 - (nullable SKNode *)nodeForAnchor:(ARAnchor *)anchor;
 
 /**
  Searches the current frame for objects corresponding to a point in the view.
- 
- @discussion A 2D point in the view’s coordinate space can refer to any point along a line segment
+
+ A 2D point in the view’s coordinate space can refer to any point along a line segment
  in the 3D coordinate space. Hit-testing is the process of finding objects in the world located along this line segment.
- @param point A point in the view’s coordinate system.
- @param types The types of results to search for.
- @return An array of all hit-test results sorted from nearest to farthest.
- */
+
+ - Parameters:
+   - point: A point in the view’s coordinate system.
+   - types: The types of results to search for.
+
+ - Returns: An array of all hit-test results sorted from nearest to farthest.
+*/
 - (NSArray<ARHitTestResult *> *)hitTest:(CGPoint)point types:(ARHitTestResultType)types API_DEPRECATED("Use raycasting", ios(11.0, 14.0));
 
 @end
 
 NS_ASSUME_NONNULL_END
+
+API_UNAVAILABLE_END
 #else
 #import <ARKitUI/ARSKView.h> 
 #endif // #if (defined(USE_ARKIT_PUBLIC_HEADERS) \&\& USE_ARKIT_PUBLIC_HEADERS) || !__has_include(<ARKitUI/ARSKView.h>)
\ No newline at end of file
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARSession.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARSession.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARSession.h	2026-04-18 22:34:52
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARSession.h	2026-05-30 22:01:32
@@ -12,6 +12,8 @@
 
 NS_ASSUME_NONNULL_BEGIN
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 @class ARAnchor;
 @class ARCamera;
 @class ARFrame;
@@ -26,10 +28,11 @@
 
 /**
  Set of options for running the session.
- @discussion These options alter the behavior of calling run on a session.
+
+ These options alter the behavior of calling run on a session.
  Providing no options will result in the default behavior of resuming tracking
  from the last known position and keeping all existing anchors.
- */
+*/
 API_AVAILABLE(ios(11.0))
 typedef NS_OPTIONS(NSUInteger, ARSessionRunOptions) {
     /** The session will reset tracking. */
@@ -49,13 +52,14 @@
  The ARSession class configures and runs different Augmented Reality techniques on a device.
  */
 API_AVAILABLE(ios(11.0))
+API_DEPRECATED_WITH_REPLACEMENT("Please use ar_session_t in C and ARKitSession in Swift instead.", visionos(1.0, 1.0))
 @interface ARSession : NSObject
 
 /**
  Unique identifier of the running session.
 
- @discussion The identifier may change after calling runWithConfiguration.
- */
+ The identifier may change after calling `runWithConfiguration`.
+*/
 @property (atomic, strong, readonly) NSUUID *identifier API_AVAILABLE(ios(13.0));
 
 /**
@@ -65,8 +69,9 @@
 
 /**
  The dispatch queue on which the delegate calls are performed.
- @discussion If not provided or nil, delegate calls will be performed on the main queue.
- */
+
+ If not provided or `nil`, delegate calls will be performed on the main queue.
+*/
 @property (nonatomic, strong, nullable) dispatch_queue_t delegateQueue;
 
 /**
@@ -81,104 +86,124 @@
 
 /**
  Runs the session with the provided configuration.
- @discussion Calling run on a session that has already started will
+
+ Calling run on a session that has already started will
  transition immediately to using the new configuration.
- @param configuration The configuration to use.
- */
 
+ - Parameter configuration: The configuration to use.
+*/
 - (void)runWithConfiguration:(ARConfiguration *)configuration NS_SWIFT_UNAVAILABLE("Use run(_:options:) instead");
 
 /**
  Runs the session with the provided configuration and options.
- @discussion Calling run on a session that has already started will
+
+ Calling run on a session that has already started will
  transition immediately to using the new configuration. Options
  can be used to alter the default behavior when transitioning configurations.
- @param configuration The configuration to use.
- @param options The run options to use.
- */
 
+ - Parameters:
+   - configuration: The configuration to use.
+   - options: The run options to use.
+*/
 - (void)runWithConfiguration:(ARConfiguration *)configuration options:(ARSessionRunOptions)options NS_SWIFT_NAME(run(_:options:));
 
 /**
  Pauses the session.
- @discussion Once paused, no more updates will be received from the
- session until run is called again.
- */
+
+ Once paused, no more updates will be received from the
+ session until `run` is called again.
+*/
 - (void)pause;
 
 /**
  Adds an anchor to the session.
- @discussion The anchor will be added in the next frame update.
- @param anchor The anchor to add.
- */
+
+ The anchor will be added in the next frame update.
+
+ - Parameter anchor: The anchor to add.
+*/
 - (void)addAnchor:(__kindof ARAnchor *)anchor NS_SWIFT_NAME(add(anchor:));
 
 /**
  Removes an anchor from the session.
- @discussion The anchor will be removed from subsequent frame updates.
- @param anchor The anchor to remove.
- */
+
+ The anchor will be removed from subsequent frame updates.
+
+ - Parameter anchor: The anchor to remove.
+*/
 - (void)removeAnchor:(__kindof ARAnchor *)anchor NS_SWIFT_NAME(remove(anchor:));
 
 /**
  Sets the world origin of the session to be at the position and orientation specified by the provided transform.
- @param relativeTransform The rotation and translation from the current world origin to the desired world origin.
- Any scale on the transform is ignored.
- */
+
+ - Parameter relativeTransform: The rotation and translation from the current world origin to the desired world origin.
+   Any scale on the transform is ignored.
+*/
 - (void)setWorldOrigin:(simd_float4x4)relativeTransform NS_SWIFT_NAME(setWorldOrigin(relativeTransform:)) API_AVAILABLE(ios(11.3));
 
 /**
  Copies the current state of the world being tracked by the session.
- @discussion A world map is only provided when running an ARWorldTrackingConfiguration.
- @param completionHandler The completion handler to call when the get has completed. This handler is executed
- on the session's delegate queue. The completion handler takes the following parameters:
- worldMap - The current world map or nil if unavailable.
- error - An error that indicates why the world map is unavailable, or nil if a world map was provided.
- */
+
+ A world map is only provided when running an `ARWorldTrackingConfiguration`.
+
+ - Parameter completionHandler: The completion handler to call when the get has completed. This handler is executed
+   on the session's delegate queue. The completion handler takes the following parameters:
+   worldMap - The current world map or `nil` if unavailable.
+   error - An error that indicates why the world map is unavailable, or `nil` if a world map was provided.
+*/
 - (void)getCurrentWorldMapWithCompletionHandler:(void (^)(ARWorldMap *_Nullable worldMap, NSError *_Nullable error))completionHandler
     API_AVAILABLE(ios(12.0));
 
 /**
  Creates a new reference object from scanned features within the provided bounds.
 
- @discussion Reference objects can be stored and used to track 3D objects from previously scanned data.
+ Reference objects can be stored and used to track 3D objects from previously scanned data.
  Creation requires that an ARObjectScanningConfiguration is used so that sufficient features are scanned.
- @param transform The transformation matrix that defines the rotation and translation of the bounds in
- world coordinates. This will be used as the reference object's transform, defining its coordinate space.
- @param center The center of the object's bounds in the transform's coordinate space. A zero vector will
- define the object's origin centered within its extent.
- @param extent The extent of the object's bounds in the transform's coordinate space. This defines the bounds'
- size in each dimension.
- @param completionHandler The completion handler to call when the creation has completed. This handler is executed
- on the session's delegate queue. The completion handler takes the following parameters:
- referenceObject - The reference object created or nil if unavailable.
- error - An error that indicates why creation failed, or nil if a reference object was provided.
- */
+
+ - Parameters:
+   - transform: The transformation matrix that defines the rotation and translation of the bounds in
+     world coordinates. This will be used as the reference object's transform, defining its coordinate space.
+   - center: The center of the object's bounds in the transform's coordinate space. A zero vector will
+     define the object's origin centered within its extent.
+   - extent: The extent of the object's bounds in the transform's coordinate space. This defines the bounds'
+     size in each dimension.
+   - completionHandler: The completion handler to call when the creation has completed. This handler is executed
+     on the session's delegate queue. The completion handler takes the following parameters:
+     referenceObject - The reference object created or `nil` if unavailable.
+     error - An error that indicates why creation failed, or `nil` if a reference object was provided.
+*/
 - (void)createReferenceObjectWithTransform:(simd_float4x4)transform
                                     center:(simd_float3)center
                                     extent:(simd_float3)extent
                          completionHandler:(void (^)(ARReferenceObject *_Nullable referenceObject, NSError *_Nullable error))completionHandler
-    NS_SWIFT_NAME(createReferenceObject(transform:center:extent:completionHandler:)) API_AVAILABLE(ios(12.0));
+    NS_SWIFT_NAME(createReferenceObject(transform:center:extent:completionHandler:))
+        API_DEPRECATED("Please consider migrating to the new reference object format.", ios(12.0, 27.0));
 
 #pragma mark - Raycasting
 
 /**
  Perform a raycast.
- @param query Raycast query used for raycasting.
- @return List of raycast results, sorted from nearest to farthest (in distance from the camera). The results could be empty if raycast fails.
- */
+
+ - Parameter query: Raycast query used for raycasting.
+
+ - Returns: List of raycast results, sorted from nearest to farthest (in distance from the camera). The results could be empty if raycast fails.
+*/
 - (NSArray<ARRaycastResult *> *)raycast:(ARRaycastQuery *)query API_AVAILABLE(ios(13.0));
 
 /**
  Perform a tracked raycast.
- @discussion The session performs continuous raycasting and calls the update handler with the updated results.
+
+ The session performs continuous raycasting and calls the update handler with the updated results.
  The ARTrackedRaycast object returned can be used to update the raycast with a new raycast query or stop raycasting.
- @param query Raycast query used for raycasting.
- @param updateHandler update handler where updated list of results, sorted from nearest to farthest (in distance from
-        the camera) are delivered. updateHandler will be called on session's delegate queue.
- @return Tracked raycast object used to update or stop raycasting. This could be nil if the raycast fails or if the
-         configuration is not `ARWorldTrackingConfiguration` or its subclasses.
- */
+
+ - Parameters:
+   - query: Raycast query used for raycasting.
+   - updateHandler: Update handler where updated list of results, sorted from nearest to farthest (in distance from
+            the camera) are delivered. `updateHandler` will be called on session's delegate queue.
+
+ - Returns: Tracked raycast object used to update or stop raycasting. This could be `nil` if the raycast fails or if the configuration is not
+ `ARWorldTrackingConfiguration` or its subclasses.
+*/
 - (nullable ARTrackedRaycast *)trackedRaycast:(ARRaycastQuery *)query
                                 updateHandler:(void (^)(NSArray<ARRaycastResult *> *))updateHandler API_AVAILABLE(ios(13.0));
 
@@ -187,11 +212,10 @@
 /**
  Update session with collaboration data.
 
- @discussion Use this to update the session with collaboration data received from other participants.
+ Use this to update the session with collaboration data received from other participants.
 
- @param collaborationData Collaboration data for updating the session.
- @see ARCollaborationData
- */
+ - Parameter collaborationData: Collaboration data for updating the session.
+*/
 - (void)updateWithCollaborationData:(ARCollaborationData *)collaborationData API_AVAILABLE(ios(13.0));
 
 #pragma mark - Geo Tracking
@@ -199,12 +223,13 @@
 /**
  Converts a position in world coordinate system into latitude, longitude and altitude.
 
- @discussion This method requires the session to be running a geo tracking configuration which is in state ARGeoTrackingStateLocalized.
+ This method requires the session to be running a geo tracking configuration which is in state `ARGeoTrackingStateLocalized`.
 
- @param position Position in world coordinate system to be converted.
- @param completionHandler Completion handler to be called with the result. This handler is executed on the session's delegate queue. It has the
- parameters: coordinate - Location coordinates. altitude - Altitude. error - Error if conversion is not available.
- */
+ - Parameters:
+   - position: Position in world coordinate system to be converted.
+   - completionHandler: Completion handler to be called with the result. This handler is executed on the session's delegate queue. It has the
+     parameters: coordinate - Location coordinates. altitude - Altitude. error - Error if conversion is not available.
+*/
 - (void)getGeoLocationForPoint:(simd_float3)position
              completionHandler:(void (^)(CLLocationCoordinate2D coordinate, CLLocationDistance altitude, NSError *_Nullable error))completionHandler
     API_AVAILABLE(ios(14.0));
@@ -213,32 +238,39 @@
 
 /**
  Requests a single, high resolution frame to be captured.
- @discussion Some video formats do not support a significantly higher still image resolution than the streaming camera resolution. Use the @c
- isRecommendedForHighResolutionFrameCapturing method on the video format to check if the format is recommended.
- @see -[ARVideoFormat isRecommendedForHighResolutionFrameCapturing]
- @param completion Block being called when the call completes.
- */
+
+ Some video formats do not support a significantly higher still image resolution than the streaming camera resolution. Use the
+ `isRecommendedForHighResolutionFrameCapturing` method on the video format to check if the format is recommended.
+ - SeeAlso: ``ARVideoFormat/isRecommendedForHighResolutionFrameCapturing``
+
+ - Parameter completion: Block being called when the call completes.
+*/
 - (void)captureHighResolutionFrameWithCompletion:(void (^)(ARFrame *_Nullable frame, NSError *_Nullable error))completion API_AVAILABLE(ios(16.0));
 
 /**
  Requests a single, high resolution frame to be captured.
- @discussion Some video formats do not support a significantly higher still image resolution than the streaming camera resolution. Use the @c
- isRecommendedForHighResolutionFrameCapturing method on the video format to check if the format is recommended. For passing customized photo settings
- to this method, obtain a @c defaultPhotoSettings object from the video format and modify it.
- @see -[ARVideoFormat isRecommendedForHighResolutionFrameCapturing]
- @see -[ARVideoFormat defaultPhotoSettings]
- @param photoSettings Custom AVCapturePhotoSettings to be used.
- @param completion Block being called when the call completes.
- */
+
+ Some video formats do not support a significantly higher still image resolution than the streaming camera resolution. Use the
+ `isRecommendedForHighResolutionFrameCapturing` method on the video format to check if the format is recommended. For passing customized photo
+ settings to this method, obtain a `defaultPhotoSettings` object from the video format and modify it.
+
+ - Parameters:
+   - photoSettings: Custom AVCapturePhotoSettings to be used.
+   - completion: Block being called when the call completes.
+*/
 - (void)captureHighResolutionFrameUsingPhotoSettings:(nullable AVCapturePhotoSettings *)photoSettings
-                                          completion:(void (^)(ARFrame *_Nullable frame, NSError *_Nullable error))completion
-    API_AVAILABLE(ios(26.0));
+                                          completion:(void (^)(ARFrame *_Nullable frame, NSError *_Nullable error))completion API_AVAILABLE(ios(26.0))
+                                                         API_UNAVAILABLE(visionos);
 
 @end
 
 #pragma mark - ARSessionObserver
 
+/**
+ A protocol for observing session state and receiving updates.
+ */
 API_AVAILABLE(ios(11.0))
+API_DEPRECATED_WITH_REPLACEMENT("Please use ar_session_t in C and ARKitSession in Swift instead.", visionos(1.0, 1.0))
 @protocol ARSessionObserver <NSObject>
 
 @optional
@@ -246,90 +278,102 @@
 /**
  This is called when a session fails.
 
- @discussion On failure the session will be paused.
- @param session The session that failed.
- @param error The error being reported (see ARError.h).
- */
+ On failure the session will be paused.
+
+ - Parameters:
+   - session: The session that failed.
+   - error: The error being reported (see ARError.h).
+*/
 - (void)session:(ARSession *)session didFailWithError:(NSError *)error;
 
 /**
  This is called when the camera’s tracking state has changed.
 
- @param session The session being run.
- @param camera The camera that changed tracking states.
- */
+ - Parameters:
+   - session: The session being run.
+   - camera: The camera that changed tracking states.
+*/
 - (void)session:(ARSession *)session cameraDidChangeTrackingState:(ARCamera *)camera;
 
 /**
  This is called when a session is interrupted.
 
- @discussion A session will be interrupted and no longer able to track when
+ A session will be interrupted and no longer able to track when
  it fails to receive required sensor data. This happens when video capture is interrupted,
  for example when the application is sent to the background or when there are
  multiple foreground applications (see AVCaptureSessionInterruptionReason).
  No additional frame updates will be delivered until the interruption has ended.
- @param session The session that was interrupted.
- */
+
+ - Parameter session: The session that was interrupted.
+*/
 - (void)sessionWasInterrupted:(ARSession *)session;
 
 /**
  This is called when a session interruption has ended.
 
- @discussion A session will continue running from the last known state once
+ A session will continue running from the last known state once
  the interruption has ended. If the device has moved, anchors will be misaligned.
  To avoid this, some applications may want to reset tracking (see ARSessionRunOptions)
  or attempt to relocalize (see `-[ARSessionObserver sessionShouldAttemptRelocalization:]`).
- @param session The session that was interrupted.
- */
+
+ - Parameter session: The session that was interrupted.
+*/
 - (void)sessionInterruptionEnded:(ARSession *)session;
 
 /**
- This is called after a session resumes from a pause or interruption to determine
- whether or not the session should attempt to relocalize.
+ This is called after a session resumes from a pause or interruption to determine whether or not the session should attempt to relocalize.
 
- @discussion To avoid misaligned anchors, apps may wish to attempt a relocalization after
+ To avoid misaligned anchors, apps may wish to attempt a relocalization after
  a session pause or interruption. If YES is returned: the session will begin relocalizing
  and tracking state will switch to limited with reason relocalizing. If successful, the
  session's tracking state will return to normal. Because relocalization depends on
  the user's location, it can run indefinitely. Apps that wish to give up on relocalization
  may call run with `ARSessionRunOptionResetTracking` at any time.
- @param session The session to relocalize.
- @return Return YES to begin relocalizing.
- */
+
+ - Parameter session: The session to relocalize.
+
+ - Returns: Return YES to begin relocalizing.
+*/
 - (BOOL)sessionShouldAttemptRelocalization:(ARSession *)session API_AVAILABLE(ios(11.3));
 
 /**
  This is called when the session outputs a new audio sample buffer.
 
- @param session The session being run.
- @param audioSampleBuffer The captured audio sample buffer.
- */
+ - Parameters:
+   - session: The session being run.
+   - audioSampleBuffer: The captured audio sample buffer.
+*/
 - (void)session:(ARSession *)session didOutputAudioSampleBuffer:(CMSampleBufferRef)audioSampleBuffer;
 
 /**
  This is called when the session generated new collaboration data.
 
- @discussion This data should be sent to all participants.
+ This data should be sent to all participants.
 
- @param session The session that produced world tracking collaboration data.
- @param data Collaboration data to be sent to participants.
- @see ARCollaborationData
- */
+ - Parameters:
+   - session: The session that produced world tracking collaboration data.
+   - data: Collaboration data to be sent to participants.
+*/
 - (void)session:(ARSession *)session didOutputCollaborationData:(ARCollaborationData *)data API_AVAILABLE(ios(13.0));
 
 /**
  This is called when geo tracking status changes.
 
- @param session The session being run.
- @param geoTrackingStatus Latest geo tracking status.
- */
+ - Parameters:
+   - session: The session being run.
+   - geoTrackingStatus: Latest geo tracking status.
+*/
 - (void)session:(ARSession *)session didChangeGeoTrackingStatus:(ARGeoTrackingStatus *)geoTrackingStatus API_AVAILABLE(ios(14.0));
 
 @end
 
 #pragma mark - ARSessionDelegate
 
+/**
+ A delegate protocol for receiving AR session updates including frames and anchors.
+ */
 API_AVAILABLE(ios(11.0))
+API_DEPRECATED_WITH_REPLACEMENT("Please use ar_session_t in C and ARKitSession in Swift instead.", visionos(1.0, 1.0))
 @protocol ARSessionDelegate <ARSessionObserver>
 
 @optional
@@ -337,33 +381,37 @@
 /**
  This is called when a new frame has been updated.
 
- @param session The session being run.
- @param frame The frame that has been updated.
- */
+ - Parameters:
+   - session: The session being run.
+   - frame: The frame that has been updated.
+*/
 - (void)session:(ARSession *)session didUpdateFrame:(ARFrame *)frame;
 
 /**
  This is called when new anchors are added to the session.
 
- @param session The session being run.
- @param anchors An array of added anchors.
- */
+ - Parameters:
+   - session: The session being run.
+   - anchors: An array of added anchors.
+*/
 - (void)session:(ARSession *)session didAddAnchors:(NSArray<__kindof ARAnchor *> *)anchors;
 
 /**
  This is called when anchors are updated.
 
- @param session The session being run.
- @param anchors An array of updated anchors.
- */
+ - Parameters:
+   - session: The session being run.
+   - anchors: An array of updated anchors.
+*/
 - (void)session:(ARSession *)session didUpdateAnchors:(NSArray<__kindof ARAnchor *> *)anchors;
 
 /**
  This is called when anchors are removed from the session.
 
- @param session The session being run.
- @param anchors An array of removed anchors.
- */
+ - Parameters:
+   - session: The session being run.
+   - anchors: An array of removed anchors.
+*/
 - (void)session:(ARSession *)session didRemoveAnchors:(NSArray<__kindof ARAnchor *> *)anchors;
 
 @end
@@ -371,12 +419,19 @@
 /**
  A data source for an ARSession
  */
+API_DEPRECATED_WITH_REPLACEMENT("Please use ar_session_t in C and ARKitSession in Swift instead.", visionos(1.0, 1.0))
 @protocol ARSessionProviding <NSObject>
 
-/// To ensure session changes are detected, Swift classes should mark this property as `@objc` and `dynamic`
+/**
+ The AR session instance.
+
+ To ensure session changes are detected, Swift classes should mark this property as `@objc` and `dynamic`.
+*/
 @property (readonly) ARSession *session;
 
 @end
+
+API_UNAVAILABLE_END
 
 NS_ASSUME_NONNULL_END
 #else
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARSkeleton.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARSkeleton.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARSkeleton.h	2026-04-18 22:34:53
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARSkeleton.h	2026-05-30 22:01:32
@@ -7,17 +7,21 @@
 //
 
 #import <ARKit/ARSkeletonDefinition.h>
-#import <simd/simd.h>
 #import <Foundation/Foundation.h>
 #import <Vision/Vision.h>
+#import <simd/simd.h>
 
 NS_ASSUME_NONNULL_BEGIN
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 /**
  An object representing a skeleton.
- @discussion A skeleton's structure is defined by a skeleton definition.
- @see ARSkeletonDefinition
- */
+
+ A skeleton's structure is defined by a skeleton definition.
+
+ - SeeAlso: ``ARSkeletonDefinition``
+*/
 API_AVAILABLE(ios(13.0))
 NS_SWIFT_SENDABLE
 @interface ARSkeleton : NSObject
@@ -34,14 +38,25 @@
 
 /**
  Tracking state for a given joint.
- 
- @param jointIndex The index of the joint.
- @return YES if the joint is tracked. NO otherwise.
- */
+
+ - Parameter jointIndex: The index of the joint.
+
+ - Returns: `YES` if the joint is tracked. `NO` otherwise.
+*/
 - (BOOL)isJointTracked:(NSInteger)jointIndex;
 
-/** Unavailable */
+/**
+ Unavailable.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)init NS_UNAVAILABLE;
+
+/**
+ Unavailable.
+
+ - Returns: This method is unavailable.
+*/
 + (instancetype)new NS_UNAVAILABLE;
 
 @end
@@ -65,24 +80,38 @@
 
 /**
  Returns the model transform for a joint with a given name.
- 
- @discussion If an invalid joint name is passed the returned matrix will be filled with NaN values.
- @param jointName The name of the joint.
- @return Model transform
- */
+
+ If an invalid joint name is passed the returned matrix will be filled with `NaN` values.
+
+ - Parameter jointName: The name of the joint.
+
+ - Returns: The model transform.
+*/
 - (simd_float4x4)modelTransformForJointName:(ARSkeletonJointName)jointName NS_REFINED_FOR_SWIFT;
 
 /**
  Returns the local transform for a joint with a given name.
- 
- @discussion If an invalid joint name is passed the returned matrix will be filled with NaN values.
- @param jointName The name of the joint.
- @return Local transform
- */
+
+ If an invalid joint name is passed the returned matrix will be filled with `NaN` values.
+
+ - Parameter jointName: The name of the joint.
+
+ - Returns: The local transform.
+*/
 - (simd_float4x4)localTransformForJointName:(ARSkeletonJointName)jointName NS_REFINED_FOR_SWIFT;
 
-/** Unavailable */
+/**
+ Unavailable.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)init NS_UNAVAILABLE;
+
+/**
+ Unavailable.
+
+ - Returns: This method is unavailable.
+*/
 + (instancetype)new NS_UNAVAILABLE;
 
 @end
@@ -96,35 +125,56 @@
 
 /**
  The joint landmarks in normalized coordinates.
- @discussion The joint landmarks are detected in the captured image on the ARFrame.
- @see -[ARFrame capturedImage]
- */
+
+ The joint landmarks are detected in the captured image on the `ARFrame`.
+
+ - SeeAlso: ``ARFrame/capturedImage``
+*/
 @property (nonatomic, readonly) const simd_float2 *jointLandmarks NS_REFINED_FOR_SWIFT;
 
 /**
  Returns the landmark point for a joint with a given name.
- @discussion If an invalid joint name is passed the returned point will be filled with NaN values.
- 
- @param jointName The name of the joint.
- @return Landmark in normalized image coordinates.
- */
+
+ If an invalid joint name is passed the returned point will be filled with `NaN` values.
+
+ - Parameter jointName: The name of the joint.
+
+ - Returns: Landmark in normalized image coordinates.
+*/
 - (simd_float2)landmarkForJointNamed:(ARSkeletonJointName)jointName NS_REFINED_FOR_SWIFT;
 
-/** Unavailable */
+/**
+ Unavailable.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)init NS_UNAVAILABLE;
+
+/**
+ Unavailable.
+
+ - Returns: This method is unavailable.
+*/
 + (instancetype)new NS_UNAVAILABLE;
 
 @end
 
 /**
  Returns the landmark joint name that corresponds to a key point defined in Vision framework.
- @see VNRecognizedPointKey, VNDetectHumanBodyPoseRequest
- @discussion If an invalid key point is passed the returned point will be nil.
- 
- @param recognizedPointKey Recognized key point.
- @return Joint name that could be mapped to a ARSkeleton2D. Nil if no mapping exists.
- */
-FOUNDATION_EXTERN __nullable ARSkeletonJointName ARSkeletonJointNameForRecognizedPointKey(VNRecognizedPointKey recognizedPointKey) NS_SWIFT_NAME(ARSkeletonJointName.init(_:)) API_AVAILABLE(ios(14.0));
+
+ If an invalid key point is passed the returned point will be `nil`.
+
+ - Parameter recognizedPointKey: Recognized key point.
+
+ - Returns: Joint name that could be mapped to a `ARSkeleton2D`. `nil` if no mapping exists.
+
+ - SeeAlso: `VNRecognizedPointKey`
+ - SeeAlso: `VNDetectHumanBodyPoseRequest`
+*/
+FOUNDATION_EXTERN __nullable ARSkeletonJointName ARSkeletonJointNameForRecognizedPointKey(VNRecognizedPointKey recognizedPointKey)
+    NS_SWIFT_NAME(ARSkeletonJointName.init(_:)) API_AVAILABLE(ios(14.0));
+
+API_UNAVAILABLE_END
 
 NS_ASSUME_NONNULL_END
 #else
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARSkeletonDefinition.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARSkeletonDefinition.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARSkeletonDefinition.h	2026-04-18 22:34:52
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARSkeletonDefinition.h	2026-05-30 22:01:31
@@ -10,6 +10,8 @@
 
 NS_ASSUME_NONNULL_BEGIN
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 typedef NSString *ARSkeletonJointName NS_TYPED_ENUM NS_SWIFT_NAME(ARSkeleton.JointName) API_AVAILABLE(ios(13.0));
 FOUNDATION_EXTERN ARSkeletonJointName const ARSkeletonJointNameRoot API_AVAILABLE(ios(13.0));
 FOUNDATION_EXTERN ARSkeletonJointName const ARSkeletonJointNameHead API_AVAILABLE(ios(13.0));
@@ -20,34 +22,34 @@
 FOUNDATION_EXTERN ARSkeletonJointName const ARSkeletonJointNameLeftShoulder API_AVAILABLE(ios(13.0));
 FOUNDATION_EXTERN ARSkeletonJointName const ARSkeletonJointNameRightShoulder API_AVAILABLE(ios(13.0));
 
-
 @class ARSkeleton2D;
 @class ARSkeleton3D;
 
 /**
  Definition of a skeleton.
 
- @discussion A skeleton consists of a set of labeled joints that are defined in a certain hierarchy, i.e. joints are parented to other joints.
+ A skeleton consists of a set of labeled joints that are defined in a certain hierarchy, i.e. joints are parented to other joints.
  One may use the parentIndices property to identify the hierarchy for a given skeleton definition.
- */
+*/
 API_AVAILABLE(ios(13.0))
 NS_SWIFT_SENDABLE
 @interface ARSkeletonDefinition : NSObject
 
 /**
  Default skeleton definition for bodies defined in 3D.
- @note The default height of this skeleton, measured from lowest to highest joint in standing position, is defined to be 1.71 meters.
- @see ARSkeleton3D
- */
+ - Note: The default height of this skeleton, measured from lowest to highest joint in standing position, is defined to be `1.71` meters.
+
+ - SeeAlso: ``ARSkeleton3D``
+*/
 @property (class, nonatomic, readonly) ARSkeletonDefinition *defaultBody3DSkeletonDefinition;
 
 /**
  Default skeleton definition for bodies defined in 2D.
- @see ARBody2D
+
+ - SeeAlso: ``ARBody2D``
  */
 @property (class, nonatomic, readonly) ARSkeletonDefinition *defaultBody2DSkeletonDefinition;
 
-
 /**
  The number of joints.
  */
@@ -60,32 +62,48 @@
 
 /**
  The parent index for each joint.
- @discussion This property may be used to identify the hierarchical dependency between joints. If a line is drawn for every joint and its parent joint
+
+ This property may be used to identify the hierarchical dependency between joints. If a line is drawn for every joint and its parent joint
  the result is a visualization of the underlying skeleton. The joint with no parent is denoted as the root joint. The root joint's parent index has
- a value of -1.
-  */
+ a value of `-1`.
+*/
 @property (nonatomic, readonly) NSArray<NSNumber *> *parentIndices NS_REFINED_FOR_SWIFT;
 
 /**
  The 3D skeleton in neutral pose.
- @discussion The neutral skeleton pose assumes a standardized size of the skeleton in meters. The neutral pose is defined as the skeleton's T-pose.
- */
+
+ The neutral skeleton pose assumes a standardized size of the skeleton in meters. The neutral pose is defined as the skeleton's T-pose.
+*/
 @property (nonatomic, nullable, readonly) ARSkeleton3D *neutralBodySkeleton3D;
 
 /**
  Returns the index for a given joint identifier.
 
- @param jointName Name of a given joint.
- @discussion This function returns NSNotFound if an invalid joint name is passed.
- @return Joint index.
- */
+ This function returns `NSNotFound` if an invalid joint name is passed.
+
+ - Parameter jointName: Name of a given joint.
+
+ - Returns: The joint index.
+*/
 - (NSUInteger)indexForJointName:(ARSkeletonJointName)jointName NS_REFINED_FOR_SWIFT;
 
-/** Unavailable */
+/**
+ Unavailable.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)init NS_UNAVAILABLE;
+
+/**
+ Unavailable.
+
+ - Returns: This method is unavailable.
+*/
 + (instancetype)new NS_UNAVAILABLE;
 
 @end
+
+API_UNAVAILABLE_END
 
 NS_ASSUME_NONNULL_END
 #else
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARTrackedRaycast.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARTrackedRaycast.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARTrackedRaycast.h	2026-04-18 22:34:52
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARTrackedRaycast.h	2026-05-30 22:01:31
@@ -6,29 +6,45 @@
 //  Copyright © 2018 Apple Inc. All rights reserved.
 //
 
+#import <ARKit/ARRaycastQuery.h>
 #import <Foundation/Foundation.h>
 #import <simd/simd.h>
-#import <ARKit/ARRaycastQuery.h>
 
 NS_ASSUME_NONNULL_BEGIN
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 /**
  A tracked raycast representation.
  */
 API_AVAILABLE(ios(13.0))
-@interface ARTrackedRaycast: NSObject
+@interface ARTrackedRaycast : NSObject
 
 /**
  Stop raycasting.
- @discussion The raycast will be continuously tracked until stopped.
+
+ The raycast will be continuously tracked until stopped.
  Resetting session's tracking, changing its configuration or deallocation of ARTrackedRaycast object cause the raycast to stop.
- */
+*/
 - (void)stopTracking;
 
+/**
+ Unavailable. Tracked raycasts are created by the system.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)init NS_UNAVAILABLE;
-- (instancetype)new NS_UNAVAILABLE;
 
+/**
+ Unavailable. Tracked raycasts are created by the system.
+
+ - Returns: This method is unavailable.
+*/
++ (instancetype)new NS_UNAVAILABLE;
+
 @end
+
+API_UNAVAILABLE_END
 
 NS_ASSUME_NONNULL_END
 #else
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARTrackingStatusTypes.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARTrackingStatusTypes.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARTrackingStatusTypes.h	2026-04-18 22:34:52
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARTrackingStatusTypes.h	2026-05-30 22:01:32
@@ -8,6 +8,8 @@
 
 #import <Foundation/Foundation.h>
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 /**
  A value describing the camera’s tracking state.
  */
@@ -42,8 +44,9 @@
 
     /** Tracking is limited due to a relocalization in progress. */
     ARTrackingStateReasonRelocalizing API_AVAILABLE(ios(11.3)),
-
 } NS_REFINED_FOR_SWIFT;
+
+API_UNAVAILABLE_END
 #else
 #import <ARKitCore/ARTrackingStatusTypes.h> 
 #endif // #if (defined(USE_ARKIT_PUBLIC_HEADERS) \&\& USE_ARKIT_PUBLIC_HEADERS) || !__has_include(<ARKitCore/ARTrackingStatusTypes.h>)
\ No newline at end of file
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARVideoFormat.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARVideoFormat.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARVideoFormat.h	2026-04-18 22:34:51
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARVideoFormat.h	2026-05-30 22:01:31
@@ -12,8 +12,13 @@
 
 NS_ASSUME_NONNULL_BEGIN
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 @class AVCapturePhotoSettings;
 
+/**
+ A video format supported by an AR configuration.
+ */
 API_AVAILABLE(ios(11.3))
 NS_SWIFT_NAME(ARConfiguration.VideoFormat)
 @interface ARVideoFormat : NSObject <NSCopying>
@@ -21,14 +26,12 @@
 /**
  Indicates the physical position of an AVCaptureDevice's hardware on the system.
  */
-@property (nonatomic, readonly) AVCaptureDevicePosition captureDevicePosition
-        API_AVAILABLE(ios(13.0));
+@property (nonatomic, readonly) AVCaptureDevicePosition captureDevicePosition API_AVAILABLE(ios(13.0));
 
 /**
  Indicates the type of AVCaptureDevice.
  */
-@property (nonatomic, readonly) AVCaptureDeviceType captureDeviceType
-        API_AVAILABLE(ios(14.5));
+@property (nonatomic, readonly) AVCaptureDeviceType captureDeviceType API_AVAILABLE(ios(14.5));
 
 /**
  Image resolution.
@@ -53,22 +56,37 @@
 /**
  The color space ARKit uses to configure the capture session when this video format is selected.
  */
-@property (nonatomic, readonly) AVCaptureColorSpace defaultColorSpace API_AVAILABLE(ios(26.0));
+@property (nonatomic, readonly) AVCaptureColorSpace defaultColorSpace API_AVAILABLE(ios(26.0)) API_UNAVAILABLE(visionos);
 
 /**
  The default AVCapturePhotoSettings object that ARKit uses when capturing a high resolution frame using this video format.
- @discussion Calling this getter will return a new instance that may be mutated to customize settings. Pass that instance to
+
+ Calling this getter will return a new instance that may be mutated to customize settings. Pass that instance to
  `captureHighResolutionFrameUsingPhotoSettings:completion:` to capture a high resolution frame with custom settings.
- @see [ARSession captureHighResolutionFrameUsingPhotoSettings:completion:]
- @return An AVCapturePhotoSettings object.
- */
-@property (nonatomic, readonly) AVCapturePhotoSettings *defaultPhotoSettings API_AVAILABLE(ios(26.0));
 
-/** Unavailable */
+ - Returns: An `AVCapturePhotoSettings` object.
+
+ - SeeAlso: ``ARSession/captureHighResolutionFrameUsingPhotoSettings:completion:``
+*/
+@property (nonatomic, readonly) AVCapturePhotoSettings *defaultPhotoSettings API_AVAILABLE(ios(26.0)) API_UNAVAILABLE(visionos);
+
+/**
+ Unavailable.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)init NS_UNAVAILABLE;
+
+/**
+ Unavailable.
+
+ - Returns: This method is unavailable.
+*/
 + (instancetype)new NS_UNAVAILABLE;
 
 @end
+
+API_UNAVAILABLE_END
 
 NS_ASSUME_NONNULL_END
 #else
diff -ruN /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARWorldMap.h /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARWorldMap.h
--- /Applications/Xcode_26.5.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARWorldMap.h	2026-04-18 22:34:51
+++ /Applications/Xcode_27.0.0-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/System/Library/Frameworks/ARKit.framework/Headers/ARWorldMap.h	2026-05-30 22:01:31
@@ -14,12 +14,15 @@
 
 NS_ASSUME_NONNULL_BEGIN
 
+API_UNAVAILABLE_BEGIN(visionos)
+
 /**
  Object representing the mapping of a physical 3D space.
- @discussion ARWorldMap supports archiving and unarchiving across devices
+
+ `ARWorldMap` supports archiving and unarchiving across devices
  and versions with NSDecodingFailurePolicySetErrorAndReturn, providing an error
  if the map format is not supported.
- */
+*/
 API_AVAILABLE(ios(12.0))
 @interface ARWorldMap : NSObject <NSCopying, NSSecureCoding>
 
@@ -43,11 +46,23 @@
  */
 @property (nonatomic, strong, readonly) ARPointCloud *rawFeaturePoints;
 
-/** Unavailable */
+/**
+ Unavailable.
+
+ - Returns: This method is unavailable.
+*/
 - (instancetype)init NS_UNAVAILABLE;
+
+/**
+ Unavailable.
+
+ - Returns: This method is unavailable.
+*/
 + (instancetype)new NS_UNAVAILABLE;
 
 @end
+
+API_UNAVAILABLE_END
 
 NS_ASSUME_NONNULL_END
 #else

Clone this wiki locally