Xamarin.TVOS SDK API diff: 13.20.2 vs 14.0.0

Xamarin.TVOS.dll

Namespace AVFoundation

Type Changed: AVFoundation.AVAssetWriter

Added constructor:

public AVAssetWriter (UniformTypeIdentifiers.UTType outputContentType);

Added properties:

public IAVAssetWriterDelegate Delegate { get; set; }
public virtual nint InitialMovieFragmentSequenceNumber { get; set; }
public virtual CoreMedia.CMTime InitialSegmentStartTime { get; set; }
public virtual AVFileTypeProfile OutputFileTypeProfile { get; set; }
public virtual CoreMedia.CMTime PreferredOutputSegmentInterval { get; set; }
public virtual bool ProducesCombinableFragments { get; set; }
public virtual Foundation.NSObject WeakDelegate { get; set; }

Added methods:

protected override void Dispose (bool disposing);
public virtual void FlushSegment ();

Type Changed: AVFoundation.AVAudioSession

Added properties:

public static Foundation.NSString PortAvb { get; }
public static Foundation.NSString PortDisplayPort { get; }
public static Foundation.NSString PortFireWire { get; }
public static Foundation.NSString PortPci { get; }
public static Foundation.NSString PortThunderbolt { get; }
public static Foundation.NSString PortVirtual { get; }

Type Changed: AVFoundation.AVAudioSessionRouteSharingPolicy

Added value:

LongFormVideo = 3,

Type Changed: AVFoundation.AVMediaCharacteristics

Added value:

ContainsHdrVideo = 16,

Type Changed: AVFoundation.AVMetadata

Added properties:

public static Foundation.NSString CommonKeyAccessibilityDescription { get; }
public static Foundation.NSString IsoUserDataAccessibilityDescription { get; }
public static Foundation.NSString IsoUserDataKeyAccessibilityDescription { get; }
public static Foundation.NSString QuickTimeMetadataKeyAccessibilityDescription { get; }
public static Foundation.NSString QuickTimeUserDataKeyAccessibilityDescription { get; }

Type Changed: AVFoundation.AVMetadataIdentifiers

Type Changed: AVFoundation.AVMetadataIdentifiers.CommonIdentifier

Added property:

public static Foundation.NSString AccessibilityDescription { get; }

Type Changed: AVFoundation.AVMetadataIdentifiers.QuickTime

Added property:

public static Foundation.NSString UserDataAccessibilityDescription { get; }

Type Changed: AVFoundation.AVMetadataIdentifiers.QuickTimeMetadata

Added properties:

public static Foundation.NSString AccessibilityDescription { get; }
public static Foundation.NSString LocationHorizontalAccuracyInMeters { get; }

Type Changed: AVFoundation.AVPlayerItem

Added property:

public virtual bool StartsOnFirstEligibleVariant { get; set; }

Type Changed: AVFoundation.AVSampleBufferDisplayLayer

Added properties:

public virtual bool RequiresFlushToResumeDecoding { get; }
public static Foundation.NSString RequiresFlushToResumeDecodingDidChangeNotification { get; }

Type Changed: AVFoundation.AVSampleBufferDisplayLayer.Notifications

Added methods:

public static Foundation.NSObject ObserveRequiresFlushToResumeDecodingDidChange (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
public static Foundation.NSObject ObserveRequiresFlushToResumeDecodingDidChange (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);

Type Changed: AVFoundation.AVSpeechUtterance

Added property:

public virtual bool PrefersAssistiveTechnologySettings { get; set; }

Type Changed: AVFoundation.AVVideoCompositing

Added property:

public virtual bool SupportsHdrSourceFrames { get; }

Type Changed: AVFoundation.AVVideoCompositing_Extensions

Added method:

public static bool GetSupportsHdrSourceFrames (this IAVVideoCompositing This);

New Type: AVFoundation.AVAssetSegmentReport

public class AVAssetSegmentReport : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected AVAssetSegmentReport (Foundation.NSObjectFlag t);
	protected AVAssetSegmentReport (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual AVAssetSegmentType SegmentType { get; }
	public virtual AVAssetSegmentTrackReport[] TrackReports { get; }
}

New Type: AVFoundation.AVAssetSegmentReportSampleInformation

public class AVAssetSegmentReportSampleInformation : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected AVAssetSegmentReportSampleInformation (Foundation.NSObjectFlag t);
	protected AVAssetSegmentReportSampleInformation (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool IsSyncSample { get; }
	public virtual nint Length { get; }
	public virtual nint Offset { get; }
	public virtual CoreMedia.CMTime PresentationTimeStamp { get; }
}

New Type: AVFoundation.AVAssetSegmentTrackReport

public class AVAssetSegmentTrackReport : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected AVAssetSegmentTrackReport (Foundation.NSObjectFlag t);
	protected AVAssetSegmentTrackReport (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual CoreMedia.CMTime Duration { get; }
	public virtual CoreMedia.CMTime EarliestPresentationTimeStamp { get; }
	public virtual AVAssetSegmentReportSampleInformation FirstVideoSampleInformation { get; }
	public virtual AVMediaTypes MediaType { get; }
	public virtual int TrackId { get; }
}

New Type: AVFoundation.AVAssetSegmentType

[Serializable]
public enum AVAssetSegmentType {
	Initialization = 1,
	Separable = 2,
}

New Type: AVFoundation.AVAssetWriterDelegate

public class AVAssetWriterDelegate : Foundation.NSObject, IAVAssetWriterDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public AVAssetWriterDelegate ();
	protected AVAssetWriterDelegate (Foundation.NSObjectFlag t);
	protected AVAssetWriterDelegate (IntPtr handle);
	// methods
	public virtual void DidOutputSegmentData (AVAssetWriter writer, Foundation.NSData segmentData, AVAssetSegmentType segmentType);
	public virtual void DidOutputSegmentData (AVAssetWriter writer, Foundation.NSData segmentData, AVAssetSegmentType segmentType, AVAssetSegmentReport segmentReport);
}

New Type: AVFoundation.AVAssetWriterDelegate_Extensions

public static class AVAssetWriterDelegate_Extensions {
	// methods
	public static void DidOutputSegmentData (this IAVAssetWriterDelegate This, AVAssetWriter writer, Foundation.NSData segmentData, AVAssetSegmentType segmentType);
	public static void DidOutputSegmentData (this IAVAssetWriterDelegate This, AVAssetWriter writer, Foundation.NSData segmentData, AVAssetSegmentType segmentType, AVAssetSegmentReport segmentReport);
}

New Type: AVFoundation.AVAudioSpatializationFormats

[Serializable]
[Flags]
public enum AVAudioSpatializationFormats {
	MonoAndStereo = 3,
	MonoStereoAndMultichannel = 7,
	Multichannel = 4,
	None = 0,
}

New Type: AVFoundation.AVAudioStereoOrientation

[Serializable]
public enum AVAudioStereoOrientation {
	LandscapeLeft = 4,
	LandscapeRight = 3,
	None = 0,
	Portrait = 1,
	PortraitUpsideDown = 2,
}

New Type: AVFoundation.AVFileTypeProfile

[Serializable]
public enum AVFileTypeProfile {
	Mpeg4AppleHls = 1,
	Mpeg4CmafCompliant = 2,
	None = 0,
}

New Type: AVFoundation.AVFileTypeProfileExtensions

public static class AVFileTypeProfileExtensions {
	// methods
	public static Foundation.NSString GetConstant (this AVFileTypeProfile self);
	public static AVFileTypeProfile GetValue (Foundation.NSString constant);
}

New Type: AVFoundation.IAVAssetWriterDelegate

public interface IAVAssetWriterDelegate : ObjCRuntime.INativeObject, System.IDisposable {
}

Namespace AVKit

Type Changed: AVKit.AVPlayerViewController

Added property:

public virtual bool AllowsPictureInPicturePlayback { get; set; }

Type Changed: AVKit.AVPlayerViewControllerDelegate

Added methods:

public virtual void DidStartPictureInPicture (AVPlayerViewController playerViewController);
public virtual void DidStopPictureInPicture (AVPlayerViewController playerViewController);
public virtual void FailedToStartPictureInPicture (AVPlayerViewController playerViewController, Foundation.NSError error);
public virtual void RestoreUserInterfaceForPictureInPicture (AVPlayerViewController playerViewController, System.Action<bool> completionHandler);
public virtual bool ShouldAutomaticallyDismissAtPictureInPictureStart (AVPlayerViewController playerViewController);
public virtual void WillStartPictureInPicture (AVPlayerViewController playerViewController);
public virtual void WillStopPictureInPicture (AVPlayerViewController playerViewController);

Type Changed: AVKit.AVPlayerViewControllerDelegate_Extensions

Added methods:

public static void DidStartPictureInPicture (this IAVPlayerViewControllerDelegate This, AVPlayerViewController playerViewController);
public static void DidStopPictureInPicture (this IAVPlayerViewControllerDelegate This, AVPlayerViewController playerViewController);
public static void FailedToStartPictureInPicture (this IAVPlayerViewControllerDelegate This, AVPlayerViewController playerViewController, Foundation.NSError error);
public static void RestoreUserInterfaceForPictureInPicture (this IAVPlayerViewControllerDelegate This, AVPlayerViewController playerViewController, System.Action<bool> completionHandler);
public static bool ShouldAutomaticallyDismissAtPictureInPictureStart (this IAVPlayerViewControllerDelegate This, AVPlayerViewController playerViewController);
public static void WillStartPictureInPicture (this IAVPlayerViewControllerDelegate This, AVPlayerViewController playerViewController);
public static void WillStopPictureInPicture (this IAVPlayerViewControllerDelegate This, AVPlayerViewController playerViewController);

New Type: AVKit.AVPictureInPictureController

public class AVPictureInPictureController : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public AVPictureInPictureController (AVFoundation.AVPlayerLayer playerLayer);
	protected AVPictureInPictureController (Foundation.NSObjectFlag t);
	protected AVPictureInPictureController (IntPtr handle);
	// properties
	public virtual bool CanStopPictureInPicture { get; }
	public override IntPtr ClassHandle { get; }
	public IAVPictureInPictureControllerDelegate Delegate { get; set; }
	public static bool IsPictureInPictureSupported { get; }
	public virtual bool PictureInPictureActive { get; }
	public static UIKit.UIImage PictureInPictureButtonStartImage { get; }
	public static UIKit.UIImage PictureInPictureButtonStopImage { get; }
	public virtual bool PictureInPicturePossible { get; }
	public virtual bool PictureInPictureSuspended { get; }
	public virtual AVFoundation.AVPlayerLayer PlayerLayer { get; }
	public virtual bool RequiresLinearPlayback { get; set; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	public static UIKit.UIImage CreateStartButton (UIKit.UITraitCollection traitCollection);
	public static UIKit.UIImage CreateStopButton (UIKit.UITraitCollection traitCollection);
	protected override void Dispose (bool disposing);
	public virtual void StartPictureInPicture ();
	public virtual void StopPictureInPicture ();
}

New Type: AVKit.AVPictureInPictureControllerDelegate

public class AVPictureInPictureControllerDelegate : Foundation.NSObject, IAVPictureInPictureControllerDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public AVPictureInPictureControllerDelegate ();
	protected AVPictureInPictureControllerDelegate (Foundation.NSObjectFlag t);
	protected AVPictureInPictureControllerDelegate (IntPtr handle);
	// methods
	public virtual void DidStartPictureInPicture (AVPictureInPictureController pictureInPictureController);
	public virtual void DidStopPictureInPicture (AVPictureInPictureController pictureInPictureController);
	public virtual void FailedToStartPictureInPicture (AVPictureInPictureController pictureInPictureController, Foundation.NSError error);
	public virtual void RestoreUserInterfaceForPictureInPicture (AVPictureInPictureController pictureInPictureController, System.Action<bool> completionHandler);
	public virtual void WillStartPictureInPicture (AVPictureInPictureController pictureInPictureController);
	public virtual void WillStopPictureInPicture (AVPictureInPictureController pictureInPictureController);
}

New Type: AVKit.AVPictureInPictureControllerDelegate_Extensions

public static class AVPictureInPictureControllerDelegate_Extensions {
	// methods
	public static void DidStartPictureInPicture (this IAVPictureInPictureControllerDelegate This, AVPictureInPictureController pictureInPictureController);
	public static void DidStopPictureInPicture (this IAVPictureInPictureControllerDelegate This, AVPictureInPictureController pictureInPictureController);
	public static void FailedToStartPictureInPicture (this IAVPictureInPictureControllerDelegate This, AVPictureInPictureController pictureInPictureController, Foundation.NSError error);
	public static void RestoreUserInterfaceForPictureInPicture (this IAVPictureInPictureControllerDelegate This, AVPictureInPictureController pictureInPictureController, System.Action<bool> completionHandler);
	public static void WillStartPictureInPicture (this IAVPictureInPictureControllerDelegate This, AVPictureInPictureController pictureInPictureController);
	public static void WillStopPictureInPicture (this IAVPictureInPictureControllerDelegate This, AVPictureInPictureController pictureInPictureController);
}

New Type: AVKit.IAVPictureInPictureControllerDelegate

public interface IAVPictureInPictureControllerDelegate : ObjCRuntime.INativeObject, System.IDisposable {
}

Namespace AudioToolbox

New Type: AudioToolbox.AUSpatialMixerOutputType

[Serializable]
public enum AUSpatialMixerOutputType {
	BuiltInSpeakers = 2,
	ExternalSpeakers = 3,
	Headphones = 1,
}

New Type: AudioToolbox.AUSpatialMixerPointSourceInHeadMode

[Serializable]
public enum AUSpatialMixerPointSourceInHeadMode {
	Bypass = 1,
	Mono = 0,
}

New Type: AudioToolbox.AUSpatialMixerSourceMode

[Serializable]
public enum AUSpatialMixerSourceMode {
	AmbienceBed = 3,
	Bypass = 1,
	PointSource = 2,
	SpatializeIfMono = 0,
}

Namespace AudioUnit

Type Changed: AudioUnit.AudioComponent

Added method:

public UIKit.UIImage CopyIcon ();

Type Changed: AudioUnit.AudioUnit

Obsoleted methods:

 [Obsolete ("This API has been removed.")]
 public AudioUnitStatus SetLatency (double latency);

Namespace AuthenticationServices

New Type: AuthenticationServices.ASExtensionErrorCodeExtensions

public class ASExtensionErrorCodeExtensions {
	// constructors
	public ASExtensionErrorCodeExtensions ();
}

Namespace CloudKit

Type Changed: CloudKit.CKContainer

Obsoleted methods:

 [Obsolete ("Always throw a 'NotSupportedException' (not a public API). Use 'DiscoverUserIdentity' instead.")]
 public virtual void DiscoverUserInfo (CKRecordID userRecordId, System.Action<CKDiscoveredUserInfo,Foundation.NSError> completionHandler);
 [Obsolete ("Always throw a 'NotSupportedException' (not a public API). Use 'DiscoverUserIdentityWithEmailAddress' instead.")]
 public virtual void DiscoverUserInfo (string email, System.Action<CKDiscoveredUserInfo,Foundation.NSError> completionHandler);
 [Obsolete ("Always throw a 'NotSupportedException' (not a public API). Use 'DiscoverUserIdentity' instead.")]
 public virtual System.Threading.Tasks.Task<CKDiscoveredUserInfo> DiscoverUserInfoAsync (CKRecordID userRecordId);
 [Obsolete ("Always throw a 'NotSupportedException' (not a public API). Use 'DiscoverUserIdentityWithEmailAddress' instead.")]
 public virtual System.Threading.Tasks.Task<CKDiscoveredUserInfo> DiscoverUserInfoAsync (string email);

Type Changed: CloudKit.CKDiscoverUserInfosOperation

Obsoleted constructors:

 [Obsolete ("Always throws 'NotSupportedException' (not a public API).")]
 protected CKDiscoverUserInfosOperation (Foundation.NSObjectFlag t);
 [Obsolete ("Always throws 'NotSupportedException' (not a public API).")]
 protected CKDiscoverUserInfosOperation (IntPtr handle);
 [Obsolete ("Always throws 'NotSupportedException' (not a public API).")]
 public CKDiscoverUserInfosOperation (string[] emailAddresses, CKRecordID[] userRecordIDs);

Modified constructors:

-protected CKDiscoverUserInfosOperation (IntPtr handle)
+protected CKDiscoverUserInfosOperation (IntPtr handle)

Obsoleted properties:

 [Obsolete ("Empty stub (not a public API).")]
 public override IntPtr ClassHandle { get; }
 [Obsolete ("Empty stub (not a public API).")]
 public virtual CKDiscoverUserInfosCompletionHandler Completed { get; set; }
 [Obsolete ("Empty stub (not a public API).")]
 public virtual string[] EmailAddresses { get; set; }
 [Obsolete ("Empty stub (not a public API).")]
 public virtual CKRecordID[] UserRecordIds { get; set; }

Type Changed: CloudKit.CKNotification

Added property:

public virtual CKRecordID SubscriptionOwnerUserRecordId { get; }

Type Changed: CloudKit.CKQueryNotification

Obsoleted properties:

 [Obsolete ("Empty stub (not public API). Use 'DatabaseScope' instead.")]
 public virtual bool IsPublicDatabase { get; }

Type Changed: CloudKit.CKSubscription

Obsoleted constructors:

 [Obsolete ("Always throws 'NotSupportedException' (not a public API). Use 'CKRecordZoneSubscription' instead.")]
 public CKSubscription (CKRecordZoneID zoneId, CKSubscriptionOptions subscriptionOptions);
 [Obsolete ("Always throws 'NotSupportedException' (not a public API). Use 'CKRecordZoneSubscription' instead.")]
 public CKSubscription (CKRecordZoneID zoneId, string subscriptionId, CKSubscriptionOptions subscriptionOptions);

Obsoleted properties:

 [Obsolete ("Empty stub (not a public API). Use 'CKRecordZoneSubscription' intead.")]
 public virtual CKSubscriptionOptions SubscriptionOptions { get; }

Namespace CoreAnimation

Type Changed: CoreAnimation.CAEmitterBehavior

Obsoleted properties:

 [Obsolete ("Empty stub (not a public API).")]
 public static Foundation.NSString[] BehaviorTypes { get; }

Type Changed: CoreAnimation.CAMetalLayer

Obsoleted methods:

 [Obsolete ("Always throw a 'NotSupportedException' (not a public API).")]
 public virtual ICAMetalDrawable CreateDrawable ();

Namespace CoreData

Type Changed: CoreData.NSBatchInsertRequest

Added constructors:

public NSBatchInsertRequest (NSEntityDescription entity, NSBatchInsertRequestDictionaryHandler handler);
public NSBatchInsertRequest (NSEntityDescription entity, NSBatchInsertRequestManagedObjectHandler handler);
public NSBatchInsertRequest (string entityName, NSBatchInsertRequestDictionaryHandler handler);
public NSBatchInsertRequest (string entityName, NSBatchInsertRequestManagedObjectHandler handler);

Added properties:

public virtual NSBatchInsertRequestDictionaryHandler DictionaryHandler { get; set; }
public virtual NSBatchInsertRequestManagedObjectHandler ManagedObjectHandler { get; set; }

Added methods:

public static NSBatchInsertRequest CreateBatchInsertRequest (string entityName, NSBatchInsertRequestDictionaryHandler handler);
public static NSBatchInsertRequest CreateBatchInsertRequest (string entityName, NSBatchInsertRequestManagedObjectHandler handler);

Type Changed: CoreData.NSFetchIndexDescription

Added interface:

Foundation.INSCopying

Added method:

public virtual Foundation.NSObject Copy (Foundation.NSZone zone);

Type Changed: CoreData.NSFetchIndexElementDescription

Added interface:

Foundation.INSCopying

Added method:

public virtual Foundation.NSObject Copy (Foundation.NSZone zone);

Type Changed: CoreData.NSManagedObjectContext

Added properties:

public static Foundation.NSString DidMergeChangesObjectIdsNotification { get; }
public static Foundation.NSString DidSaveObjectIdsNotification { get; }

Type Changed: CoreData.NSManagedObjectContext.Notifications

Added methods:

public static Foundation.NSObject ObserveDidMergeChangesObjectIds (System.EventHandler<NSManagedObjectsIdsChangedEventArgs> handler);
public static Foundation.NSObject ObserveDidMergeChangesObjectIds (Foundation.NSObject objectToObserve, System.EventHandler<NSManagedObjectsIdsChangedEventArgs> handler);
public static Foundation.NSObject ObserveDidSaveObjectIds (System.EventHandler<NSManagedObjectsIdsChangedEventArgs> handler);
public static Foundation.NSObject ObserveDidSaveObjectIds (Foundation.NSObject objectToObserve, System.EventHandler<NSManagedObjectsIdsChangedEventArgs> handler);

Type Changed: CoreData.NSPersistentCloudKitContainer

Added methods:

public virtual bool CanDeleteRecord (NSManagedObjectID objectID);
public virtual bool CanModifyManagedObjects (NSPersistentStore store);
public virtual bool CanUpdateRecord (NSManagedObjectID objectID);

Type Changed: CoreData.NSPersistentCloudKitContainerOptions

Added property:

public virtual CloudKit.CKDatabaseScope DatabaseScope { get; set; }

New Type: CoreData.NSBatchInsertRequestDictionaryHandler

public sealed delegate NSBatchInsertRequestDictionaryHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public NSBatchInsertRequestDictionaryHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (Foundation.NSMutableDictionary dictionary, System.AsyncCallback callback, object object);
	public virtual bool EndInvoke (System.IAsyncResult result);
	public virtual bool Invoke (Foundation.NSMutableDictionary dictionary);
}

New Type: CoreData.NSBatchInsertRequestManagedObjectHandler

public sealed delegate NSBatchInsertRequestManagedObjectHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public NSBatchInsertRequestManagedObjectHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (NSManagedObject managedObject, System.AsyncCallback callback, object object);
	public virtual bool EndInvoke (System.IAsyncResult result);
	public virtual bool Invoke (NSManagedObject managedObject);
}

New Type: CoreData.NSCoreDataCoreSpotlightDelegate

public class NSCoreDataCoreSpotlightDelegate {
	// constructors

	[Obsolete ("Default constructor is not available")]
public NSCoreDataCoreSpotlightDelegate ();
}

New Type: CoreData.NSManagedObjectsIdsChangedEventArgs

public class NSManagedObjectsIdsChangedEventArgs : Foundation.NSNotificationEventArgs {
	// constructors
	public NSManagedObjectsIdsChangedEventArgs (Foundation.NSNotification notification);
	// properties
	public Foundation.NSSet DeletedObjectIds { get; }
	public Foundation.NSSet InsertedObjectIdsKey { get; }
	public Foundation.NSSet InvalidatedObjectIdsKey { get; }
	public Foundation.NSSet RefreshedObjectIdsKey { get; }
	public Foundation.NSSet UpdatedObjectIdsKey { get; }
}

New Type: CoreData.NSPersistentCloudKitContainerEvent

public class NSPersistentCloudKitContainerEvent : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NSPersistentCloudKitContainerEvent (Foundation.NSObjectFlag t);
	protected NSPersistentCloudKitContainerEvent (IntPtr handle);
	// properties
	public static Foundation.NSString ChangedNotification { get; }
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSDate EndDate { get; }
	public virtual Foundation.NSError Error { get; }
	public virtual Foundation.NSUuid Identifier { get; }
	public virtual Foundation.NSDate StartDate { get; }
	public virtual string StoreIdentifier { get; }
	public virtual bool Succeeded { get; }
	public virtual NSPersistentCloudKitContainerEventType Type { get; }
	public static Foundation.NSString UserInfoKey { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);

	// inner types
	public static class Notifications {
		// methods
		public static Foundation.NSObject ObserveChanged (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveChanged (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
	}
}

New Type: CoreData.NSPersistentCloudKitContainerEventRequest

public class NSPersistentCloudKitContainerEventRequest : CoreData.NSPersistentStoreRequest, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSPersistentCloudKitContainerEventRequest ();
	protected NSPersistentCloudKitContainerEventRequest (Foundation.NSObjectFlag t);
	protected NSPersistentCloudKitContainerEventRequest (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual NSPersistentCloudKitContainerEventResultType ResultType { get; set; }
	// methods
	public static NSPersistentCloudKitContainerEventRequest FetchEvents (NSFetchRequest fetchRequest);
	public static NSPersistentCloudKitContainerEventRequest FetchEventsAfter (NSPersistentCloudKitContainerEvent event);
	public static NSPersistentCloudKitContainerEventRequest FetchEventsAfter (Foundation.NSDate date);
	public static NSFetchRequest FetchRequest ();
}

New Type: CoreData.NSPersistentCloudKitContainerEventResult

public class NSPersistentCloudKitContainerEventResult : CoreData.NSPersistentStoreResult, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NSPersistentCloudKitContainerEventResult (Foundation.NSObjectFlag t);
	protected NSPersistentCloudKitContainerEventResult (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSObject Result { get; }
	public virtual NSPersistentCloudKitContainerEventResultType ResultType { get; }
}

New Type: CoreData.NSPersistentCloudKitContainerEventResultType

[Serializable]
public enum NSPersistentCloudKitContainerEventResultType {
	CountEvents = 1,
	Events = 0,
}

New Type: CoreData.NSPersistentCloudKitContainerEventType

[Serializable]
public enum NSPersistentCloudKitContainerEventType {
	Export = 2,
	Import = 1,
	Setup = 0,
}

Namespace CoreFoundation

Type Changed: CoreFoundation.CFNetworkErrors

Added value:

NetServiceMissingRequiredConfiguration = -72008,

Namespace CoreGraphics

Type Changed: CoreGraphics.CGColor

Added constructors:

public CGColor (CGConstantColor color);
public CGColor (string name);
public CGColor (nfloat gray, nfloat alpha);
public CGColor (nfloat red, nfloat green, nfloat blue);
public CGColor (nfloat red, nfloat green, nfloat blue, nfloat alpha);

Added property:

public string AXName { get; }

Added method:

public static CGColor CreateCmyk (nfloat cyan, nfloat magenta, nfloat yellow, nfloat black, nfloat alpha);

Type Changed: CoreGraphics.CGColorSpace

Added property:

public bool UsesExtendedRange { get; }

Type Changed: CoreGraphics.CGColorSpaceNames

Added properties:

public static Foundation.NSString Itur_2100_Hlg { get; }
public static Foundation.NSString Itur_2100_PQ { get; }

Type Changed: CoreGraphics.CGPDFInfo

Added properties:

public bool? CreateLinearizedPdf { get; set; }
public bool? CreatePdfA2u { get; set; }

New Type: CoreGraphics.CGConstantColor

[Serializable]
public enum CGConstantColor {
	Black = 1,
	Clear = 2,
	White = 0,
}

New Type: CoreGraphics.CGConstantColorExtensions

public static class CGConstantColorExtensions {
	// methods
	public static Foundation.NSString GetConstant (this CGConstantColor self);
	public static CGConstantColor GetValue (Foundation.NSString constant);
}

Namespace CoreImage

Type Changed: CoreImage.CIAreaHistogram

Added interfaces:

ICIAreaHistogramProtocol
ICIAreaReductionFilterProtocol
ICIFilterProtocol

Obsoleted properties:

 [Obsolete ("Use 'InputCount' instead.")]
 public float Count { get; set; }

Added properties:

public virtual nint InputCount { get; set; }
public virtual CoreGraphics.CGRect InputExtent { get; set; }
public virtual CIImage OutputImage { get; }

Type Changed: CoreImage.CIAreaMaximum

Added interfaces:

ICIAreaMaximumProtocol
ICIAreaReductionFilterProtocol
ICIFilterProtocol

Added properties:

public virtual CoreGraphics.CGRect InputExtent { get; set; }
public virtual CIImage InputImage { get; set; }
public virtual CIImage OutputImage { get; }

Type Changed: CoreImage.CIAreaMaximumAlpha

Added interfaces:

ICIAreaMaximumAlphaProtocol
ICIAreaReductionFilterProtocol
ICIFilterProtocol

Added properties:

public virtual CoreGraphics.CGRect InputExtent { get; set; }
public virtual CIImage InputImage { get; set; }
public virtual CIImage OutputImage { get; }

Type Changed: CoreImage.CIAreaMinMax

Added interfaces:

ICIAreaReductionFilterProtocol
ICIFilterProtocol

Added properties:

public virtual CoreGraphics.CGRect InputExtent { get; set; }
public virtual CIImage InputImage { get; set; }
public virtual CIImage OutputImage { get; }

Type Changed: CoreImage.CIAreaMinMaxRed

Added interfaces:

ICIAreaMaximumProtocol
ICIAreaMinMaxRedProtocol
ICIAreaReductionFilterProtocol
ICIFilterProtocol

Added properties:

public virtual CoreGraphics.CGRect InputExtent { get; set; }
public virtual CIImage InputImage { get; set; }
public virtual CIImage OutputImage { get; }

Type Changed: CoreImage.CIAreaMinimum

Added interfaces:

ICIAreaReductionFilterProtocol
ICIFilterProtocol

Added properties:

public virtual CoreGraphics.CGRect InputExtent { get; set; }
public virtual CIImage InputImage { get; set; }
public virtual CIImage OutputImage { get; }

Type Changed: CoreImage.CIAreaMinimumAlpha

Added interfaces:

ICIAreaReductionFilterProtocol
ICIFilterProtocol

Added properties:

public virtual CoreGraphics.CGRect InputExtent { get; set; }
public virtual CIImage InputImage { get; set; }
public virtual CIImage OutputImage { get; }

Type Changed: CoreImage.CIBumpDistortion

Added interfaces:

ICIBumpDistortionProtocol
ICIFilterProtocol

Added properties:

public virtual CoreGraphics.CGPoint InputCenter { get; set; }
public virtual CIImage InputImage { get; set; }
public virtual CIImage OutputImage { get; }
public virtual float Radius { get; set; }

Type Changed: CoreImage.CIBumpDistortionLinear

Added interfaces:

ICIBumpDistortionLinearProtocol
ICIFilterProtocol

Added properties:

public virtual CoreGraphics.CGPoint InputCenter { get; set; }
public virtual CIImage InputImage { get; set; }
public virtual CIImage OutputImage { get; }
public virtual float Radius { get; set; }

Type Changed: CoreImage.CICircleSplashDistortion

Added interfaces:

ICICircleSplashDistortionProtocol
ICIFilterProtocol

Added properties:

public virtual CoreGraphics.CGPoint InputCenter { get; set; }
public virtual CIImage InputImage { get; set; }
public virtual CIImage OutputImage { get; }
public virtual float Radius { get; set; }

Type Changed: CoreImage.CICircularWrap

Added interfaces:

ICICircularWrapProtocol
ICIFilterProtocol

Obsoleted properties:

 [Obsolete ("Use 'InputCenter' instead.")]
 public CIVector Center { get; set; }

Added properties:

public virtual CoreGraphics.CGPoint InputCenter { get; set; }
public virtual CIImage OutputImage { get; }

Type Changed: CoreImage.CIColumnAverage

Added interfaces:

ICIAreaReductionFilterProtocol
ICIColumnAverageProtocol
ICIFilterProtocol

Added properties:

public virtual CoreGraphics.CGRect InputExtent { get; set; }
public virtual CIImage InputImage { get; set; }
public virtual CIImage OutputImage { get; }

Type Changed: CoreImage.CIContextOptions

Added property:

public string Name { get; set; }

Type Changed: CoreImage.CIDisplacementDistortion

Added interfaces:

ICIDisplacementDistortionProtocol
ICIFilterProtocol

Added property:

public virtual CIImage OutputImage { get; }

Type Changed: CoreImage.CIDistortionFilter

Obsoleted properties:

 [Obsolete ("Use 'InputCenter' instead.")]
 public CIVector Center { get; set; }

Type Changed: CoreImage.CIDroste

Added interfaces:

ICIDrosteProtocol
ICIFilterProtocol

Obsoleted properties:

 [Obsolete ("use 'InputInsetPoint0' instead.")]
 public CIVector InsetPoint0 { get; set; }
 [Obsolete ("use 'InputInsetPoint0' instead.")]
 public CIVector InsetPoint1 { get; set; }

Added properties:

public virtual CoreGraphics.CGPoint InputInsetPoint0 { get; set; }
public virtual CoreGraphics.CGPoint InputInsetPoint1 { get; set; }
public virtual CIImage OutputImage { get; }

Type Changed: CoreImage.CIGlassDistortion

Added interfaces:

ICIFilterProtocol
ICIGlassDistortionProtocol

Obsoleted properties:

 [Obsolete ("Use 'InputCenter' instead.")]
 public CIVector Center { get; set; }

Added properties:

public virtual CoreGraphics.CGPoint InputCenter { get; set; }
public virtual CIImage OutputImage { get; }

Type Changed: CoreImage.CIGlassLozenge

Added interfaces:

ICIFilterProtocol
ICIGlassLozengeProtocol

Obsoleted properties:

 [Obsolete ("Use 'InputPoint0' instead.")]
 public CIVector Point0 { get; set; }
 [Obsolete ("Use 'InputPoint1' instead.")]
 public CIVector Point1 { get; set; }

Added properties:

public virtual CoreGraphics.CGPoint InputPoint0 { get; set; }
public virtual CoreGraphics.CGPoint InputPoint1 { get; set; }
public virtual CIImage OutputImage { get; }

Type Changed: CoreImage.CIHistogramDisplayFilter

Added interfaces:

ICIFilterProtocol
ICIHistogramDisplayProtocol

Added property:

public virtual CIImage OutputImage { get; }

Type Changed: CoreImage.CIHoleDistortion

Added interfaces:

ICIFilterProtocol
ICIHoleDistortionProtocol

Added properties:

public virtual CoreGraphics.CGPoint InputCenter { get; set; }
public virtual CIImage InputImage { get; set; }
public virtual CIImage OutputImage { get; }
public virtual float Radius { get; set; }

Type Changed: CoreImage.CIKMeans

Added interfaces:

ICIAreaReductionFilterProtocol
ICIFilterProtocol
ICIKMeansProtocol

Obsoleted properties:

 [Obsolete ("Use 'InputCount' instead.")]
 public float Count { get; set; }
 [Obsolete ("Use 'InputPasses' instead.")]
 public int Passes { get; set; }

Added properties:

public virtual nint InputCount { get; set; }
public virtual CoreGraphics.CGRect InputExtent { get; set; }
public virtual CIImage InputImage { get; set; }
public virtual float InputPasses { get; set; }
public virtual CIImage OutputImage { get; }

Type Changed: CoreImage.CIKernel

Added method:

public static string[] GetKernelNamesFromMetalLibrary (Foundation.NSData data);

Type Changed: CoreImage.CILightTunnel

Added interfaces:

ICIFilterProtocol
ICILightTunnelProtocol

Obsoleted properties:

 [Obsolete ("Use 'InputCenter' instead.")]
 public CIVector Center { get; set; }

Added properties:

public virtual CoreGraphics.CGPoint InputCenter { get; set; }
public virtual CIImage OutputImage { get; }

Type Changed: CoreImage.CINinePartStretched

Added interfaces:

ICIFilterProtocol
ICINinePartStretchedProtocol

Obsoleted properties:

 [Obsolete ("Use 'InputBreakpoint0' instead.")]
 public CIVector Breakpoint0 { get; set; }
 [Obsolete ("Use 'InputBreakpoint1' instead.")]
 public CIVector Breakpoint1 { get; set; }
 [Obsolete ("Use 'InputGrowAmount' instead.")]
 public CIVector GrowAmount { get; set; }

Added properties:

public virtual CoreGraphics.CGPoint InputBreakpoint0 { get; set; }
public virtual CoreGraphics.CGPoint InputBreakpoint1 { get; set; }
public virtual CoreGraphics.CGPoint InputGrowAmount { get; set; }
public virtual CIImage OutputImage { get; }

Type Changed: CoreImage.CINinePartTiled

Added interfaces:

ICIFilterProtocol
ICINinePartTiledProtocol

Obsoleted properties:

 [Obsolete ("Use 'InputBreakpoint0' instead.")]
 public CIVector Breakpoint0 { get; set; }
 [Obsolete ("Use 'InputBreakpoint1' instead.")]
 public CIVector Breakpoint1 { get; set; }
 [Obsolete ("Use 'InputGrowAmount' instead.")]
 public CIVector GrowAmount { get; set; }

Added properties:

public virtual CoreGraphics.CGPoint InputBreakpoint0 { get; set; }
public virtual CoreGraphics.CGPoint InputBreakpoint1 { get; set; }
public virtual CoreGraphics.CGPoint InputGrowAmount { get; set; }
public virtual CIImage OutputImage { get; }

Type Changed: CoreImage.CIPinchDistortion

Added interfaces:

ICIFilterProtocol
ICIPinchDistortionProtocol

Added properties:

public virtual CoreGraphics.CGPoint InputCenter { get; set; }
public virtual CIImage InputImage { get; set; }
public virtual CIImage OutputImage { get; }
public virtual float Radius { get; set; }

Type Changed: CoreImage.CIRowAverage

Added interfaces:

ICIAreaReductionFilterProtocol
ICIFilterProtocol
ICIRowAverageProtocol

Obsoleted properties:

 [Obsolete ("Use 'InputExtent' instead.")]
 public CIVector Extent { get; set; }

Added properties:

public virtual CoreGraphics.CGRect InputExtent { get; set; }
public virtual CIImage OutputImage { get; }

Type Changed: CoreImage.CIStretchCrop

Added interfaces:

ICIFilterProtocol
ICIStretchCropProtocol

Obsoleted properties:

 [Obsolete ("Use 'InputSize' instead.")]
 public CIVector Size { get; set; }

Added properties:

public virtual CoreGraphics.CGPoint InputSize { get; set; }
public virtual CIImage OutputImage { get; }

Type Changed: CoreImage.CITorusLensDistortion

Added interfaces:

ICIFilterProtocol
ICITorusLensDistortionProtocol

Obsoleted properties:

 [Obsolete ("Use 'InputCenter' instead.")]
 public CIVector Center { get; set; }

Added properties:

public virtual CoreGraphics.CGPoint InputCenter { get; set; }
public virtual CIImage OutputImage { get; }

Type Changed: CoreImage.CITwirlDistortion

Added interfaces:

ICIFilterProtocol
ICITwirlDistortionProtocol

Added properties:

public virtual CoreGraphics.CGPoint InputCenter { get; set; }
public virtual CIImage InputImage { get; set; }
public virtual CIImage OutputImage { get; }
public virtual float Radius { get; set; }

Type Changed: CoreImage.CIVortexDistortion

Added interfaces:

ICIFilterProtocol
ICIVortexDistortionProtocol

Added properties:

public virtual CoreGraphics.CGPoint InputCenter { get; set; }
public virtual CIImage InputImage { get; set; }
public virtual CIImage OutputImage { get; }
public virtual float Radius { get; set; }

New Type: CoreImage.CIColorAbsoluteDifference

public class CIColorAbsoluteDifference : CoreImage.CIFilter, ICIColorAbsoluteDifferenceProtocol, ICIFilterProtocol, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CIColorAbsoluteDifference ();
	public CIColorAbsoluteDifference (Foundation.NSCoder coder);
	protected CIColorAbsoluteDifference (Foundation.NSObjectFlag t);
	protected CIColorAbsoluteDifference (IntPtr handle);
	// properties
	public virtual CIImage Image2 { get; set; }
	public virtual CIImage InputImage { get; set; }
	public virtual CIImage OutputImage { get; }
}

New Type: CoreImage.CIColorThreshold

public class CIColorThreshold : CoreImage.CIFilter, ICIColorThresholdProtocol, ICIFilterProtocol, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CIColorThreshold ();
	public CIColorThreshold (Foundation.NSCoder coder);
	protected CIColorThreshold (Foundation.NSObjectFlag t);
	protected CIColorThreshold (IntPtr handle);
	// properties
	public virtual CIImage InputImage { get; set; }
	public virtual CIImage OutputImage { get; }
	public virtual float Threshold { get; set; }
}

New Type: CoreImage.CIColorThresholdOtsu

public class CIColorThresholdOtsu : CoreImage.CIFilter, ICIColorThresholdOtsuProtocol, ICIFilterProtocol, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CIColorThresholdOtsu ();
	public CIColorThresholdOtsu (Foundation.NSCoder coder);
	protected CIColorThresholdOtsu (Foundation.NSObjectFlag t);
	protected CIColorThresholdOtsu (IntPtr handle);
	// properties
	public virtual CIImage InputImage { get; set; }
	public virtual CIImage OutputImage { get; }
}

New Type: CoreImage.ICIAreaAverageProtocol

public interface ICIAreaAverageProtocol : ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable {
}

New Type: CoreImage.ICIAreaHistogramProtocol

public interface ICIAreaHistogramProtocol : ICIAreaReductionFilterProtocol, ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual nint InputCount { get; set; }
	public virtual float Scale { get; set; }
}

New Type: CoreImage.ICIAreaMaximumAlphaProtocol

public interface ICIAreaMaximumAlphaProtocol : ICIAreaReductionFilterProtocol, ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable {
}

New Type: CoreImage.ICIAreaMaximumProtocol

public interface ICIAreaMaximumProtocol : ICIAreaReductionFilterProtocol, ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable {
}

New Type: CoreImage.ICIAreaMinMaxProtocol

public interface ICIAreaMinMaxProtocol : ICIAreaReductionFilterProtocol, ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable {
}

New Type: CoreImage.ICIAreaMinMaxRedProtocol

public interface ICIAreaMinMaxRedProtocol : ICIAreaReductionFilterProtocol, ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable {
}

New Type: CoreImage.ICIAreaMinimumAlphaProtocol

public interface ICIAreaMinimumAlphaProtocol : ICIAreaReductionFilterProtocol, ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable {
}

New Type: CoreImage.ICIAreaMinimumProtocol

public interface ICIAreaMinimumProtocol : ICIAreaReductionFilterProtocol, ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable {
}

New Type: CoreImage.ICIAreaReductionFilterProtocol

public interface ICIAreaReductionFilterProtocol : ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual CoreGraphics.CGRect InputExtent { get; set; }
	public virtual CIImage InputImage { get; set; }
}

New Type: CoreImage.ICIBumpDistortionLinearProtocol

public interface ICIBumpDistortionLinearProtocol : ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual float Angle { get; set; }
	public virtual CoreGraphics.CGPoint InputCenter { get; set; }
	public virtual CIImage InputImage { get; set; }
	public virtual float Radius { get; set; }
	public virtual float Scale { get; set; }
}

New Type: CoreImage.ICIBumpDistortionProtocol

public interface ICIBumpDistortionProtocol : ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual CoreGraphics.CGPoint InputCenter { get; set; }
	public virtual CIImage InputImage { get; set; }
	public virtual float Radius { get; set; }
	public virtual float Scale { get; set; }
}

New Type: CoreImage.ICICircleSplashDistortionProtocol

public interface ICICircleSplashDistortionProtocol : ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual CoreGraphics.CGPoint InputCenter { get; set; }
	public virtual CIImage InputImage { get; set; }
	public virtual float Radius { get; set; }
}

New Type: CoreImage.ICICircularWrapProtocol

public interface ICICircularWrapProtocol : ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual float Angle { get; set; }
	public virtual CoreGraphics.CGPoint InputCenter { get; set; }
	public virtual CIImage InputImage { get; set; }
	public virtual float Radius { get; set; }
}

New Type: CoreImage.ICIColorAbsoluteDifferenceProtocol

public interface ICIColorAbsoluteDifferenceProtocol : ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual CIImage Image2 { get; set; }
	public virtual CIImage InputImage { get; set; }
}

New Type: CoreImage.ICIColorThresholdOtsuProtocol

public interface ICIColorThresholdOtsuProtocol : ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual CIImage InputImage { get; set; }
}

New Type: CoreImage.ICIColorThresholdProtocol

public interface ICIColorThresholdProtocol : ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual CIImage InputImage { get; set; }
	public virtual float Threshold { get; set; }
}

New Type: CoreImage.ICIColumnAverageProtocol

public interface ICIColumnAverageProtocol : ICIAreaReductionFilterProtocol, ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable {
}

New Type: CoreImage.ICIDisplacementDistortionProtocol

public interface ICIDisplacementDistortionProtocol : ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual CIImage DisplacementImage { get; set; }
	public virtual CIImage InputImage { get; set; }
	public virtual float Scale { get; set; }
}

New Type: CoreImage.ICIDrosteProtocol

public interface ICIDrosteProtocol : ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual CIImage InputImage { get; set; }
	public virtual CoreGraphics.CGPoint InputInsetPoint0 { get; set; }
	public virtual CoreGraphics.CGPoint InputInsetPoint1 { get; set; }
	public virtual float Periodicity { get; set; }
	public virtual float Rotation { get; set; }
	public virtual float Strands { get; set; }
	public virtual float Zoom { get; set; }
}

New Type: CoreImage.ICIGlassDistortionProtocol

public interface ICIGlassDistortionProtocol : ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual CoreGraphics.CGPoint InputCenter { get; set; }
	public virtual CIImage InputImage { get; set; }
	public virtual float Scale { get; set; }
	public virtual CIImage Texture { get; set; }
}

New Type: CoreImage.ICIGlassLozengeProtocol

public interface ICIGlassLozengeProtocol : ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual CIImage InputImage { get; set; }
	public virtual CoreGraphics.CGPoint InputPoint0 { get; set; }
	public virtual CoreGraphics.CGPoint InputPoint1 { get; set; }
	public virtual float Radius { get; set; }
	public virtual float Refraction { get; set; }
}

New Type: CoreImage.ICIHistogramDisplayProtocol

public interface ICIHistogramDisplayProtocol : ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual float Height { get; set; }
	public virtual float HighLimit { get; set; }
	public virtual CIImage InputImage { get; set; }
	public virtual float LowLimit { get; set; }
}

New Type: CoreImage.ICIHoleDistortionProtocol

public interface ICIHoleDistortionProtocol : ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual CoreGraphics.CGPoint InputCenter { get; set; }
	public virtual CIImage InputImage { get; set; }
	public virtual float Radius { get; set; }
}

New Type: CoreImage.ICIKMeansProtocol

public interface ICIKMeansProtocol : ICIAreaReductionFilterProtocol, ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual nint InputCount { get; set; }
	public virtual float InputPasses { get; set; }
	public virtual CIImage Means { get; set; }
	public virtual bool Perceptual { get; set; }
}

New Type: CoreImage.ICILightTunnelProtocol

public interface ICILightTunnelProtocol : ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual CoreGraphics.CGPoint InputCenter { get; set; }
	public virtual CIImage InputImage { get; set; }
	public virtual float Radius { get; set; }
	public virtual float Rotation { get; set; }
}

New Type: CoreImage.ICINinePartStretchedProtocol

public interface ICINinePartStretchedProtocol : ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual CoreGraphics.CGPoint InputBreakpoint0 { get; set; }
	public virtual CoreGraphics.CGPoint InputBreakpoint1 { get; set; }
	public virtual CoreGraphics.CGPoint InputGrowAmount { get; set; }
	public virtual CIImage InputImage { get; set; }
}

New Type: CoreImage.ICINinePartTiledProtocol

public interface ICINinePartTiledProtocol : ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual bool FlipYTiles { get; set; }
	public virtual CoreGraphics.CGPoint InputBreakpoint0 { get; set; }
	public virtual CoreGraphics.CGPoint InputBreakpoint1 { get; set; }
	public virtual CoreGraphics.CGPoint InputGrowAmount { get; set; }
	public virtual CIImage InputImage { get; set; }
}

New Type: CoreImage.ICIPinchDistortionProtocol

public interface ICIPinchDistortionProtocol : ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual CoreGraphics.CGPoint InputCenter { get; set; }
	public virtual CIImage InputImage { get; set; }
	public virtual float Radius { get; set; }
	public virtual float Scale { get; set; }
}

New Type: CoreImage.ICIRowAverageProtocol

public interface ICIRowAverageProtocol : ICIAreaReductionFilterProtocol, ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable {
}

New Type: CoreImage.ICIStretchCropProtocol

public interface ICIStretchCropProtocol : ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual float CenterStretchAmount { get; set; }
	public virtual float CropAmount { get; set; }
	public virtual CIImage InputImage { get; set; }
	public virtual CoreGraphics.CGPoint InputSize { get; set; }
}

New Type: CoreImage.ICITorusLensDistortionProtocol

public interface ICITorusLensDistortionProtocol : ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual CoreGraphics.CGPoint InputCenter { get; set; }
	public virtual CIImage InputImage { get; set; }
	public virtual float Radius { get; set; }
	public virtual float Refraction { get; set; }
	public virtual float Width { get; set; }
}

New Type: CoreImage.ICITwirlDistortionProtocol

public interface ICITwirlDistortionProtocol : ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual float Angle { get; set; }
	public virtual CoreGraphics.CGPoint InputCenter { get; set; }
	public virtual CIImage InputImage { get; set; }
	public virtual float Radius { get; set; }
}

New Type: CoreImage.ICIVortexDistortionProtocol

public interface ICIVortexDistortionProtocol : ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual float Angle { get; set; }
	public virtual CoreGraphics.CGPoint InputCenter { get; set; }
	public virtual CIImage InputImage { get; set; }
	public virtual float Radius { get; set; }
}

Namespace CoreLocation

Type Changed: CoreLocation.CLLocation

Added property:

public static double AccuracyReduced { get; }

Type Changed: CoreLocation.CLLocationManager

Added properties:

public virtual CLAccuracyAuthorization AccuracyAuthorization { get; }
public virtual CLAuthorizationStatus AuthorizationStatus { get; }

Added event:

public event System.EventHandler DidChangeAuthorization;

Added methods:

public virtual void RequestTemporaryFullAccuracyAuthorization (string purposeKey);
public virtual void RequestTemporaryFullAccuracyAuthorization (string purposeKey, System.Action<Foundation.NSError> completion);
public virtual System.Threading.Tasks.Task RequestTemporaryFullAccuracyAuthorizationAsync (string purposeKey);

Type Changed: CoreLocation.CLLocationManagerDelegate

Added method:

public virtual void DidChangeAuthorization (CLLocationManager manager);

Type Changed: CoreLocation.CLLocationManagerDelegate_Extensions

Added method:

public static void DidChangeAuthorization (this ICLLocationManagerDelegate This, CLLocationManager manager);

New Type: CoreLocation.CLAccuracyAuthorization

[Serializable]
public enum CLAccuracyAuthorization {
	FullAccuracy = 0,
	ReducedAccuracy = 1,
}

Namespace CoreML

Type Changed: CoreML.MLDictionaryFeatureProvider

Added constructor:

public MLDictionaryFeatureProvider (Foundation.NSCoder coder);

Added interfaces:

Foundation.INSCoding
Foundation.INSSecureCoding

Added method:

public virtual void EncodeTo (Foundation.NSCoder encoder);

Type Changed: CoreML.MLFeatureValue

Added constructor:

public MLFeatureValue (Foundation.NSCoder coder);

Added interfaces:

Foundation.INSCoding
Foundation.INSSecureCoding

Added method:

public virtual void EncodeTo (Foundation.NSCoder encoder);

Type Changed: CoreML.MLModel

Added methods:

public static void LoadContents (Foundation.NSUrl url, MLModelConfiguration configuration, System.Action<MLModel,Foundation.NSError> handler);
public static System.Threading.Tasks.Task<MLModel> LoadContentsAsync (Foundation.NSUrl url, MLModelConfiguration configuration);

Type Changed: CoreML.MLModelDescription

Added property:

public virtual Foundation.NSObject[] ClassLabels { get; }

Type Changed: CoreML.MLModelError

Added values:

ModelCollection = 10,
ModelDecryption = 9,
ModelDecryptionKeyFetch = 8,

Type Changed: CoreML.MLMultiArray

Added constructor:

public MLMultiArray (Foundation.NSCoder coder);

Added interfaces:

Foundation.INSCoding
Foundation.INSSecureCoding

Added methods:

public static MLMultiArray Concat (MLMultiArray[] multiArrays, nint axis, MLMultiArrayDataType dataType);
public virtual void EncodeTo (Foundation.NSCoder encoder);

Type Changed: CoreML.MLMultiArrayDataType

Added values:

Float = 65568,
Float64 = 65600,

Type Changed: CoreML.MLSequence

Added constructor:

public MLSequence (Foundation.NSCoder coder);

Added interfaces:

Foundation.INSCoding
Foundation.INSSecureCoding

Added method:

public virtual void EncodeTo (Foundation.NSCoder encoder);

Type Changed: CoreML.MLUpdateTask

Added methods:

public static MLUpdateTask Create (Foundation.NSUrl modelUrl, IMLBatchProvider trainingData, MLUpdateProgressHandlers progressHandlers, out Foundation.NSError error);
public static MLUpdateTask Create (Foundation.NSUrl modelUrl, IMLBatchProvider trainingData, System.Action<MLUpdateContext> completionHandler, out Foundation.NSError error);

Namespace CoreMedia

Type Changed: CoreMedia.CMVideoCodecType

Added value:

VP9 = 1987063865,

Namespace CoreText

Type Changed: CoreText.CTFont

Added method:

public string GetGlyphName (ushort glyph);

Type Changed: CoreText.CTFontManagerError

Added value:

UnsupportedScope = 307,

Namespace CoreVideo

Type Changed: CoreVideo.CVPixelFormatType

Added values:

CV16VersatileBayer = 1651519798,
CV422YpCbCr8BiPlanarFullRange = 875704934,
CV422YpCbCr8BiPlanarVideoRange = 875704950,
CV444YpCbCr8BiPlanarFullRange = 875836518,
CV444YpCbCr8BiPlanarVideoRange = 875836534,
CV64Rgba_DownscaledProResRaw = 1651521076,
OneComponent10 = 1278226736,
OneComponent12 = 1278226738,
OneComponent16 = 1278226742,
TwoComponent16 = 843264310,

Namespace DeviceCheck

Type Changed: DeviceCheck.DCError

Added values:

InvalidInput = 2,
InvalidKey = 3,
ServerUnavailable = 4,

Namespace Foundation

Type Changed: Foundation.NSCoder

Added methods:

public virtual NSObject[] DecodeArrayOfObjects (Foundation.NSSet<ObjCRuntime.Class> classes, string key);
public virtual NSObject[] DecodeArrayOfObjects (ObjCRuntime.Class class, string key);
public virtual NSDictionary DecodeDictionary (Foundation.NSSet<ObjCRuntime.Class> keyClasses, Foundation.NSSet<ObjCRuntime.Class> objectClasses, string key);
public virtual NSDictionary DecodeDictionary (ObjCRuntime.Class keyClass, ObjCRuntime.Class objectClass, string key);

Type Changed: Foundation.NSKeyedUnarchiver

Added methods:

public static NSObject[] GetUnarchivedArray (Foundation.NSSet<ObjCRuntime.Class> classes, NSData data, out NSError error);
public static NSObject[] GetUnarchivedArray (ObjCRuntime.Class class, NSData data, out NSError error);
public static NSDictionary GetUnarchivedDictionary (Foundation.NSSet<ObjCRuntime.Class> keyClasses, Foundation.NSSet<ObjCRuntime.Class> valueClasses, NSData data, out NSError error);
public static NSDictionary GetUnarchivedDictionary (ObjCRuntime.Class keyClass, ObjCRuntime.Class valueClass, NSData data, out NSError error);

Type Changed: Foundation.NSNetServicesStatus

Added value:

MissingRequiredConfigurationError = -72008,

Type Changed: Foundation.NSProcessInfo

Added property:

public virtual bool IsiOSApplicationOnMac { get; }

Type Changed: Foundation.NSUrl

Added properties:

public static NSString ContentTypeKey { get; }
public static NSString FileContentIdentifierKey { get; }
public static NSString IsPurgeableKey { get; }
public static NSString IsSparseKey { get; }
public static NSString MayHaveExtendedAttributesKey { get; }
public static NSString MayShareFileContentKey { get; }
public static NSString VolumeSupportsFileProtectionKey { get; }

Type Changed: Foundation.NSUrlSessionTaskTransactionMetrics

Added property:

public virtual NSUrlSessionTaskMetricsDomainResolutionProtocol DomainResolutionProtocol { get; }

New Type: Foundation.NSUrlSessionTaskMetricsDomainResolutionProtocol

[Serializable]
public enum NSUrlSessionTaskMetricsDomainResolutionProtocol {
	Https = 4,
	Tcp = 2,
	Tls = 3,
	Udp = 1,
	Unknown = 0,
}

Namespace GameController

Type Changed: GameController.GCController

Added interface:

IGCDevice

Added properties:

public virtual GCDeviceBattery Battery { get; }
public static GCController Current { get; }
public static Foundation.NSString DidBecomeCurrentNotification { get; }
public static Foundation.NSString DidStopBeingCurrentNotification { get; }
public virtual GCDeviceHaptics Haptics { get; }
public virtual GCDeviceLight Light { get; }
public virtual GCPhysicalInputProfile PhysicalInputProfile { get; }

Type Changed: GameController.GCController.Notifications

Added methods:

public static Foundation.NSObject ObserveDidBecomeCurrent (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
public static Foundation.NSObject ObserveDidBecomeCurrent (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
public static Foundation.NSObject ObserveDidStopBeingCurrent (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
public static Foundation.NSObject ObserveDidStopBeingCurrent (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);

Type Changed: GameController.GCControllerButtonInput

Added properties:

public virtual bool Touched { get; }
public virtual GCControllerButtonTouchedChanged TouchedChangedHandler { get; set; }

Type Changed: GameController.GCControllerElement

Added properties:

public virtual Foundation.NSSet<Foundation.NSString> Aliases { get; }
public virtual bool IsBoundToSystemGesture { get; }
public virtual string LocalizedName { get; set; }
public virtual GCSystemGestureState PreferredSystemGestureState { get; set; }
public virtual string SfSymbolsName { get; set; }

Type Changed: GameController.GCExtendedGamepad

Modified base type:

-Foundation.NSObject
+GameController.GCPhysicalInputProfile

Added property:

public virtual GCControllerButtonInput ButtonHome { get; }

Type Changed: GameController.GCGamepad

Modified base type:

-Foundation.NSObject
+GameController.GCPhysicalInputProfile

Type Changed: GameController.GCMicroGamepad

Modified base type:

-Foundation.NSObject
+GameController.GCPhysicalInputProfile

Type Changed: GameController.GCMotion

Added properties:

public virtual GCAcceleration Acceleration { get; set; }
public virtual bool HasAttitude { get; }
public virtual bool HasGravityAndUserAcceleration { get; }
public virtual bool HasRotationRate { get; }
public virtual bool SensorsActive { get; set; }
public virtual bool SensorsRequireManualActivation { get; }

New Type: GameController.GCColor

public class GCColor : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GCColor (Foundation.NSCoder coder);
	protected GCColor (Foundation.NSObjectFlag t);
	protected GCColor (IntPtr handle);
	public GCColor (float red, float green, float blue);
	// properties
	public virtual float Blue { get; }
	public override IntPtr ClassHandle { get; }
	public virtual float Green { get; }
	public virtual float Red { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: GameController.GCControllerButtonTouchedChanged

public sealed delegate GCControllerButtonTouchedChanged : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public GCControllerButtonTouchedChanged (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (GCControllerButtonInput button, float value, bool pressed, bool touched, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (GCControllerButtonInput button, float value, bool pressed, bool touched);
}

New Type: GameController.GCControllerTouchpad

public class GCControllerTouchpad : GameController.GCControllerElement, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GCControllerTouchpad ();
	protected GCControllerTouchpad (Foundation.NSObjectFlag t);
	protected GCControllerTouchpad (IntPtr handle);
	// properties
	public virtual GCControllerButtonInput Button { get; }
	public override IntPtr ClassHandle { get; }
	public virtual bool ReportsAbsoluteTouchSurfaceValues { get; set; }
	public virtual GCControllerTouchpadHandler TouchDown { get; set; }
	public virtual GCControllerTouchpadHandler TouchMoved { get; set; }
	public virtual GCTouchState TouchState { get; }
	public virtual GCControllerDirectionPad TouchSurface { get; }
	public virtual GCControllerTouchpadHandler TouchUp { get; set; }
	// methods
	public virtual void SetValue (float xAxis, float yAxis, bool touchDown, float buttonValue);
}

New Type: GameController.GCControllerTouchpadHandler

public sealed delegate GCControllerTouchpadHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public GCControllerTouchpadHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (GCControllerTouchpad touchpad, float xValue, float yValue, float buttonValue, bool buttonPressed, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (GCControllerTouchpad touchpad, float xValue, float yValue, float buttonValue, bool buttonPressed);
}

New Type: GameController.GCDeviceBattery

public class GCDeviceBattery : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GCDeviceBattery (Foundation.NSCoder coder);
	protected GCDeviceBattery (Foundation.NSObjectFlag t);
	protected GCDeviceBattery (IntPtr handle);
	// properties
	public virtual float BatteryLevel { get; }
	public virtual GCDeviceBatteryState BatteryState { get; }
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: GameController.GCDeviceBatteryState

[Serializable]
public enum GCDeviceBatteryState {
	Charging = 1,
	Discharging = 0,
	Full = 2,
	Unknown = -1,
}

New Type: GameController.GCDeviceCursor

public class GCDeviceCursor : GameController.GCControllerDirectionPad, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GCDeviceCursor ();
	protected GCDeviceCursor (Foundation.NSObjectFlag t);
	protected GCDeviceCursor (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
}

New Type: GameController.GCDeviceHaptics

public class GCDeviceHaptics : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected GCDeviceHaptics (Foundation.NSObjectFlag t);
	protected GCDeviceHaptics (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static float HapticDurationInfinite { get; }
	public virtual Foundation.NSSet<Foundation.NSString> SupportedLocalities { get; }
	// methods
	public virtual CoreHaptics.CHHapticEngine CreateEngine (string locality);
}

New Type: GameController.GCDeviceLight

public class GCDeviceLight : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GCDeviceLight (Foundation.NSCoder coder);
	protected GCDeviceLight (Foundation.NSObjectFlag t);
	protected GCDeviceLight (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual GCColor Color { get; set; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: GameController.GCDualShockGamepad

public class GCDualShockGamepad : GameController.GCExtendedGamepad, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GCDualShockGamepad ();
	public GCDualShockGamepad (Foundation.NSCoder coder);
	protected GCDualShockGamepad (Foundation.NSObjectFlag t);
	protected GCDualShockGamepad (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual GCControllerButtonInput TouchpadButton { get; }
	public virtual GCControllerDirectionPad TouchpadPrimary { get; }
	public virtual GCControllerDirectionPad TouchpadSecondary { get; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: GameController.GCHapticsLocality

public static class GCHapticsLocality {
	// properties
	public static Foundation.NSString All { get; }
	public static Foundation.NSString Default { get; }
	public static Foundation.NSString Handles { get; }
	public static Foundation.NSString LeftHandle { get; }
	public static Foundation.NSString LeftTrigger { get; }
	public static Foundation.NSString RightHandle { get; }
	public static Foundation.NSString RightTrigger { get; }
	public static Foundation.NSString Triggers { get; }
}

New Type: GameController.GCInput

public static class GCInput {
	// properties
	public static Foundation.NSString ButtonA { get; }
	public static Foundation.NSString ButtonB { get; }
	public static Foundation.NSString ButtonHome { get; }
	public static Foundation.NSString ButtonMenu { get; }
	public static Foundation.NSString ButtonOptions { get; }
	public static Foundation.NSString ButtonX { get; }
	public static Foundation.NSString ButtonY { get; }
	public static Foundation.NSString DirectionPad { get; }
	public static Foundation.NSString DualShockTouchpadButton { get; }
	public static Foundation.NSString DualShockTouchpadOne { get; }
	public static Foundation.NSString DualShockTouchpadTwo { get; }
	public static Foundation.NSString LeftShoulder { get; }
	public static Foundation.NSString LeftThumbstick { get; }
	public static Foundation.NSString LeftThumbstickButton { get; }
	public static Foundation.NSString LeftTrigger { get; }
	public static Foundation.NSString RightShoulder { get; }
	public static Foundation.NSString RightThumbstick { get; }
	public static Foundation.NSString RightThumbstickButton { get; }
	public static Foundation.NSString RightTrigger { get; }
}

New Type: GameController.GCInputXbox

public static class GCInputXbox {
	// properties
	public static Foundation.NSString PaddleFour { get; }
	public static Foundation.NSString PaddleOne { get; }
	public static Foundation.NSString PaddleThree { get; }
	public static Foundation.NSString PaddleTwo { get; }
}

New Type: GameController.GCKey

public static class GCKey {
	// properties
	public static Foundation.NSString A { get; }
	public static Foundation.NSString Application { get; }
	public static Foundation.NSString B { get; }
	public static Foundation.NSString Backslash { get; }
	public static Foundation.NSString C { get; }
	public static Foundation.NSString CapsLock { get; }
	public static Foundation.NSString CloseBracket { get; }
	public static Foundation.NSString Comma { get; }
	public static Foundation.NSString D { get; }
	public static Foundation.NSString DeleteForward { get; }
	public static Foundation.NSString DeleteOrBackspace { get; }
	public static Foundation.NSString DownArrow { get; }
	public static Foundation.NSString E { get; }
	public static Foundation.NSString Eight { get; }
	public static Foundation.NSString End { get; }
	public static Foundation.NSString EqualSign { get; }
	public static Foundation.NSString Escape { get; }
	public static Foundation.NSString F { get; }
	public static Foundation.NSString F1 { get; }
	public static Foundation.NSString F10 { get; }
	public static Foundation.NSString F11 { get; }
	public static Foundation.NSString F12 { get; }
	public static Foundation.NSString F2 { get; }
	public static Foundation.NSString F3 { get; }
	public static Foundation.NSString F4 { get; }
	public static Foundation.NSString F5 { get; }
	public static Foundation.NSString F6 { get; }
	public static Foundation.NSString F7 { get; }
	public static Foundation.NSString F8 { get; }
	public static Foundation.NSString F9 { get; }
	public static Foundation.NSString Five { get; }
	public static Foundation.NSString Four { get; }
	public static Foundation.NSString G { get; }
	public static Foundation.NSString GraveAccentAndTilde { get; }
	public static Foundation.NSString H { get; }
	public static Foundation.NSString Home { get; }
	public static Foundation.NSString Hyphen { get; }
	public static Foundation.NSString I { get; }
	public static Foundation.NSString Insert { get; }
	public static Foundation.NSString International1 { get; }
	public static Foundation.NSString International2 { get; }
	public static Foundation.NSString International3 { get; }
	public static Foundation.NSString International4 { get; }
	public static Foundation.NSString International5 { get; }
	public static Foundation.NSString International6 { get; }
	public static Foundation.NSString International7 { get; }
	public static Foundation.NSString International8 { get; }
	public static Foundation.NSString International9 { get; }
	public static Foundation.NSString J { get; }
	public static Foundation.NSString K { get; }
	public static Foundation.NSString Keypad0 { get; }
	public static Foundation.NSString Keypad1 { get; }
	public static Foundation.NSString Keypad2 { get; }
	public static Foundation.NSString Keypad3 { get; }
	public static Foundation.NSString Keypad4 { get; }
	public static Foundation.NSString Keypad5 { get; }
	public static Foundation.NSString Keypad6 { get; }
	public static Foundation.NSString Keypad7 { get; }
	public static Foundation.NSString Keypad8 { get; }
	public static Foundation.NSString Keypad9 { get; }
	public static Foundation.NSString KeypadAsterisk { get; }
	public static Foundation.NSString KeypadEnter { get; }
	public static Foundation.NSString KeypadEqualSign { get; }
	public static Foundation.NSString KeypadHyphen { get; }
	public static Foundation.NSString KeypadNumLock { get; }
	public static Foundation.NSString KeypadPeriod { get; }
	public static Foundation.NSString KeypadPlus { get; }
	public static Foundation.NSString KeypadSlash { get; }
	public static Foundation.NSString L { get; }
	public static Foundation.NSString Lang1 { get; }
	public static Foundation.NSString Lang2 { get; }
	public static Foundation.NSString Lang3 { get; }
	public static Foundation.NSString Lang4 { get; }
	public static Foundation.NSString Lang5 { get; }
	public static Foundation.NSString Lang6 { get; }
	public static Foundation.NSString Lang7 { get; }
	public static Foundation.NSString Lang8 { get; }
	public static Foundation.NSString Lang9 { get; }
	public static Foundation.NSString LeftAlt { get; }
	public static Foundation.NSString LeftArrow { get; }
	public static Foundation.NSString LeftControl { get; }
	public static Foundation.NSString LeftGui { get; }
	public static Foundation.NSString LeftShift { get; }
	public static Foundation.NSString M { get; }
	public static Foundation.NSString N { get; }
	public static Foundation.NSString Nine { get; }
	public static Foundation.NSString NonUSBackslash { get; }
	public static Foundation.NSString NonUSPound { get; }
	public static Foundation.NSString O { get; }
	public static Foundation.NSString One { get; }
	public static Foundation.NSString OpenBracket { get; }
	public static Foundation.NSString P { get; }
	public static Foundation.NSString PageDown { get; }
	public static Foundation.NSString PageUp { get; }
	public static Foundation.NSString Pause { get; }
	public static Foundation.NSString Period { get; }
	public static Foundation.NSString Power { get; }
	public static Foundation.NSString PrintScreen { get; }
	public static Foundation.NSString Q { get; }
	public static Foundation.NSString Quote { get; }
	public static Foundation.NSString R { get; }
	public static Foundation.NSString ReturnOrEnter { get; }
	public static Foundation.NSString RightAlt { get; }
	public static Foundation.NSString RightArrow { get; }
	public static Foundation.NSString RightControl { get; }
	public static Foundation.NSString RightGui { get; }
	public static Foundation.NSString RightShift { get; }
	public static Foundation.NSString S { get; }
	public static Foundation.NSString ScrollLock { get; }
	public static Foundation.NSString Semicolon { get; }
	public static Foundation.NSString Seven { get; }
	public static Foundation.NSString Six { get; }
	public static Foundation.NSString Slash { get; }
	public static Foundation.NSString Spacebar { get; }
	public static Foundation.NSString T { get; }
	public static Foundation.NSString Tab { get; }
	public static Foundation.NSString Three { get; }
	public static Foundation.NSString Two { get; }
	public static Foundation.NSString U { get; }
	public static Foundation.NSString UpArrow { get; }
	public static Foundation.NSString V { get; }
	public static Foundation.NSString W { get; }
	public static Foundation.NSString X { get; }
	public static Foundation.NSString Y { get; }
	public static Foundation.NSString Z { get; }
	public static Foundation.NSString Zero { get; }
}

New Type: GameController.GCKeyCode

public static class GCKeyCode {
	// properties
	public static nint Application { get; }
	public static nint Backslash { get; }
	public static nint CapsLock { get; }
	public static nint CloseBracket { get; }
	public static nint Comma { get; }
	public static nint DeleteForward { get; }
	public static nint DeleteOrBackspace { get; }
	public static nint DownArrow { get; }
	public static nint Eight { get; }
	public static nint End { get; }
	public static nint EqualSign { get; }
	public static nint Escape { get; }
	public static nint F1 { get; }
	public static nint F10 { get; }
	public static nint F11 { get; }
	public static nint F12 { get; }
	public static nint F2 { get; }
	public static nint F3 { get; }
	public static nint F4 { get; }
	public static nint F5 { get; }
	public static nint F6 { get; }
	public static nint F7 { get; }
	public static nint F8 { get; }
	public static nint F9 { get; }
	public static nint Five { get; }
	public static nint Four { get; }
	public static nint GraveAccentAndTilde { get; }
	public static nint Home { get; }
	public static nint Hyphen { get; }
	public static nint Insert { get; }
	public static nint International1 { get; }
	public static nint International2 { get; }
	public static nint International3 { get; }
	public static nint International4 { get; }
	public static nint International5 { get; }
	public static nint International6 { get; }
	public static nint International7 { get; }
	public static nint International8 { get; }
	public static nint International9 { get; }
	public static nint KeyA { get; }
	public static nint KeyB { get; }
	public static nint KeyC { get; }
	public static nint KeyD { get; }
	public static nint KeyE { get; }
	public static nint KeyF { get; }
	public static nint KeyG { get; }
	public static nint KeyH { get; }
	public static nint KeyI { get; }
	public static nint KeyJ { get; }
	public static nint KeyK { get; }
	public static nint KeyL { get; }
	public static nint KeyM { get; }
	public static nint KeyN { get; }
	public static nint KeyO { get; }
	public static nint KeyP { get; }
	public static nint KeyQ { get; }
	public static nint KeyR { get; }
	public static nint KeyS { get; }
	public static nint KeyT { get; }
	public static nint KeyU { get; }
	public static nint KeyV { get; }
	public static nint KeyW { get; }
	public static nint KeyX { get; }
	public static nint KeyY { get; }
	public static nint KeyZ { get; }
	public static nint Keypad0 { get; }
	public static nint Keypad1 { get; }
	public static nint Keypad2 { get; }
	public static nint Keypad3 { get; }
	public static nint Keypad4 { get; }
	public static nint Keypad5 { get; }
	public static nint Keypad6 { get; }
	public static nint Keypad7 { get; }
	public static nint Keypad8 { get; }
	public static nint Keypad9 { get; }
	public static nint KeypadAsterisk { get; }
	public static nint KeypadEnter { get; }
	public static nint KeypadEqualSign { get; }
	public static nint KeypadHyphen { get; }
	public static nint KeypadNumLock { get; }
	public static nint KeypadPeriod { get; }
	public static nint KeypadPlus { get; }
	public static nint KeypadSlash { get; }
	public static nint Lang1 { get; }
	public static nint Lang2 { get; }
	public static nint Lang3 { get; }
	public static nint Lang4 { get; }
	public static nint Lang5 { get; }
	public static nint Lang6 { get; }
	public static nint Lang7 { get; }
	public static nint Lang8 { get; }
	public static nint Lang9 { get; }
	public static nint LeftAlt { get; }
	public static nint LeftArrow { get; }
	public static nint LeftControl { get; }
	public static nint LeftGui { get; }
	public static nint LeftShift { get; }
	public static nint Nine { get; }
	public static nint NonUSBackslash { get; }
	public static nint NonUSPound { get; }
	public static nint One { get; }
	public static nint OpenBracket { get; }
	public static nint PageDown { get; }
	public static nint PageUp { get; }
	public static nint Pause { get; }
	public static nint Period { get; }
	public static nint Power { get; }
	public static nint PrintScreen { get; }
	public static nint Quote { get; }
	public static nint ReturnOrEnter { get; }
	public static nint RightAlt { get; }
	public static nint RightArrow { get; }
	public static nint RightControl { get; }
	public static nint RightGui { get; }
	public static nint RightShift { get; }
	public static nint ScrollLock { get; }
	public static nint Semicolon { get; }
	public static nint Seven { get; }
	public static nint Six { get; }
	public static nint Slash { get; }
	public static nint Spacebar { get; }
	public static nint Tab { get; }
	public static nint Three { get; }
	public static nint Two { get; }
	public static nint UpArrow { get; }
	public static nint Zero { get; }
}

New Type: GameController.GCKeyboard

public class GCKeyboard : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, IGCDevice, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GCKeyboard ();
	public GCKeyboard (Foundation.NSCoder coder);
	protected GCKeyboard (Foundation.NSObjectFlag t);
	protected GCKeyboard (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static GCKeyboard CoalescedKeyboard { get; }
	public static Foundation.NSString DidConnectNotification { get; }
	public static Foundation.NSString DidDisconnectNotification { get; }
	public virtual CoreFoundation.DispatchQueue HandlerQueue { get; set; }
	public virtual GCKeyboardInput KeyboardInput { get; }
	public virtual GCPhysicalInputProfile PhysicalInputProfile { get; }
	public virtual string ProductCategory { get; }
	public virtual string VendorName { get; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);

	// inner types
	public static class Notifications {
		// methods
		public static Foundation.NSObject ObserveDidConnect (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveDidConnect (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveDidDisconnect (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveDidDisconnect (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
	}
}

New Type: GameController.GCKeyboardInput

public class GCKeyboardInput : GameController.GCPhysicalInputProfile, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GCKeyboardInput ();
	protected GCKeyboardInput (Foundation.NSObjectFlag t);
	protected GCKeyboardInput (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool IsAnyKeyPressed { get; }
	public virtual GCKeyboardValueChangedHandler KeyChangedHandler { get; set; }
	// methods
	public virtual GCControllerButtonInput GetButton (nint code);
}

New Type: GameController.GCKeyboardValueChangedHandler

public sealed delegate GCKeyboardValueChangedHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public GCKeyboardValueChangedHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (GCKeyboardInput keyboard, GCControllerButtonInput key, nint keyCode, bool pressed, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (GCKeyboardInput keyboard, GCControllerButtonInput key, nint keyCode, bool pressed);
}

New Type: GameController.GCMouse

public class GCMouse : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, IGCDevice, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GCMouse ();
	public GCMouse (Foundation.NSCoder coder);
	protected GCMouse (Foundation.NSObjectFlag t);
	protected GCMouse (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static GCMouse Current { get; }
	public static Foundation.NSString DidBecomeCurrentNotification { get; }
	public static Foundation.NSString DidConnectNotification { get; }
	public static Foundation.NSString DidDisconnectNotification { get; }
	public static Foundation.NSString DidStopBeingCurrentNotification { get; }
	public virtual CoreFoundation.DispatchQueue HandlerQueue { get; set; }
	public static GCMouse[] Mice { get; }
	public virtual GCMouseInput MouseInput { get; }
	public virtual GCPhysicalInputProfile PhysicalInputProfile { get; }
	public virtual string ProductCategory { get; }
	public virtual string VendorName { get; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);

	// inner types
	public static class Notifications {
		// methods
		public static Foundation.NSObject ObserveDidBecomeCurrent (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveDidBecomeCurrent (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveDidConnect (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveDidConnect (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveDidDisconnect (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveDidDisconnect (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveDidStopBeingCurrent (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveDidStopBeingCurrent (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
	}
}

New Type: GameController.GCMouseInput

public class GCMouseInput : GameController.GCPhysicalInputProfile, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GCMouseInput ();
	protected GCMouseInput (Foundation.NSObjectFlag t);
	protected GCMouseInput (IntPtr handle);
	// properties
	public virtual GCControllerButtonInput[] AuxiliaryButtons { get; }
	public override IntPtr ClassHandle { get; }
	public virtual GCControllerButtonInput LeftButton { get; }
	public virtual GCControllerButtonInput MiddleButton { get; }
	public virtual GCMouseMoved MouseMovedHandler { get; set; }
	public virtual GCControllerButtonInput RightButton { get; }
	public virtual GCDeviceCursor Scroll { get; }
}

New Type: GameController.GCMouseMoved

public sealed delegate GCMouseMoved : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public GCMouseMoved (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (GCMouseInput mouse, float deltaX, float deltaY, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (GCMouseInput mouse, float deltaX, float deltaY);
}

New Type: GameController.GCPhysicalInputProfile

public class GCPhysicalInputProfile : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected GCPhysicalInputProfile (Foundation.NSObjectFlag t);
	protected GCPhysicalInputProfile (IntPtr handle);
	// properties
	public virtual Foundation.NSSet<GCControllerAxisInput> AllAxes { get; }
	public virtual Foundation.NSSet<GCControllerButtonInput> AllButtons { get; }
	public virtual Foundation.NSSet<GCControllerDirectionPad> AllDpads { get; }
	public virtual Foundation.NSSet<GCControllerElement> AllElements { get; }
	public virtual Foundation.NSDictionary<Foundation.NSString,GameController.GCControllerAxisInput> Axes { get; }
	public virtual Foundation.NSDictionary<Foundation.NSString,GameController.GCControllerButtonInput> Buttons { get; }
	public override IntPtr ClassHandle { get; }
	public virtual IGCDevice Device { get; }
	public virtual Foundation.NSDictionary<Foundation.NSString,GameController.GCControllerDirectionPad> Dpads { get; }
	public virtual Foundation.NSDictionary<Foundation.NSString,GameController.GCControllerElement> Elements { get; }
	public virtual double LastEventTimestamp { get; }
	// methods
	public virtual GCPhysicalInputProfile Capture ();
	protected override void Dispose (bool disposing);
	public virtual GCControllerElement GetObjectForKeyedSubscript (string key);
	public virtual void SetState (GCPhysicalInputProfile physicalInput);
}

New Type: GameController.GCSystemGestureState

[Serializable]
public enum GCSystemGestureState {
	AlwaysReceive = 1,
	Disabled = 2,
	Enabled = 0,
}

New Type: GameController.GCTouchState

[Serializable]
public enum GCTouchState {
	Down = 1,
	Moving = 2,
	Up = 0,
}

New Type: GameController.GCXboxGamepad

public class GCXboxGamepad : GameController.GCExtendedGamepad, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GCXboxGamepad ();
	public GCXboxGamepad (Foundation.NSCoder coder);
	protected GCXboxGamepad (Foundation.NSObjectFlag t);
	protected GCXboxGamepad (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual GCControllerButtonInput PaddleButton1 { get; }
	public virtual GCControllerButtonInput PaddleButton2 { get; }
	public virtual GCControllerButtonInput PaddleButton3 { get; }
	public virtual GCControllerButtonInput PaddleButton4 { get; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: GameController.IGCDevice

public interface IGCDevice : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual CoreFoundation.DispatchQueue HandlerQueue { get; set; }
	public virtual GCPhysicalInputProfile PhysicalInputProfile { get; }
	public virtual string ProductCategory { get; }
	public virtual string VendorName { get; }
}

Namespace GameKit

Type Changed: GameKit.GKGameCenterViewController

Added constructors:

public GKGameCenterViewController (GKGameCenterViewControllerState state);
public GKGameCenterViewController (string achievementId);
public GKGameCenterViewController (GKLeaderboard leaderboard, GKLeaderboardPlayerScope playerScope);
public GKGameCenterViewController (string leaderboardId, GKLeaderboardPlayerScope playerScope, GKLeaderboardTimeScope timeScope);

Added properties:

public virtual string LeaderboardIdentifier { get; set; }
public virtual GKGameCenterViewControllerState ViewState { get; set; }

Type Changed: GameKit.GKLeaderboard

Added properties:

public virtual string BaseLeaderboardId { get; }
public virtual double Duration { get; }
public virtual Foundation.NSDate NextStartDate { get; }
public virtual Foundation.NSDate StartDate { get; }
public virtual GKLeaderboardType Type { get; }

Added methods:

public virtual void LoadEntries (GKPlayer[] players, GKLeaderboardTimeScope timeScope, GKEntriesForPlayersHandler completionHandler);
public virtual void LoadEntries (GKLeaderboardPlayerScope playerScope, GKLeaderboardTimeScope timeScope, Foundation.NSRange range, GKEntriesForPlayerScopeHandler completionHandler);
public virtual System.Threading.Tasks.Task<GKEntriesForPlayersResult> LoadEntriesAsync (GKPlayer[] players, GKLeaderboardTimeScope timeScope);
public virtual System.Threading.Tasks.Task<GKEntriesForPlayerScopeResult> LoadEntriesAsync (GKLeaderboardPlayerScope playerScope, GKLeaderboardTimeScope timeScope, Foundation.NSRange range);
public static void LoadLeaderboards (string[] leaderboardIds, GKLeaderboardsHandler completionHandler);
public static System.Threading.Tasks.Task<GKLeaderboard[]> LoadLeaderboardsAsync (string[] leaderboardIds);
public virtual void LoadPreviousOccurrence (GKLeaderboardsHandler completionHandler);
public virtual System.Threading.Tasks.Task<GKLeaderboard[]> LoadPreviousOccurrenceAsync ();
public virtual void SubmitScore (nint score, nuint context, GKPlayer player, System.Action<Foundation.NSError> completionHandler);
public static void SubmitScore (nint score, nuint context, GKPlayer player, string[] leaderboardIds, System.Action<Foundation.NSError> completionHandler);
public virtual System.Threading.Tasks.Task SubmitScoreAsync (nint score, nuint context, GKPlayer player);
public static System.Threading.Tasks.Task SubmitScoreAsync (nint score, nuint context, GKPlayer player, string[] leaderboardIds);

Type Changed: GameKit.GKLeaderboardSet

Added methods:

public virtual void LoadLeaderboardsWithCompletionHandler (GKLeaderboardsHandler handler);
public virtual System.Threading.Tasks.Task<GKLeaderboard[]> LoadLeaderboardsWithCompletionHandlerAsync ();

Type Changed: GameKit.GKLocalPlayer

Added property:

public virtual bool PersonalizedCommunicationRestricted { get; }

Type Changed: GameKit.GKMatchmakerViewController

Added property:

public virtual GKMatchmakingMode MatchmakingMode { get; set; }

Type Changed: GameKit.GKPlayer

Added properties:

public static Foundation.NSString IdNoLongerAvailable { get; }
public virtual bool IsInvitable { get; }

Type Changed: GameKit.GKScore

Added methods:

public static void ReportLeaderboardScores (GKLeaderboardScore[] scores, GKChallenge[] eligibleChallenges, System.Action<Foundation.NSError> completionHandler);
public static System.Threading.Tasks.Task ReportLeaderboardScoresAsync (GKLeaderboardScore[] scores, GKChallenge[] eligibleChallenges);

Type Changed: GameKit.GKTurnBasedMatch

Added methods:

public virtual void EndMatchInTurn (Foundation.NSData matchData, GKLeaderboardScore[] scores, Foundation.NSObject[] achievements, System.Action<Foundation.NSError> completionHandler);
public virtual System.Threading.Tasks.Task EndMatchInTurnAsync (Foundation.NSData matchData, GKLeaderboardScore[] scores, Foundation.NSObject[] achievements);

New Type: GameKit.GKAccessPoint

public class GKAccessPoint : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected GKAccessPoint (Foundation.NSObjectFlag t);
	protected GKAccessPoint (IntPtr handle);
	// properties
	public virtual bool Active { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual bool Focused { get; set; }
	public virtual CoreGraphics.CGRect FrameInScreenCoordinates { get; }
	public virtual bool IsPresentingGameCenter { get; }
	public virtual GKAccessPointLocation Location { get; set; }
	public virtual UIKit.UIWindow ParentWindow { get; set; }
	public static GKAccessPoint Shared { get; }
	public virtual bool ShowHighlights { get; set; }
	public virtual bool Visible { get; }
	// methods
	protected override void Dispose (bool disposing);
	public virtual void TriggerAccessPoint (System.Action handler);
	public virtual void TriggerAccessPoint (GKGameCenterViewControllerState state, System.Action handler);
}

New Type: GameKit.GKAccessPointLocation

[Serializable]
public enum GKAccessPointLocation {
	BottomLeading = 2,
	BottomTrailing = 3,
	TopLeading = 0,
	TopTrailing = 1,
}

New Type: GameKit.GKEntriesForPlayerScopeHandler

public sealed delegate GKEntriesForPlayerScopeHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public GKEntriesForPlayerScopeHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (GKLeaderboardEntry localPlayerEntry, GKLeaderboardEntry[] entries, nint totalPlayerCount, Foundation.NSError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (GKLeaderboardEntry localPlayerEntry, GKLeaderboardEntry[] entries, nint totalPlayerCount, Foundation.NSError error);
}

New Type: GameKit.GKEntriesForPlayerScopeResult

public class GKEntriesForPlayerScopeResult {
	// constructors
	public GKEntriesForPlayerScopeResult (GKLeaderboardEntry localPlayerEntry, GKLeaderboardEntry[] entries, nint totalPlayerCount);
	// properties
	public GKLeaderboardEntry[] Entries { get; set; }
	public GKLeaderboardEntry LocalPlayerEntry { get; set; }
	public nint TotalPlayerCount { get; set; }
}

New Type: GameKit.GKEntriesForPlayersHandler

public sealed delegate GKEntriesForPlayersHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public GKEntriesForPlayersHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (GKLeaderboardEntry localPlayerEntry, GKLeaderboardEntry[] entries, Foundation.NSError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (GKLeaderboardEntry localPlayerEntry, GKLeaderboardEntry[] entries, Foundation.NSError error);
}

New Type: GameKit.GKEntriesForPlayersResult

public class GKEntriesForPlayersResult {
	// constructors
	public GKEntriesForPlayersResult (GKLeaderboardEntry localPlayerEntry, GKLeaderboardEntry[] entries);
	// properties
	public GKLeaderboardEntry[] Entries { get; set; }
	public GKLeaderboardEntry LocalPlayerEntry { get; set; }
}

New Type: GameKit.GKLeaderboardEntry

public class GKLeaderboardEntry : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected GKLeaderboardEntry (Foundation.NSObjectFlag t);
	protected GKLeaderboardEntry (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual GKPlayer Player { get; }
	// methods
	public virtual UIKit.UIViewController ChallengeComposeController (string message, GKPlayer[] players, GKChallengeComposeHandler completionHandler);
	public virtual System.Threading.Tasks.Task<GKChallengeComposeResult> ChallengeComposeControllerAsync (string message, GKPlayer[] players);
	public virtual System.Threading.Tasks.Task<GKChallengeComposeResult> ChallengeComposeControllerAsync (string message, GKPlayer[] players, out UIKit.UIViewController result);
}

New Type: GameKit.GKLeaderboardScore

public class GKLeaderboardScore : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GKLeaderboardScore ();
	protected GKLeaderboardScore (Foundation.NSObjectFlag t);
	protected GKLeaderboardScore (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nuint Context { get; set; }
	public virtual string LeaderboardId { get; set; }
	public virtual GKPlayer Player { get; set; }
	public virtual nint Value { get; set; }
}

New Type: GameKit.GKLeaderboardType

[Serializable]
public enum GKLeaderboardType {
	Classic = 0,
	Recurring = 1,
}

New Type: GameKit.GKMatchmakingMode

[Serializable]
public enum GKMatchmakingMode {
	AutomatchOnly = 2,
	Default = 0,
	NearbyOnly = 1,
}

Namespace HomeKit

Type Changed: HomeKit.HMError

Added values:

AccessoryCommunicationFailure = 101,
EnterpriseNetworkNotSupported = 99,
FailedToJoinNetwork = 102,
TimedOutWaitingForAccessory = 100,

New Type: HomeKit.HMCharacteristicValueCurrentHeatingCooling

[Serializable]
public enum HMCharacteristicValueCurrentHeatingCooling {
	Cool = 2,
	Heat = 1,
	Off = 0,
}

New Type: HomeKit.HMCharacteristicValueTargetDoorState

[Serializable]
public enum HMCharacteristicValueTargetDoorState {
	Closed = 1,
	Open = 0,
}

New Type: HomeKit.HMCharacteristicValueTargetLockMechanismState

[Serializable]
public enum HMCharacteristicValueTargetLockMechanismState {
	Secured = 1,
	Unsecured = 0,
}

Namespace ImageIO

Type Changed: ImageIO.CGImageDestinationOptions

Added property:

public Foundation.NSDictionary WebPDictionary { get; set; }

Type Changed: ImageIO.CGImageDestinationOptionsKeys

Added property:

public static Foundation.NSString WebPDictionary { get; }

Type Changed: ImageIO.CGImageProperties

Added properties:

public static Foundation.NSString ExifCompositeImage { get; }
public static Foundation.NSString ExifSourceExposureTimesOfCompositeImage { get; }
public static Foundation.NSString ExifSourceImageNumberOfCompositeImage { get; }
public static Foundation.NSString WebPCanvasPixelHeight { get; }
public static Foundation.NSString WebPCanvasPixelWidth { get; }
public static Foundation.NSString WebPDelayTime { get; }
public static Foundation.NSString WebPDictionary { get; }
public static Foundation.NSString WebPFrameInfoArray { get; }
public static Foundation.NSString WebPLoopCount { get; }
public static Foundation.NSString WebPUnclampedDelayTime { get; }

New Type: ImageIO.CGImageAnimation

public static class CGImageAnimation {
	// methods
	public static CGImageAnimationStatus AnimateImage (Foundation.NSData data, CGImageAnimationOptions options, CGImageAnimation.CGImageSourceAnimationHandler handler);
	public static CGImageAnimationStatus AnimateImage (Foundation.NSUrl url, CGImageAnimationOptions options, CGImageAnimation.CGImageSourceAnimationHandler handler);

	// inner types
	public sealed delegate CGImageSourceAnimationHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
		// constructors
		public CGImageAnimation.CGImageSourceAnimationHandler (object object, IntPtr method);
		// methods
		public virtual System.IAsyncResult BeginInvoke (nint index, CoreGraphics.CGImage image, out bool stop, System.AsyncCallback callback, object object);
		public virtual void EndInvoke (out bool stop, System.IAsyncResult result);
		public virtual void Invoke (nint index, CoreGraphics.CGImage image, out bool stop);
	}
}

New Type: ImageIO.CGImageAnimationOptions

public class CGImageAnimationOptions : Foundation.DictionaryContainer {
	// constructors
	public CGImageAnimationOptions ();
	public CGImageAnimationOptions (Foundation.NSDictionary dictionary);
	// properties
	public double? DelayTime { get; set; }
	public nuint? LoopCount { get; set; }
	public nuint? StartIndex { get; set; }
}

New Type: ImageIO.CGImageAnimationStatus

[Serializable]
public enum CGImageAnimationStatus {
	AllocationFailure = -22144,
	CorruptInputImage = -22141,
	IncompleteInputImage = -22143,
	Ok = 0,
	ParameterError = -22140,
	UnsupportedFormat = -22142,
}

Namespace MapKit

Type Changed: MapKit.MKAnnotationView

Added properties:

public virtual float SelectedZPriority { get; set; }
public virtual float ZPriority { get; set; }

Type Changed: MapKit.MKCircleRenderer

Added properties:

public virtual nfloat StrokeEnd { get; set; }
public virtual nfloat StrokeStart { get; set; }

Type Changed: MapKit.MKLocalSearch

Added constructor:

public MKLocalSearch (MKLocalPointsOfInterestRequest request);

Type Changed: MapKit.MKMultiPoint

Added methods:

public virtual nfloat GetLocation (nuint pointIndex);
public virtual nfloat[] GetLocations (Foundation.NSIndexSet indexes);

Type Changed: MapKit.MKPolygonRenderer

Added properties:

public virtual nfloat StrokeEnd { get; set; }
public virtual nfloat StrokeStart { get; set; }

Type Changed: MapKit.MKPolylineRenderer

Added properties:

public virtual nfloat StrokeEnd { get; set; }
public virtual nfloat StrokeStart { get; set; }

New Type: MapKit.MKGradientPolylineRenderer

public class MKGradientPolylineRenderer : MapKit.MKPolylineRenderer, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MKGradientPolylineRenderer ();
	protected MKGradientPolylineRenderer (Foundation.NSObjectFlag t);
	protected MKGradientPolylineRenderer (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual UIKit.UIColor[] Colors { get; }
	public virtual nfloat[] Locations { get; }
	// methods
	public virtual void SetColors (UIKit.UIColor[] colors, nfloat[] locations);
}

New Type: MapKit.MKLocalPointsOfInterestRequest

public class MKLocalPointsOfInterestRequest : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MKLocalPointsOfInterestRequest (Foundation.NSObjectFlag t);
	public MKLocalPointsOfInterestRequest (MKCoordinateRegion region);
	protected MKLocalPointsOfInterestRequest (IntPtr handle);
	public MKLocalPointsOfInterestRequest (CoreLocation.CLLocationCoordinate2D centerCoordinate, double radius);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual CoreLocation.CLLocationCoordinate2D Coordinate { get; }
	public virtual MKPointOfInterestFilter PointOfInterestFilter { get; set; }
	public virtual double Radius { get; }
	public virtual MKCoordinateRegion Region { get; }
	public static double RequestMaxRadius { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: MapKit.MKUserLocationView

public class MKUserLocationView : MapKit.MKAnnotationView, CoreAnimation.ICALayerDelegate, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAccessibilityIdentification, UIKit.IUIAppearance, UIKit.IUIAppearanceContainer, UIKit.IUICoordinateSpace, UIKit.IUIDynamicItem, UIKit.IUIFocusEnvironment, UIKit.IUIFocusItem, UIKit.IUIFocusItemContainer, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public MKUserLocationView ();
	public MKUserLocationView (CoreGraphics.CGRect frame);
	public MKUserLocationView (Foundation.NSCoder coder);
	protected MKUserLocationView (Foundation.NSObjectFlag t);
	protected MKUserLocationView (IntPtr handle);
	public MKUserLocationView (IMKAnnotation annotation, string reuseIdentifier);
	// properties
	public static MKUserLocationView.MKUserLocationViewAppearance Appearance { get; }
	public override IntPtr ClassHandle { get; }
	// methods
	public static MKUserLocationView.MKUserLocationViewAppearance AppearanceWhenContainedIn (System.Type[] containers);
	public static MKUserLocationView.MKUserLocationViewAppearance GetAppearance<T> ();
	public static MKUserLocationView.MKUserLocationViewAppearance GetAppearance<T> (UIKit.UITraitCollection traits);
	public static MKUserLocationView.MKUserLocationViewAppearance GetAppearance (UIKit.UITraitCollection traits);
	public static MKUserLocationView.MKUserLocationViewAppearance GetAppearance<T> (UIKit.UITraitCollection traits, System.Type[] containers);
	public static MKUserLocationView.MKUserLocationViewAppearance GetAppearance (UIKit.UITraitCollection traits, System.Type[] containers);

	// inner types
	public class MKUserLocationViewAppearance : MapKit.MKAnnotationView+MKAnnotationViewAppearance, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearance {
		// constructors
		protected MKUserLocationView.MKUserLocationViewAppearance (IntPtr handle);
	}
}

Namespace MediaPlayer

Type Changed: MediaPlayer.MPMediaItem

Modified base type:

-Foundation.NSObject
+MediaPlayer.MPMediaEntity

Removed property:

public static Foundation.NSString PropertyPersistentID { get; }

Added properties:

public Foundation.NSString AlbumArtist { get; }
public ulong AlbumArtistPersistentID { get; }
public ulong AlbumPersistentID { get; }
public Foundation.NSString AlbumTitle { get; }
public int AlbumTrackCount { get; }
public int AlbumTrackNumber { get; }
public Foundation.NSString Artist { get; }
public ulong ArtistPersistentID { get; }
public MPMediaItemArtwork Artwork { get; }
public Foundation.NSUrl AssetURL { get; }
public uint BeatsPerMinute { get; }
public double BookmarkTime { get; }
public Foundation.NSString Comments { get; }
public Foundation.NSString Composer { get; }
public ulong ComposerPersistentID { get; }
public Foundation.NSDate DateAdded { get; }
public int DiscCount { get; }
public int DiscNumber { get; }
public Foundation.NSString Genre { get; }
public ulong GenrePersistentID { get; }
public bool HasProtectedAsset { get; }
public bool IsCloudItem { get; }
public bool IsCompilation { get; }
public bool IsExplicitItem { get; }
public Foundation.NSDate LastPlayedDate { get; }
public Foundation.NSString Lyrics { get; }
public MPMediaType MediaType { get; }
public ulong PersistentID { get; }
public int PlayCount { get; }
public double PlaybackDuration { get; }
public Foundation.NSString PlaybackStoreID { get; }
public ulong PodcastPersistentID { get; }
public Foundation.NSString PodcastTitle { get; }
public uint Rating { get; }
public Foundation.NSDate ReleaseDate { get; }
public int SkipCount { get; }
public Foundation.NSString Title { get; }
public Foundation.NSString UserGrouping { get; }

Removed methods:

public static bool CanFilterByProperty (Foundation.NSString property);
public virtual void EncodeTo (Foundation.NSCoder encoder);
public virtual void EnumerateValues (Foundation.NSSet propertiesToEnumerate, MPMediaItemEnumerator enumerator);
public virtual Foundation.NSObject GetObject (Foundation.NSObject key);
public virtual Foundation.NSObject ValueForProperty (Foundation.NSString property);

Type Changed: MediaPlayer.MPMediaPlaylistProperty

Added property:

public static Foundation.NSString CloudGlobalId { get; }

New Type: MediaPlayer.IMPNowPlayingSessionDelegate

public interface IMPNowPlayingSessionDelegate : ObjCRuntime.INativeObject, System.IDisposable {
}

New Type: MediaPlayer.MPMediaEntity

public class MPMediaEntity : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MPMediaEntity ();
	public MPMediaEntity (Foundation.NSCoder coder);
	protected MPMediaEntity (Foundation.NSObjectFlag t);
	protected MPMediaEntity (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual ulong PersistentID { get; }
	public static Foundation.NSString PropertyPersistentID { get; }
	// methods
	public static bool CanFilterByProperty (Foundation.NSString property);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public virtual void EnumerateValues (Foundation.NSSet propertiesToEnumerate, MPMediaItemEnumerator enumerator);
	public virtual Foundation.NSObject GetObject (Foundation.NSObject key);
	public virtual Foundation.NSObject ValueForProperty (Foundation.NSString property);
}

New Type: MediaPlayer.MPMusicPlaybackState

[Serializable]
public enum MPMusicPlaybackState {
	Interrupted = 3,
	Paused = 2,
	Playing = 1,
	SeekingBackward = 5,
	SeekingForward = 4,
	Stopped = 0,
}

New Type: MediaPlayer.MPMusicPlayerApplicationController

public class MPMusicPlayerApplicationController : MediaPlayer.MPMusicPlayerController, Foundation.INSObjectProtocol, IMPMediaPlayback, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MPMusicPlayerApplicationController ();
	protected MPMusicPlayerApplicationController (Foundation.NSObjectFlag t);
	protected MPMusicPlayerApplicationController (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void Perform (System.Action<MPMusicPlayerControllerMutableQueue> queueTransaction, System.Action<MPMusicPlayerControllerQueue,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<MPMusicPlayerControllerQueue> PerformAsync (System.Action<MPMusicPlayerControllerMutableQueue> queueTransaction);
}

New Type: MediaPlayer.MPMusicPlayerController

public class MPMusicPlayerController : Foundation.NSObject, Foundation.INSObjectProtocol, IMPMediaPlayback, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MPMusicPlayerController (Foundation.NSObjectFlag t);
	protected MPMusicPlayerController (IntPtr handle);
	// properties
	public static MPMusicPlayerController ApplicationMusicPlayer { get; }
	public static MPMusicPlayerApplicationController ApplicationQueuePlayer { get; }
	public override IntPtr ClassHandle { get; }
	public virtual float CurrentPlaybackRate { get; set; }
	public virtual double CurrentPlaybackTime { get; set; }
	public virtual nuint IndexOfNowPlayingItem { get; }
	public virtual bool IsPreparedToPlay { get; }
	public virtual MPMediaItem NowPlayingItem { get; set; }
	public static Foundation.NSString NowPlayingItemDidChangeNotification { get; }
	public virtual MPMusicPlaybackState PlaybackState { get; }
	public static Foundation.NSString PlaybackStateDidChangeNotification { get; }
	public virtual MPMusicRepeatMode RepeatMode { get; set; }
	public virtual MPMusicShuffleMode ShuffleMode { get; set; }
	public static MPMusicPlayerController SystemMusicPlayer { get; }
	public virtual float Volume { get; set; }
	// methods
	public virtual void Append (MPMusicPlayerQueueDescriptor descriptor);
	public virtual void BeginGeneratingPlaybackNotifications ();
	public virtual void BeginSeekingBackward ();
	public virtual void BeginSeekingForward ();
	public virtual void EndGeneratingPlaybackNotifications ();
	public virtual void EndSeeking ();
	public virtual void Pause ();
	public virtual void Play ();
	public virtual void PrepareToPlay ();
	public virtual void PrepareToPlay (System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task PrepareToPlayAsync ();
	public virtual void Prepend (MPMusicPlayerQueueDescriptor descriptor);
	public virtual void SetQueue (MPMusicPlayerQueueDescriptor descriptor);
	public virtual void SetQueue (string[] storeIDs);
	public virtual void SkipToBeginning ();
	public virtual void SkipToNextItem ();
	public virtual void SkipToPreviousItem ();
	public virtual void Stop ();

	// inner types
	public static class Notifications {
		// methods
		public static Foundation.NSObject ObserveNowPlayingItemDidChange (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveNowPlayingItemDidChange (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObservePlaybackStateDidChange (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObservePlaybackStateDidChange (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
	}
}

New Type: MediaPlayer.MPMusicPlayerControllerMutableQueue

public class MPMusicPlayerControllerMutableQueue : MediaPlayer.MPMusicPlayerControllerQueue, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MPMusicPlayerControllerMutableQueue ();
	protected MPMusicPlayerControllerMutableQueue (Foundation.NSObjectFlag t);
	protected MPMusicPlayerControllerMutableQueue (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void InsertAfter (MPMusicPlayerQueueDescriptor queueDescriptor, MPMediaItem item);
	public virtual void RemoveItem (MPMediaItem item);
}

New Type: MediaPlayer.MPMusicPlayerControllerQueue

public class MPMusicPlayerControllerQueue : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MPMusicPlayerControllerQueue (Foundation.NSObjectFlag t);
	protected MPMusicPlayerControllerQueue (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static Foundation.NSString DidChangeNotification { get; }
	public virtual MPMediaItem[] Items { get; }

	// inner types
	public static class Notifications {
		// methods
		public static Foundation.NSObject ObserveDidChange (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveDidChange (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
	}
}

New Type: MediaPlayer.MPMusicPlayerPlayParameters

public class MPMusicPlayerPlayParameters : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MPMusicPlayerPlayParameters (Foundation.NSCoder coder);
	public MPMusicPlayerPlayParameters (Foundation.NSDictionary dictionary);
	protected MPMusicPlayerPlayParameters (Foundation.NSObjectFlag t);
	protected MPMusicPlayerPlayParameters (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSDictionary Dictionary { get; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: MediaPlayer.MPMusicPlayerPlayParametersQueueDescriptor

public class MPMusicPlayerPlayParametersQueueDescriptor : MediaPlayer.MPMusicPlayerQueueDescriptor, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MPMusicPlayerPlayParametersQueueDescriptor (Foundation.NSCoder coder);
	protected MPMusicPlayerPlayParametersQueueDescriptor (Foundation.NSObjectFlag t);
	public MPMusicPlayerPlayParametersQueueDescriptor (MPMusicPlayerPlayParameters[] playParametersQueue);
	protected MPMusicPlayerPlayParametersQueueDescriptor (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual MPMusicPlayerPlayParameters[] PlayParametersQueue { get; set; }
	public virtual MPMusicPlayerPlayParameters StartItemPlayParameters { get; set; }
	// methods
	public virtual void SetEndTime (double endTime, MPMusicPlayerPlayParameters playParameters);
	public virtual void SetStartTime (double startTime, MPMusicPlayerPlayParameters playParameters);
}

New Type: MediaPlayer.MPMusicPlayerQueueDescriptor

public class MPMusicPlayerQueueDescriptor : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MPMusicPlayerQueueDescriptor ();
	public MPMusicPlayerQueueDescriptor (Foundation.NSCoder coder);
	protected MPMusicPlayerQueueDescriptor (Foundation.NSObjectFlag t);
	protected MPMusicPlayerQueueDescriptor (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: MediaPlayer.MPMusicPlayerStoreQueueDescriptor

public class MPMusicPlayerStoreQueueDescriptor : MediaPlayer.MPMusicPlayerQueueDescriptor, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MPMusicPlayerStoreQueueDescriptor ();
	public MPMusicPlayerStoreQueueDescriptor (Foundation.NSCoder coder);
	protected MPMusicPlayerStoreQueueDescriptor (Foundation.NSObjectFlag t);
	protected MPMusicPlayerStoreQueueDescriptor (IntPtr handle);
	public MPMusicPlayerStoreQueueDescriptor (string[] storeIDs);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string StartItemID { get; set; }
	public virtual string[] StoreIDs { get; set; }
	// methods
	public virtual void SetEndTime (double endTime, string storeID);
	public virtual void SetStartTime (double startTime, string storeID);
}

New Type: MediaPlayer.MPMusicRepeatMode

[Serializable]
public enum MPMusicRepeatMode {
	All = 3,
	Default = 0,
	None = 1,
	One = 2,
}

New Type: MediaPlayer.MPMusicShuffleMode

[Serializable]
public enum MPMusicShuffleMode {
	Albums = 3,
	Default = 0,
	Off = 1,
	Songs = 2,
}

New Type: MediaPlayer.MPNowPlayingSession

public class MPNowPlayingSession : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MPNowPlayingSession (AVFoundation.AVPlayer[] players);
	protected MPNowPlayingSession (Foundation.NSObjectFlag t);
	protected MPNowPlayingSession (IntPtr handle);
	// properties
	public virtual bool Active { get; }
	public virtual bool CanBecomeActive { get; }
	public override IntPtr ClassHandle { get; }
	public IMPNowPlayingSessionDelegate Delegate { get; set; }
	public virtual MPNowPlayingInfoCenter NowPlayingInfoCenter { get; }
	public virtual AVFoundation.AVPlayer[] Players { get; }
	public virtual MPRemoteCommandCenter RemoteCommandCenter { get; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	public virtual void AddPlayer (AVFoundation.AVPlayer player);
	public virtual void BecomeActiveIfPossible (System.Action<bool> completion);
	public virtual System.Threading.Tasks.Task<bool> BecomeActiveIfPossibleAsync ();
	protected override void Dispose (bool disposing);
	public virtual void RemovePlayer (AVFoundation.AVPlayer player);
}

New Type: MediaPlayer.MPNowPlayingSessionDelegate

public class MPNowPlayingSessionDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, IMPNowPlayingSessionDelegate, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MPNowPlayingSessionDelegate ();
	protected MPNowPlayingSessionDelegate (Foundation.NSObjectFlag t);
	protected MPNowPlayingSessionDelegate (IntPtr handle);
	// methods
	public virtual void DidChangeActive (MPNowPlayingSession nowPlayingSession);
	public virtual void DidChangeCanBecomeActive (MPNowPlayingSession nowPlayingSession);
}

New Type: MediaPlayer.MPNowPlayingSessionDelegate_Extensions

public static class MPNowPlayingSessionDelegate_Extensions {
	// methods
	public static void DidChangeActive (this IMPNowPlayingSessionDelegate This, MPNowPlayingSession nowPlayingSession);
	public static void DidChangeCanBecomeActive (this IMPNowPlayingSessionDelegate This, MPNowPlayingSession nowPlayingSession);
}

New Type: MediaPlayer.MPVolumeView

public class MPVolumeView : UIKit.UIView, CoreAnimation.ICALayerDelegate, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAccessibilityIdentification, UIKit.IUIAppearance, UIKit.IUIAppearanceContainer, UIKit.IUICoordinateSpace, UIKit.IUIDynamicItem, UIKit.IUIFocusEnvironment, UIKit.IUIFocusItem, UIKit.IUIFocusItemContainer, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public MPVolumeView ();
	public MPVolumeView (CoreGraphics.CGRect frame);
	public MPVolumeView (Foundation.NSCoder coder);
	protected MPVolumeView (Foundation.NSObjectFlag t);
	protected MPVolumeView (IntPtr handle);
	// properties
	public static MPVolumeView.MPVolumeViewAppearance Appearance { get; }
	public virtual bool AreWirelessRoutesAvailable { get; }
	public override IntPtr ClassHandle { get; }
	public virtual bool IsWirelessRouteActive { get; }
	public virtual bool ShowsRouteButton { get; set; }
	public virtual bool ShowsVolumeSlider { get; set; }
	public virtual UIKit.UIImage VolumeWarningSliderImage { get; set; }
	public static Foundation.NSString WirelessRouteActiveDidChangeNotification { get; }
	public static Foundation.NSString WirelessRoutesAvailableDidChangeNotification { get; }
	// methods
	public static MPVolumeView.MPVolumeViewAppearance AppearanceWhenContainedIn (System.Type[] containers);
	public static MPVolumeView.MPVolumeViewAppearance GetAppearance<T> ();
	public static MPVolumeView.MPVolumeViewAppearance GetAppearance<T> (UIKit.UITraitCollection traits);
	public static MPVolumeView.MPVolumeViewAppearance GetAppearance (UIKit.UITraitCollection traits);
	public static MPVolumeView.MPVolumeViewAppearance GetAppearance<T> (UIKit.UITraitCollection traits, System.Type[] containers);
	public static MPVolumeView.MPVolumeViewAppearance GetAppearance (UIKit.UITraitCollection traits, System.Type[] containers);
	public virtual UIKit.UIImage GetMaximumVolumeSliderImage (UIKit.UIControlState state);
	public virtual UIKit.UIImage GetMinimumVolumeSliderImage (UIKit.UIControlState state);
	public virtual UIKit.UIImage GetRouteButtonImage (UIKit.UIControlState state);
	public virtual CoreGraphics.CGRect GetRouteButtonRect (CoreGraphics.CGRect bounds);
	public virtual CoreGraphics.CGRect GetVolumeSliderRect (CoreGraphics.CGRect bounds);
	public virtual UIKit.UIImage GetVolumeThumbImage (UIKit.UIControlState state);
	public virtual CoreGraphics.CGRect GetVolumeThumbRect (CoreGraphics.CGRect bounds, CoreGraphics.CGRect columeSliderRect, float value);
	public virtual void SetMaximumVolumeSliderImage (UIKit.UIImage image, UIKit.UIControlState state);
	public virtual void SetMinimumVolumeSliderImage (UIKit.UIImage image, UIKit.UIControlState state);
	public virtual void SetRouteButtonImage (UIKit.UIImage image, UIKit.UIControlState state);
	public virtual void SetVolumeThumbImage (UIKit.UIImage image, UIKit.UIControlState state);

	// inner types
	public class MPVolumeViewAppearance : UIKit.UIView+UIViewAppearance, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearance {
		// constructors
		protected MPVolumeView.MPVolumeViewAppearance (IntPtr handle);
	}
	public static class Notifications {
		// methods
		public static Foundation.NSObject ObserveWirelessRouteActiveDidChange (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveWirelessRouteActiveDidChange (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveWirelessRoutesAvailableDidChange (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveWirelessRoutesAvailableDidChange (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
	}
}

Namespace Metal

Type Changed: Metal.MTLBlitCommandEncoder_Extensions

Added methods:

public static void ResolveCounters (this IMTLBlitCommandEncoder This, MTLCounterSampleBuffer sampleBuffer, Foundation.NSRange range, IMTLBuffer destinationBuffer, nuint destinationOffset);
public static void SampleCounters (this IMTLBlitCommandEncoder This, MTLCounterSampleBuffer sampleBuffer, nuint sampleIndex, bool barrier);

Type Changed: Metal.MTLCommandBuffer_Extensions

Added methods:

public static IMTLBlitCommandEncoder CreateBlitCommandEncoder (this IMTLCommandBuffer This, MTLBlitPassDescriptor blitPassDescriptor);
public static IMTLComputeCommandEncoder CreateComputeCommandEncoder (this IMTLCommandBuffer This, MTLComputePassDescriptor computePassDescriptor);
public static MTLCommandBufferErrorOption GetErrorOptions (this IMTLCommandBuffer This);
public static IMTLLogContainer GetLogs (this IMTLCommandBuffer This);

Type Changed: Metal.MTLCompileOptions

Added properties:

public virtual string InstallName { get; set; }
public virtual IMTLDynamicLibrary[] Libraries { get; set; }
public virtual MTLLibraryType LibraryType { get; set; }
public virtual bool PreserveInvariance { get; set; }

Type Changed: Metal.MTLComputeCommandEncoder_Extensions

Added method:


[Obsolete ("Use the overload that takes an IMTLCounterSampleBuffer instead.")]
public static void SampleCounters (this IMTLComputeCommandEncoder This, MTLCounterSampleBuffer sampleBuffer, nuint sampleIndex, bool barrier);

Type Changed: Metal.MTLComputePipelineDescriptor

Added properties:

public virtual IMTLBinaryArchive[] BinaryArchives { get; set; }
public virtual IMTLDynamicLibrary[] InsertLibraries { get; set; }
public virtual MTLLinkedFunctions LinkedFunctions { get; set; }

Type Changed: Metal.MTLDevice_Extensions

Added methods:

public static IMTLBinaryArchive CreateBinaryArchive (this IMTLDevice This, MTLBinaryArchiveDescriptor descriptor, out Foundation.NSError error);

[Obsolete ("Use 'CreateIMTLCounterSampleBuffer' instead.")]
public static MTLCounterSampleBuffer CreateCounterSampleBuffer (this IMTLDevice This, MTLCounterSampleBufferDescriptor descriptor, out Foundation.NSError error);
public static IMTLDynamicLibrary CreateDynamicLibrary (this IMTLDevice This, Foundation.NSUrl url, out Foundation.NSError error);
public static IMTLDynamicLibrary CreateDynamicLibrary (this IMTLDevice This, IMTLLibrary library, out Foundation.NSError error);
public static MTLCounterSet[] GetCounterSets (this IMTLDevice This);
public static void GetSampleTimestamps (this IMTLDevice This, nuint cpuTimestamp, nuint gpuTimestamp);
public static bool GetSupportsDynamicLibraries (this IMTLDevice This);
public static bool GetSupportsPullModelInterpolation (this IMTLDevice This);
public static bool SupportsCounterSampling (this IMTLDevice This, MTLCounterSamplingPoint samplingPoint);

Type Changed: Metal.MTLGpuFamily

Added values:

Apple6 = 1006,
Apple7 = 1007,

Type Changed: Metal.MTLIndirectCommandBufferDescriptor

Added interface:

Foundation.INSCopying

Added property:

public virtual nuint MaxKernelBufferBindCount { get; set; }

Added method:

public virtual Foundation.NSObject Copy (Foundation.NSZone zone);

Type Changed: Metal.MTLLibrary_Extensions

Added methods:

public static void CreateFunction (this IMTLLibrary This, MTLFunctionDescriptor descriptor, System.Action<IMTLFunction,Foundation.NSError> completionHandler);
public static IMTLFunction CreateFunction (this IMTLLibrary This, MTLFunctionDescriptor descriptor, out Foundation.NSError error);
public static string GetInstallName (this IMTLLibrary This);
public static MTLLibraryType GetType (this IMTLLibrary This);

Type Changed: Metal.MTLRenderCommandEncoder_Extensions

Added method:

public static void SampleCounters (this IMTLRenderCommandEncoder This, MTLCounterSampleBuffer sampleBuffer, nuint sampleIndex, bool barrier);

Type Changed: Metal.MTLRenderPassDescriptor

Added property:

public virtual MTLRenderPassSampleBufferAttachmentDescriptorArray SampleBufferAttachments { get; }

Type Changed: Metal.MTLRenderPipelineDescriptor

Added property:

public virtual IMTLBinaryArchive[] BinaryArchives { get; set; }

Type Changed: Metal.MTLSamplerAddressMode

Added value:

MirrorClampToEdge = 1,

New Type: Metal.IMTLBinaryArchive

public interface IMTLBinaryArchive : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual IMTLDevice Device { get; }
	public virtual string Label { get; set; }
	// methods
	public virtual bool AddComputePipelineFunctions (MTLComputePipelineDescriptor descriptor, out Foundation.NSError error);
	public virtual bool AddRenderPipelineFunctions (MTLRenderPipelineDescriptor descriptor, out Foundation.NSError error);
	public virtual bool Serialize (Foundation.NSUrl url, out Foundation.NSError error);
}

New Type: Metal.IMTLCommandBufferEncoderInfo

public interface IMTLCommandBufferEncoderInfo : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual string[] DebugSignposts { get; }
	public virtual MTLCommandEncoderErrorState ErrorState { get; }
	public virtual string Label { get; }
}

New Type: Metal.IMTLCounter

public interface IMTLCounter : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual string Name { get; }
}

New Type: Metal.IMTLCounterSampleBuffer

public interface IMTLCounterSampleBuffer : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual IMTLDevice Device { get; }
	public virtual string Label { get; }
	public virtual nuint SampleCount { get; }
	// methods
	public virtual Foundation.NSData ResolveCounterRange (Foundation.NSRange range);
}

New Type: Metal.IMTLCounterSet

public interface IMTLCounterSet : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual IMTLCounter[] Counters { get; }
	public virtual string Name { get; }
}

New Type: Metal.IMTLDynamicLibrary

public interface IMTLDynamicLibrary : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual IMTLDevice Device { get; }
	public virtual string InstallName { get; }
	public virtual string Label { get; set; }
	// methods
	public virtual bool Serialize (Foundation.NSUrl url, out Foundation.NSError error);
}

New Type: Metal.IMTLFunctionLog

public interface IMTLFunctionLog : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual IMTLFunctionLogDebugLocation DebugLocation { get; }
	public virtual string EncoderLabel { get; }
	public virtual IMTLFunction Function { get; }
	public virtual MTLFunctionLogType Type { get; }
}

New Type: Metal.IMTLFunctionLogDebugLocation

public interface IMTLFunctionLogDebugLocation : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual nuint Column { get; }
	public virtual string FunctionName { get; }
	public virtual nuint Line { get; }
	public virtual Foundation.NSUrl Url { get; }
}

New Type: Metal.IMTLLogContainer

public interface IMTLLogContainer : ObjCRuntime.INativeObject, System.IDisposable {
}

New Type: Metal.MTLAccelerationStructureInstanceOptions

[Serializable]
[Flags]
public enum MTLAccelerationStructureInstanceOptions {
	DisableTriangleCulling = 1,
	NonOpaque = 8,
	None = 0,
	Opaque = 4,
	TriangleFrontFacingWindingCounterClockwise = 2,
}

New Type: Metal.MTLAccelerationStructureSizes

public struct MTLAccelerationStructureSizes {
	// fields
	public nuint AccelerationStructureSize;
	public nuint BuildScratchBufferSize;
	public nuint RefitScratchBufferSize;
}

New Type: Metal.MTLBinaryArchiveDescriptor

public class MTLBinaryArchiveDescriptor : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MTLBinaryArchiveDescriptor ();
	protected MTLBinaryArchiveDescriptor (Foundation.NSObjectFlag t);
	protected MTLBinaryArchiveDescriptor (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSUrl Url { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: Metal.MTLBinaryArchiveError

[Serializable]
public enum MTLBinaryArchiveError {
	CompilationFailure = 3,
	InvalidFile = 1,
	None = 0,
	UnexpectedElement = 2,
}

New Type: Metal.MTLBinaryArchiveErrorExtensions

public static class MTLBinaryArchiveErrorExtensions {
	// methods
	public static Foundation.NSString GetDomain (this MTLBinaryArchiveError self);
}

New Type: Metal.MTLBlitPassDescriptor

public class MTLBlitPassDescriptor : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MTLBlitPassDescriptor ();
	protected MTLBlitPassDescriptor (Foundation.NSObjectFlag t);
	protected MTLBlitPassDescriptor (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual MTLBlitPassSampleBufferAttachmentDescriptorArray SampleBufferAttachments { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static MTLBlitPassDescriptor Create ();
}

New Type: Metal.MTLBlitPassSampleBufferAttachmentDescriptor

public class MTLBlitPassSampleBufferAttachmentDescriptor : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MTLBlitPassSampleBufferAttachmentDescriptor ();
	protected MTLBlitPassSampleBufferAttachmentDescriptor (Foundation.NSObjectFlag t);
	protected MTLBlitPassSampleBufferAttachmentDescriptor (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nuint EndOfEncoderSampleIndex { get; set; }
	public virtual IMTLCounterSampleBuffer SampleBuffer { get; set; }
	public virtual nuint StartOfEncoderSampleIndex { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: Metal.MTLBlitPassSampleBufferAttachmentDescriptorArray

public class MTLBlitPassSampleBufferAttachmentDescriptorArray : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MTLBlitPassSampleBufferAttachmentDescriptorArray ();
	protected MTLBlitPassSampleBufferAttachmentDescriptorArray (Foundation.NSObjectFlag t);
	protected MTLBlitPassSampleBufferAttachmentDescriptorArray (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public MTLBlitPassSampleBufferAttachmentDescriptor Item { get; set; }
	// methods
	public virtual MTLBlitPassSampleBufferAttachmentDescriptor GetObject (nuint attachmentIndex);
	public virtual void SetObject (MTLBlitPassSampleBufferAttachmentDescriptor attachment, nuint attachmentIndex);
}

New Type: Metal.MTLCommandBufferDescriptor

public class MTLCommandBufferDescriptor : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MTLCommandBufferDescriptor ();
	protected MTLCommandBufferDescriptor (Foundation.NSObjectFlag t);
	protected MTLCommandBufferDescriptor (IntPtr handle);
	// properties
	public static Foundation.NSString BufferEncoderInfoErrorKey { get; }
	public override IntPtr ClassHandle { get; }
	public virtual MTLCommandBufferErrorOption ErrorOptions { get; set; }
	public virtual bool RetainedReferences { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: Metal.MTLCommandBufferErrorOption

[Serializable]
[Flags]
public enum MTLCommandBufferErrorOption {
	EncoderExecutionStatus = 1,
	None = 0,
}

New Type: Metal.MTLCommandEncoderErrorState

[Serializable]
public enum MTLCommandEncoderErrorState {
	Affected = 2,
	Completed = 1,
	Faulted = 4,
	Pending = 3,
	Unknown = 0,
}

New Type: Metal.MTLCommandQueue_Extensions

public static class MTLCommandQueue_Extensions {
	// methods
	public static IMTLCommandBuffer CreateCommandBuffer (this IMTLCommandQueue This, MTLCommandBufferDescriptor descriptor);
}

New Type: Metal.MTLCommonCounter

[Serializable]
public enum MTLCommonCounter {
	ClipperInvocations = 4,
	ClipperPrimitivesOut = 5,
	ComputeKernelInvocations = 8,
	FragmentCycles = 13,
	FragmentInvocations = 6,
	FragmentsPassed = 7,
	PostTessellationVertexCycles = 12,
	PostTessellationVertexInvocations = 3,
	RenderTargetWriteCycles = 14,
	SetStageUtilization = 16,
	SetStatistic = 17,
	SetTimestamp = 15,
	TessellationCycles = 11,
	TessellationInputPatches = 1,
	Timestamp = 0,
	TotalCycles = 9,
	VertexCycles = 10,
	VertexInvocations = 2,
}

New Type: Metal.MTLCommonCounterExtensions

public static class MTLCommonCounterExtensions {
	// methods
	public static Foundation.NSString GetConstant (this MTLCommonCounter self);
	public static MTLCommonCounter GetValue (Foundation.NSString constant);
}

New Type: Metal.MTLComputePassDescriptor

public class MTLComputePassDescriptor : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MTLComputePassDescriptor ();
	protected MTLComputePassDescriptor (Foundation.NSObjectFlag t);
	protected MTLComputePassDescriptor (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual MTLDispatchType DispatchType { get; set; }
	public virtual MTLComputePassSampleBufferAttachmentDescriptorArray SampleBufferAttachments { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static MTLComputePassDescriptor Create ();
}

New Type: Metal.MTLComputePassSampleBufferAttachmentDescriptor

public class MTLComputePassSampleBufferAttachmentDescriptor : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MTLComputePassSampleBufferAttachmentDescriptor ();
	protected MTLComputePassSampleBufferAttachmentDescriptor (Foundation.NSObjectFlag t);
	protected MTLComputePassSampleBufferAttachmentDescriptor (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nuint EndOfEncoderSampleIndex { get; set; }
	public virtual IMTLCounterSampleBuffer SampleBuffer { get; set; }
	public virtual nuint StartOfEncoderSampleIndex { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: Metal.MTLComputePassSampleBufferAttachmentDescriptorArray

public class MTLComputePassSampleBufferAttachmentDescriptorArray : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MTLComputePassSampleBufferAttachmentDescriptorArray ();
	protected MTLComputePassSampleBufferAttachmentDescriptorArray (Foundation.NSObjectFlag t);
	protected MTLComputePassSampleBufferAttachmentDescriptorArray (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public MTLComputePassSampleBufferAttachmentDescriptor Item { get; set; }
	// methods
	public virtual MTLComputePassSampleBufferAttachmentDescriptor GetObject (nuint attachmentIndex);
	public virtual void SetObject (MTLComputePassSampleBufferAttachmentDescriptor attachment, nuint attachmentIndex);
}

New Type: Metal.MTLCounter

public abstract class MTLCounter : Foundation.NSObject, Foundation.INSObjectProtocol, IMTLCounter, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MTLCounter ();
	protected MTLCounter (Foundation.NSObjectFlag t);
	protected MTLCounter (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string Name { get; }
}

New Type: Metal.MTLCounterSampleBuffer

public abstract class MTLCounterSampleBuffer : Foundation.NSObject, Foundation.INSObjectProtocol, IMTLCounterSampleBuffer, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MTLCounterSampleBuffer ();
	protected MTLCounterSampleBuffer (Foundation.NSObjectFlag t);
	protected MTLCounterSampleBuffer (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual IMTLDevice Device { get; }
	public virtual string Label { get; }
	public virtual nuint SampleCount { get; }
	// methods
	public virtual Foundation.NSData ResolveCounterRange (Foundation.NSRange range);
}

New Type: Metal.MTLCounterSampleBufferDescriptor

public class MTLCounterSampleBufferDescriptor : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MTLCounterSampleBufferDescriptor ();
	protected MTLCounterSampleBufferDescriptor (Foundation.NSObjectFlag t);
	protected MTLCounterSampleBufferDescriptor (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual IMTLCounterSet CounterSet { get; set; }
	public virtual string Label { get; set; }
	public virtual nuint SampleCount { get; set; }
	public virtual MTLStorageMode StorageMode { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: Metal.MTLCounterSampleBufferError

[Serializable]
public enum MTLCounterSampleBufferError {
	Internal = 1,
	OutOfMemory = 0,
}

New Type: Metal.MTLCounterSampleBufferErrorExtensions

public static class MTLCounterSampleBufferErrorExtensions {
	// methods
	public static Foundation.NSString GetDomain (this MTLCounterSampleBufferError self);
}

New Type: Metal.MTLCounterSamplingPoint

[Serializable]
public enum MTLCounterSamplingPoint {
	BlitBoundary = 4,
	DispatchBoundary = 2,
	DrawBoundary = 1,
	StageBoundary = 0,
	TileDispatchBoundary = 3,
}

New Type: Metal.MTLCounterSet

public abstract class MTLCounterSet : Foundation.NSObject, Foundation.INSObjectProtocol, IMTLCounterSet, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MTLCounterSet ();
	protected MTLCounterSet (Foundation.NSObjectFlag t);
	protected MTLCounterSet (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual IMTLCounter[] Counters { get; }
	public virtual string Name { get; }
}

New Type: Metal.MTLDynamicLibraryError

[Serializable]
public enum MTLDynamicLibraryError {
	CompilationFailure = 2,
	DependencyLoadFailure = 4,
	InvalidFile = 1,
	None = 0,
	UnresolvedInstallName = 3,
	Unsupported = 5,
}

New Type: Metal.MTLDynamicLibraryErrorExtensions

public static class MTLDynamicLibraryErrorExtensions {
	// methods
	public static Foundation.NSString GetDomain (this MTLDynamicLibraryError self);
}

New Type: Metal.MTLFunctionDescriptor

public class MTLFunctionDescriptor : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MTLFunctionDescriptor (Foundation.NSObjectFlag t);
	protected MTLFunctionDescriptor (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual MTLFunctionConstantValues ConstantValues { get; set; }
	public virtual string Name { get; set; }
	public virtual MTLFunctionOptions Options { get; set; }
	public virtual string SpecializedName { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static MTLFunctionDescriptor Create ();
}

New Type: Metal.MTLFunctionLogType

[Serializable]
public enum MTLFunctionLogType {
	Validation = 0,
}

New Type: Metal.MTLFunctionOptions

[Serializable]
[Flags]
public enum MTLFunctionOptions {
	CompileToBinary = 1,
	None = 0,
}

New Type: Metal.MTLIndirectComputeCommand_Extensions

public static class MTLIndirectComputeCommand_Extensions {
	// methods
	public static void SetImageblock (this IMTLIndirectComputeCommand This, nuint width, nuint height);
}

New Type: Metal.MTLLibraryType

[Serializable]
public enum MTLLibraryType {
	Dynamic = 1,
	Executable = 0,
}

New Type: Metal.MTLLinkedFunctions

public class MTLLinkedFunctions : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MTLLinkedFunctions (Foundation.NSObjectFlag t);
	protected MTLLinkedFunctions (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual IMTLFunction[] Functions { get; set; }
	public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSArray<IMTLFunction>> Groups { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static MTLLinkedFunctions Create ();
}

New Type: Metal.MTLRenderPassSampleBufferAttachmentDescriptor

public class MTLRenderPassSampleBufferAttachmentDescriptor : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MTLRenderPassSampleBufferAttachmentDescriptor ();
	protected MTLRenderPassSampleBufferAttachmentDescriptor (Foundation.NSObjectFlag t);
	protected MTLRenderPassSampleBufferAttachmentDescriptor (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nuint EndOfFragmentSampleIndex { get; set; }
	public virtual nuint EndOfVertexSampleIndex { get; set; }
	public virtual IMTLCounterSampleBuffer SampleBuffer { get; set; }
	public virtual nuint StartOfFragmentSampleIndex { get; set; }
	public virtual nuint StartOfVertexSampleIndex { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: Metal.MTLRenderPassSampleBufferAttachmentDescriptorArray

public class MTLRenderPassSampleBufferAttachmentDescriptorArray : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MTLRenderPassSampleBufferAttachmentDescriptorArray ();
	protected MTLRenderPassSampleBufferAttachmentDescriptorArray (Foundation.NSObjectFlag t);
	protected MTLRenderPassSampleBufferAttachmentDescriptorArray (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public MTLRenderPassSampleBufferAttachmentDescriptor Item { get; set; }
	// methods
	public virtual MTLRenderPassSampleBufferAttachmentDescriptor GetObject (nuint attachmentIndex);
	public virtual void SetObject (MTLRenderPassSampleBufferAttachmentDescriptor attachment, nuint attachmentIndex);
}

Namespace MetalPerformanceShaders

Type Changed: MetalPerformanceShaders.MPSCnnConvolution

Obsoleted methods:

 [Obsolete ("Always throws 'NotSupportedException' (not a public API).")]
 public virtual void EncodeToCommandBuffer (Metal.IMTLCommandBuffer commandBuffer, MPSImage sourceImage, MPSImage destinationImage, out MPSCnnConvolutionState state);

Type Changed: MetalPerformanceShaders.MPSCnnConvolutionNode

Obsoleted properties:

 [Obsolete ("Empty stub (not a public API).")]
 public virtual MPSCnnConvolutionStateNode ConvolutionState { get; }

Type Changed: MetalPerformanceShaders.MPSCnnConvolutionState

Obsoleted constructors:

 [Obsolete ("Always throws 'NotSupportedException' (not a public API).")]
 protected MPSCnnConvolutionState (Foundation.NSObjectFlag t);
 [Obsolete ("Always throws 'NotSupportedException' (not a public API).")]
 protected MPSCnnConvolutionState (IntPtr handle);

Modified constructors:

-protected MPSCnnConvolutionState (IntPtr handle)
+protected MPSCnnConvolutionState (IntPtr handle)

Obsoleted properties:

 [Obsolete ("Empty stub (not a public API).")]
 public override IntPtr ClassHandle { get; }
 [Obsolete ("Empty stub (not a public API).")]
 public virtual nuint KernelHeight { get; }
 [Obsolete ("Empty stub (not a public API).")]
 public virtual nuint KernelWidth { get; }
 [Obsolete ("Empty stub (not a public API).")]
 public virtual nuint SourceHeight { get; }
 [Obsolete ("Empty stub (not a public API).")]
 public virtual MPSOffset SourceOffset { get; }
 [Obsolete ("Empty stub (not a public API).")]
 public virtual nuint SourceWidth { get; }

Type Changed: MetalPerformanceShaders.MPSCnnConvolutionTranspose

Obsoleted methods:

 [Obsolete ("Always throws 'NotSupportedException' (not a public API).")]
 public virtual MPSImage EncodeToCommandBuffer (Metal.IMTLCommandBuffer commandBuffer, MPSImage sourceImage, MPSCnnConvolutionState convolutionState);

Type Changed: MetalPerformanceShaders.MPSCommandBuffer

Added properties:

public virtual Metal.MTLCommandBufferErrorOption ErrorOptions { get; }
public virtual Metal.IMTLLogContainer Logs { get; }

Added methods:

public virtual Metal.IMTLBlitCommandEncoder CreateBlitCommandEncoder (Metal.MTLBlitPassDescriptor blitPassDescriptor);
public virtual Metal.IMTLComputeCommandEncoder CreateComputeCommandEncoder (Metal.MTLComputePassDescriptor computePassDescriptor);

Namespace NaturalLanguage

Type Changed: NaturalLanguage.NLEmbedding

Added methods:

public static nuint GetCurrentSentenceEmbeddingRevision (Foundation.NSString language);
public static nuint GetCurrentSentenceEmbeddingRevision (NLLanguage language);
public static NLEmbedding GetSentenceEmbedding (Foundation.NSString language);
public static NLEmbedding GetSentenceEmbedding (NLLanguage language);
public static NLEmbedding GetSentenceEmbedding (Foundation.NSString language, nuint revision);
public static NLEmbedding GetSentenceEmbedding (NLLanguage language, nuint revision);
public static Foundation.NSIndexSet GetSupportedSentenceEmbeddingRevisions (Foundation.NSString language);
public static Foundation.NSIndexSet GetSupportedSentenceEmbeddingRevisions (NLLanguage language);

Type Changed: NaturalLanguage.NLModel

Added methods:

public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSNumber> GetNativePredictedLabelHypotheses (string string, nuint maximumCount);
public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSNumber>[] GetNativePredictedLabelHypotheses (string[] tokens, nuint maximumCount);
public System.Collections.Generic.Dictionary<NLLanguage,System.Double> GetPredictedLabelHypotheses (string string, nuint maximumCount);
public System.Collections.Generic.Dictionary<NLLanguage,System.Double>[] GetPredictedLabelHypotheses (string[] tokens, nuint maximumCount);

Type Changed: NaturalLanguage.NLTagger

Added methods:

public Foundation.NSDictionary<Foundation.NSString,Foundation.NSNumber> GetNativeTagHypotheses (nuint characterIndex, NLTokenUnit unit, Foundation.NSString scheme, nuint maximumCount);
public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSNumber> GetNativeTagHypotheses (nuint characterIndex, NLTokenUnit unit, Foundation.NSString scheme, nuint maximumCount, out Foundation.NSRange tokenRange);
public System.Collections.Generic.Dictionary<NLLanguage,System.Double> GetTagHypotheses (nuint characterIndex, NLTokenUnit unit, NLTagScheme scheme, nuint maximumCount);
public System.Collections.Generic.Dictionary<NLLanguage,System.Double> GetTagHypotheses (nuint characterIndex, NLTokenUnit unit, NLTagScheme scheme, nuint maximumCount, out Foundation.NSRange tokenRange);
public virtual Foundation.NSRange GetTokenRange (Foundation.NSRange range, NLTokenUnit unit);

Type Changed: NaturalLanguage.NLTokenizer

Added method:

public virtual Foundation.NSRange GetTokenRange (Foundation.NSRange range);

Namespace ObjCRuntime

Type Changed: ObjCRuntime.Constants

Modified fields:

-public const string SdkVersion = "13.4";
+public const string SdkVersion = "14.0";
-public const string Version = "13.20.2";
+public const string Version = "14.0.0";

Added fields:

public static const string AccessibilityLibrary = "/System/Library/Frameworks/Accessibility.framework/Accessibility";
public static const string AppTrackingTransparencyLibrary = "/System/Library/Frameworks/AppTrackingTransparency.framework/AppTrackingTransparency";
public static const string CoreHapticsLibrary = "/System/Library/Frameworks/CoreHaptics.framework/CoreHaptics";
public static const string IntentsLibrary = "/System/Library/Frameworks/Intents.framework/Intents";
public static const string LinkPresentationLibrary = "/System/Library/Frameworks/LinkPresentation.framework/LinkPresentation";
public static const string MLComputeLibrary = "/System/Library/Frameworks/MLCompute.framework/MLCompute";
public static const string UniformTypeIdentifiersLibrary = "/System/Library/Frameworks/UniformTypeIdentifiers.framework/UniformTypeIdentifiers";

Namespace Photos

Type Changed: Photos.PHAuthorizationStatus

Added value:

Limited = 4,

Type Changed: Photos.PHPhotoLibrary

Added methods:

public static PHAuthorizationStatus GetAuthorizationStatus (PHAccessLevel accessLevel);
public static void RequestAuthorization (PHAccessLevel accessLevel, System.Action<PHAuthorizationStatus> handler);
public static System.Threading.Tasks.Task<PHAuthorizationStatus> RequestAuthorizationAsync (PHAccessLevel accessLevel);

Type Changed: Photos.PHPhotosError

Added value:

NetworkAccessRequired = 3164,

New Type: Photos.PHAccessLevel

[Serializable]
public enum PHAccessLevel {
	AddOnly = 1,
	ReadWrite = 2,
}

Namespace ReplayKit

Type Changed: ReplayKit.RPScreenRecorder

Added methods:

public virtual void StopRecording (Foundation.NSUrl url, System.Action<Foundation.NSError> completionHandler);
public virtual System.Threading.Tasks.Task StopRecordingAsync (Foundation.NSUrl url);

Namespace SceneKit

Type Changed: SceneKit.SCNGeometryElement

Added method:

public static SCNGeometryElement FromBuffer (Metal.IMTLBuffer buffer, SCNGeometryPrimitiveType primitiveType, nint primitiveCount, nint bytesPerIndex);

Type Changed: SceneKit.SCNRenderer

Added property:

public virtual Metal.MTLRenderPassDescriptor CurrentRenderPassDescriptor { get; }

Type Changed: SceneKit.SCNSceneRenderer

Added property:

public virtual Metal.MTLRenderPassDescriptor CurrentRenderPassDescriptor { get; }

Type Changed: SceneKit.SCNSceneRenderer_Extensions

Added method:

public static Metal.MTLRenderPassDescriptor GetCurrentRenderPassDescriptor (this ISCNSceneRenderer This);

Type Changed: SceneKit.SCNView

Obsoleted properties:

 [Obsolete ("Empty stub. (not a public API).")]
 public virtual bool DrawableResizesAsynchronously { get; set; }

Added property:

public virtual Metal.MTLRenderPassDescriptor CurrentRenderPassDescriptor { get; }

Namespace Security

Type Changed: Security.SecStatusCode

Added values:

CertificateIsCA = -67902,
RestrictedApi = -34020,

Type Changed: Security.SecTrust

Added method:

public SecKey GetKey ();

Type Changed: Security.SslStatus

Added value:

SslEarlyDataRejected = -9890,

Namespace SpriteKit

Type Changed: SpriteKit.SKView

Added property:

public virtual bool DisableDepthStencilBuffer { get; set; }

Namespace StoreKit

Type Changed: StoreKit.SKPaymentQueue

Added property:

public virtual ISKPaymentTransactionObserver[] TransactionObservers { get; }

Type Changed: StoreKit.SKPaymentTransactionObserver

Added method:

public virtual void DidRevokeEntitlements (SKPaymentQueue queue, string[] productIdentifiers);

Type Changed: StoreKit.SKPaymentTransactionObserver_Extensions

Added method:

public static void DidRevokeEntitlements (this ISKPaymentTransactionObserver This, SKPaymentQueue queue, string[] productIdentifiers);

Type Changed: StoreKit.SKProduct

Added property:

public virtual bool IsFamilyShareable { get; }

Type Changed: StoreKit.SKStoreProductParameterKey

Added properties:

public static Foundation.NSString AdNetworkSourceAppStoreIdentifier { get; }
public static Foundation.NSString AdNetworkVersion { get; }

Type Changed: StoreKit.StoreProductParameters

Added properties:

public string AdNetworkSourceAppStoreIdentifier { get; }
public string AdNetworkVersion { get; }
public string ProductIdentifier { get; }
public string ProviderToken { get; }

Namespace TVMLKit

Type Changed: TVMLKit.TVApplicationControllerContext

Added property:

public virtual bool SupportsPictureInPicturePlayback { get; set; }

Namespace UIKit

Type Changed: UIKit.NSCollectionLayoutSection

Added property:

public virtual UIContentInsetsReference ContentInsetsReference { get; set; }

Added method:

public static NSCollectionLayoutSection GetSection (UICollectionLayoutListConfiguration listConfiguration, INSCollectionLayoutEnvironment layoutEnvironment);

Type Changed: UIKit.NSLayoutManager

Obsoleted methods:

 [Obsolete ("Always throws 'NotSupportedException' (not a public API).")]
 public virtual void ReplaceTextStorage (NSTextStorage newTextStorage);
 [Obsolete ("Always throws 'NotSupportedException' (not a public API).")]
 public virtual void SetTemporaryAttributes (Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> attributes, Foundation.NSRange characterReange);

Type Changed: UIKit.NSMutableParagraphStyle

Added property:

public virtual NSLineBreakStrategy LineBreakStrategy { get; set; }

Type Changed: UIKit.NSParagraphStyle

Added property:

public virtual NSLineBreakStrategy LineBreakStrategy { get; set; }

Type Changed: UIKit.UIAccessibility

Added properties:

public static bool ButtonShapesEnabled { get; }
public static bool PrefersCrossFadeTransitions { get; }

Type Changed: UIKit.UIAccessibilityCustomAction

Added constructors:

public UIAccessibilityCustomAction (Foundation.NSAttributedString attributedName, UIImage image, UIAccessibilityCustomActionHandler actionHandler);
public UIAccessibilityCustomAction (string name, UIImage image, UIAccessibilityCustomActionHandler actionHandler);
public UIAccessibilityCustomAction (Foundation.NSAttributedString attributedName, UIImage image, Foundation.NSObject target, ObjCRuntime.Selector selector);
public UIAccessibilityCustomAction (string name, UIImage image, Foundation.NSObject target, ObjCRuntime.Selector selector);

Added property:

public virtual UIImage Image { get; set; }

Type Changed: UIKit.UIAction

Added interface:

IUIAccessibilityIdentification

Added property:

public virtual Foundation.NSObject Sender { get; }

Added method:

public static UIAction Create (UIActionHandler handler);

Type Changed: UIKit.UIAlertAction

Added interface:

IUIAccessibilityIdentification

Added property:

public virtual string AccessibilityIdentifier { get; set; }

Type Changed: UIKit.UIApplicationDelegate

Added method:

public virtual Foundation.NSObject GetHandlerForIntent (UIApplication application, Intents.INIntent intent);

Type Changed: UIKit.UIApplicationDelegate_Extensions

Added method:

public static Foundation.NSObject GetHandlerForIntent (this IUIApplicationDelegate This, UIApplication application, Intents.INIntent intent);

Type Changed: UIKit.UIBarButtonItem

Added constructors:

public UIBarButtonItem (UIAction primaryAction);
public UIBarButtonItem (string title, UIMenu menu);
public UIBarButtonItem (UIBarButtonSystemItem systemItem, UIAction primaryAction);
public UIBarButtonItem (UIBarButtonSystemItem systemItem, UIMenu menu);
public UIBarButtonItem (UIImage image, UIMenu menu);

Added properties:

public static UIBarButtonItem FlexibleSpaceItem { get; }
public virtual UIAction PrimaryAction { get; set; }

Added method:

public static UIBarButtonItem GetFixedSpaceItem (nfloat width);

Type Changed: UIKit.UIBarItem

Added properties:

public static Foundation.NSString ButtonShapesEnabledStatusDidChangeNotification { get; }
public static Foundation.NSString PrefersCrossFadeTransitionsStatusDidChangeNotification { get; }

Type Changed: UIKit.UIBarItem.Notifications

Added methods:

public static Foundation.NSObject ObserveButtonShapesEnabledStatusDidChange (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
public static Foundation.NSObject ObserveButtonShapesEnabledStatusDidChange (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
public static Foundation.NSObject ObservePrefersCrossFadeTransitionsStatusDidChange (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
public static Foundation.NSObject ObservePrefersCrossFadeTransitionsStatusDidChange (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);

Type Changed: UIKit.UIButton

Added constructor:

public UIButton (CoreGraphics.CGRect frame, UIAction primaryAction);

Added property:

public virtual UIButtonRole Role { get; set; }

Added methods:

public static UIButton FromType (UIButtonType buttonType, UIAction primaryAction);
public static UIButton GetSystemButton (UIAction primaryAction);

Type Changed: UIKit.UICollectionView

Added properties:

public virtual bool AllowsMultipleSelectionDuringEditing { get; set; }
public virtual bool AllowsSelectionDuringEditing { get; set; }
public virtual bool Editing { get; set; }

Added methods:

public virtual UICollectionViewCell DequeueConfiguredReusableCell (UICollectionViewCellRegistration registration, Foundation.NSIndexPath indexPath, Foundation.NSObject item);
public virtual UICollectionReusableView DequeueConfiguredReusableSupplementaryView (UICollectionViewSupplementaryRegistration registration, Foundation.NSIndexPath indexPath);

Type Changed: UIKit.UICollectionViewCell

Added properties:

public virtual bool AutomaticallyUpdatesBackgroundConfiguration { get; set; }
public virtual bool AutomaticallyUpdatesContentConfiguration { get; set; }
public virtual UIBackgroundConfiguration BackgroundConfiguration { get; set; }
public virtual UICellConfigurationState ConfigurationState { get; }
public virtual IUIContentConfiguration ContentConfiguration { get; set; }

Added methods:

public virtual void SetNeedsUpdateConfiguration ();
public virtual void UpdateConfiguration (UICellConfigurationState state);

Type Changed: UIKit.UICollectionViewCompositionalLayout

Added method:

public static UICollectionViewCompositionalLayout GetLayout (UICollectionLayoutListConfiguration listConfiguration);

Type Changed: UIKit.UICollectionViewCompositionalLayoutConfiguration

Added property:

public virtual UIContentInsetsReference ContentInsetsReference { get; set; }

Type Changed: UIKit.UICollectionViewController

Added method:

public virtual bool CanEditItem (UICollectionView collectionView, Foundation.NSIndexPath indexPath);

Type Changed: UIKit.UICollectionViewDelegate

Added method:

public virtual bool CanEditItem (UICollectionView collectionView, Foundation.NSIndexPath indexPath);

Type Changed: UIKit.UICollectionViewDelegate_Extensions

Added method:

public static bool CanEditItem (this IUICollectionViewDelegate This, UICollectionView collectionView, Foundation.NSIndexPath indexPath);

Type Changed: UIKit.UICollectionViewDiffableDataSource`2

Added properties:

public virtual UIKit.UICollectionViewDiffableDataSourceReorderingHandlers<SectionIdentifierType,ItemIdentifierType> ReorderingHandlers { get; set; }
public virtual UIKit.UICollectionViewDiffableDataSourceSectionSnapshotHandlers<ItemIdentifierType> SectionSnapshotHandlers { get; set; }

Added methods:

public virtual void ApplySnapshot (UIKit.NSDiffableDataSourceSectionSnapshot<ItemIdentifierType> snapshot, SectionIdentifierType sectionIdentifier, bool animatingDifferences);
public virtual void ApplySnapshot (UIKit.NSDiffableDataSourceSectionSnapshot<ItemIdentifierType> snapshot, SectionIdentifierType sectionIdentifier, bool animatingDifferences, System.Action completion);
public virtual UIKit.NSDiffableDataSourceSectionSnapshot<ItemIdentifierType> GetSnapshot (SectionIdentifierType section);

Type Changed: UIKit.UICollectionViewSource

Added method:

public virtual bool CanEditItem (UICollectionView collectionView, Foundation.NSIndexPath indexPath);

Type Changed: UIKit.UIColor

Added property:

public virtual string AccessibilityName { get; }

Type Changed: UIKit.UICommand

Added interface:

IUIAccessibilityIdentification

Type Changed: UIKit.UIControl

Added constructor:

public UIControl (CoreGraphics.CGRect frame, UIAction primaryAction);

Added methods:

public virtual void AddAction (UIAction action, UIControlEvent controlEvents);
public virtual void EnumerateEventHandlers (UIControlEnumerateEventsIteratorHandler iteratorHandler);
public virtual void RemoveAction (string actionIdentifier, UIControlEvent controlEvents);
public virtual void RemoveAction (UIAction action, UIControlEvent controlEvents);
public virtual void SendAction (UIAction action);

Type Changed: UIKit.UIControlEvent

Added value:

MenuActionTriggered = 16384,

Type Changed: UIKit.UIImage

Added properties:

public static Foundation.NSString ButtonShapesEnabledStatusDidChangeNotification { get; }
public static Foundation.NSString PrefersCrossFadeTransitionsStatusDidChangeNotification { get; }

Type Changed: UIKit.UIImage.Notifications

Added methods:

public static Foundation.NSObject ObserveButtonShapesEnabledStatusDidChange (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
public static Foundation.NSObject ObserveButtonShapesEnabledStatusDidChange (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
public static Foundation.NSObject ObservePrefersCrossFadeTransitionsStatusDidChange (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
public static Foundation.NSObject ObservePrefersCrossFadeTransitionsStatusDidChange (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);

Type Changed: UIKit.UIKeyCommand

Added interface:

IUIAccessibilityIdentification

Type Changed: UIKit.UILabel

Added property:

public virtual NSLineBreakStrategy LineBreakStrategy { get; set; }

Type Changed: UIKit.UIMenu

Added interface:

IUIAccessibilityIdentification

Added method:

public static UIMenu Create (UIMenuElement[] children);

Type Changed: UIKit.UIMenuElement

Added interface:

IUIAccessibilityIdentification

Added property:

public virtual string AccessibilityIdentifier { get; set; }

Type Changed: UIKit.UIMenuIdentifier

Added value:

OpenRecent = 44,

Type Changed: UIKit.UINavigationItem

Added property:

public virtual string BackButtonTitle { get; set; }

Type Changed: UIKit.UIPageControl

Added properties:

public virtual bool AllowsContinuousInteraction { get; set; }
public virtual UIPageControlBackgroundStyle BackgroundStyle { get; set; }
public virtual UIPageControlInteractionState InteractionState { get; }
public virtual UIImage PreferredIndicatorImage { get; set; }

Added methods:

public virtual UIImage GetIndicatorImage (nint page);
public virtual void SetIndicatorImage (UIImage image, nint page);

Type Changed: UIKit.UISearchController

Added properties:

public virtual UIScrollView SearchControllerObservedScrollView { get; set; }
public virtual IUISearchSuggestion[] SearchSuggestions { get; set; }

Type Changed: UIKit.UISearchResultsUpdating

Added method:

public virtual void UpdateSearchResults (UISearchController searchController, IUISearchSuggestion searchSuggestion);

Type Changed: UIKit.UISegmentedControl

Added constructor:

public UISegmentedControl (CoreGraphics.CGRect frame, UIAction[] actions);

Added methods:

public virtual UIAction GetAction (nuint segment);
public virtual nint GetSegmentIndex (string actionIdentifier);
public virtual void InsertSegment (UIAction action, nuint segment, bool animated);
public virtual void SetAction (UIAction action, nuint segment);

Type Changed: UIKit.UISplitViewController

Added constructor:

public UISplitViewController (UISplitViewControllerStyle style);

Added properties:

public UISplitViewControllerGetDisplayModeForExpanding GetDisplayModeForExpanding { get; set; }
public UISplitViewControllerGetTopColumnForCollapsing GetTopColumnForCollapsing { get; set; }
public virtual nfloat MaximumSupplementaryColumnWidth { get; set; }
public virtual nfloat MinimumSupplementaryColumnWidth { get; set; }
public virtual nfloat PreferredPrimaryColumnWidth { get; set; }
public virtual UISplitViewControllerSplitBehavior PreferredSplitBehavior { get; set; }
public virtual nfloat PreferredSupplementaryColumnWidth { get; set; }
public virtual nfloat PreferredSupplementaryColumnWidthFraction { get; set; }
public virtual bool ShowsSecondaryOnlyButton { get; set; }
public virtual UISplitViewControllerSplitBehavior SplitBehavior { get; }
public virtual UISplitViewControllerStyle Style { get; }
public virtual nfloat SupplementaryColumnWidth { get; }

Added events:

public event System.EventHandler DidCollapse;
public event System.EventHandler DidExpand;
public event System.EventHandler InteractivePresentationGestureDidEnd;
public event System.EventHandler InteractivePresentationGestureWillBegin;
public event System.EventHandler<UISplitViewControllerWillShowHideColumnEventArgs> WillHideColumn;
public event System.EventHandler<UISplitViewControllerWillShowHideColumnEventArgs> WillShowColumn;

Added methods:

public virtual UIViewController GetViewController (UISplitViewControllerColumn column);
public virtual void HideColumn (UISplitViewControllerColumn column);
public virtual void SetViewController (UIViewController viewController, UISplitViewControllerColumn column);
public virtual void ShowColumn (UISplitViewControllerColumn column);

Type Changed: UIKit.UISplitViewControllerDelegate

Added methods:

public virtual void DidCollapse (UISplitViewController splitViewController);
public virtual void DidExpand (UISplitViewController splitViewController);
public virtual UISplitViewControllerDisplayMode GetDisplayModeForExpanding (UISplitViewController splitViewController, UISplitViewControllerDisplayMode proposedDisplayMode);
public virtual UISplitViewControllerColumn GetTopColumnForCollapsing (UISplitViewController splitViewController, UISplitViewControllerColumn proposedTopColumn);
public virtual void InteractivePresentationGestureDidEnd (UISplitViewController svc);
public virtual void InteractivePresentationGestureWillBegin (UISplitViewController svc);
public virtual void WillHideColumn (UISplitViewController splitViewController, UISplitViewControllerColumn column);
public virtual void WillShowColumn (UISplitViewController splitViewController, UISplitViewControllerColumn column);

Type Changed: UIKit.UISplitViewControllerDelegate_Extensions

Added methods:

public static void DidCollapse (this IUISplitViewControllerDelegate This, UISplitViewController splitViewController);
public static void DidExpand (this IUISplitViewControllerDelegate This, UISplitViewController splitViewController);
public static UISplitViewControllerDisplayMode GetDisplayModeForExpanding (this IUISplitViewControllerDelegate This, UISplitViewController splitViewController, UISplitViewControllerDisplayMode proposedDisplayMode);
public static UISplitViewControllerColumn GetTopColumnForCollapsing (this IUISplitViewControllerDelegate This, UISplitViewController splitViewController, UISplitViewControllerColumn proposedTopColumn);
public static void InteractivePresentationGestureDidEnd (this IUISplitViewControllerDelegate This, UISplitViewController svc);
public static void InteractivePresentationGestureWillBegin (this IUISplitViewControllerDelegate This, UISplitViewController svc);
public static void WillHideColumn (this IUISplitViewControllerDelegate This, UISplitViewController splitViewController, UISplitViewControllerColumn column);
public static void WillShowColumn (this IUISplitViewControllerDelegate This, UISplitViewController splitViewController, UISplitViewControllerColumn column);

Type Changed: UIKit.UISplitViewControllerDisplayMode

Added values:

OneBesideSecondary = 2,
OneOverSecondary = 3,
SecondaryOnly = 1,
TwoBesideSecondary = 4,
TwoDisplaceSecondary = 6,
TwoOverSecondary = 5,

Type Changed: UIKit.UIStringAttributeKey

Added property:

public static Foundation.NSString Tracking { get; }

Type Changed: UIKit.UITableViewCell

Added properties:

public virtual bool AutomaticallyUpdatesBackgroundConfiguration { get; set; }
public virtual bool AutomaticallyUpdatesContentConfiguration { get; set; }
public virtual UIBackgroundConfiguration BackgroundConfiguration { get; set; }
public virtual UICellConfigurationState ConfigurationState { get; }
public virtual IUIContentConfiguration ContentConfiguration { get; set; }
public virtual UIListContentConfiguration DefaultContentConfiguration { get; }

Added methods:

public virtual void SetNeedsUpdateConfiguration ();
public virtual void UpdateConfiguration (UICellConfigurationState state);

Type Changed: UIKit.UITableViewHeaderFooterView

Added properties:

public virtual bool AutomaticallyUpdatesBackgroundConfiguration { get; set; }
public virtual bool AutomaticallyUpdatesContentConfiguration { get; set; }
public virtual UIBackgroundConfiguration BackgroundConfiguration { get; set; }
public virtual UIViewConfigurationState ConfigurationState { get; }
public virtual IUIContentConfiguration ContentConfiguration { get; set; }
public virtual UIListContentConfiguration DefaultContentConfiguration { get; }

Added methods:

public virtual void SetNeedsUpdateConfiguration ();
public virtual void UpdateConfiguration (UIViewConfigurationState state);

Type Changed: UIKit.UITraitCollection

Added property:

public virtual UIUserInterfaceActiveAppearance ActiveAppearance { get; }

Added method:

public static UITraitCollection FromActiveAppearance (UIUserInterfaceActiveAppearance userInterfaceActiveAppearance);

Type Changed: UIKit.UIUserInterfaceIdiom

Added value:

Mac = 4,

Type Changed: UIKit.UIView

Added properties:

public static Foundation.NSString ButtonShapesEnabledStatusDidChangeNotification { get; }
public static Foundation.NSString PrefersCrossFadeTransitionsStatusDidChangeNotification { get; }

Type Changed: UIKit.UIView.Notifications

Added methods:

public static Foundation.NSObject ObserveButtonShapesEnabledStatusDidChange (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
public static Foundation.NSObject ObserveButtonShapesEnabledStatusDidChange (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
public static Foundation.NSObject ObservePrefersCrossFadeTransitionsStatusDidChange (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
public static Foundation.NSObject ObservePrefersCrossFadeTransitionsStatusDidChange (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);

New Type: UIKit.IUIConfigurationState

public interface IUIConfigurationState : Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual UITraitCollection TraitCollection { get; set; }
	// methods
	public virtual Foundation.NSObject GetCustomState (string key);
	public virtual Foundation.NSObject GetObject (string key);
	public virtual void SetCustomState (Foundation.NSObject customState, string key);
	public virtual void SetObject (Foundation.NSObject obj, string key);
}

New Type: UIKit.IUIContentConfiguration

public interface IUIContentConfiguration : Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual IUIContentConfiguration GetUpdatedConfiguration (IUIConfigurationState state);
	public virtual IUIContentView MakeContentView ();
}

New Type: UIKit.IUIContentView

public interface IUIContentView : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual IUIContentConfiguration Configuration { get; set; }
}

New Type: UIKit.IUISearchSuggestion

public interface IUISearchSuggestion : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual Foundation.NSString LocalizedSuggestion { get; }
}

New Type: UIKit.NSDiffableDataSourceSectionSnapshot`1

public class NSDiffableDataSourceSectionSnapshot`1 : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSDiffableDataSourceSectionSnapshot`1 ();
	protected NSDiffableDataSourceSectionSnapshot`1 (Foundation.NSObjectFlag t);
	protected NSDiffableDataSourceSectionSnapshot`1 (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual ItemIdentifierType[] ExpandedItems { get; }
	public virtual ItemIdentifierType[] Items { get; }
	public virtual ItemIdentifierType[] RootItems { get; }
	public virtual ItemIdentifierType[] VisibleItems { get; }
	public virtual string VisualDescription { get; }
	// methods
	public virtual void AppendItems (ItemIdentifierType[] items);
	public virtual void AppendItems (ItemIdentifierType[] items, ItemIdentifierType parentItem);
	public virtual void CollapseItems (ItemIdentifierType[] items);
	public virtual bool ContainsItem (ItemIdentifierType item);
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void DeleteAllItems ();
	public virtual void DeleteItems (ItemIdentifierType[] items);
	public virtual void ExpandItems (ItemIdentifierType[] items);
	public virtual nint GetIndex (ItemIdentifierType item);
	public virtual nint GetLevel (ItemIdentifierType item);
	public virtual ItemIdentifierType GetParent (ItemIdentifierType ofChildItem);
	public virtual UIKit.NSDiffableDataSourceSectionSnapshot<ItemIdentifierType> GetSnapshot (ItemIdentifierType parentItem);
	public virtual UIKit.NSDiffableDataSourceSectionSnapshot<ItemIdentifierType> GetSnapshot (ItemIdentifierType parentItem, bool includingParentItem);
	public virtual void InsertItemsAfter (ItemIdentifierType[] items, ItemIdentifierType afterIdentifier);
	public virtual void InsertItemsBefore (ItemIdentifierType[] items, ItemIdentifierType beforeIdentifier);
	public virtual ItemIdentifierType InsertSnapshotAfterItem (UIKit.NSDiffableDataSourceSectionSnapshot<ItemIdentifierType> snapshot, ItemIdentifierType item);
	public virtual void InsertSnapshotBeforeItem (UIKit.NSDiffableDataSourceSectionSnapshot<ItemIdentifierType> snapshot, ItemIdentifierType item);
	public virtual bool IsExpanded (ItemIdentifierType item);
	public virtual bool IsVisible (ItemIdentifierType item);
	public virtual void ReplaceChildren (ItemIdentifierType parentItem, UIKit.NSDiffableDataSourceSectionSnapshot<ItemIdentifierType> snapshot);
}

New Type: UIKit.NSDiffableDataSourceSectionTransaction`2

public class NSDiffableDataSourceSectionTransaction`2 : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSDiffableDataSourceSectionTransaction`2 ();
	protected NSDiffableDataSourceSectionTransaction`2 (Foundation.NSObjectFlag t);
	protected NSDiffableDataSourceSectionTransaction`2 (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual UIKit.NSDiffableDataSourceSectionSnapshot<ItemIdentifierType> FinalSnapshot { get; }
	public virtual UIKit.NSDiffableDataSourceSectionSnapshot<ItemIdentifierType> InitialSnapshot { get; }
	public virtual SectionIdentifierType SectionIdentifier { get; }
}

New Type: UIKit.NSDiffableDataSourceTransaction`2

public class NSDiffableDataSourceTransaction`2 : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSDiffableDataSourceTransaction`2 ();
	protected NSDiffableDataSourceTransaction`2 (Foundation.NSObjectFlag t);
	protected NSDiffableDataSourceTransaction`2 (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual UIKit.NSDiffableDataSourceSnapshot<SectionIdentifierType,ItemIdentifierType> FinalSnapshot { get; }
	public virtual UIKit.NSDiffableDataSourceSnapshot<SectionIdentifierType,ItemIdentifierType> InitialSnapshot { get; }
	public virtual UIKit.NSDiffableDataSourceSectionTransaction<SectionIdentifierType,ItemIdentifierType>[] SectionTransactions { get; }
}

New Type: UIKit.NSLineBreakStrategy

[Serializable]
[Flags]
public enum NSLineBreakStrategy {
	HangulWordPriority = 2,
	None = 0,
	PushOut = 1,
	Standard = 65535,
}

New Type: UIKit.UIBackgroundConfiguration

public class UIBackgroundConfiguration : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public UIBackgroundConfiguration (Foundation.NSCoder coder);
	protected UIBackgroundConfiguration (Foundation.NSObjectFlag t);
	protected UIBackgroundConfiguration (IntPtr handle);
	// properties
	public virtual UIColor BackgroundColor { get; set; }
	public virtual UIConfigurationColorTransformerHandler BackgroundColorTransformer { get; set; }
	public virtual NSDirectionalEdgeInsets BackgroundInsets { get; set; }
	public override IntPtr ClassHandle { get; }
	public static UIBackgroundConfiguration ClearConfiguration { get; }
	public virtual nfloat CornerRadius { get; set; }
	public virtual UIView CustomView { get; set; }
	public virtual NSDirectionalRectEdge EdgesAddingLayoutMarginsToBackgroundInsets { get; set; }
	public static UIBackgroundConfiguration ListGroupedCellConfiguration { get; }
	public static UIBackgroundConfiguration ListGroupedHeaderFooterConfiguration { get; }
	public static UIBackgroundConfiguration ListPlainCellConfiguration { get; }
	public static UIBackgroundConfiguration ListPlainHeaderFooterConfiguration { get; }
	public virtual UIColor StrokeColor { get; set; }
	public virtual UIConfigurationColorTransformerHandler StrokeColorTransformer { get; set; }
	public virtual nfloat StrokeOutset { get; set; }
	public virtual nfloat StrokeWidth { get; set; }
	public virtual UIVisualEffect VisualEffect { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public virtual UIColor GetResolvedBackgroundColor (UIColor tintColor);
	public virtual UIColor GetResolvedStrokeColor (UIColor tintColor);
	public virtual UIBackgroundConfiguration GetUpdatedConfiguration (IUIConfigurationState state);
}

New Type: UIKit.UIButtonRole

[Serializable]
public enum UIButtonRole {
	Cancel = 2,
	Destructive = 3,
	Normal = 0,
	Primary = 1,
}

New Type: UIKit.UICellAccessory

public class UICellAccessory : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public UICellAccessory ();
	public UICellAccessory (Foundation.NSCoder coder);
	protected UICellAccessory (Foundation.NSObjectFlag t);
	protected UICellAccessory (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual UICellAccessoryDisplayedState DisplayedState { get; set; }
	public virtual bool IsHidden { get; set; }
	public virtual nfloat ReservedLayoutWidth { get; set; }
	public static nfloat StandardDimension { get; }
	public virtual UIColor TintColor { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public static UICellAccessoryPosition GetPositionAfterAccessory (ObjCRuntime.Class accessoryClass);
	public static UICellAccessoryPosition GetPositionAfterAccessory (System.Type accessoryType);
	public static UICellAccessoryPosition GetPositionBeforeAccessory (ObjCRuntime.Class accessoryClass);
	public static UICellAccessoryPosition GetPositionBeforeAccessory (System.Type accessoryType);
}

New Type: UIKit.UICellAccessoryCheckmark

public class UICellAccessoryCheckmark : UIKit.UICellAccessory, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public UICellAccessoryCheckmark ();
	public UICellAccessoryCheckmark (Foundation.NSCoder coder);
	protected UICellAccessoryCheckmark (Foundation.NSObjectFlag t);
	protected UICellAccessoryCheckmark (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
}

New Type: UIKit.UICellAccessoryCustomView

public class UICellAccessoryCustomView : UIKit.UICellAccessory, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public UICellAccessoryCustomView (Foundation.NSCoder coder);
	protected UICellAccessoryCustomView (Foundation.NSObjectFlag t);
	protected UICellAccessoryCustomView (IntPtr handle);
	public UICellAccessoryCustomView (UIView customView, UICellAccessoryPlacement placement);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual UIView CustomView { get; }
	public virtual bool MaintainsFixedSize { get; set; }
	public virtual UICellAccessoryPlacement Placement { get; }
	public virtual UICellAccessoryPosition Position { get; set; }
}

New Type: UIKit.UICellAccessoryDelete

public class UICellAccessoryDelete : UIKit.UICellAccessory, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public UICellAccessoryDelete ();
	public UICellAccessoryDelete (Foundation.NSCoder coder);
	protected UICellAccessoryDelete (Foundation.NSObjectFlag t);
	protected UICellAccessoryDelete (IntPtr handle);
	// properties
	public virtual System.Action ActionHandler { get; set; }
	public virtual UIColor BackgroundColor { get; set; }
	public override IntPtr ClassHandle { get; }
}

New Type: UIKit.UICellAccessoryDisclosureIndicator

public class UICellAccessoryDisclosureIndicator : UIKit.UICellAccessory, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public UICellAccessoryDisclosureIndicator ();
	public UICellAccessoryDisclosureIndicator (Foundation.NSCoder coder);
	protected UICellAccessoryDisclosureIndicator (Foundation.NSObjectFlag t);
	protected UICellAccessoryDisclosureIndicator (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
}

New Type: UIKit.UICellAccessoryDisplayedState

[Serializable]
public enum UICellAccessoryDisplayedState {
	Always = 0,
	WhenEditing = 1,
	WhenNotEditing = 2,
}

New Type: UIKit.UICellAccessoryInsert

public class UICellAccessoryInsert : UIKit.UICellAccessory, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public UICellAccessoryInsert ();
	public UICellAccessoryInsert (Foundation.NSCoder coder);
	protected UICellAccessoryInsert (Foundation.NSObjectFlag t);
	protected UICellAccessoryInsert (IntPtr handle);
	// properties
	public virtual System.Action ActionHandler { get; set; }
	public virtual UIColor BackgroundColor { get; set; }
	public override IntPtr ClassHandle { get; }
}

New Type: UIKit.UICellAccessoryLabel

public class UICellAccessoryLabel : UIKit.UICellAccessory, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public UICellAccessoryLabel (Foundation.NSCoder coder);
	protected UICellAccessoryLabel (Foundation.NSObjectFlag t);
	protected UICellAccessoryLabel (IntPtr handle);
	public UICellAccessoryLabel (string text);
	// properties
	public virtual bool AdjustsFontForContentSizeCategory { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual UIFont Font { get; set; }
	public virtual string Text { get; }
}

New Type: UIKit.UICellAccessoryMultiselect

public class UICellAccessoryMultiselect : UIKit.UICellAccessory, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public UICellAccessoryMultiselect ();
	public UICellAccessoryMultiselect (Foundation.NSCoder coder);
	protected UICellAccessoryMultiselect (Foundation.NSObjectFlag t);
	protected UICellAccessoryMultiselect (IntPtr handle);
	// properties
	public virtual UIColor BackgroundColor { get; set; }
	public override IntPtr ClassHandle { get; }
}

New Type: UIKit.UICellAccessoryPlacement

[Serializable]
public enum UICellAccessoryPlacement {
	Leading = 0,
	Trailing = 1,
}

New Type: UIKit.UICellAccessoryPosition

public sealed delegate UICellAccessoryPosition : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public UICellAccessoryPosition (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (UICellAccessory[] accessories, System.AsyncCallback callback, object object);
	public virtual nuint EndInvoke (System.IAsyncResult result);
	public virtual nuint Invoke (UICellAccessory[] accessories);
}

New Type: UIKit.UICellAccessoryReorder

public class UICellAccessoryReorder : UIKit.UICellAccessory, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public UICellAccessoryReorder ();
	public UICellAccessoryReorder (Foundation.NSCoder coder);
	protected UICellAccessoryReorder (Foundation.NSObjectFlag t);
	protected UICellAccessoryReorder (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool ShowsVerticalSeparator { get; set; }
}

New Type: UIKit.UICellConfigurationState

public class UICellConfigurationState : UIKit.UIViewConfigurationState, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, IUIConfigurationState {
	// constructors
	public UICellConfigurationState (Foundation.NSCoder coder);
	protected UICellConfigurationState (Foundation.NSObjectFlag t);
	protected UICellConfigurationState (IntPtr handle);
	public UICellConfigurationState (UITraitCollection traitCollection);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool Editing { get; set; }
	public virtual bool Expanded { get; set; }
	public virtual bool Reordering { get; set; }
	public virtual bool Swiped { get; set; }
}

New Type: UIKit.UICollectionLayoutListAppearance

[Serializable]
public enum UICollectionLayoutListAppearance {
	Grouped = 1,
	Plain = 0,
}

New Type: UIKit.UICollectionLayoutListConfiguration

public class UICollectionLayoutListConfiguration : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected UICollectionLayoutListConfiguration (Foundation.NSObjectFlag t);
	protected UICollectionLayoutListConfiguration (IntPtr handle);
	public UICollectionLayoutListConfiguration (UICollectionLayoutListAppearance appearance);
	// properties
	public virtual UICollectionLayoutListAppearance Appearance { get; }
	public virtual UIColor BackgroundColor { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual UICollectionLayoutListFooterMode FooterMode { get; set; }
	public virtual UICollectionLayoutListHeaderMode HeaderMode { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	protected override void Dispose (bool disposing);
}

New Type: UIKit.UICollectionLayoutListFooterMode

[Serializable]
public enum UICollectionLayoutListFooterMode {
	None = 0,
	Supplementary = 1,
}

New Type: UIKit.UICollectionLayoutListHeaderMode

[Serializable]
public enum UICollectionLayoutListHeaderMode {
	FirstItemInSection = 2,
	None = 0,
	Supplementary = 1,
}

New Type: UIKit.UICollectionViewCellRegistration

public class UICollectionViewCellRegistration : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected UICollectionViewCellRegistration (Foundation.NSObjectFlag t);
	protected UICollectionViewCellRegistration (IntPtr handle);
	// properties
	public virtual ObjCRuntime.Class CellClass { get; }
	public virtual UINib CellNib { get; }
	public System.Type CellType { get; }
	public override IntPtr ClassHandle { get; }
	public virtual UICollectionViewCellRegistrationConfigurationHandler ConfigurationHandler { get; }
	// methods
	public static UICollectionViewCellRegistration GetRegistration (ObjCRuntime.Class cellClass, UICollectionViewCellRegistrationConfigurationHandler configurationHandler);
	public static UICollectionViewCellRegistration GetRegistration (System.Type cellType, UICollectionViewCellRegistrationConfigurationHandler configurationHandler);
	public static UICollectionViewCellRegistration GetRegistration (UINib cellNib, UICollectionViewCellRegistrationConfigurationHandler configurationHandler);
}

New Type: UIKit.UICollectionViewCellRegistrationConfigurationHandler

public sealed delegate UICollectionViewCellRegistrationConfigurationHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public UICollectionViewCellRegistrationConfigurationHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (UICollectionViewCell cell, Foundation.NSIndexPath indexPath, Foundation.NSObject item, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (UICollectionViewCell cell, Foundation.NSIndexPath indexPath, Foundation.NSObject item);
}

New Type: UIKit.UICollectionViewDiffableDataSourceReorderingHandlers`2

public class UICollectionViewDiffableDataSourceReorderingHandlers`2 : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public UICollectionViewDiffableDataSourceReorderingHandlers`2 ();
	protected UICollectionViewDiffableDataSourceReorderingHandlers`2 (Foundation.NSObjectFlag t);
	protected UICollectionViewDiffableDataSourceReorderingHandlers`2 (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: UIKit.UICollectionViewDiffableDataSourceSectionSnapshotHandlers`1

public class UICollectionViewDiffableDataSourceSectionSnapshotHandlers`1 : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public UICollectionViewDiffableDataSourceSectionSnapshotHandlers`1 ();
	protected UICollectionViewDiffableDataSourceSectionSnapshotHandlers`1 (Foundation.NSObjectFlag t);
	protected UICollectionViewDiffableDataSourceSectionSnapshotHandlers`1 (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: UIKit.UICollectionViewListCell

public class UICollectionViewListCell : UIKit.UICollectionViewCell, CoreAnimation.ICALayerDelegate, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, IUIAccessibilityIdentification, IUIAppearance, IUIAppearanceContainer, IUICoordinateSpace, IUIDynamicItem, IUIFocusEnvironment, IUIFocusItem, IUIFocusItemContainer, IUITraitEnvironment, IUIUserActivityRestoring {
	// constructors
	public UICollectionViewListCell ();
	public UICollectionViewListCell (CoreGraphics.CGRect frame);
	public UICollectionViewListCell (Foundation.NSCoder coder);
	protected UICollectionViewListCell (Foundation.NSObjectFlag t);
	protected UICollectionViewListCell (IntPtr handle);
	// properties
	public virtual UICellAccessory[] Accessories { get; set; }
	public static UICollectionViewListCell.UICollectionViewListCellAppearance Appearance { get; }
	public override IntPtr ClassHandle { get; }
	public virtual UIListContentConfiguration DefaultContentConfiguration { get; }
	public virtual nint IndentationLevel { get; set; }
	public virtual nfloat IndentationWidth { get; set; }
	public virtual bool IndentsAccessories { get; set; }
	// methods
	public static UICollectionViewListCell.UICollectionViewListCellAppearance AppearanceWhenContainedIn (System.Type[] containers);
	public static UICollectionViewListCell.UICollectionViewListCellAppearance GetAppearance<T> ();
	public static UICollectionViewListCell.UICollectionViewListCellAppearance GetAppearance<T> (UITraitCollection traits);
	public static UICollectionViewListCell.UICollectionViewListCellAppearance GetAppearance (UITraitCollection traits);
	public static UICollectionViewListCell.UICollectionViewListCellAppearance GetAppearance<T> (UITraitCollection traits, System.Type[] containers);
	public static UICollectionViewListCell.UICollectionViewListCellAppearance GetAppearance (UITraitCollection traits, System.Type[] containers);

	// inner types
	public class UICollectionViewListCellAppearance : UIKit.UICollectionViewCell+UICollectionViewCellAppearance, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, IUIAppearance {
		// constructors
		protected UICollectionViewListCell.UICollectionViewListCellAppearance (IntPtr handle);
	}
}

New Type: UIKit.UICollectionViewSupplementaryRegistration

public class UICollectionViewSupplementaryRegistration : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected UICollectionViewSupplementaryRegistration (Foundation.NSObjectFlag t);
	protected UICollectionViewSupplementaryRegistration (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual UICollectionViewSupplementaryRegistrationConfigurationHandler ConfigurationHandler { get; }
	public virtual string ElementKind { get; }
	public virtual ObjCRuntime.Class SupplementaryClass { get; }
	public virtual UINib SupplementaryNib { get; }
	public System.Type SupplementaryType { get; }
	// methods
	public static UICollectionViewSupplementaryRegistration GetRegistration (ObjCRuntime.Class supplementaryClass, string elementKind, UICollectionViewSupplementaryRegistrationConfigurationHandler configurationHandler);
	public static UICollectionViewSupplementaryRegistration GetRegistration (System.Type supplementaryType, string elementKind, UICollectionViewSupplementaryRegistrationConfigurationHandler configurationHandler);
	public static UICollectionViewSupplementaryRegistration GetRegistration (UINib supplementaryNib, string elementKind, UICollectionViewSupplementaryRegistrationConfigurationHandler configurationHandler);
}

New Type: UIKit.UICollectionViewSupplementaryRegistrationConfigurationHandler

public sealed delegate UICollectionViewSupplementaryRegistrationConfigurationHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public UICollectionViewSupplementaryRegistrationConfigurationHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (UICollectionReusableView supplementaryView, string elementKind, Foundation.NSIndexPath indexPath, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (UICollectionReusableView supplementaryView, string elementKind, Foundation.NSIndexPath indexPath);
}

New Type: UIKit.UIConfigurationColorTransformer

public static class UIConfigurationColorTransformer {
	// properties
	public static UIConfigurationColorTransformerHandler Grayscale { get; }
	public static UIConfigurationColorTransformerHandler MonochromeTint { get; }
	public static UIConfigurationColorTransformerHandler PreferredTint { get; }
	public static IntPtr _MonochromeTint { get; }
	public static IntPtr _PreferredTint { get; }
}

New Type: UIKit.UIConfigurationColorTransformerHandler

public sealed delegate UIConfigurationColorTransformerHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public UIConfigurationColorTransformerHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (UIColor color, System.AsyncCallback callback, object object);
	public virtual UIColor EndInvoke (System.IAsyncResult result);
	public virtual UIColor Invoke (UIColor color);
}

New Type: UIKit.UIContentInsetsReference

[Serializable]
public enum UIContentInsetsReference {
	Automatic = 0,
	LayoutMargins = 3,
	None = 1,
	ReadableContent = 4,
	SafeArea = 2,
}

New Type: UIKit.UIControlEnumerateEventsIteratorHandler

public sealed delegate UIControlEnumerateEventsIteratorHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public UIControlEnumerateEventsIteratorHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (UIAction actionHandler, Foundation.NSObject target, ObjCRuntime.Selector action, UIControlEvent controlEvents, out bool stop, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (out bool stop, System.IAsyncResult result);
	public virtual void Invoke (UIAction actionHandler, Foundation.NSObject target, ObjCRuntime.Selector action, UIControlEvent controlEvents, out bool stop);
}

New Type: UIKit.UIDeferredMenuElement

public class UIDeferredMenuElement : UIKit.UIMenuElement, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, IUIAccessibilityIdentification {
	// constructors
	public UIDeferredMenuElement (Foundation.NSCoder coder);
	protected UIDeferredMenuElement (Foundation.NSObjectFlag t);
	protected UIDeferredMenuElement (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public static UIDeferredMenuElement Create (UIDeferredMenuElementProviderHandler elementProvider);
}

New Type: UIKit.UIDeferredMenuElementCompletionHandler

public sealed delegate UIDeferredMenuElementCompletionHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public UIDeferredMenuElementCompletionHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (UIMenuElement[] elements, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (UIMenuElement[] elements);
}

New Type: UIKit.UIDeferredMenuElementProviderHandler

public sealed delegate UIDeferredMenuElementProviderHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public UIDeferredMenuElementProviderHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (UIDeferredMenuElementCompletionHandler completion, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (UIDeferredMenuElementCompletionHandler completion);
}

New Type: UIKit.UIListContentConfiguration

public class UIListContentConfiguration : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, IUIContentConfiguration {
	// constructors
	public UIListContentConfiguration (Foundation.NSCoder coder);
	protected UIListContentConfiguration (Foundation.NSObjectFlag t);
	protected UIListContentConfiguration (IntPtr handle);
	// properties
	public virtual Foundation.NSAttributedString AttributedText { get; set; }
	public virtual UIAxis AxesPreservingSuperviewLayoutMargins { get; set; }
	public static UIListContentConfiguration CellConfiguration { get; }
	public override IntPtr ClassHandle { get; }
	public virtual NSDirectionalEdgeInsets DirectionalLayoutMargins { get; set; }
	public static UIListContentConfiguration GroupedFooterConfiguration { get; }
	public static UIListContentConfiguration GroupedHeaderConfiguration { get; }
	public virtual UIImage Image { get; set; }
	public virtual UIListContentImageProperties ImageProperties { get; }
	public virtual nfloat ImageToTextPadding { get; set; }
	public static UIListContentConfiguration PlainFooterConfiguration { get; }
	public static UIListContentConfiguration PlainHeaderConfiguration { get; }
	public virtual bool PrefersSideBySideTextAndSecondaryText { get; set; }
	public virtual Foundation.NSAttributedString SecondaryAttributedText { get; set; }
	public virtual string SecondaryText { get; set; }
	public virtual UIListContentTextProperties SecondaryTextProperties { get; }
	public static UIListContentConfiguration SubtitleCellConfiguration { get; }
	public virtual string Text { get; set; }
	public virtual UIListContentTextProperties TextProperties { get; }
	public virtual nfloat TextToSecondaryTextHorizontalPadding { get; set; }
	public virtual nfloat TextToSecondaryTextVerticalPadding { get; set; }
	public static UIListContentConfiguration ValueCellConfiguration { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public virtual IUIContentConfiguration GetUpdatedConfiguration (IUIConfigurationState state);
	public virtual IUIContentView MakeContentView ();
}

New Type: UIKit.UIListContentImageProperties

public class UIListContentImageProperties : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public UIListContentImageProperties (Foundation.NSCoder coder);
	protected UIListContentImageProperties (Foundation.NSObjectFlag t);
	protected UIListContentImageProperties (IntPtr handle);
	// properties
	public virtual bool AccessibilityIgnoresInvertColors { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual nfloat CornerRadius { get; set; }
	public virtual CoreGraphics.CGSize MaximumSize { get; set; }
	public virtual UIImageSymbolConfiguration PreferredSymbolConfiguration { get; set; }
	public virtual CoreGraphics.CGSize ReservedLayoutSize { get; set; }
	public static nfloat StandardDimension { get; }
	public virtual UIColor TintColor { get; set; }
	public virtual UIConfigurationColorTransformerHandler TintColorTransformer { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public virtual UIColor GetResolvedTintColor (UIColor tintColor);
}

New Type: UIKit.UIListContentTextAlignment

[Serializable]
public enum UIListContentTextAlignment {
	Center = 1,
	Justified = 2,
	Natural = 0,
}

New Type: UIKit.UIListContentTextProperties

public class UIListContentTextProperties : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public UIListContentTextProperties (Foundation.NSCoder coder);
	protected UIListContentTextProperties (Foundation.NSObjectFlag t);
	protected UIListContentTextProperties (IntPtr handle);
	// properties
	public virtual bool AdjustsFontForContentSizeCategory { get; set; }
	public virtual bool AdjustsFontSizeToFitWidth { get; set; }
	public virtual UIListContentTextAlignment Alignment { get; set; }
	public virtual bool AllowsDefaultTighteningForTruncation { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual UIColor Color { get; set; }
	public virtual UIConfigurationColorTransformerHandler ColorTransformer { get; set; }
	public virtual UIFont Font { get; set; }
	public virtual UILineBreakMode LineBreakMode { get; set; }
	public virtual nfloat MinimumScaleFactor { get; set; }
	public virtual nint NumberOfLines { get; set; }
	public virtual UIColor ResolvedColor { get; }
	public virtual UIListContentTextTransform Transform { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: UIKit.UIListContentTextTransform

[Serializable]
public enum UIListContentTextTransform {
	Capitalized = 3,
	Lowercase = 2,
	None = 0,
	Uppercase = 1,
}

New Type: UIKit.UIListContentView

public class UIListContentView : UIKit.UIView, CoreAnimation.ICALayerDelegate, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, IUIAccessibilityIdentification, IUIAppearance, IUIAppearanceContainer, IUIContentView, IUICoordinateSpace, IUIDynamicItem, IUIFocusEnvironment, IUIFocusItem, IUIFocusItemContainer, IUITraitEnvironment, IUIUserActivityRestoring {
	// constructors
	public UIListContentView (Foundation.NSCoder coder);
	protected UIListContentView (Foundation.NSObjectFlag t);
	protected UIListContentView (IntPtr handle);
	public UIListContentView (UIListContentConfiguration configuration);
	// properties
	public static UIListContentView.UIListContentViewAppearance Appearance { get; }
	public override IntPtr ClassHandle { get; }
	public virtual IUIContentConfiguration Configuration { get; set; }
	public virtual UILayoutGuide ImageLayoutGuide { get; }
	public UIListContentConfiguration ListContentConfiguration { get; set; }
	public virtual UILayoutGuide SecondaryTextLayoutGuide { get; }
	public virtual UILayoutGuide TextLayoutGuide { get; }
	// methods
	public static UIListContentView.UIListContentViewAppearance AppearanceWhenContainedIn (System.Type[] containers);
	public static UIListContentView.UIListContentViewAppearance GetAppearance<T> ();
	public static UIListContentView.UIListContentViewAppearance GetAppearance<T> (UITraitCollection traits);
	public static UIListContentView.UIListContentViewAppearance GetAppearance (UITraitCollection traits);
	public static UIListContentView.UIListContentViewAppearance GetAppearance<T> (UITraitCollection traits, System.Type[] containers);
	public static UIListContentView.UIListContentViewAppearance GetAppearance (UITraitCollection traits, System.Type[] containers);

	// inner types
	public class UIListContentViewAppearance : UIKit.UIView+UIViewAppearance, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, IUIAppearance {
		// constructors
		protected UIListContentView.UIListContentViewAppearance (IntPtr handle);
	}
}

New Type: UIKit.UIPageControlBackgroundStyle

[Serializable]
public enum UIPageControlBackgroundStyle {
	Automatic = 0,
	Minimal = 2,
	Prominent = 1,
}

New Type: UIKit.UIPageControlInteractionState

[Serializable]
public enum UIPageControlInteractionState {
	Continuous = 2,
	Discrete = 1,
	None = 0,
}

New Type: UIKit.UIPasteboardDetectionPattern

[Serializable]
public enum UIPasteboardDetectionPattern {
	Number = 2,
	ProbableWebSearch = 1,
	ProbableWebUrl = 0,
}

New Type: UIKit.UIPasteboardDetectionPatternExtensions

public static class UIPasteboardDetectionPatternExtensions {
	// methods
	public static Foundation.NSString GetConstant (this UIPasteboardDetectionPattern self);
	public static UIPasteboardDetectionPattern GetValue (Foundation.NSString constant);
}

New Type: UIKit.UISearchResultsUpdating_Extensions

public static class UISearchResultsUpdating_Extensions {
	// methods
	public static void UpdateSearchResults (this IUISearchResultsUpdating This, UISearchController searchController, IUISearchSuggestion searchSuggestion);
}

New Type: UIKit.UISearchSuggestionItem

public class UISearchSuggestionItem : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, IUISearchSuggestion {
	// constructors
	protected UISearchSuggestionItem (Foundation.NSObjectFlag t);
	public UISearchSuggestionItem (Foundation.NSString localizedSuggestion);
	protected UISearchSuggestionItem (IntPtr handle);
	public UISearchSuggestionItem (Foundation.NSString localizedSuggestion, string description);
	public UISearchSuggestionItem (Foundation.NSString localizedSuggestion, string description, UIImage iconImage);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSString LocalizedSuggestion { get; }
	// methods
	public static UISearchSuggestionItem Create (Foundation.NSString localizedSuggestion);
	public static UISearchSuggestionItem Create (Foundation.NSString localizedSuggestion, string description);
	public static UISearchSuggestionItem Create (Foundation.NSString localizedSuggestion, string description, UIImage iconImage);
	public virtual UIImage GetIconImage ();
	public virtual Foundation.NSString GetLocalizedDescription ();
}

New Type: UIKit.UISearchSuggestion_Extensions

public static class UISearchSuggestion_Extensions {
	// methods
	public static UIImage GetIconImage (this IUISearchSuggestion This);
	public static Foundation.NSString GetLocalizedDescription (this IUISearchSuggestion This);
}

New Type: UIKit.UISplitViewControllerColumn

[Serializable]
public enum UISplitViewControllerColumn {
	Compact = 3,
	Primary = 0,
	Secondary = 2,
	Supplementary = 1,
}

New Type: UIKit.UISplitViewControllerGetDisplayModeForExpanding

public sealed delegate UISplitViewControllerGetDisplayModeForExpanding : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public UISplitViewControllerGetDisplayModeForExpanding (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (UISplitViewController splitViewController, UISplitViewControllerDisplayMode proposedDisplayMode, System.AsyncCallback callback, object object);
	public virtual UISplitViewControllerDisplayMode EndInvoke (System.IAsyncResult result);
	public virtual UISplitViewControllerDisplayMode Invoke (UISplitViewController splitViewController, UISplitViewControllerDisplayMode proposedDisplayMode);
}

New Type: UIKit.UISplitViewControllerGetTopColumnForCollapsing

public sealed delegate UISplitViewControllerGetTopColumnForCollapsing : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public UISplitViewControllerGetTopColumnForCollapsing (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (UISplitViewController splitViewController, UISplitViewControllerColumn proposedTopColumn, System.AsyncCallback callback, object object);
	public virtual UISplitViewControllerColumn EndInvoke (System.IAsyncResult result);
	public virtual UISplitViewControllerColumn Invoke (UISplitViewController splitViewController, UISplitViewControllerColumn proposedTopColumn);
}

New Type: UIKit.UISplitViewControllerSplitBehavior

[Serializable]
public enum UISplitViewControllerSplitBehavior {
	Automatic = 0,
	Displace = 3,
	Overlay = 2,
	Tile = 1,
}

New Type: UIKit.UISplitViewControllerStyle

[Serializable]
public enum UISplitViewControllerStyle {
	DoubleColumn = 1,
	TripleColumn = 2,
	Unspecified = 0,
}

New Type: UIKit.UISplitViewControllerWillShowHideColumnEventArgs

public class UISplitViewControllerWillShowHideColumnEventArgs : System.EventArgs {
	// constructors
	public UISplitViewControllerWillShowHideColumnEventArgs (UISplitViewControllerColumn column);
	// properties
	public UISplitViewControllerColumn Column { get; set; }
}

New Type: UIKit.UIUserInterfaceActiveAppearance

[Serializable]
public enum UIUserInterfaceActiveAppearance {
	Active = 1,
	Inactive = 0,
	Unspecified = -1,
}

New Type: UIKit.UIViewConfigurationState

public class UIViewConfigurationState : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, IUIConfigurationState {
	// constructors
	public UIViewConfigurationState (Foundation.NSCoder coder);
	protected UIViewConfigurationState (Foundation.NSObjectFlag t);
	protected UIViewConfigurationState (IntPtr handle);
	public UIViewConfigurationState (UITraitCollection traitCollection);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool Disabled { get; set; }
	public virtual bool Focused { get; set; }
	public virtual bool Highlighted { get; set; }
	public virtual bool Selected { get; set; }
	public virtual UITraitCollection TraitCollection { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public virtual Foundation.NSObject GetCustomState (string key);
	public virtual Foundation.NSObject GetObject (string key);
	public virtual void SetCustomState (Foundation.NSObject customState, string key);
	public virtual void SetObject (Foundation.NSObject obj, string key);
}

Namespace UserNotifications

Type Changed: UserNotifications.UNAuthorizationStatus

Added value:

Ephemeral = 4,

Type Changed: UserNotifications.UNNotificationPresentationOptions

Added values:

Banner = 16,
List = 8,

Namespace VideoToolbox

Type Changed: VideoToolbox.VTCompressionPropertyKey

Added properties:

public static Foundation.NSString HdrMetadataInsertionMode { get; }
public static Foundation.NSString PrioritizeEncodingSpeedOverQuality { get; }

Type Changed: VideoToolbox.VTStatus

Added values:

DecoderNeedsRosetta = -17692,
EncoderNeedsRosetta = -17693,

New Type: VideoToolbox.HdrMetadataInsertionMode

[Serializable]
public enum HdrMetadataInsertionMode {
	Auto = 1,
	None = 0,
}

Namespace Vision

Type Changed: Vision.VNDetectFaceCaptureQualityRequestRevision

Added value:

Two = 2,

Type Changed: Vision.VNErrorCode

Added value:

TimeStampNotFound = 18,

Type Changed: Vision.VNImageRequestHandler

Added constructors:

public VNImageRequestHandler (CoreMedia.CMSampleBuffer sampleBuffer, Foundation.NSDictionary options);
public VNImageRequestHandler (CoreMedia.CMSampleBuffer sampleBuffer, VNImageOptions imageOptions);
public VNImageRequestHandler (CoreMedia.CMSampleBuffer sampleBuffer, ImageIO.CGImagePropertyOrientation orientation, Foundation.NSDictionary options);
public VNImageRequestHandler (CoreMedia.CMSampleBuffer sampleBuffer, ImageIO.CGImagePropertyOrientation orientation, VNImageOptions imageOptions);

Type Changed: Vision.VNObservation

Added property:

public virtual CoreMedia.CMTimeRange TimeRange { get; }

Type Changed: Vision.VNRecognizeTextRequestRevision

Added value:

Two = 2,

Type Changed: Vision.VNSequenceRequestHandler

Added methods:

public virtual bool Perform (VNRequest[] requests, CoreMedia.CMSampleBuffer sampleBuffer, out Foundation.NSError error);
public virtual bool Perform (VNRequest[] requests, CoreMedia.CMSampleBuffer sampleBuffer, ImageIO.CGImagePropertyOrientation orientation, out Foundation.NSError error);

Type Changed: Vision.VNTargetedImageRequest

Added constructors:

public VNTargetedImageRequest (CoreMedia.CMSampleBuffer sampleBuffer, Foundation.NSDictionary optionsDict);
public VNTargetedImageRequest (CoreMedia.CMSampleBuffer sampleBuffer, VNImageOptions options);
public VNTargetedImageRequest (CoreMedia.CMSampleBuffer sampleBuffer, Foundation.NSDictionary optionsDict, VNRequestCompletionHandler completionHandler);
public VNTargetedImageRequest (CoreMedia.CMSampleBuffer sampleBuffer, ImageIO.CGImagePropertyOrientation orientation, Foundation.NSDictionary optionsDict);
public VNTargetedImageRequest (CoreMedia.CMSampleBuffer sampleBuffer, ImageIO.CGImagePropertyOrientation orientation, VNImageOptions options);
public VNTargetedImageRequest (CoreMedia.CMSampleBuffer sampleBuffer, VNImageOptions options, VNRequestCompletionHandler completionHandler);
public VNTargetedImageRequest (CoreMedia.CMSampleBuffer sampleBuffer, ImageIO.CGImagePropertyOrientation orientation, Foundation.NSDictionary optionsDict, VNRequestCompletionHandler completionHandler);
public VNTargetedImageRequest (CoreMedia.CMSampleBuffer sampleBuffer, ImageIO.CGImagePropertyOrientation orientation, VNImageOptions options, VNRequestCompletionHandler completionHandler);

Type Changed: Vision.VNUtils

Added method:

public static CoreGraphics.CGPoint GetNormalizedPoint (CoreGraphics.CGPoint imagePoint, nuint imageWidth, nuint imageHeight);

New Type: Vision.VNCircle

public class VNCircle : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public VNCircle (Foundation.NSCoder coder);
	protected VNCircle (Foundation.NSObjectFlag t);
	protected VNCircle (IntPtr handle);
	// properties
	public virtual VNPoint Center { get; }
	public override IntPtr ClassHandle { get; }
	public virtual double Diameter { get; }
	public virtual double Radius { get; }
	public static VNCircle Zero { get; }
	// methods
	public virtual bool Contains (VNPoint point);
	public virtual bool Contains (VNPoint point, double ringWidth);
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static VNCircle CreateUsingDiameter (VNPoint center, double diameter);
	public static VNCircle CreateUsingRadius (VNPoint center, double radius);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Vision.VNContour

public class VNContour : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, IVNRequestRevisionProviding {
	// constructors
	protected VNContour (Foundation.NSObjectFlag t);
	protected VNContour (IntPtr handle);
	// properties
	public virtual float AspectRatio { get; }
	public virtual nint ChildContourCount { get; }
	public virtual VNContour[] ChildContours { get; }
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSIndexPath IndexPath { get; }
	public virtual CoreGraphics.CGPath NormalizedPath { get; }
	public virtual OpenTK.Vector2 NormalizedPoints { get; }
	public virtual nint PointCount { get; }
	public virtual VNRequestRevision RequestRevision { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual VNContour GetChildContour (nuint childContourIndex, out Foundation.NSError error);
	public virtual VNContour GetPolygonApproximation (float epsilon, out Foundation.NSError error);
}

New Type: Vision.VNContoursObservation

public class VNContoursObservation : Vision.VNObservation, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, IVNRequestRevisionProviding {
	// constructors
	public VNContoursObservation (Foundation.NSCoder coder);
	protected VNContoursObservation (Foundation.NSObjectFlag t);
	protected VNContoursObservation (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nint ContourCount { get; }
	public virtual CoreGraphics.CGPath NormalizedPath { get; }
	public static Foundation.NSString RecognizedPointGroupKeyAll { get; }
	public virtual nint TopLevelContourCount { get; }
	public virtual VNContour[] TopLevelContours { get; }
	// methods
	public virtual VNContour GetContour (Foundation.NSIndexPath indexPath, out Foundation.NSError error);
	public virtual VNContour GetContour (nint contourIndex, out Foundation.NSError error);
}

New Type: Vision.VNDetectContourRequestRevision

[Serializable]
public enum VNDetectContourRequestRevision {
	One = 1,
	Unspecified = 0,
}

New Type: Vision.VNDetectContoursRequest

public class VNDetectContoursRequest : Vision.VNImageBasedRequest, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected VNDetectContoursRequest (Foundation.NSObjectFlag t);
	protected VNDetectContoursRequest (IntPtr handle);
	public VNDetectContoursRequest (VNRequestCompletionHandler completionHandler);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual float ContrastAdjustment { get; set; }
	public static VNDetectContourRequestRevision CurrentRevision { get; }
	public static VNDetectContourRequestRevision DefaultRevision { get; }
	public virtual bool DetectsDarkOnLight { get; set; }
	public virtual nuint MaximumImageDimension { get; set; }
	public virtual VNDetectContourRequestRevision Revision { get; set; }
	public static VNDetectContourRequestRevision[] SupportedRevisions { get; }
	public static Foundation.NSIndexSet WeakSupportedRevisions { get; }
}

New Type: Vision.VNDetectHumanBodyPoseRequest

public class VNDetectHumanBodyPoseRequest : Vision.VNImageBasedRequest, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected VNDetectHumanBodyPoseRequest (Foundation.NSObjectFlag t);
	protected VNDetectHumanBodyPoseRequest (IntPtr handle);
	public VNDetectHumanBodyPoseRequest (VNRequestCompletionHandler completionHandler);
	// properties
	public override IntPtr ClassHandle { get; }
	public static VNDetectHumanBodyPoseRequestRevision CurrentRevision { get; }
	public static VNDetectHumanBodyPoseRequestRevision DefaultRevision { get; }
	public virtual VNHumanBodyPoseObservation[] Results { get; }
	public virtual VNDetectHumanBodyPoseRequestRevision Revision { get; set; }
	public static VNDetectHumanBodyPoseRequestRevision[] SupportedRevisions { get; }
	public static Foundation.NSIndexSet WeakSupportedRevisions { get; }
	// methods
	public static VNHumanBodyPoseObservationJointName[] GetSupportedJointNames (VNDetectHumanBodyPoseRequestRevision revision, out Foundation.NSError error);
	public static VNHumanBodyPoseObservationJointsGroupName[] GetSupportedJointsGroupNames (VNDetectHumanBodyPoseRequestRevision revision, out Foundation.NSError error);
}

New Type: Vision.VNDetectHumanBodyPoseRequestRevision

[Serializable]
public enum VNDetectHumanBodyPoseRequestRevision {
	One = 1,
	Unspecified = 0,
}

New Type: Vision.VNDetectHumanHandPoseRequest

public class VNDetectHumanHandPoseRequest : Vision.VNImageBasedRequest, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected VNDetectHumanHandPoseRequest (Foundation.NSObjectFlag t);
	protected VNDetectHumanHandPoseRequest (IntPtr handle);
	public VNDetectHumanHandPoseRequest (VNRequestCompletionHandler completionHandler);
	// properties
	public override IntPtr ClassHandle { get; }
	public static VNDetectHumanHandPoseRequestRevision CurrentRevision { get; }
	public static VNDetectHumanHandPoseRequestRevision DefaultRevision { get; }
	public virtual nuint MaximumHandCount { get; set; }
	public virtual VNHumanHandPoseObservation[] Results { get; }
	public virtual VNDetectHumanHandPoseRequestRevision Revision { get; set; }
	public static VNDetectHumanHandPoseRequestRevision[] SupportedRevisions { get; }
	public static Foundation.NSIndexSet WeakSupportedRevisions { get; }
	// methods
	public static VNHumanHandPoseObservationJointName[] GetSupportedJointNames (VNDetectHumanHandPoseRequestRevision revision, out Foundation.NSError error);
	public static VNHumanHandPoseObservationJointsGroupName[] GetSupportedJointsGroupNames (VNDetectHumanHandPoseRequestRevision revision, out Foundation.NSError error);
}

New Type: Vision.VNDetectHumanHandPoseRequestRevision

[Serializable]
public enum VNDetectHumanHandPoseRequestRevision {
	One = 1,
	Unspecified = 0,
}

New Type: Vision.VNDetectTrajectoriesRequest

public class VNDetectTrajectoriesRequest : Vision.VNStatefulRequest, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected VNDetectTrajectoriesRequest (Foundation.NSObjectFlag t);
	protected VNDetectTrajectoriesRequest (IntPtr handle);
	public VNDetectTrajectoriesRequest (CoreMedia.CMTime frameAnalysisSpacing, nint trajectoryLength, VNRequestCompletionHandler completionHandler);
	// properties
	public override IntPtr ClassHandle { get; }
	public static VNDetectTrajectoriesRequestRevision CurrentRevision { get; }
	public static VNDetectTrajectoriesRequestRevision DefaultRevision { get; }
	public virtual float ObjectMaximumNormalizedRadius { get; set; }
	public virtual float ObjectMinimumNormalizedRadius { get; set; }
	public virtual VNTrajectoryObservation[] Results { get; }
	public virtual VNDetectTrajectoriesRequestRevision Revision { get; set; }
	public static VNDetectTrajectoriesRequestRevision[] SupportedRevisions { get; }
	public virtual nint TrajectoryLength { get; }
	public static Foundation.NSIndexSet WeakSupportedRevisions { get; }
}

New Type: Vision.VNDetectTrajectoriesRequestRevision

[Serializable]
public enum VNDetectTrajectoriesRequestRevision {
	One = 1,
	Unspecified = 0,
}

New Type: Vision.VNDetectedPoint

public class VNDetectedPoint : Vision.VNPoint, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public VNDetectedPoint (Foundation.NSCoder coder);
	protected VNDetectedPoint (Foundation.NSObjectFlag t);
	protected VNDetectedPoint (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual float Confidence { get; }
}

New Type: Vision.VNGenerateOpticalFlowRequest

public class VNGenerateOpticalFlowRequest : Vision.VNTargetedImageRequest, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public VNGenerateOpticalFlowRequest ();
	protected VNGenerateOpticalFlowRequest (Foundation.NSObjectFlag t);
	protected VNGenerateOpticalFlowRequest (IntPtr handle);
	public VNGenerateOpticalFlowRequest (CoreGraphics.CGImage cgImage, Foundation.NSDictionary optionsDict);
	public VNGenerateOpticalFlowRequest (CoreGraphics.CGImage cgImage, VNImageOptions options);
	public VNGenerateOpticalFlowRequest (CoreImage.CIImage ciImage, Foundation.NSDictionary optionsDict);
	public VNGenerateOpticalFlowRequest (CoreImage.CIImage ciImage, VNImageOptions options);
	public VNGenerateOpticalFlowRequest (CoreVideo.CVPixelBuffer pixelBuffer, Foundation.NSDictionary optionsDict);
	public VNGenerateOpticalFlowRequest (CoreVideo.CVPixelBuffer pixelBuffer, VNImageOptions options);
	public VNGenerateOpticalFlowRequest (Foundation.NSData imageData, Foundation.NSDictionary optionsDict);
	public VNGenerateOpticalFlowRequest (Foundation.NSData imageData, VNImageOptions options);
	public VNGenerateOpticalFlowRequest (Foundation.NSUrl imageUrl, Foundation.NSDictionary optionsDict);
	public VNGenerateOpticalFlowRequest (Foundation.NSUrl imageUrl, VNImageOptions options);
	public VNGenerateOpticalFlowRequest (CoreGraphics.CGImage cgImage, Foundation.NSDictionary optionsDict, VNRequestCompletionHandler completionHandler);
	public VNGenerateOpticalFlowRequest (CoreGraphics.CGImage cgImage, ImageIO.CGImagePropertyOrientation orientation, Foundation.NSDictionary optionsDict);
	public VNGenerateOpticalFlowRequest (CoreGraphics.CGImage cgImage, ImageIO.CGImagePropertyOrientation orientation, VNImageOptions options);
	public VNGenerateOpticalFlowRequest (CoreGraphics.CGImage cgImage, VNImageOptions options, VNRequestCompletionHandler completionHandler);
	public VNGenerateOpticalFlowRequest (CoreImage.CIImage ciImage, Foundation.NSDictionary optionsDict, VNRequestCompletionHandler completionHandler);
	public VNGenerateOpticalFlowRequest (CoreImage.CIImage ciImage, ImageIO.CGImagePropertyOrientation orientation, Foundation.NSDictionary optionsDict);
	public VNGenerateOpticalFlowRequest (CoreImage.CIImage ciImage, ImageIO.CGImagePropertyOrientation orientation, VNImageOptions options);
	public VNGenerateOpticalFlowRequest (CoreImage.CIImage ciImage, VNImageOptions options, VNRequestCompletionHandler completionHandler);
	public VNGenerateOpticalFlowRequest (CoreVideo.CVPixelBuffer pixelBuffer, Foundation.NSDictionary optionsDict, VNRequestCompletionHandler completionHandler);
	public VNGenerateOpticalFlowRequest (CoreVideo.CVPixelBuffer pixelBuffer, ImageIO.CGImagePropertyOrientation orientation, Foundation.NSDictionary optionsDict);
	public VNGenerateOpticalFlowRequest (CoreVideo.CVPixelBuffer pixelBuffer, ImageIO.CGImagePropertyOrientation orientation, VNImageOptions options);
	public VNGenerateOpticalFlowRequest (CoreVideo.CVPixelBuffer pixelBuffer, VNImageOptions options, VNRequestCompletionHandler completionHandler);
	public VNGenerateOpticalFlowRequest (Foundation.NSData imageData, Foundation.NSDictionary optionsDict, VNRequestCompletionHandler completionHandler);
	public VNGenerateOpticalFlowRequest (Foundation.NSData imageData, ImageIO.CGImagePropertyOrientation orientation, Foundation.NSDictionary optionsDict);
	public VNGenerateOpticalFlowRequest (Foundation.NSData imageData, ImageIO.CGImagePropertyOrientation orientation, VNImageOptions options);
	public VNGenerateOpticalFlowRequest (Foundation.NSData imageData, VNImageOptions options, VNRequestCompletionHandler completionHandler);
	public VNGenerateOpticalFlowRequest (Foundation.NSUrl imageUrl, Foundation.NSDictionary optionsDict, VNRequestCompletionHandler completionHandler);
	public VNGenerateOpticalFlowRequest (Foundation.NSUrl imageUrl, ImageIO.CGImagePropertyOrientation orientation, Foundation.NSDictionary optionsDict);
	public VNGenerateOpticalFlowRequest (Foundation.NSUrl imageUrl, ImageIO.CGImagePropertyOrientation orientation, VNImageOptions options);
	public VNGenerateOpticalFlowRequest (Foundation.NSUrl imageUrl, VNImageOptions options, VNRequestCompletionHandler completionHandler);
	public VNGenerateOpticalFlowRequest (CoreGraphics.CGImage cgImage, ImageIO.CGImagePropertyOrientation orientation, Foundation.NSDictionary optionsDict, VNRequestCompletionHandler completionHandler);
	public VNGenerateOpticalFlowRequest (CoreGraphics.CGImage cgImage, ImageIO.CGImagePropertyOrientation orientation, VNImageOptions options, VNRequestCompletionHandler completionHandler);
	public VNGenerateOpticalFlowRequest (CoreImage.CIImage ciImage, ImageIO.CGImagePropertyOrientation orientation, Foundation.NSDictionary optionsDict, VNRequestCompletionHandler completionHandler);
	public VNGenerateOpticalFlowRequest (CoreImage.CIImage ciImage, ImageIO.CGImagePropertyOrientation orientation, VNImageOptions options, VNRequestCompletionHandler completionHandler);
	public VNGenerateOpticalFlowRequest (CoreVideo.CVPixelBuffer pixelBuffer, ImageIO.CGImagePropertyOrientation orientation, Foundation.NSDictionary optionsDict, VNRequestCompletionHandler completionHandler);
	public VNGenerateOpticalFlowRequest (CoreVideo.CVPixelBuffer pixelBuffer, ImageIO.CGImagePropertyOrientation orientation, VNImageOptions options, VNRequestCompletionHandler completionHandler);
	public VNGenerateOpticalFlowRequest (Foundation.NSData imageData, ImageIO.CGImagePropertyOrientation orientation, Foundation.NSDictionary optionsDict, VNRequestCompletionHandler completionHandler);
	public VNGenerateOpticalFlowRequest (Foundation.NSData imageData, ImageIO.CGImagePropertyOrientation orientation, VNImageOptions options, VNRequestCompletionHandler completionHandler);
	public VNGenerateOpticalFlowRequest (Foundation.NSUrl imageUrl, ImageIO.CGImagePropertyOrientation orientation, Foundation.NSDictionary optionsDict, VNRequestCompletionHandler completionHandler);
	public VNGenerateOpticalFlowRequest (Foundation.NSUrl imageUrl, ImageIO.CGImagePropertyOrientation orientation, VNImageOptions options, VNRequestCompletionHandler completionHandler);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual VNGenerateOpticalFlowRequestComputationAccuracy ComputationAccuracy { get; set; }
	public static VNGenerateOpticalFlowRequestRevision CurrentRevision { get; }
	public static VNGenerateOpticalFlowRequestRevision DefaultRevision { get; }
	public virtual CoreVideo.CVPixelFormatType OutputPixelFormat { get; set; }
	public virtual VNGenerateOpticalFlowRequestRevision Revision { get; set; }
	public static VNGenerateOpticalFlowRequestRevision[] SupportedRevisions { get; }
	public static Foundation.NSIndexSet WeakSupportedRevisions { get; }
}

New Type: Vision.VNGenerateOpticalFlowRequestComputationAccuracy

[Serializable]
public enum VNGenerateOpticalFlowRequestComputationAccuracy {
	High = 2,
	Low = 0,
	Medium = 1,
	VeryHigh = 3,
}

New Type: Vision.VNGenerateOpticalFlowRequestRevision

[Serializable]
public enum VNGenerateOpticalFlowRequestRevision {
	One = 1,
	Unspecified = 0,
}

New Type: Vision.VNGeometryUtils

public class VNGeometryUtils : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected VNGeometryUtils (Foundation.NSObjectFlag t);
	protected VNGeometryUtils (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public static bool CalculateArea (out double area, VNContour contour, bool orientedArea, out Foundation.NSError error);
	public static bool CalculatePerimeter (out double perimeter, VNContour contour, out Foundation.NSError error);
	public static VNCircle CreateBoundingCircle (OpenTK.Vector2[] points, out Foundation.NSError error);
	public static VNCircle CreateBoundingCircle (VNContour contour, out Foundation.NSError error);
	public static VNCircle CreateBoundingCircle (VNPoint[] points, out Foundation.NSError error);
}

New Type: Vision.VNHumanBodyPoseObservation

public class VNHumanBodyPoseObservation : Vision.VNRecognizedPointsObservation, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, IVNRequestRevisionProviding {
	// constructors
	public VNHumanBodyPoseObservation (Foundation.NSCoder coder);
	protected VNHumanBodyPoseObservation (Foundation.NSObjectFlag t);
	protected VNHumanBodyPoseObservation (IntPtr handle);
	// properties
	public virtual VNHumanBodyPoseObservationJointName[] AvailableJointNames { get; }
	public virtual VNHumanBodyPoseObservationJointsGroupName[] AvailableJointsGroupNames { get; }
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual VNRecognizedPoint GetRecognizedPoint (VNHumanBodyPoseObservationJointName jointName, out Foundation.NSError error);
	public virtual Foundation.NSDictionary<Foundation.NSString,Vision.VNRecognizedPoint> GetRecognizedPoints (VNHumanBodyPoseObservationJointsGroupName jointsGroupName, out Foundation.NSError error);
}

New Type: Vision.VNHumanBodyPoseObservationJointName

[Serializable]
public enum VNHumanBodyPoseObservationJointName {
	LeftAnkle = 18,
	LeftEar = 4,
	LeftElbow = 9,
	LeftEye = 2,
	LeftHip = 13,
	LeftKnee = 16,
	LeftShoulder = 6,
	LeftWrist = 11,
	Neck = 8,
	None = 0,
	Nose = 1,
	RightAnkle = 19,
	RightEar = 5,
	RightElbow = 10,
	RightEye = 3,
	RightHip = 14,
	RightKnee = 17,
	RightShoulder = 7,
	RightWrist = 12,
	Root = 15,
}

New Type: Vision.VNHumanBodyPoseObservationJointNameExtensions

public static class VNHumanBodyPoseObservationJointNameExtensions {
	// methods
	public static Foundation.NSString GetConstant (this VNHumanBodyPoseObservationJointName self);
	public static VNHumanBodyPoseObservationJointName GetValue (Foundation.NSString constant);
}

New Type: Vision.VNHumanBodyPoseObservationJointsGroupName

[Serializable]
public enum VNHumanBodyPoseObservationJointsGroupName {
	All = 7,
	Face = 1,
	LeftArm = 3,
	LeftLeg = 5,
	None = 0,
	RightArm = 4,
	RightLeg = 6,
	Torso = 2,
}

New Type: Vision.VNHumanBodyPoseObservationJointsGroupNameExtensions

public static class VNHumanBodyPoseObservationJointsGroupNameExtensions {
	// methods
	public static Foundation.NSString GetConstant (this VNHumanBodyPoseObservationJointsGroupName self);
	public static VNHumanBodyPoseObservationJointsGroupName GetValue (Foundation.NSString constant);
}

New Type: Vision.VNHumanHandPoseObservation

public class VNHumanHandPoseObservation : Vision.VNRecognizedPointsObservation, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, IVNRequestRevisionProviding {
	// constructors
	public VNHumanHandPoseObservation (Foundation.NSCoder coder);
	protected VNHumanHandPoseObservation (Foundation.NSObjectFlag t);
	protected VNHumanHandPoseObservation (IntPtr handle);
	// properties
	public virtual VNHumanHandPoseObservationJointName[] AvailableJointNames { get; }
	public virtual VNHumanHandPoseObservationJointsGroupName[] AvailableJointsGroupNames { get; }
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual VNRecognizedPoint GetRecognizedPoint (VNHumanHandPoseObservationJointName jointName, out Foundation.NSError error);
	public virtual Foundation.NSDictionary<Foundation.NSString,Vision.VNRecognizedPoint> GetRecognizedPoints (VNHumanHandPoseObservationJointsGroupName jointsGroupName, out Foundation.NSError error);
}

New Type: Vision.VNHumanHandPoseObservationJointName

[Serializable]
public enum VNHumanHandPoseObservationJointName {
	IndexDip = 8,
	IndexMcp = 6,
	IndexPip = 7,
	IndexTip = 9,
	LittleDip = 20,
	LittleMcp = 18,
	LittlePip = 19,
	LittleTip = 21,
	MiddleDip = 12,
	MiddleMcp = 10,
	MiddlePip = 11,
	MiddleTip = 13,
	None = 0,
	RingDip = 16,
	RingMcp = 14,
	RingPip = 15,
	RingTip = 17,
	ThumbCmc = 2,
	ThumbIP = 4,
	ThumbMP = 3,
	ThumbTip = 5,
	Wrist = 1,
}

New Type: Vision.VNHumanHandPoseObservationJointNameExtensions

public static class VNHumanHandPoseObservationJointNameExtensions {
	// methods
	public static Foundation.NSString GetConstant (this VNHumanHandPoseObservationJointName self);
	public static VNHumanHandPoseObservationJointName GetValue (Foundation.NSString constant);
}

New Type: Vision.VNHumanHandPoseObservationJointsGroupName

[Serializable]
public enum VNHumanHandPoseObservationJointsGroupName {
	All = 6,
	IndexFinger = 2,
	LittleFinger = 5,
	MiddleFinger = 3,
	None = 0,
	RingFinger = 4,
	Thumb = 1,
}

New Type: Vision.VNHumanHandPoseObservationJointsGroupNameExtensions

public static class VNHumanHandPoseObservationJointsGroupNameExtensions {
	// methods
	public static Foundation.NSString GetConstant (this VNHumanHandPoseObservationJointsGroupName self);
	public static VNHumanHandPoseObservationJointsGroupName GetValue (Foundation.NSString constant);
}

New Type: Vision.VNPoint

public class VNPoint : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public VNPoint (CoreGraphics.CGPoint location);
	public VNPoint (Foundation.NSCoder coder);
	protected VNPoint (Foundation.NSObjectFlag t);
	protected VNPoint (IntPtr handle);
	public VNPoint (double x, double y);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual CoreGraphics.CGPoint Location { get; }
	public virtual double X { get; }
	public virtual double Y { get; }
	public static VNPoint Zero { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static VNPoint Create (VNVector vector, VNPoint point);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public virtual double GetDistanceToPoint (VNPoint point);
}

New Type: Vision.VNRecognizedPoint

public class VNRecognizedPoint : Vision.VNDetectedPoint, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public VNRecognizedPoint (Foundation.NSCoder coder);
	protected VNRecognizedPoint (Foundation.NSObjectFlag t);
	protected VNRecognizedPoint (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSString Identifier { get; }
}

New Type: Vision.VNRecognizedPointsObservation

public class VNRecognizedPointsObservation : Vision.VNObservation, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, IVNRequestRevisionProviding {
	// constructors
	public VNRecognizedPointsObservation (Foundation.NSCoder coder);
	protected VNRecognizedPointsObservation (Foundation.NSObjectFlag t);
	protected VNRecognizedPointsObservation (IntPtr handle);
	// properties
	public virtual Foundation.NSString[] AvailableGroupKeys { get; }
	public virtual Foundation.NSString[] AvailableKeys { get; }
	public override IntPtr ClassHandle { get; }
	// methods
	public T[] GetAvailableGroupKeys<T> ();
	public T[] GetAvailableKeys<T> ();
	public virtual CoreML.MLMultiArray GetKeypoints (out Foundation.NSError error);
	public virtual VNRecognizedPoint GetRecognizedPoint (Foundation.NSString pointKey, out Foundation.NSError error);
	public VNRecognizedPoint GetRecognizedPoint (VNHumanBodyPoseObservationJointName bodyLandmark, out Foundation.NSError error);
	public VNRecognizedPoint GetRecognizedPoint (VNHumanHandPoseObservationJointName handLandmark, out Foundation.NSError error);
	public virtual Foundation.NSDictionary<Foundation.NSString,Vision.VNRecognizedPoint> GetRecognizedPoints (Foundation.NSString groupKey, out Foundation.NSError error);
	public Foundation.NSDictionary<Foundation.NSString,Vision.VNRecognizedPoint> GetRecognizedPoints (VNHumanBodyPoseObservationJointsGroupName bodyLandmarkRegion, out Foundation.NSError error);
	public Foundation.NSDictionary<Foundation.NSString,Vision.VNRecognizedPoint> GetRecognizedPoints (VNHumanHandPoseObservationJointsGroupName handLandmarkRegion, out Foundation.NSError error);
}

New Type: Vision.VNStatefulRequest

public class VNStatefulRequest : Vision.VNImageBasedRequest, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected VNStatefulRequest (Foundation.NSObjectFlag t);
	protected VNStatefulRequest (IntPtr handle);
	public VNStatefulRequest (CoreMedia.CMTime frameAnalysisSpacing, VNRequestCompletionHandler completionHandler);
	// properties
	public override IntPtr ClassHandle { get; }
	public static VNStatefulRequestRevision CurrentRevision { get; }
	public static VNStatefulRequestRevision DefaultRevision { get; }
	public virtual CoreMedia.CMTime FrameAnalysisSpacing { get; }
	public virtual nint MinimumLatencyFrameCount { get; }
	public virtual VNStatefulRequestRevision Revision { get; set; }
	public static VNStatefulRequestRevision[] SupportedRevisions { get; }
	public static Foundation.NSIndexSet WeakSupportedRevisions { get; }
}

New Type: Vision.VNStatefulRequestRevision

[Serializable]
public enum VNStatefulRequestRevision {
	One = 1,
	Unspecified = 0,
}

New Type: Vision.VNTrajectoryObservation

public class VNTrajectoryObservation : Vision.VNObservation, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, IVNRequestRevisionProviding {
	// constructors
	public VNTrajectoryObservation (Foundation.NSCoder coder);
	protected VNTrajectoryObservation (Foundation.NSObjectFlag t);
	protected VNTrajectoryObservation (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual VNPoint[] DetectedPoints { get; }
	public virtual OpenTK.Vector3 EquationCoefficients { get; }
	public virtual VNPoint[] ProjectedPoints { get; }
}

New Type: Vision.VNVector

public class VNVector : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public VNVector (Foundation.NSCoder coder);
	protected VNVector (Foundation.NSObjectFlag t);
	protected VNVector (IntPtr handle);
	public VNVector (double x, double y);
	public VNVector (VNPoint head, VNPoint tail);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual double Length { get; }
	public virtual double R { get; }
	public virtual double SquaredLength { get; }
	public virtual double Theta { get; }
	public virtual double X { get; }
	public virtual double Y { get; }
	public static VNVector Zero { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static VNVector Create (double r, double theta);
	public static VNVector CreateByAddingVector (VNVector v1, VNVector v2);
	public static VNVector CreateByMultiplyingVector (VNVector vector, double scalar);
	public static VNVector CreateBySubtractingVector (VNVector v1, VNVector v2);
	public static VNVector CreateUnitVector (VNVector vector);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public static double GetDotProduct (VNVector v1, VNVector v2);
}

New Type: Vision.VNVideoProcessor

public class VNVideoProcessor : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected VNVideoProcessor (Foundation.NSObjectFlag t);
	public VNVideoProcessor (Foundation.NSUrl videoUrl);
	protected VNVideoProcessor (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual bool AddRequest (VNRequest request, VNVideoProcessorRequestProcessingOptions processingOptions, out Foundation.NSError error);
	public virtual bool Analyze (CoreMedia.CMTimeRange timeRange, out Foundation.NSError error);
	public virtual void Cancel ();
	public virtual bool RemoveRequest (VNRequest request, out Foundation.NSError error);
}

New Type: Vision.VNVideoProcessorCadence

public class VNVideoProcessorCadence : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected VNVideoProcessorCadence (Foundation.NSObjectFlag t);
	protected VNVideoProcessorCadence (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: Vision.VNVideoProcessorFrameRateCadence

public class VNVideoProcessorFrameRateCadence : Vision.VNVideoProcessorCadence, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected VNVideoProcessorFrameRateCadence (Foundation.NSObjectFlag t);
	protected VNVideoProcessorFrameRateCadence (IntPtr handle);
	public VNVideoProcessorFrameRateCadence (nint frameRate);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nint FrameRate { get; }
}

New Type: Vision.VNVideoProcessorRequestProcessingOptions

public class VNVideoProcessorRequestProcessingOptions : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public VNVideoProcessorRequestProcessingOptions ();
	protected VNVideoProcessorRequestProcessingOptions (Foundation.NSObjectFlag t);
	protected VNVideoProcessorRequestProcessingOptions (IntPtr handle);
	// properties
	public virtual VNVideoProcessorCadence Cadence { get; set; }
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: Vision.VNVideoProcessorTimeIntervalCadence

public class VNVideoProcessorTimeIntervalCadence : Vision.VNVideoProcessorCadence, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected VNVideoProcessorTimeIntervalCadence (Foundation.NSObjectFlag t);
	public VNVideoProcessorTimeIntervalCadence (double timeInterval);
	protected VNVideoProcessorTimeIntervalCadence (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual double TimeInterval { get; }
}

New Namespace Accessibility

New Type: Accessibility.AXCustomContent

public class AXCustomContent : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public AXCustomContent (Foundation.NSCoder coder);
	protected AXCustomContent (Foundation.NSObjectFlag t);
	protected AXCustomContent (IntPtr handle);
	// properties
	public virtual Foundation.NSAttributedString AttributedLabel { get; }
	public virtual Foundation.NSAttributedString AttributedValue { get; }
	public override IntPtr ClassHandle { get; }
	public virtual AXCustomContentImportance Importance { get; set; }
	public virtual string Label { get; }
	public virtual string Value { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static AXCustomContent Create (Foundation.NSAttributedString label, Foundation.NSAttributedString value);
	public static AXCustomContent Create (string label, string value);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Accessibility.AXCustomContentImportance

[Serializable]
public enum AXCustomContentImportance {
	Default = 0,
	High = 1,
}

New Type: Accessibility.IAXCustomContentProvider

public interface IAXCustomContentProvider : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual AXCustomContent[] AccessibilityCustomContent { get; set; }
}

New Namespace AppTrackingTransparency

New Type: AppTrackingTransparency.ATTrackingManager

public class ATTrackingManager : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ATTrackingManager (Foundation.NSObjectFlag t);
	protected ATTrackingManager (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static ATTrackingManagerAuthorizationStatus TrackingAuthorizationStatus { get; }
	// methods
	public static void RequestTrackingAuthorization (System.Action<ATTrackingManagerAuthorizationStatus> completion);
	public static System.Threading.Tasks.Task<ATTrackingManagerAuthorizationStatus> RequestTrackingAuthorizationAsync ();
}

New Type: AppTrackingTransparency.ATTrackingManagerAuthorizationStatus

[Serializable]
public enum ATTrackingManagerAuthorizationStatus {
	Authorized = 3,
	Denied = 2,
	NotDetermined = 0,
	Restricted = 1,
}

New Namespace CoreHaptics

New Type: CoreHaptics.CHHapticDynamicParameter

public class CHHapticDynamicParameter : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected CHHapticDynamicParameter (Foundation.NSObjectFlag t);
	protected CHHapticDynamicParameter (IntPtr handle);
	public CHHapticDynamicParameter (CHHapticDynamicParameterId parameterId, float value, double time);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual CHHapticDynamicParameterId ParameterId { get; }
	public virtual double RelativeTime { get; set; }
	public virtual float Value { get; set; }
}

New Type: CoreHaptics.CHHapticDynamicParameterId

[Serializable]
public enum CHHapticDynamicParameterId {
	AudioAttackTimeControl = 9,
	AudioBrightnessControl = 7,
	AudioDecayTimeControl = 10,
	AudioPanControl = 6,
	AudioPitchControl = 8,
	AudioReleaseTimeControl = 11,
	AudioVolumeControl = 5,
	HapticAttackTimeControl = 2,
	HapticDecayTimeControl = 3,
	HapticIntensityControl = 0,
	HapticReleaseTimeControl = 4,
	HapticSharpnessControl = 1,
}

New Type: CoreHaptics.CHHapticDynamicParameterIdExtensions

public static class CHHapticDynamicParameterIdExtensions {
	// methods
	public static Foundation.NSString GetConstant (this CHHapticDynamicParameterId self);
	public static CHHapticDynamicParameterId GetValue (Foundation.NSString constant);
}

New Type: CoreHaptics.CHHapticEngine

public class CHHapticEngine : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected CHHapticEngine (Foundation.NSObjectFlag t);
	protected CHHapticEngine (IntPtr handle);
	public CHHapticEngine (out Foundation.NSError error);
	// properties
	public virtual bool AutoShutdownEnabled { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual double CurrentTime { get; }
	public virtual bool IsMutedForAudio { get; set; }
	public virtual bool IsMutedForHaptics { get; set; }
	public virtual bool PlaysHapticsOnly { get; set; }
	public virtual System.Action ResetHandler { get; set; }
	public virtual System.Action<CHHapticEngineStoppedReason> StoppedHandler { get; set; }
	// methods
	public virtual ICHHapticAdvancedPatternPlayer CreateAdvancedPlayer (CHHapticPattern pattern, out Foundation.NSError outError);
	public virtual ICHHapticPatternPlayer CreatePlayer (CHHapticPattern pattern, out Foundation.NSError outError);
	public static ICHHapticDeviceCapability GetHardwareCapabilities ();
	public virtual void NotifyWhenPlayersFinished (System.Action<Foundation.NSError> finishedHandler);
	public virtual System.Threading.Tasks.Task NotifyWhenPlayersFinishedAsync ();
	public virtual bool PlayPattern (Foundation.NSData data, out Foundation.NSError outError);
	public virtual bool PlayPattern (Foundation.NSUrl fileUrl, out Foundation.NSError outError);
	public virtual nuint RegisterAudioResource (Foundation.NSUrl resourceUrl, Foundation.NSDictionary options, out Foundation.NSError outError);
	public virtual void Start (System.Action<Foundation.NSError> completionHandler);
	public virtual bool Start (out Foundation.NSError outError);
	public virtual System.Threading.Tasks.Task StartAsync ();
	public virtual void Stop (System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task StopAsync ();
	public virtual bool UnregisterAudioResource (nuint resourceId, out Foundation.NSError outError);
}

New Type: CoreHaptics.CHHapticEngineFinishedAction

[Serializable]
public enum CHHapticEngineFinishedAction {
	LeaveEngineRunning = 2,
	StopEngine = 1,
}

New Type: CoreHaptics.CHHapticEngineStoppedReason

[Serializable]
public enum CHHapticEngineStoppedReason {
	ApplicationSuspended = 2,
	AudioSessionInterrupt = 1,
	IdleTimeout = 3,
	NotifyWhenFinished = 4,
	SystemError = -1,
}

New Type: CoreHaptics.CHHapticErrorCode

[Serializable]
public enum CHHapticErrorCode {
	BadEventEntry = -4830,
	BadParameterEntry = -4831,
	EngineNotRunning = -4805,
	EngineStartTimeout = -4808,
	InvalidAudioResource = -4824,
	InvalidAudioSession = -4815,
	InvalidEventDuration = -4823,
	InvalidEventTime = -4822,
	InvalidEventType = -4821,
	InvalidParameterType = -4820,
	InvalidPatternData = -4813,
	InvalidPatternDictionary = -4814,
	InvalidPatternPlayer = -4812,
	InvalidTime = -4840,
	MemoryError = -4899,
	NotSupported = -4809,
	OperationNotPermitted = -4806,
	ResourceNotAvailable = -4825,
	ServerInitFailed = -4810,
	ServerInterrupted = -4811,
	UnknownError = -4898,
}

New Type: CoreHaptics.CHHapticEvent

public class CHHapticEvent : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected CHHapticEvent (Foundation.NSObjectFlag t);
	protected CHHapticEvent (IntPtr handle);
	public CHHapticEvent (CHHapticEventType type, CHHapticEventParameter[] eventParams, double time);
	public CHHapticEvent (nuint resourceId, CHHapticEventParameter[] eventParams, double time);
	public CHHapticEvent (CHHapticEventType type, CHHapticEventParameter[] eventParams, double time, double duration);
	public CHHapticEvent (nuint resourceId, CHHapticEventParameter[] eventParams, double time, double duration);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual double Duration { get; set; }
	public virtual CHHapticEventParameter[] EventParameters { get; }
	public virtual double RelativeTime { get; set; }
	public virtual CHHapticEventType Type { get; }
}

New Type: CoreHaptics.CHHapticEventParameter

public class CHHapticEventParameter : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected CHHapticEventParameter (Foundation.NSObjectFlag t);
	protected CHHapticEventParameter (IntPtr handle);
	public CHHapticEventParameter (CHHapticEventParameterId parameterId, float value);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual CHHapticEventParameterId ParameterId { get; }
	public virtual float Value { get; set; }
}

New Type: CoreHaptics.CHHapticEventParameterId

[Serializable]
public enum CHHapticEventParameterId {
	AttackTime = 2,
	AudioBrightness = 9,
	AudioPan = 8,
	AudioPitch = 7,
	AudioVolume = 6,
	DecayTime = 3,
	HapticIntensity = 0,
	HapticSharpness = 1,
	ReleaseTime = 4,
	Sustained = 5,
}

New Type: CoreHaptics.CHHapticEventParameterIdExtensions

public static class CHHapticEventParameterIdExtensions {
	// methods
	public static Foundation.NSString GetConstant (this CHHapticEventParameterId self);
	public static CHHapticEventParameterId GetValue (Foundation.NSString constant);
}

New Type: CoreHaptics.CHHapticEventType

[Serializable]
public enum CHHapticEventType {
	AudioContinuous = 2,
	AudioCustom = 3,
	HapticContinuous = 1,
	HapticTransient = 0,
}

New Type: CoreHaptics.CHHapticEventTypeExtensions

public static class CHHapticEventTypeExtensions {
	// methods
	public static Foundation.NSString GetConstant (this CHHapticEventType self);
	public static CHHapticEventType GetValue (Foundation.NSString constant);
}

New Type: CoreHaptics.CHHapticParameterCurve

public class CHHapticParameterCurve : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected CHHapticParameterCurve (Foundation.NSObjectFlag t);
	protected CHHapticParameterCurve (IntPtr handle);
	public CHHapticParameterCurve (CHHapticDynamicParameterId parameterId, CHHapticParameterCurveControlPoint[] controlPoints, double relativeTime);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual CHHapticParameterCurveControlPoint[] ControlPoints { get; }
	public virtual CHHapticDynamicParameterId ParameterId { get; }
	public virtual double RelativeTime { get; set; }
}

New Type: CoreHaptics.CHHapticParameterCurveControlPoint

public class CHHapticParameterCurveControlPoint : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected CHHapticParameterCurveControlPoint (Foundation.NSObjectFlag t);
	protected CHHapticParameterCurveControlPoint (IntPtr handle);
	public CHHapticParameterCurveControlPoint (double time, float value);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual double RelativeTime { get; set; }
	public virtual float Value { get; set; }
}

New Type: CoreHaptics.CHHapticPattern

public class CHHapticPattern : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected CHHapticPattern (Foundation.NSObjectFlag t);
	protected CHHapticPattern (IntPtr handle);
	public CHHapticPattern (CHHapticPatternDefinition patternDefinition, out Foundation.NSError outError);
	public CHHapticPattern (Foundation.NSDictionary patternDict, out Foundation.NSError outError);
	public CHHapticPattern (CHHapticEvent[] events, CHHapticDynamicParameter[] parameters, out Foundation.NSError outError);
	public CHHapticPattern (CHHapticEvent[] events, CHHapticParameterCurve[] parameterCurves, out Foundation.NSError outError);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual double Duration { get; }
	// methods
	public CHHapticPatternDefinition Export (out Foundation.NSError outError);
}

New Type: CoreHaptics.CHHapticPatternDefinition

public class CHHapticPatternDefinition : Foundation.DictionaryContainer {
	// constructors
	public CHHapticPatternDefinition ();
	public CHHapticPatternDefinition (Foundation.NSDictionary dictionary);
	// properties
	public Foundation.NSDictionary Event { get; set; }
	public double? EventDuration { get; set; }
	public Foundation.NSArray EventParameters { get; set; }
	public CHHapticEventType? EventType { get; set; }
	public Foundation.NSString EventWaveformPath { get; set; }
	public Foundation.NSDictionary Parameter { get; set; }
	public Foundation.NSString ParameterId { get; set; }
	public double? ParameterValue { get; set; }
	public Foundation.NSArray Pattern { get; set; }
	public double? Time { get; set; }
	public double? Version { get; set; }
	public Foundation.NSObject WeakParameterCurve { get; set; }
	public Foundation.NSObject WeakParameterCurveControlPoints { get; set; }
}

New Type: CoreHaptics.ICHHapticAdvancedPatternPlayer

public interface ICHHapticAdvancedPatternPlayer : ICHHapticPatternPlayer, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual System.Action<Foundation.NSError> CompletionHandler { get; set; }
	public virtual bool IsMuted { get; set; }
	public virtual bool LoopEnabled { get; set; }
	public virtual double LoopEnd { get; set; }
	public virtual float PlaybackRate { get; set; }
	// methods
	public virtual bool Pause (double time, out Foundation.NSError outError);
	public virtual bool Resume (double time, out Foundation.NSError outError);
	public virtual bool Seek (double offsetTime, out Foundation.NSError outError);
}

New Type: CoreHaptics.ICHHapticDeviceCapability

public interface ICHHapticDeviceCapability : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual bool SupportsAudio { get; }
	public virtual bool SupportsHaptics { get; }
	// methods
	public virtual ICHHapticParameterAttributes GetAttributes (Foundation.NSString eventParameter, out Foundation.NSError outError);
	public virtual ICHHapticParameterAttributes GetAttributes (Foundation.NSString eventParameter, string type, out Foundation.NSError outError);
}

New Type: CoreHaptics.ICHHapticParameterAttributes

public interface ICHHapticParameterAttributes : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual float DefaultValue { get; }
	public virtual float MaxValue { get; }
	public virtual float MinValue { get; }
}

New Type: CoreHaptics.ICHHapticPatternPlayer

public interface ICHHapticPatternPlayer : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual bool IsMuted { get; set; }
	// methods
	public virtual bool Cancel (out Foundation.NSError outError);
	public virtual bool Schedule (CHHapticParameterCurve parameterCurve, double time, out Foundation.NSError outError);
	public virtual bool Send (CHHapticDynamicParameter[] parameters, double time, out Foundation.NSError outError);
	public virtual bool Start (double time, out Foundation.NSError outError);
	public virtual bool Stop (double time, out Foundation.NSError outError);
}

New Namespace Intents

New Type: Intents.IINAddMediaIntentHandling

public interface IINAddMediaIntentHandling : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void HandleAddMedia (INAddMediaIntent intent, System.Action<INAddMediaIntentResponse> completion);
}

New Type: Intents.IINIntentHandlerProviding

public interface IINIntentHandlerProviding : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual Foundation.NSObject GetHandler (INIntent intent);
}

New Type: Intents.IINPlayMediaIntentHandling

public interface IINPlayMediaIntentHandling : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void HandlePlayMedia (INPlayMediaIntent intent, System.Action<INPlayMediaIntentResponse> completion);
}

New Type: Intents.IINSearchForMediaIntentHandling

public interface IINSearchForMediaIntentHandling : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void HandleSearch (INSearchForMediaIntent intent, System.Action<INSearchForMediaIntentResponse> completion);
}

New Type: Intents.IINSpeakable

public interface IINSpeakable : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual string Identifier { get; }
	public virtual string PronunciationHint { get; }
	public virtual string SpokenPhrase { get; }
}

New Type: Intents.IINUpdateMediaAffinityIntentHandling

public interface IINUpdateMediaAffinityIntentHandling : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void HandleUpdateMediaAffinity (INUpdateMediaAffinityIntent intent, System.Action<INUpdateMediaAffinityIntentResponse> completion);
}

New Type: Intents.INAddMediaIntent

public class INAddMediaIntent : Intents.INIntent, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INAddMediaIntent (Foundation.NSCoder coder);
	protected INAddMediaIntent (Foundation.NSObjectFlag t);
	protected INAddMediaIntent (IntPtr handle);
	public INAddMediaIntent (INMediaItem[] mediaItems, INMediaSearch mediaSearch, INMediaDestination mediaDestination);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual INMediaDestination MediaDestination { get; }
	public virtual INMediaItem[] MediaItems { get; }
	public virtual INMediaSearch MediaSearch { get; }
}

New Type: Intents.INAddMediaIntentHandling_Extensions

public static class INAddMediaIntentHandling_Extensions {
	// methods
	public static void Confirm (this IINAddMediaIntentHandling This, INAddMediaIntent intent, System.Action<INAddMediaIntentResponse> completion);
	public static void ResolveMediaDestination (this IINAddMediaIntentHandling This, INAddMediaIntent intent, System.Action<INAddMediaMediaDestinationResolutionResult> completion);
	public static void ResolveMediaItems (this IINAddMediaIntentHandling This, INAddMediaIntent intent, System.Action<INAddMediaMediaItemResolutionResult[]> completion);
}

New Type: Intents.INAddMediaIntentResponse

public class INAddMediaIntentResponse : Intents.INIntentResponse, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INAddMediaIntentResponse (Foundation.NSCoder coder);
	protected INAddMediaIntentResponse (Foundation.NSObjectFlag t);
	protected INAddMediaIntentResponse (IntPtr handle);
	public INAddMediaIntentResponse (INAddMediaIntentResponseCode code, Foundation.NSUserActivity userActivity);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual INAddMediaIntentResponseCode Code { get; }
}

New Type: Intents.INAddMediaIntentResponseCode

[Serializable]
public enum INAddMediaIntentResponseCode {
	Failure = 5,
	FailureRequiringAppLaunch = 6,
	HandleInApp = 4,
	InProgress = 2,
	Ready = 1,
	Success = 3,
	Unspecified = 0,
}

New Type: Intents.INAddMediaMediaDestinationResolutionResult

public class INAddMediaMediaDestinationResolutionResult : Intents.INMediaDestinationResolutionResult, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected INAddMediaMediaDestinationResolutionResult (Foundation.NSObjectFlag t);
	public INAddMediaMediaDestinationResolutionResult (INMediaDestinationResolutionResult mediaDestinationResolutionResult);
	protected INAddMediaMediaDestinationResolutionResult (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static INAddMediaMediaDestinationResolutionResult NeedsValue { get; }
	public static INAddMediaMediaDestinationResolutionResult NotRequired { get; }
	public static INAddMediaMediaDestinationResolutionResult Unsupported { get; }
	// methods
	public static INAddMediaMediaDestinationResolutionResult GetConfirmationRequired (INMediaDestination mediaDestinationToConfirm);
	public static INAddMediaMediaDestinationResolutionResult GetConfirmationRequired (Foundation.NSObject itemToConfirm, nint reason);
	public static INAddMediaMediaDestinationResolutionResult GetDisambiguation (INMediaDestination[] mediaDestinationsToDisambiguate);
	public static INAddMediaMediaDestinationResolutionResult GetSuccess (INMediaDestination resolvedMediaDestination);
	public static INAddMediaMediaDestinationResolutionResult GetUnsupported (INAddMediaMediaDestinationUnsupportedReason reason);
	public static INAddMediaMediaDestinationResolutionResult GetUnsupported (nint reason);
}

New Type: Intents.INAddMediaMediaDestinationUnsupportedReason

[Serializable]
public enum INAddMediaMediaDestinationUnsupportedReason {
	PlaylistNameNotFound = 1,
}

New Type: Intents.INAddMediaMediaItemResolutionResult

public class INAddMediaMediaItemResolutionResult : Intents.INMediaItemResolutionResult, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected INAddMediaMediaItemResolutionResult (Foundation.NSObjectFlag t);
	public INAddMediaMediaItemResolutionResult (INMediaItemResolutionResult mediaItemResolutionResult);
	protected INAddMediaMediaItemResolutionResult (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static INAddMediaMediaItemResolutionResult NeedsValue { get; }
	public static INAddMediaMediaItemResolutionResult NotRequired { get; }
	public static INAddMediaMediaItemResolutionResult Unsupported { get; }
	// methods
	public static INAddMediaMediaItemResolutionResult GetConfirmationRequired (INMediaItem mediaItemToConfirm);
	public static INAddMediaMediaItemResolutionResult GetConfirmationRequired (Foundation.NSObject itemToConfirm, nint reason);
	public static INAddMediaMediaItemResolutionResult GetDisambiguation (INMediaItem[] mediaItemsToDisambiguate);
	public static INAddMediaMediaItemResolutionResult GetSuccess (INMediaItem resolvedMediaItem);
	public static INAddMediaMediaItemResolutionResult[] GetSuccesses (INMediaItem[] resolvedMediaItems);
	public static INAddMediaMediaItemResolutionResult GetUnsupported (INAddMediaMediaItemUnsupportedReason reason);
	public static INAddMediaMediaItemResolutionResult GetUnsupported (nint reason);
}

New Type: Intents.INAddMediaMediaItemUnsupportedReason

[Serializable]
public enum INAddMediaMediaItemUnsupportedReason {
	CellularDataSettings = 5,
	ExplicitContentSettings = 4,
	LoginRequired = 1,
	RegionRestriction = 8,
	RestrictedContent = 6,
	ServiceUnavailable = 7,
	SubscriptionRequired = 2,
	UnsupportedMediaType = 3,
}

New Type: Intents.INBookRestaurantReservationIntentCode

[Serializable]
public enum INBookRestaurantReservationIntentCode {
	Denied = 1,
	Failure = 2,
	FailureRequiringAppLaunch = 3,
	FailureRequiringAppLaunchMustVerifyCredentials = 4,
	FailureRequiringAppLaunchServiceTemporarilyUnavailable = 5,
	Success = 0,
}

New Type: Intents.INBooleanResolutionResult

public class INBooleanResolutionResult : Intents.INIntentResolutionResult, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected INBooleanResolutionResult (Foundation.NSObjectFlag t);
	protected INBooleanResolutionResult (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static INBooleanResolutionResult NeedsValue { get; }
	public static INBooleanResolutionResult NotRequired { get; }
	public static INBooleanResolutionResult Unsupported { get; }
	// methods
	public static INBooleanResolutionResult GetConfirmationRequired (Foundation.NSNumber valueToConfirm);
	public static INBooleanResolutionResult GetConfirmationRequired (Foundation.NSObject itemToConfirm, nint reason);
	public static INBooleanResolutionResult GetSuccess (bool resolvedValue);
	public static INBooleanResolutionResult GetUnsupported (nint reason);
}

New Type: Intents.INCallRecordType

[Serializable]
public enum INCallRecordType {
	InProgress = 7,
	Latest = 4,
	Missed = 2,
	OnHold = 8,
	Outgoing = 1,
	Received = 3,
	Ringing = 6,
	Unknown = 0,
	Voicemail = 5,
}

New Type: Intents.INDateComponentsRange

public class INDateComponentsRange : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INDateComponentsRange (Foundation.NSCoder coder);
	protected INDateComponentsRange (Foundation.NSObjectFlag t);
	protected INDateComponentsRange (IntPtr handle);
	public INDateComponentsRange (Foundation.NSDateComponents startDateComponents, Foundation.NSDateComponents endDateComponents);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSDateComponents EndDateComponents { get; }
	public virtual Foundation.NSDateComponents StartDateComponents { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Intents.INDoubleResolutionResult

public class INDoubleResolutionResult : Intents.INIntentResolutionResult, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected INDoubleResolutionResult (Foundation.NSObjectFlag t);
	protected INDoubleResolutionResult (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static INDoubleResolutionResult NeedsValue { get; }
	public static INDoubleResolutionResult NotRequired { get; }
	public static INDoubleResolutionResult Unsupported { get; }
	// methods
	public static INDoubleResolutionResult GetConfirmationRequired (Foundation.NSNumber valueToConfirm);
	public static INDoubleResolutionResult GetConfirmationRequired (Foundation.NSObject itemToConfirm, nint reason);
	public static INDoubleResolutionResult GetSuccess (double resolvedValue);
	public static INDoubleResolutionResult GetUnsupported (nint reason);
}

New Type: Intents.INExtension

public class INExtension : Foundation.NSObject, Foundation.INSObjectProtocol, IINIntentHandlerProviding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INExtension ();
	protected INExtension (Foundation.NSObjectFlag t);
	protected INExtension (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual Foundation.NSObject GetHandler (INIntent intent);
}

New Type: Intents.INGetAvailableRestaurantReservationBookingDefaultsIntentResponseCode

[Serializable]
public enum INGetAvailableRestaurantReservationBookingDefaultsIntentResponseCode {
	Failure = 1,
	Success = 0,
	Unspecified = 2,
}

New Type: Intents.INGetAvailableRestaurantReservationBookingsIntentCode

[Serializable]
public enum INGetAvailableRestaurantReservationBookingsIntentCode {
	Failure = 1,
	FailureRequestUnsatisfiable = 2,
	FailureRequestUnspecified = 3,
	Success = 0,
}

New Type: Intents.INGetRestaurantGuestIntentResponseCode

[Serializable]
public enum INGetRestaurantGuestIntentResponseCode {
	Failure = 1,
	Success = 0,
}

New Type: Intents.INGetUserCurrentRestaurantReservationBookingsIntentResponseCode

[Serializable]
public enum INGetUserCurrentRestaurantReservationBookingsIntentResponseCode {
	Failure = 1,
	FailureRequestUnsatisfiable = 2,
	Success = 0,
	Unspecified = 3,
}

New Type: Intents.INImage

public class INImage : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INImage (Foundation.NSCoder coder);
	protected INImage (Foundation.NSObjectFlag t);
	protected INImage (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public static INImage FromData (Foundation.NSData imageData);
	public static INImage FromName (string name);
	public static INImage FromSystem (string systemImageName);
	public static INImage FromUrl (Foundation.NSUrl url);
	public static INImage FromUrl (Foundation.NSUrl url, double width, double height);
}

New Type: Intents.INIntegerResolutionResult

public class INIntegerResolutionResult : Intents.INIntentResolutionResult, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected INIntegerResolutionResult (Foundation.NSObjectFlag t);
	protected INIntegerResolutionResult (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static INIntegerResolutionResult NeedsValue { get; }
	public static INIntegerResolutionResult NotRequired { get; }
	public static INIntegerResolutionResult Unsupported { get; }
	// methods
	public static INIntegerResolutionResult GetConfirmationRequired (Foundation.NSNumber valueToConfirm);
	public static INIntegerResolutionResult GetConfirmationRequired (Foundation.NSObject itemToConfirm, nint reason);
	public static INIntegerResolutionResult GetSuccess (nint resolvedValue);
	public static INIntegerResolutionResult GetUnsupported (nint reason);
}

New Type: Intents.INIntent

public abstract class INIntent : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected INIntent ();
	protected INIntent (Foundation.NSCoder coder);
	protected INIntent (Foundation.NSObjectFlag t);
	protected INIntent (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSString IdentifierString { get; }
	public virtual string IntentDescription { get; }
	public virtual string SuggestedInvocationPhrase { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public virtual INImage GetImage (string parameterName);
	public virtual INImage GetKeyImage ();
	public virtual void SetImage (INImage image, string parameterName);
}

New Type: Intents.INIntentErrorCode

[Serializable]
public enum INIntentErrorCode {
	DecodingGeneric = 9000,
	DeletingAllInteractions = 1902,
	DeletingInteractionWithGroupIdentifier = 1904,
	DeletingInteractionWithIdentifiers = 1903,
	DonatingInteraction = 1901,
	EncodingFailed = 8001,
	EncodingGeneric = 8000,
	ExtensionBringUpFailed = 5001,
	ExtensionLaunchingTimeout = 5000,
	ImageGeneric = 6000,
	ImageLoadingFailed = 6003,
	ImageNoServiceAvailable = 6001,
	ImageProxyInvalid = 6006,
	ImageProxyLoop = 6005,
	ImageProxyTimeout = 6007,
	ImageRetrievalFailed = 6004,
	ImageScalingFailed = 6009,
	ImageServiceFailure = 6008,
	ImageStorageFailed = 6002,
	IntentSupportedByMultipleExtension = 2001,
	InteractionOperationNotSupported = 1900,
	InvalidIntentName = 2004,
	InvalidUserVocabularyFileLocation = 4000,
	MissingInformation = 3002,
	NoAppAvailable = 2005,
	NoHandlerProvidedForIntent = 2003,
	PermissionDenied = 6010,
	RequestTimedOut = 3001,
	RestrictedIntentsNotSupportedByExtension = 2002,
	VoiceShortcutCreationFailed = 7000,
	VoiceShortcutDeleteFailed = 7002,
	VoiceShortcutGetFailed = 7001,
}

New Type: Intents.INIntentErrorCodeExtensions

public static class INIntentErrorCodeExtensions {
	// methods
	public static Foundation.NSString GetDomain (this INIntentErrorCode self);
}

New Type: Intents.INIntentHandlingStatus

[Serializable]
public enum INIntentHandlingStatus {
	DeferredToApplication = 5,
	Failure = 4,
	InProgress = 2,
	Ready = 1,
	Success = 3,
	Unspecified = 0,
	UserConfirmationRequired = 6,
}

New Type: Intents.INIntentResolutionResult

public abstract class INIntentResolutionResult : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected INIntentResolutionResult (Foundation.NSObjectFlag t);
	protected INIntentResolutionResult (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static INIntentResolutionResult NeedsValue { get; }
	public static INIntentResolutionResult NotRequired { get; }
	public static INIntentResolutionResult Unsupported { get; }
	// methods
	public static INIntentResolutionResult GetConfirmationRequired (Foundation.NSObject itemToConfirm, nint reason);
	public static INIntentResolutionResult GetUnsupported (nint reason);
}

New Type: Intents.INIntentResolutionResult`1

public sealed class INIntentResolutionResult`1 : Intents.INIntentResolutionResult, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
}

New Type: Intents.INIntentResponse

public abstract class INIntentResponse : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected INIntentResponse ();
	protected INIntentResponse (Foundation.NSCoder coder);
	protected INIntentResponse (Foundation.NSObjectFlag t);
	protected INIntentResponse (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSUserActivity UserActivity { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Intents.INInteraction

public class INInteraction : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INInteraction (Foundation.NSCoder coder);
	protected INInteraction (Foundation.NSObjectFlag t);
	protected INInteraction (IntPtr handle);
	public INInteraction (INIntent intent, INIntentResponse response);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSDateInterval DateInterval { get; set; }
	public virtual INInteractionDirection Direction { get; set; }
	public virtual string GroupIdentifier { get; set; }
	public virtual string Identifier { get; set; }
	public virtual INIntent Intent { get; }
	public virtual INIntentHandlingStatus IntentHandlingStatus { get; }
	public virtual INIntentResponse IntentResponse { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static void DeleteAllInteractions (System.Action<Foundation.NSError> completion);
	public static System.Threading.Tasks.Task DeleteAllInteractionsAsync ();
	public static void DeleteGroupedInteractions (string groupIdentifier, System.Action<Foundation.NSError> completion);
	public static System.Threading.Tasks.Task DeleteGroupedInteractionsAsync (string groupIdentifier);
	public static void DeleteInteractions (string[] identifiers, System.Action<Foundation.NSError> completion);
	public static System.Threading.Tasks.Task DeleteInteractionsAsync (string[] identifiers);
	public virtual void DonateInteraction (System.Action<Foundation.NSError> completion);
	public virtual System.Threading.Tasks.Task DonateInteractionAsync ();
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Intents.INInteractionDirection

[Serializable]
public enum INInteractionDirection {
	Incoming = 2,
	Outgoing = 1,
	Unspecified = 0,
}

New Type: Intents.INMediaAffinityType

[Serializable]
public enum INMediaAffinityType {
	Dislike = 2,
	Like = 1,
	Unknown = 0,
}

New Type: Intents.INMediaAffinityTypeResolutionResult

public class INMediaAffinityTypeResolutionResult : Intents.INIntentResolutionResult, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected INMediaAffinityTypeResolutionResult (Foundation.NSObjectFlag t);
	protected INMediaAffinityTypeResolutionResult (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static INMediaAffinityTypeResolutionResult NeedsValue { get; }
	public static INMediaAffinityTypeResolutionResult NotRequired { get; }
	public static INMediaAffinityTypeResolutionResult Unsupported { get; }
	// methods
	public static INMediaAffinityTypeResolutionResult GetConfirmationRequired (INMediaAffinityType mediaAffinityTypeToConfirm);
	public static INMediaAffinityTypeResolutionResult GetConfirmationRequired (Foundation.NSObject itemToConfirm, nint reason);
	public static INMediaAffinityTypeResolutionResult GetSuccess (INMediaAffinityType resolvedMediaAffinityType);
	public static INMediaAffinityTypeResolutionResult GetUnsupported (nint reason);
}

New Type: Intents.INMediaDestination

public class INMediaDestination : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INMediaDestination (Foundation.NSCoder coder);
	protected INMediaDestination (Foundation.NSObjectFlag t);
	protected INMediaDestination (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual INMediaDestinationType MediaDestinationType { get; }
	public virtual string PlaylistName { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static INMediaDestination CreateLibraryDestination ();
	public static INMediaDestination CreatePlaylistDestination (string playlistName);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Intents.INMediaDestinationResolutionResult

public class INMediaDestinationResolutionResult : Intents.INIntentResolutionResult, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected INMediaDestinationResolutionResult (Foundation.NSObjectFlag t);
	protected INMediaDestinationResolutionResult (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static INMediaDestinationResolutionResult NeedsValue { get; }
	public static INMediaDestinationResolutionResult NotRequired { get; }
	public static INMediaDestinationResolutionResult Unsupported { get; }
	// methods
	public static INMediaDestinationResolutionResult GetConfirmationRequired (INMediaDestination mediaDestinationToConfirm);
	public static INMediaDestinationResolutionResult GetConfirmationRequired (Foundation.NSObject itemToConfirm, nint reason);
	public static INMediaDestinationResolutionResult GetDisambiguation (INMediaDestination[] mediaDestinationsToDisambiguate);
	public static INMediaDestinationResolutionResult GetSuccess (INMediaDestination resolvedMediaDestination);
	public static INMediaDestinationResolutionResult GetUnsupported (nint reason);
}

New Type: Intents.INMediaDestinationType

[Serializable]
public enum INMediaDestinationType {
	Library = 1,
	Playlist = 2,
	Unknown = 0,
}

New Type: Intents.INMediaItem

public class INMediaItem : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INMediaItem (Foundation.NSCoder coder);
	protected INMediaItem (Foundation.NSObjectFlag t);
	protected INMediaItem (IntPtr handle);
	public INMediaItem (string identifier, string title, INMediaItemType type, INImage artwork);
	public INMediaItem (string identifier, string title, INMediaItemType type, INImage artwork, string artist);
	// properties
	public virtual string Artist { get; }
	public virtual INImage Artwork { get; }
	public override IntPtr ClassHandle { get; }
	public virtual string Identifier { get; }
	public virtual string Title { get; }
	public virtual INMediaItemType Type { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Intents.INMediaItemResolutionResult

public class INMediaItemResolutionResult : Intents.INIntentResolutionResult, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected INMediaItemResolutionResult (Foundation.NSObjectFlag t);
	protected INMediaItemResolutionResult (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static INMediaItemResolutionResult NeedsValue { get; }
	public static INMediaItemResolutionResult NotRequired { get; }
	public static INMediaItemResolutionResult Unsupported { get; }
	// methods
	public static INMediaItemResolutionResult GetConfirmationRequired (INMediaItem mediaItemToConfirm);
	public static INMediaItemResolutionResult GetConfirmationRequired (Foundation.NSObject itemToConfirm, nint reason);
	public static INMediaItemResolutionResult GetDisambiguation (INMediaItem[] mediaItemsToDisambiguate);
	public static INMediaItemResolutionResult GetSuccess (INMediaItem resolvedMediaItem);
	public static INMediaItemResolutionResult[] GetSuccesses (INMediaItem[] resolvedMediaItems);
	public static INMediaItemResolutionResult GetUnsupported (nint reason);
}

New Type: Intents.INMediaItemType

[Serializable]
public enum INMediaItemType {
	Album = 2,
	AlgorithmicRadioStation = 19,
	Artist = 3,
	AudioBook = 10,
	Genre = 4,
	Movie = 11,
	Music = 18,
	MusicStation = 9,
	MusicVideo = 14,
	News = 20,
	Playlist = 5,
	PodcastEpisode = 7,
	PodcastPlaylist = 8,
	PodcastShow = 6,
	PodcastStation = 15,
	RadioStation = 16,
	Song = 1,
	Station = 17,
	TVShow = 12,
	TVShowEpisode = 13,
	Unknown = 0,
}

New Type: Intents.INMediaReference

[Serializable]
public enum INMediaReference {
	CurrentlyPlaying = 1,
	Unknown = 0,
}

New Type: Intents.INMediaSearch

public class INMediaSearch : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INMediaSearch (Foundation.NSCoder coder);
	protected INMediaSearch (Foundation.NSObjectFlag t);
	protected INMediaSearch (IntPtr handle);
	public INMediaSearch (INMediaItemType mediaType, INMediaSortOrder sortOrder, string mediaName, string artistName, string albumName, string[] genreNames, string[] moodNames, INDateComponentsRange releaseDate, INMediaReference reference, string mediaIdentifier);
	// properties
	public virtual string AlbumName { get; }
	public virtual string ArtistName { get; }
	public override IntPtr ClassHandle { get; }
	public virtual string[] GenreNames { get; }
	public virtual string MediaIdentifier { get; }
	public virtual string MediaName { get; }
	public virtual INMediaItemType MediaType { get; }
	public virtual string[] MoodNames { get; }
	public virtual INMediaReference Reference { get; }
	public virtual INDateComponentsRange ReleaseDate { get; }
	public virtual INMediaSortOrder SortOrder { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Intents.INMediaSortOrder

[Serializable]
public enum INMediaSortOrder {
	Best = 3,
	Newest = 1,
	Oldest = 2,
	Popular = 5,
	Recommended = 8,
	Trending = 7,
	Unknown = 0,
	Unpopular = 6,
	Worst = 4,
}

New Type: Intents.INMediaUserContext

public class INMediaUserContext : Intents.INUserContext, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INMediaUserContext ();
	public INMediaUserContext (Foundation.NSCoder coder);
	protected INMediaUserContext (Foundation.NSObjectFlag t);
	protected INMediaUserContext (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual int? NumberOfLibraryItems { get; set; }
	public virtual INMediaUserContextSubscriptionStatus SubscriptionStatus { get; set; }
}

New Type: Intents.INMediaUserContextSubscriptionStatus

[Serializable]
public enum INMediaUserContextSubscriptionStatus {
	NotSubscribed = 1,
	Subscribed = 2,
	Unknown = 0,
}

New Type: Intents.INPlayMediaIntent

public class INPlayMediaIntent : Intents.INIntent, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INPlayMediaIntent (Foundation.NSCoder coder);
	protected INPlayMediaIntent (Foundation.NSObjectFlag t);
	protected INPlayMediaIntent (IntPtr handle);
	public INPlayMediaIntent (INMediaItem[] mediaItems, INMediaItem mediaContainer, bool? playShuffled, INPlaybackRepeatMode playbackRepeatMode, bool? resumePlayback);
	public INPlayMediaIntent (INMediaItem[] mediaItems, INMediaItem mediaContainer, bool? playShuffled, INPlaybackRepeatMode playbackRepeatMode, bool? resumePlayback, INPlaybackQueueLocation playbackQueueLocation, double? playbackSpeed, INMediaSearch mediaSearch);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual INMediaItem MediaContainer { get; }
	public virtual INMediaItem[] MediaItems { get; }
	public virtual INMediaSearch MediaSearch { get; }
	public virtual bool? PlayShuffled { get; }
	public virtual INPlaybackQueueLocation PlaybackQueueLocation { get; }
	public virtual INPlaybackRepeatMode PlaybackRepeatMode { get; }
	public virtual double? PlaybackSpeed { get; }
	public virtual bool? ResumePlayback { get; }
}

New Type: Intents.INPlayMediaIntentHandling_Extensions

public static class INPlayMediaIntentHandling_Extensions {
	// methods
	public static void Confirm (this IINPlayMediaIntentHandling This, INPlayMediaIntent intent, System.Action<INPlayMediaIntentResponse> completion);
	public static void ResolveMediaItems (this IINPlayMediaIntentHandling This, INPlayMediaIntent intent, System.Action<Foundation.NSArray<INPlayMediaMediaItemResolutionResult>> completion);
	public static void ResolvePlayShuffled (this IINPlayMediaIntentHandling This, INPlayMediaIntent intent, System.Action<INBooleanResolutionResult> completion);
	public static void ResolvePlaybackQueueLocation (this IINPlayMediaIntentHandling This, INPlayMediaIntent intent, System.Action<INPlaybackQueueLocationResolutionResult> completion);
	public static void ResolvePlaybackRepeatMode (this IINPlayMediaIntentHandling This, INPlayMediaIntent intent, System.Action<INPlaybackRepeatModeResolutionResult> completion);
	public static void ResolvePlaybackSpeed (this IINPlayMediaIntentHandling This, INPlayMediaIntent intent, System.Action<INPlayMediaPlaybackSpeedResolutionResult> completion);
	public static void ResolveResumePlayback (this IINPlayMediaIntentHandling This, INPlayMediaIntent intent, System.Action<INBooleanResolutionResult> completion);
}

New Type: Intents.INPlayMediaIntentResponse

public class INPlayMediaIntentResponse : Intents.INIntentResponse, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INPlayMediaIntentResponse (Foundation.NSCoder coder);
	protected INPlayMediaIntentResponse (Foundation.NSObjectFlag t);
	protected INPlayMediaIntentResponse (IntPtr handle);
	public INPlayMediaIntentResponse (INPlayMediaIntentResponseCode code, Foundation.NSUserActivity userActivity);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual INPlayMediaIntentResponseCode Code { get; }
	public virtual Foundation.NSDictionary WeakNowPlayingInfo { get; set; }
}

New Type: Intents.INPlayMediaIntentResponseCode

[Serializable]
public enum INPlayMediaIntentResponseCode {
	ContinueInApp = 2,
	Failure = 6,
	FailureNoUnplayedContent = 9,
	FailureRequiringAppLaunch = 7,
	FailureRestrictedContent = 10,
	FailureUnknownMediaType = 8,
	HandleInApp = 5,
	InProgress = 3,
	Ready = 1,
	Success = 4,
	Unspecified = 0,
}

New Type: Intents.INPlayMediaMediaItemResolutionResult

public class INPlayMediaMediaItemResolutionResult : Intents.INMediaItemResolutionResult, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected INPlayMediaMediaItemResolutionResult (Foundation.NSObjectFlag t);
	public INPlayMediaMediaItemResolutionResult (INMediaItemResolutionResult mediaItemResolutionResult);
	protected INPlayMediaMediaItemResolutionResult (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static INPlayMediaMediaItemResolutionResult NeedsValue { get; }
	public static INPlayMediaMediaItemResolutionResult NotRequired { get; }
	public static INPlayMediaMediaItemResolutionResult Unsupported { get; }
	// methods
	public static INPlayMediaMediaItemResolutionResult GetConfirmationRequired (INMediaItem mediaItemToConfirm);
	public static INPlayMediaMediaItemResolutionResult GetConfirmationRequired (Foundation.NSObject itemToConfirm, nint reason);
	public static INPlayMediaMediaItemResolutionResult GetDisambiguation (INMediaItem[] mediaItemsToDisambiguate);
	public static INPlayMediaMediaItemResolutionResult GetSuccess (INMediaItem resolvedMediaItem);
	public static INPlayMediaMediaItemResolutionResult[] GetSuccesses (INMediaItem[] resolvedMediaItems);
	public static INPlayMediaMediaItemResolutionResult GetUnsupported (INPlayMediaMediaItemUnsupportedReason reason);
	public static INPlayMediaMediaItemResolutionResult GetUnsupported (nint reason);
}

New Type: Intents.INPlayMediaMediaItemUnsupportedReason

[Serializable]
public enum INPlayMediaMediaItemUnsupportedReason {
	CellularDataSettings = 5,
	ExplicitContentSettings = 4,
	LoginRequired = 1,
	RegionRestriction = 8,
	RestrictedContent = 6,
	ServiceUnavailable = 7,
	SubscriptionRequired = 2,
	UnsupportedMediaType = 3,
}

New Type: Intents.INPlayMediaPlaybackSpeedResolutionResult

public class INPlayMediaPlaybackSpeedResolutionResult : Intents.INDoubleResolutionResult, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected INPlayMediaPlaybackSpeedResolutionResult (Foundation.NSObjectFlag t);
	public INPlayMediaPlaybackSpeedResolutionResult (INDoubleResolutionResult doubleResolutionResult);
	protected INPlayMediaPlaybackSpeedResolutionResult (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static INDoubleResolutionResult NeedsValue { get; }
	public static INDoubleResolutionResult NotRequired { get; }
	public static INDoubleResolutionResult Unsupported { get; }
	// methods
	public static INDoubleResolutionResult GetConfirmationRequired (double? valueToConfirm);
	public static INDoubleResolutionResult GetConfirmationRequired (Foundation.NSObject itemToConfirm, nint reason);
	public static INDoubleResolutionResult GetSuccess (double resolvedValue);
	public static INDoubleResolutionResult GetUnsupported (nint reason);
	public static INPlayMediaPlaybackSpeedResolutionResult UnsupportedForReason (INPlayMediaPlaybackSpeedUnsupportedReason reason);
}

New Type: Intents.INPlayMediaPlaybackSpeedUnsupportedReason

[Serializable]
public enum INPlayMediaPlaybackSpeedUnsupportedReason {
	AboveMaximum = 2,
	BelowMinimum = 1,
}

New Type: Intents.INPlaybackQueueLocation

[Serializable]
public enum INPlaybackQueueLocation {
	Later = 3,
	Next = 2,
	Now = 1,
	Unknown = 0,
}

New Type: Intents.INPlaybackQueueLocationResolutionResult

public class INPlaybackQueueLocationResolutionResult : Intents.INIntentResolutionResult, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INPlaybackQueueLocationResolutionResult ();
	protected INPlaybackQueueLocationResolutionResult (Foundation.NSObjectFlag t);
	protected INPlaybackQueueLocationResolutionResult (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static INPlaybackQueueLocationResolutionResult NeedsValue { get; }
	public static INPlaybackQueueLocationResolutionResult NotRequired { get; }
	public static INPlaybackQueueLocationResolutionResult Unsupported { get; }
	// methods
	public static INPlaybackQueueLocationResolutionResult GetConfirmationRequired (INPlaybackQueueLocation playbackQueueLocationToConfirm);
	public static INPlaybackQueueLocationResolutionResult GetConfirmationRequired (Foundation.NSObject itemToConfirm, nint reason);
	public static INPlaybackQueueLocationResolutionResult GetSuccess (INPlaybackQueueLocation resolvedPlaybackQueueLocation);
	public static INPlaybackQueueLocationResolutionResult GetUnsupported (nint reason);
}

New Type: Intents.INPlaybackRepeatMode

[Serializable]
public enum INPlaybackRepeatMode {
	All = 2,
	None = 1,
	One = 3,
	Unknown = 0,
}

New Type: Intents.INPlaybackRepeatModeResolutionResult

public class INPlaybackRepeatModeResolutionResult : Intents.INIntentResolutionResult, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected INPlaybackRepeatModeResolutionResult (Foundation.NSObjectFlag t);
	protected INPlaybackRepeatModeResolutionResult (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static INPlaybackRepeatModeResolutionResult NeedsValue { get; }
	public static INPlaybackRepeatModeResolutionResult NotRequired { get; }
	public static INPlaybackRepeatModeResolutionResult Unsupported { get; }
	// methods
	public static INPlaybackRepeatModeResolutionResult GetConfirmationRequired (INPlaybackRepeatMode playbackRepeatModeToConfirm);
	public static INPlaybackRepeatModeResolutionResult GetConfirmationRequired (Foundation.NSObject itemToConfirm, nint reason);
	public static INPlaybackRepeatModeResolutionResult GetSuccess (INPlaybackRepeatMode resolvedPlaybackRepeatMode);
	public static INPlaybackRepeatModeResolutionResult GetUnsupported (nint reason);
}

New Type: Intents.INPreferences

public class INPreferences : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected INPreferences (Foundation.NSObjectFlag t);
	protected INPreferences (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static INSiriAuthorizationStatus SiriAuthorizationStatus { get; }
	public static string SiriLanguageCode { get; }
	// methods
	public static void RequestSiriAuthorization (System.Action<INSiriAuthorizationStatus> handler);
	public static System.Threading.Tasks.Task<INSiriAuthorizationStatus> RequestSiriAuthorizationAsync ();
}

New Type: Intents.INRestaurantReservationUserBookingStatus

[Serializable]
public enum INRestaurantReservationUserBookingStatus {
	Confirmed = 1,
	Denied = 2,
	Pending = 0,
}

New Type: Intents.INSearchForMediaIntent

public class INSearchForMediaIntent : Intents.INIntent, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INSearchForMediaIntent (Foundation.NSCoder coder);
	protected INSearchForMediaIntent (Foundation.NSObjectFlag t);
	protected INSearchForMediaIntent (IntPtr handle);
	public INSearchForMediaIntent (INMediaItem[] mediaItems, INMediaSearch mediaSearch);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual INMediaItem[] MediaItems { get; }
	public virtual INMediaSearch MediaSearch { get; }
}

New Type: Intents.INSearchForMediaIntentHandling_Extensions

public static class INSearchForMediaIntentHandling_Extensions {
	// methods
	public static void Confirm (this IINSearchForMediaIntentHandling This, INSearchForMediaIntent intent, System.Action<INSearchForMediaIntentResponse> completion);
	public static void ResolveMediaItems (this IINSearchForMediaIntentHandling This, INSearchForMediaIntent intent, System.Action<INSearchForMediaMediaItemResolutionResult[]> completion);
}

New Type: Intents.INSearchForMediaIntentResponse

public class INSearchForMediaIntentResponse : Intents.INIntentResponse, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INSearchForMediaIntentResponse (Foundation.NSCoder coder);
	protected INSearchForMediaIntentResponse (Foundation.NSObjectFlag t);
	protected INSearchForMediaIntentResponse (IntPtr handle);
	public INSearchForMediaIntentResponse (INSearchForMediaIntentResponseCode code, Foundation.NSUserActivity userActivity);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual INSearchForMediaIntentResponseCode Code { get; }
	public virtual INMediaItem[] MediaItems { get; set; }
}

New Type: Intents.INSearchForMediaIntentResponseCode

[Serializable]
public enum INSearchForMediaIntentResponseCode {
	ContinueInApp = 2,
	Failure = 5,
	FailureRequiringAppLaunch = 6,
	InProgress = 3,
	Ready = 1,
	Success = 4,
	Unspecified = 0,
}

New Type: Intents.INSearchForMediaMediaItemResolutionResult

public class INSearchForMediaMediaItemResolutionResult : Intents.INMediaItemResolutionResult, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INSearchForMediaMediaItemResolutionResult ();
	protected INSearchForMediaMediaItemResolutionResult (Foundation.NSObjectFlag t);
	public INSearchForMediaMediaItemResolutionResult (INMediaItemResolutionResult mediaItemResolutionResult);
	protected INSearchForMediaMediaItemResolutionResult (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static INSearchForMediaMediaItemResolutionResult NeedsValue { get; }
	public static INSearchForMediaMediaItemResolutionResult NotRequired { get; }
	public static INSearchForMediaMediaItemResolutionResult Unsupported { get; }
	// methods
	public static INSearchForMediaMediaItemResolutionResult GetConfirmationRequired (INMediaItem mediaItemToConfirm);
	public static INSearchForMediaMediaItemResolutionResult GetConfirmationRequired (Foundation.NSObject itemToConfirm, nint reason);
	public static INSearchForMediaMediaItemResolutionResult GetDisambiguation (INMediaItem[] mediaItemsToDisambiguate);
	public static INSearchForMediaMediaItemResolutionResult GetSuccess (INMediaItem resolvedMediaItem);
	public static INSearchForMediaMediaItemResolutionResult[] GetSuccesses (INMediaItem[] resolvedMediaItems);
	public static INSearchForMediaMediaItemResolutionResult GetUnsupported (INSearchForMediaMediaItemUnsupportedReason reason);
	public static INSearchForMediaMediaItemResolutionResult GetUnsupported (nint reason);
}

New Type: Intents.INSearchForMediaMediaItemUnsupportedReason

[Serializable]
public enum INSearchForMediaMediaItemUnsupportedReason {
	CellularDataSettings = 5,
	ExplicitContentSettings = 4,
	LoginRequired = 1,
	RegionRestriction = 8,
	RestrictedContent = 6,
	ServiceUnavailable = 7,
	SubscriptionRequired = 2,
	UnsupportedMediaType = 3,
}

New Type: Intents.INSiriAuthorizationStatus

[Serializable]
public enum INSiriAuthorizationStatus {
	Authorized = 3,
	Denied = 2,
	NotDetermined = 0,
	Restricted = 1,
}

New Type: Intents.INSpeakableString

public class INSpeakableString : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, IINSpeakable, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INSpeakableString (Foundation.NSCoder coder);
	protected INSpeakableString (Foundation.NSObjectFlag t);
	protected INSpeakableString (IntPtr handle);
	public INSpeakableString (string spokenPhrase);
	public INSpeakableString (string identifier, string spokenPhrase, string pronunciationHint);
	// properties
	public virtual IINSpeakable[] AlternativeSpeakableMatches { get; }
	public override IntPtr ClassHandle { get; }
	public virtual string Identifier { get; }
	public virtual string PronunciationHint { get; }
	public virtual string SpokenPhrase { get; }
	public virtual string VocabularyIdentifier { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Intents.INSpeakable_Extensions

public static class INSpeakable_Extensions {
	// methods
	public static IINSpeakable[] GetAlternativeSpeakableMatches (this IINSpeakable This);
	public static string GetVocabularyIdentifier (this IINSpeakable This);
}

New Type: Intents.INUpdateMediaAffinityIntent

public class INUpdateMediaAffinityIntent : Intents.INIntent, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INUpdateMediaAffinityIntent (Foundation.NSCoder coder);
	protected INUpdateMediaAffinityIntent (Foundation.NSObjectFlag t);
	protected INUpdateMediaAffinityIntent (IntPtr handle);
	public INUpdateMediaAffinityIntent (INMediaItem[] mediaItems, INMediaSearch mediaSearch, INMediaAffinityType affinityType);
	// properties
	public virtual INMediaAffinityType AffinityType { get; }
	public override IntPtr ClassHandle { get; }
	public virtual INMediaItem[] MediaItems { get; }
	public virtual INMediaSearch MediaSearch { get; }
}

New Type: Intents.INUpdateMediaAffinityIntentHandling_Extensions

public static class INUpdateMediaAffinityIntentHandling_Extensions {
	// methods
	public static void Confirm (this IINUpdateMediaAffinityIntentHandling This, INUpdateMediaAffinityIntent intent, System.Action<INUpdateMediaAffinityIntentResponse> completion);
	public static void ResolveAffinityType (this IINUpdateMediaAffinityIntentHandling This, INUpdateMediaAffinityIntent intent, System.Action<INMediaAffinityTypeResolutionResult> completion);
	public static void ResolveMediaItems (this IINUpdateMediaAffinityIntentHandling This, INUpdateMediaAffinityIntent intent, System.Action<Foundation.NSArray<INUpdateMediaAffinityMediaItemResolutionResult>> completion);
}

New Type: Intents.INUpdateMediaAffinityIntentResponse

public class INUpdateMediaAffinityIntentResponse : Intents.INIntentResponse, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INUpdateMediaAffinityIntentResponse (Foundation.NSCoder coder);
	protected INUpdateMediaAffinityIntentResponse (Foundation.NSObjectFlag t);
	protected INUpdateMediaAffinityIntentResponse (IntPtr handle);
	public INUpdateMediaAffinityIntentResponse (INUpdateMediaAffinityIntentResponseCode code, Foundation.NSUserActivity userActivity);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual INUpdateMediaAffinityIntentResponseCode Code { get; }
}

New Type: Intents.INUpdateMediaAffinityIntentResponseCode

[Serializable]
public enum INUpdateMediaAffinityIntentResponseCode {
	Failure = 4,
	FailureRequiringAppLaunch = 5,
	InProgress = 2,
	Ready = 1,
	Success = 3,
	Unspecified = 0,
}

New Type: Intents.INUpdateMediaAffinityMediaItemResolutionResult

public class INUpdateMediaAffinityMediaItemResolutionResult : Intents.INMediaItemResolutionResult, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected INUpdateMediaAffinityMediaItemResolutionResult (Foundation.NSObjectFlag t);
	public INUpdateMediaAffinityMediaItemResolutionResult (INMediaItemResolutionResult mediaItemResolutionResult);
	protected INUpdateMediaAffinityMediaItemResolutionResult (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static INUpdateMediaAffinityMediaItemResolutionResult NeedsValue { get; }
	public static INUpdateMediaAffinityMediaItemResolutionResult NotRequired { get; }
	public static INUpdateMediaAffinityMediaItemResolutionResult Unsupported { get; }
	// methods
	public static INUpdateMediaAffinityMediaItemResolutionResult GetConfirmationRequired (INMediaItem mediaItemToConfirm);
	public static INUpdateMediaAffinityMediaItemResolutionResult GetConfirmationRequired (Foundation.NSObject itemToConfirm, nint reason);
	public static INUpdateMediaAffinityMediaItemResolutionResult GetDisambiguation (INMediaItem[] mediaItemsToDisambiguate);
	public static INUpdateMediaAffinityMediaItemResolutionResult GetSuccess (INMediaItem resolvedMediaItem);
	public static INUpdateMediaAffinityMediaItemResolutionResult[] GetSuccesses (INMediaItem[] resolvedMediaItems);
	public static INUpdateMediaAffinityMediaItemResolutionResult GetUnsupported (INUpdateMediaAffinityMediaItemUnsupportedReason reason);
	public static INUpdateMediaAffinityMediaItemResolutionResult GetUnsupported (nint reason);
}

New Type: Intents.INUpdateMediaAffinityMediaItemUnsupportedReason

[Serializable]
public enum INUpdateMediaAffinityMediaItemUnsupportedReason {
	CellularDataSettings = 5,
	ExplicitContentSettings = 4,
	LoginRequired = 1,
	RegionRestriction = 8,
	RestrictedContent = 6,
	ServiceUnavailable = 7,
	SubscriptionRequired = 2,
	UnsupportedMediaType = 3,
}

New Type: Intents.INUserContext

public class INUserContext : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INUserContext (Foundation.NSCoder coder);
	protected INUserContext (Foundation.NSObjectFlag t);
	protected INUserContext (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void BecomeCurrent ();
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Intents.INVocabulary

public class INVocabulary : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected INVocabulary (Foundation.NSObjectFlag t);
	protected INVocabulary (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static INVocabulary SharedVocabulary { get; }
	// methods
	public virtual void RemoveAllVocabularyStrings ();
	public virtual void SetVocabulary (Foundation.NSOrderedSet<IINSpeakable> vocabulary, INVocabularyStringType type);
	public virtual void SetVocabularyStrings (Foundation.NSOrderedSet<Foundation.NSString> vocabulary, INVocabularyStringType type);
}

New Type: Intents.INVocabularyStringType

[Serializable]
public enum INVocabularyStringType {
	CarName = 301,
	CarProfileName = 300,
	ContactGroupName = 2,
	ContactName = 1,
	MediaAudiobookAuthorName = 703,
	MediaAudiobookTitle = 702,
	MediaMusicArtistName = 701,
	MediaPlaylistTitle = 700,
	MediaShowTitle = 704,
	NotebookItemGroupName = 501,
	NotebookItemTitle = 500,
	PaymentsAccountNickname = 401,
	PaymentsOrganizationName = 400,
	PhotoAlbumName = 101,
	PhotoTag = 100,
	WorkoutActivityName = 200,
}

New Type: Intents.NSUserActivity_IntentsAdditions

public static class NSUserActivity_IntentsAdditions {
	// methods
	public static INInteraction GetInteraction (this Foundation.NSUserActivity This);
}

New Namespace LinkPresentation

New Type: LinkPresentation.LPErrorCode

[Serializable]
public enum LPErrorCode {
	MetadataFetchCancelled = 3,
	MetadataFetchFailed = 2,
	MetadataFetchTimedOut = 4,
	Unknown = 1,
}

New Type: LinkPresentation.LPErrorCodeExtensions

public static class LPErrorCodeExtensions {
	// methods
	public static Foundation.NSString GetDomain (this LPErrorCode self);
}

New Type: LinkPresentation.LPLinkMetadata

public class LPLinkMetadata : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public LPLinkMetadata ();
	public LPLinkMetadata (Foundation.NSCoder coder);
	protected LPLinkMetadata (Foundation.NSObjectFlag t);
	protected LPLinkMetadata (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSItemProvider IconProvider { get; set; }
	public virtual Foundation.NSItemProvider ImageProvider { get; set; }
	public virtual Foundation.NSUrl OriginalUrl { get; set; }
	public virtual Foundation.NSUrl RemoteVideoUrl { get; set; }
	public virtual string Title { get; set; }
	public virtual Foundation.NSUrl Url { get; set; }
	public virtual Foundation.NSItemProvider VideoProvider { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: LinkPresentation.LPLinkView

public class LPLinkView : UIKit.UIView, CoreAnimation.ICALayerDelegate, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAccessibilityIdentification, UIKit.IUIAppearance, UIKit.IUIAppearanceContainer, UIKit.IUICoordinateSpace, UIKit.IUIDynamicItem, UIKit.IUIFocusEnvironment, UIKit.IUIFocusItem, UIKit.IUIFocusItemContainer, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public LPLinkView ();
	public LPLinkView (CoreGraphics.CGRect rect);
	public LPLinkView (Foundation.NSCoder coder);
	protected LPLinkView (Foundation.NSObjectFlag t);
	public LPLinkView (Foundation.NSUrl url);
	public LPLinkView (LPLinkMetadata metadata);
	protected LPLinkView (IntPtr handle);
	// properties
	public static LPLinkView.LPLinkViewAppearance Appearance { get; }
	public override IntPtr ClassHandle { get; }
	public virtual LPLinkMetadata Metadata { get; set; }
	// methods
	public static LPLinkView.LPLinkViewAppearance AppearanceWhenContainedIn (System.Type[] containers);
	public static LPLinkView.LPLinkViewAppearance GetAppearance<T> ();
	public static LPLinkView.LPLinkViewAppearance GetAppearance<T> (UIKit.UITraitCollection traits);
	public static LPLinkView.LPLinkViewAppearance GetAppearance (UIKit.UITraitCollection traits);
	public static LPLinkView.LPLinkViewAppearance GetAppearance<T> (UIKit.UITraitCollection traits, System.Type[] containers);
	public static LPLinkView.LPLinkViewAppearance GetAppearance (UIKit.UITraitCollection traits, System.Type[] containers);

	// inner types
	public class LPLinkViewAppearance : UIKit.UIView+UIViewAppearance, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearance {
		// constructors
		protected LPLinkView.LPLinkViewAppearance (IntPtr handle);
	}
}

New Namespace MLCompute

New Type: MLCompute.MLCActivationDescriptor

public class MLCActivationDescriptor : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCActivationDescriptor (Foundation.NSObjectFlag t);
	protected MLCActivationDescriptor (IntPtr handle);
	// properties
	public virtual float A { get; }
	public virtual MLCActivationType ActivationType { get; }
	public virtual float B { get; }
	public virtual float C { get; }
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static MLCActivationDescriptor Create (MLCActivationType activationType);
	public static MLCActivationDescriptor Create (MLCActivationType activationType, float a);
	public static MLCActivationDescriptor Create (MLCActivationType activationType, float a, float b);
	public static MLCActivationDescriptor Create (MLCActivationType activationType, float a, float b, float c);
}

New Type: MLCompute.MLCActivationLayer

public class MLCActivationLayer : MLCompute.MLCLayer, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCActivationLayer (Foundation.NSObjectFlag t);
	protected MLCActivationLayer (IntPtr handle);
	// properties
	public static MLCActivationLayer AbsoluteLayer { get; }
	public static MLCActivationLayer CeluLayer { get; }
	public override IntPtr ClassHandle { get; }
	public virtual MLCActivationDescriptor Descriptor { get; }
	public static MLCActivationLayer EluLayer { get; }
	public static MLCActivationLayer GeluLayer { get; }
	public static MLCActivationLayer HardShrinkLayer { get; }
	public static MLCActivationLayer HardSigmoidLayer { get; }
	public static MLCActivationLayer LeakyReLULayer { get; }
	public static MLCActivationLayer LogSigmoidLayer { get; }
	public static MLCActivationLayer Relu6Layer { get; }
	public static MLCActivationLayer ReluLayer { get; }
	public static MLCActivationLayer SeluLayer { get; }
	public static MLCActivationLayer SigmoidLayer { get; }
	public static MLCActivationLayer SoftPlusLayer { get; }
	public static MLCActivationLayer SoftShrinkLayer { get; }
	public static MLCActivationLayer SoftSignLayer { get; }
	public static MLCActivationLayer TanhLayer { get; }
	public static MLCActivationLayer TanhShrinkLayer { get; }
	// methods
	public static MLCActivationLayer Create (MLCActivationDescriptor descriptor);
	public static MLCActivationLayer CreateCeluLayer (float a);
	public static MLCActivationLayer CreateEluLayer (float a);
	public static MLCActivationLayer CreateHardShrinkLayer (float a);
	public static MLCActivationLayer CreateLeakyReLULayer (float negativeSlope);
	public static MLCActivationLayer CreateLinearLayer (float scale, float bias);
	public static MLCActivationLayer CreateRelunLayer (float a, float b);
	public static MLCActivationLayer CreateSoftPlusLayer (float beta);
	public static MLCActivationLayer CreateSoftShrinkLayer (float a);
	public static MLCActivationLayer CreateThresholdLayer (float threshold, float replacement);
}

New Type: MLCompute.MLCActivationType

[Serializable]
public enum MLCActivationType {
	Absolute = 6,
	Celu = 13,
	Elu = 9,
	Gelu = 18,
	HardShrink = 14,
	HardSigmoid = 4,
	Linear = 2,
	LogSigmoid = 11,
	None = 0,
	ReLU = 1,
	ReLun = 10,
	Selu = 12,
	Sigmoid = 3,
	SoftPlus = 7,
	SoftShrink = 15,
	SoftSign = 8,
	Tanh = 5,
	TanhShrink = 16,
	Threshold = 17,
}

New Type: MLCompute.MLCActivationTypeExtensions

public static class MLCActivationTypeExtensions {
	// methods
	public static string GetDebugDescription (this MLCActivationType self);
}

New Type: MLCompute.MLCAdamOptimizer

public class MLCAdamOptimizer : MLCompute.MLCOptimizer, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCAdamOptimizer (Foundation.NSObjectFlag t);
	protected MLCAdamOptimizer (IntPtr handle);
	// properties
	public virtual float Beta1 { get; }
	public virtual float Beta2 { get; }
	public override IntPtr ClassHandle { get; }
	public virtual float Epsilon { get; }
	public virtual nuint TimeStep { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static MLCAdamOptimizer Create (MLCOptimizerDescriptor optimizerDescriptor);
	public static MLCAdamOptimizer Create (MLCOptimizerDescriptor optimizerDescriptor, float beta1, float beta2, float epsilon, nuint timeStep);
}

New Type: MLCompute.MLCArithmeticLayer

public class MLCArithmeticLayer : MLCompute.MLCLayer, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCArithmeticLayer (Foundation.NSObjectFlag t);
	protected MLCArithmeticLayer (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual MLCArithmeticOperation Operation { get; }
	// methods
	public static MLCArithmeticLayer Create (MLCArithmeticOperation operation);
}

New Type: MLCompute.MLCArithmeticOperation

[Serializable]
public enum MLCArithmeticOperation {
	Acos = 13,
	Acosh = 19,
	Add = 0,
	Asin = 12,
	Asinh = 18,
	Atan = 14,
	Atanh = 20,
	Ceil = 6,
	Cos = 10,
	Cosh = 16,
	Divide = 3,
	Exp = 22,
	Exp2 = 23,
	Floor = 4,
	Log = 24,
	Log2 = 25,
	Multiply = 2,
	Pow = 21,
	Round = 5,
	Rsqrt = 8,
	Sin = 9,
	Sinh = 15,
	Sqrt = 7,
	Subtract = 1,
	Tan = 11,
	Tanh = 17,
}

New Type: MLCompute.MLCArithmeticOperationExtensions

public static class MLCArithmeticOperationExtensions {
	// methods
	public static string GetDebugDescription (this MLCArithmeticOperation self);
}

New Type: MLCompute.MLCBatchNormalizationLayer

public class MLCBatchNormalizationLayer : MLCompute.MLCLayer, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCBatchNormalizationLayer (Foundation.NSObjectFlag t);
	protected MLCBatchNormalizationLayer (IntPtr handle);
	// properties
	public virtual MLCTensor Beta { get; }
	public virtual MLCTensorParameter BetaParameter { get; }
	public override IntPtr ClassHandle { get; }
	public virtual nuint FeatureChannelCount { get; }
	public virtual MLCTensor Gamma { get; }
	public virtual MLCTensorParameter GammaParameter { get; }
	public virtual MLCTensor Mean { get; }
	public virtual float Momentum { get; }
	public virtual MLCTensor Variance { get; }
	public virtual float VarianceEpsilon { get; }
	// methods
	public static MLCBatchNormalizationLayer Create (nuint featureChannelCount, MLCTensor mean, MLCTensor variance, MLCTensor beta, MLCTensor gamma, float varianceEpsilon);
	public static MLCBatchNormalizationLayer Create (nuint featureChannelCount, MLCTensor mean, MLCTensor variance, MLCTensor beta, MLCTensor gamma, float varianceEpsilon, float momentum);
}

New Type: MLCompute.MLCConcatenationLayer

public class MLCConcatenationLayer : MLCompute.MLCLayer, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCConcatenationLayer (Foundation.NSObjectFlag t);
	protected MLCConcatenationLayer (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nuint Dimension { get; }
	// methods
	public static MLCConcatenationLayer Create ();
	public static MLCConcatenationLayer Create (nuint dimension);
}

New Type: MLCompute.MLCConvolutionDescriptor

public class MLCConvolutionDescriptor : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCConvolutionDescriptor (Foundation.NSObjectFlag t);
	protected MLCConvolutionDescriptor (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual MLCConvolutionType ConvolutionType { get; }
	public virtual nuint DilationRateInX { get; }
	public virtual nuint DilationRateInY { get; }
	public virtual nuint GroupCount { get; }
	public virtual nuint InputFeatureChannelCount { get; }
	public virtual bool IsConvolutionTranspose { get; }
	public virtual nuint KernelHeight { get; }
	public virtual nuint KernelWidth { get; }
	public virtual nuint OutputFeatureChannelCount { get; }
	public virtual MLCPaddingPolicy PaddingPolicy { get; }
	public virtual nuint PaddingSizeInX { get; }
	public virtual nuint PaddingSizeInY { get; }
	public virtual nuint StrideInX { get; }
	public virtual nuint StrideInY { get; }
	public virtual bool UsesDepthwiseConvolution { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static MLCConvolutionDescriptor Create (nuint kernelWidth, nuint kernelHeight, nuint inputFeatureChannelCount, nuint outputFeatureChannelCount);
	public static MLCConvolutionDescriptor Create (nuint[] kernelSizes, nuint inputFeatureChannelCount, nuint outputFeatureChannelCount, nuint[] strides, MLCPaddingPolicy paddingPolicy, nuint[] paddingSizes);
	public static MLCConvolutionDescriptor Create (nuint[] kernelSizes, nuint inputFeatureChannelCount, nuint outputFeatureChannelCount, nuint groupCount, nuint[] strides, nuint[] dilationRates, MLCPaddingPolicy paddingPolicy, nuint[] paddingSizes);
	public static MLCConvolutionDescriptor Create (MLCConvolutionType convolutionType, nuint[] kernelSizes, nuint inputFeatureChannelCount, nuint outputFeatureChannelCount, nuint groupCount, nuint[] strides, nuint[] dilationRates, MLCPaddingPolicy paddingPolicy, nuint[] paddingSizes);
	public static MLCConvolutionDescriptor CreateConvolutionTranspose (nuint kernelWidth, nuint kernelHeight, nuint inputFeatureChannelCount, nuint outputFeatureChannelCount);
	public static MLCConvolutionDescriptor CreateConvolutionTranspose (nuint[] kernelSizes, nuint inputFeatureChannelCount, nuint outputFeatureChannelCount, nuint[] strides, MLCPaddingPolicy paddingPolicy, nuint[] paddingSizes);
	public static MLCConvolutionDescriptor CreateConvolutionTranspose (nuint[] kernelSizes, nuint inputFeatureChannelCount, nuint outputFeatureChannelCount, nuint groupCount, nuint[] strides, nuint[] dilationRates, MLCPaddingPolicy paddingPolicy, nuint[] paddingSizes);
	public static MLCConvolutionDescriptor CreateDepthwiseConvolution (nuint kernelWidth, nuint kernelHeight, nuint inputFeatureChannelCount, nuint channelMultiplier);
	public static MLCConvolutionDescriptor CreateDepthwiseConvolution (nuint[] kernelSizes, nuint inputFeatureChannelCount, nuint channelMultiplier, nuint[] strides, MLCPaddingPolicy paddingPolicy, nuint[] paddingSizes);
	public static MLCConvolutionDescriptor CreateDepthwiseConvolution (nuint[] kernelSizes, nuint inputFeatureChannelCount, nuint channelMultiplier, nuint[] strides, nuint[] dilationRates, MLCPaddingPolicy paddingPolicy, nuint[] paddingSizes);
}

New Type: MLCompute.MLCConvolutionLayer

public class MLCConvolutionLayer : MLCompute.MLCLayer, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCConvolutionLayer (Foundation.NSObjectFlag t);
	protected MLCConvolutionLayer (IntPtr handle);
	// properties
	public virtual MLCTensor Biases { get; }
	public virtual MLCTensorParameter BiasesParameter { get; }
	public override IntPtr ClassHandle { get; }
	public virtual MLCConvolutionDescriptor Descriptor { get; }
	public virtual MLCTensor Weights { get; }
	public virtual MLCTensorParameter WeightsParameter { get; }
	// methods
	public static MLCConvolutionLayer Create (MLCTensor weights, MLCTensor biases, MLCConvolutionDescriptor descriptor);
}

New Type: MLCompute.MLCConvolutionType

[Serializable]
public enum MLCConvolutionType {
	Depthwise = 2,
	Standard = 0,
	Transposed = 1,
}

New Type: MLCompute.MLCConvolutionTypeExtensions

public static class MLCConvolutionTypeExtensions {
	// methods
	public static string GetDebugDescription (this MLCConvolutionType self);
}

New Type: MLCompute.MLCDataType

[Serializable]
public enum MLCDataType {
	Boolean = 4,
	Float32 = 1,
	Int64 = 5,
	Invalid = 0,
}

New Type: MLCompute.MLCDevice

public class MLCDevice : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCDevice (Foundation.NSObjectFlag t);
	protected MLCDevice (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Metal.IMTLDevice[] GpuDevices { get; }
	public virtual MLCDeviceType Type { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static MLCDevice GetCpu ();
	public static MLCDevice GetDevice (MLCDeviceType type);
	public static MLCDevice GetDevice (Metal.IMTLDevice[] gpus);
	public static MLCDevice GetGpu ();
}

New Type: MLCompute.MLCDeviceType

[Serializable]
public enum MLCDeviceType {
	Any = 2,
	Cpu = 0,
	Gpu = 1,
}

New Type: MLCompute.MLCDropoutLayer

public class MLCDropoutLayer : MLCompute.MLCLayer, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCDropoutLayer (Foundation.NSObjectFlag t);
	protected MLCDropoutLayer (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual float Rate { get; }
	public virtual nuint Seed { get; }
	// methods
	public static MLCDropoutLayer Create (float rate, nuint seed);
}

New Type: MLCompute.MLCEmbeddingDescriptor

public class MLCEmbeddingDescriptor : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCEmbeddingDescriptor (Foundation.NSObjectFlag t);
	protected MLCEmbeddingDescriptor (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nint EmbeddingCount { get; }
	public virtual nint EmbeddingDimension { get; }
	public virtual float? MaximumNorm { get; }
	public virtual float? PNorm { get; }
	public virtual nint? PaddingIndex { get; }
	public virtual bool ScalesGradientByFrequency { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static MLCEmbeddingDescriptor Create (nint embeddingCount, nint embeddingDimension);
	public static MLCEmbeddingDescriptor Create (nint embeddingCount, nint embeddingDimension, nint? paddingIndex, float? maximumNorm, float? pNorm, bool scalesGradientByFrequency);
}

New Type: MLCompute.MLCEmbeddingLayer

public class MLCEmbeddingLayer : MLCompute.MLCLayer, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCEmbeddingLayer (Foundation.NSObjectFlag t);
	protected MLCEmbeddingLayer (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual MLCEmbeddingDescriptor Descriptor { get; }
	public virtual MLCTensor Weights { get; }
	public virtual MLCTensorParameter WeightsParameter { get; }
	// methods
	public static MLCEmbeddingLayer Create (MLCEmbeddingDescriptor descriptor, MLCTensor weights);
}

New Type: MLCompute.MLCExecutionOptions

[Serializable]
[Flags]
public enum MLCExecutionOptions {
	ForwardForInference = 8,
	None = 0,
	Profiling = 4,
	SkipWritingInputDataToDevice = 1,
	Synchronous = 2,
}

New Type: MLCompute.MLCFullyConnectedLayer

public class MLCFullyConnectedLayer : MLCompute.MLCLayer, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCFullyConnectedLayer (Foundation.NSObjectFlag t);
	protected MLCFullyConnectedLayer (IntPtr handle);
	// properties
	public virtual MLCTensor Biases { get; }
	public virtual MLCTensorParameter BiasesParameter { get; }
	public override IntPtr ClassHandle { get; }
	public virtual MLCConvolutionDescriptor Descriptor { get; }
	public virtual MLCTensor Weights { get; }
	public virtual MLCTensorParameter WeightsParameter { get; }
	// methods
	public static MLCFullyConnectedLayer Create (MLCTensor weights, MLCTensor biases, MLCConvolutionDescriptor descriptor);
}

New Type: MLCompute.MLCGramMatrixLayer

public class MLCGramMatrixLayer : MLCompute.MLCLayer, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCGramMatrixLayer (Foundation.NSObjectFlag t);
	protected MLCGramMatrixLayer (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual float Scale { get; }
	// methods
	public static MLCGramMatrixLayer Create (float scale);
}

New Type: MLCompute.MLCGraph

public class MLCGraph : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCGraph (Foundation.NSObjectFlag t);
	protected MLCGraph (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual MLCDevice Device { get; }
	public virtual MLCLayer[] Layers { get; }
	public virtual string SummarizedDotDescription { get; }
	// methods
	public virtual bool BindAndWrite (Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> inputsData, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensor> inputTensors, MLCDevice device, bool synchronous);
	public virtual bool BindAndWrite (Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> inputsData, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensor> inputTensors, MLCDevice device, nuint batchSize, bool synchronous);
	public virtual MLCTensor Concatenate (MLCTensor[] sources, nuint dimension);
	public static MLCGraph Create ();
	public virtual MLCTensor CreateNode (MLCLayer layer, MLCTensor source);
	public virtual MLCTensor CreateNode (MLCLayer layer, MLCTensor[] sources);
	public virtual MLCTensor CreateNode (MLCLayer layer, MLCTensor[] sources, MLCTensor[] lossLabels);
	public virtual MLCTensor CreateNode (MLCLayer layer, MLCTensor[] sources, bool disableUpdate);
	public virtual MLCTensor[] GetResultTensors (MLCLayer layer);
	public virtual MLCTensor[] GetSourceTensors (MLCLayer layer);
	public virtual MLCTensor Reshape (nint[] shape, MLCTensor source);
	public virtual MLCTensor[] Split (MLCTensor source, nuint splitCount, nuint dimension);
	public virtual MLCTensor[] Split (MLCTensor source, nuint[] splitSectionLengths, nuint dimension);
	public virtual MLCTensor Transpose (nint[] dimensions, MLCTensor source);
}

New Type: MLCompute.MLCGraphCompilationOptions

[Serializable]
[Flags]
public enum MLCGraphCompilationOptions {
	ComputeAllGradients = 8,
	DebugLayers = 1,
	DisableLayerFusion = 2,
	LinkGraphs = 4,
	None = 0,
}

New Type: MLCompute.MLCGraphCompletionHandler

public sealed delegate MLCGraphCompletionHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public MLCGraphCompletionHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (MLCTensor resultTensor, Foundation.NSError error, double executionTime, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (MLCTensor resultTensor, Foundation.NSError error, double executionTime);
}

New Type: MLCompute.MLCGraphCompletionResult

public class MLCGraphCompletionResult {
	// constructors
	public MLCGraphCompletionResult (MLCTensor resultTensor, Foundation.NSError error, double executionTime);
	// properties
	public Foundation.NSError Error { get; set; }
	public double ExecutionTime { get; set; }
	public MLCTensor ResultTensor { get; set; }
}

New Type: MLCompute.MLCGroupNormalizationLayer

public class MLCGroupNormalizationLayer : MLCompute.MLCLayer, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCGroupNormalizationLayer (Foundation.NSObjectFlag t);
	protected MLCGroupNormalizationLayer (IntPtr handle);
	// properties
	public virtual MLCTensor Beta { get; }
	public virtual MLCTensorParameter BetaParameter { get; }
	public override IntPtr ClassHandle { get; }
	public virtual nuint FeatureChannelCount { get; }
	public virtual MLCTensor Gamma { get; }
	public virtual MLCTensorParameter GammaParameter { get; }
	public virtual nuint GroupCount { get; }
	public virtual float VarianceEpsilon { get; }
	// methods
	public static MLCGroupNormalizationLayer Create (nuint featureChannelCount, nuint groupCount, MLCTensor beta, MLCTensor gamma, float varianceEpsilon);
}

New Type: MLCompute.MLCInferenceGraph

public class MLCInferenceGraph : MLCompute.MLCGraph, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCInferenceGraph (Foundation.NSObjectFlag t);
	protected MLCInferenceGraph (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nuint DeviceMemorySize { get; }
	// methods
	public virtual bool AddInputs (Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensor> inputs);
	public virtual bool AddInputs (Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensor> inputs, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensor> lossLabels, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensor> lossLabelWeights);
	public virtual bool AddOutputs (Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensor> outputs);
	public virtual bool Compile (MLCGraphCompilationOptions options, MLCDevice device);
	public static MLCInferenceGraph Create (MLCGraph[] graphObjects);
	public virtual bool Execute (Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> inputsData, nuint batchSize, MLCExecutionOptions options, MLCGraphCompletionHandler completionHandler);
	public virtual bool Execute (Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> inputsData, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> outputsData, nuint batchSize, MLCExecutionOptions options, MLCGraphCompletionHandler completionHandler);
	public virtual bool Execute (Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> inputsData, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> lossLabelsData, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> lossLabelWeightsData, nuint batchSize, MLCExecutionOptions options, MLCGraphCompletionHandler completionHandler);
	public virtual bool Execute (Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> inputsData, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> lossLabelsData, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> lossLabelWeightsData, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> outputsData, nuint batchSize, MLCExecutionOptions options, MLCGraphCompletionHandler completionHandler);
	public virtual System.Threading.Tasks.Task<MLCGraphCompletionResult> ExecuteAsync (Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> inputsData, nuint batchSize, MLCExecutionOptions options);
	public virtual System.Threading.Tasks.Task<MLCGraphCompletionResult> ExecuteAsync (Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> inputsData, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> outputsData, nuint batchSize, MLCExecutionOptions options);
	public virtual System.Threading.Tasks.Task<MLCGraphCompletionResult> ExecuteAsync (Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> inputsData, nuint batchSize, MLCExecutionOptions options, out bool result);
	public virtual System.Threading.Tasks.Task<MLCGraphCompletionResult> ExecuteAsync (Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> inputsData, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> lossLabelsData, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> lossLabelWeightsData, nuint batchSize, MLCExecutionOptions options);
	public virtual System.Threading.Tasks.Task<MLCGraphCompletionResult> ExecuteAsync (Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> inputsData, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> outputsData, nuint batchSize, MLCExecutionOptions options, out bool result);
	public virtual System.Threading.Tasks.Task<MLCGraphCompletionResult> ExecuteAsync (Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> inputsData, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> lossLabelsData, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> lossLabelWeightsData, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> outputsData, nuint batchSize, MLCExecutionOptions options);
	public virtual System.Threading.Tasks.Task<MLCGraphCompletionResult> ExecuteAsync (Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> inputsData, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> lossLabelsData, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> lossLabelWeightsData, nuint batchSize, MLCExecutionOptions options, out bool result);
	public virtual System.Threading.Tasks.Task<MLCGraphCompletionResult> ExecuteAsync (Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> inputsData, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> lossLabelsData, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> lossLabelWeightsData, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> outputsData, nuint batchSize, MLCExecutionOptions options, out bool result);
	public virtual bool Link (MLCInferenceGraph[] graphs);
}

New Type: MLCompute.MLCInstanceNormalizationLayer

public class MLCInstanceNormalizationLayer : MLCompute.MLCLayer, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCInstanceNormalizationLayer (Foundation.NSObjectFlag t);
	protected MLCInstanceNormalizationLayer (IntPtr handle);
	// properties
	public virtual MLCTensor Beta { get; }
	public virtual MLCTensorParameter BetaParameter { get; }
	public override IntPtr ClassHandle { get; }
	public virtual nuint FeatureChannelCount { get; }
	public virtual MLCTensor Gamma { get; }
	public virtual MLCTensorParameter GammaParameter { get; }
	public virtual float Momentum { get; }
	public virtual float VarianceEpsilon { get; }
	// methods
	public static MLCInstanceNormalizationLayer Create (nuint featureChannelCount, MLCTensor beta, MLCTensor gamma, float varianceEpsilon);
	public static MLCInstanceNormalizationLayer Create (nuint featureChannelCount, MLCTensor beta, MLCTensor gamma, float varianceEpsilon, float momentum);
}

New Type: MLCompute.MLCLayer

public class MLCLayer : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCLayer (Foundation.NSObjectFlag t);
	protected MLCLayer (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool IsDebuggingEnabled { get; set; }
	public virtual string Label { get; set; }
	public virtual nuint LayerId { get; }
	// methods
	public static bool SupportsDataType (MLCDataType dataType, MLCDeviceType device);
}

New Type: MLCompute.MLCLayerNormalizationLayer

public class MLCLayerNormalizationLayer : MLCompute.MLCLayer, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCLayerNormalizationLayer (Foundation.NSObjectFlag t);
	protected MLCLayerNormalizationLayer (IntPtr handle);
	// properties
	public virtual MLCTensor Beta { get; }
	public virtual MLCTensorParameter BetaParameter { get; }
	public override IntPtr ClassHandle { get; }
	public virtual MLCTensor Gamma { get; }
	public virtual MLCTensorParameter GammaParameter { get; }
	public virtual nint[] NormalizedShape { get; }
	public virtual float VarianceEpsilon { get; }
	// methods
	public static MLCLayerNormalizationLayer Create (nint[] normalizedShape, MLCTensor beta, MLCTensor gamma, float varianceEpsilon);
}

New Type: MLCompute.MLCLossDescriptor

public class MLCLossDescriptor : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCLossDescriptor (Foundation.NSObjectFlag t);
	protected MLCLossDescriptor (IntPtr handle);
	// properties
	public virtual nuint ClassCount { get; }
	public override IntPtr ClassHandle { get; }
	public virtual float Delta { get; }
	public virtual float Epsilon { get; }
	public virtual float LabelSmoothing { get; }
	public virtual MLCLossType LossType { get; }
	public virtual MLCReductionType ReductionType { get; }
	public virtual float Weight { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static MLCLossDescriptor Create (MLCLossType lossType, MLCReductionType reductionType);
	public static MLCLossDescriptor Create (MLCLossType lossType, MLCReductionType reductionType, float weight);
	public static MLCLossDescriptor Create (MLCLossType lossType, MLCReductionType reductionType, float weight, float labelSmoothing, nuint classCount);
	public static MLCLossDescriptor Create (MLCLossType lossType, MLCReductionType reductionType, float weight, float labelSmoothing, nuint classCount, float epsilon, float delta);
}

New Type: MLCompute.MLCLossLayer

public class MLCLossLayer : MLCompute.MLCLayer, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCLossLayer (Foundation.NSObjectFlag t);
	protected MLCLossLayer (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual MLCLossDescriptor Descriptor { get; }
	public virtual MLCTensor Weights { get; }
	// methods
	public static MLCLossLayer Create (MLCLossDescriptor lossDescriptor);
	public static MLCLossLayer Create (MLCLossDescriptor lossDescriptor, MLCTensor weights);
	public static MLCLossLayer CreateCategoricalCrossEntropyLoss (MLCReductionType reductionType, float labelSmoothing, nuint classCount, MLCTensor weights);
	public static MLCLossLayer CreateCategoricalCrossEntropyLoss (MLCReductionType reductionType, float labelSmoothing, nuint classCount, float weight);
	public static MLCLossLayer CreateCosineDistanceLoss (MLCReductionType reductionType, MLCTensor weights);
	public static MLCLossLayer CreateCosineDistanceLoss (MLCReductionType reductionType, float weight);
	public static MLCLossLayer CreateHingeLoss (MLCReductionType reductionType, MLCTensor weights);
	public static MLCLossLayer CreateHingeLoss (MLCReductionType reductionType, float weight);
	public static MLCLossLayer CreateHuberLoss (MLCReductionType reductionType, float delta, MLCTensor weights);
	public static MLCLossLayer CreateHuberLoss (MLCReductionType reductionType, float delta, float weight);
	public static MLCLossLayer CreateLogLoss (MLCReductionType reductionType, float epsilon, MLCTensor weights);
	public static MLCLossLayer CreateLogLoss (MLCReductionType reductionType, float epsilon, float weight);
	public static MLCLossLayer CreateMeanAbsoluteErrorLoss (MLCReductionType reductionType, MLCTensor weights);
	public static MLCLossLayer CreateMeanAbsoluteErrorLoss (MLCReductionType reductionType, float weight);
	public static MLCLossLayer CreateMeanSquaredErrorLoss (MLCReductionType reductionType, MLCTensor weights);
	public static MLCLossLayer CreateMeanSquaredErrorLoss (MLCReductionType reductionType, float weight);
	public static MLCLossLayer CreateSigmoidCrossEntropyLoss (MLCReductionType reductionType, float labelSmoothing, MLCTensor weights);
	public static MLCLossLayer CreateSigmoidCrossEntropyLoss (MLCReductionType reductionType, float labelSmoothing, float weight);
	public static MLCLossLayer CreateSoftmaxCrossEntropyLoss (MLCReductionType reductionType, float labelSmoothing, nuint classCount, MLCTensor weights);
	public static MLCLossLayer CreateSoftmaxCrossEntropyLoss (MLCReductionType reductionType, float labelSmoothing, nuint classCount, float weight);
}

New Type: MLCompute.MLCLossType

[Serializable]
public enum MLCLossType {
	CategoricalCrossEntropy = 4,
	CosineDistance = 7,
	Hinge = 5,
	Huber = 6,
	Log = 8,
	MeanAbsoluteError = 0,
	MeanSquaredError = 1,
	SigmoidCrossEntropy = 3,
	SoftmaxCrossEntropy = 2,
}

New Type: MLCompute.MLCLossTypeExtensions

public static class MLCLossTypeExtensions {
	// methods
	public static string GetDebugDescription (this MLCLossType self);
}

New Type: MLCompute.MLCLstmDescriptor

public class MLCLstmDescriptor : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCLstmDescriptor (Foundation.NSObjectFlag t);
	protected MLCLstmDescriptor (IntPtr handle);
	// properties
	public virtual bool BatchFirst { get; }
	public override IntPtr ClassHandle { get; }
	public virtual float Dropout { get; }
	public virtual nuint HiddenSize { get; }
	public virtual nuint InputSize { get; }
	public virtual bool IsBidirectional { get; }
	public virtual nuint LayerCount { get; }
	public virtual MLCLstmResultMode ResultMode { get; }
	public virtual bool ReturnsSequences { get; }
	public virtual bool UsesBiases { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static MLCLstmDescriptor Create (nuint inputSize, nuint hiddenSize, nuint layerCount);
	public static MLCLstmDescriptor Create (nuint inputSize, nuint hiddenSize, nuint layerCount, bool usesBiases, bool isBidirectional, float dropout);
	public static MLCLstmDescriptor Create (nuint inputSize, nuint hiddenSize, nuint layerCount, bool usesBiases, bool batchFirst, bool isBidirectional, float dropout);
	public static MLCLstmDescriptor Create (nuint inputSize, nuint hiddenSize, nuint layerCount, bool usesBiases, bool batchFirst, bool isBidirectional, bool returnsSequences, float dropout);
	public static MLCLstmDescriptor Create (nuint inputSize, nuint hiddenSize, nuint layerCount, bool usesBiases, bool batchFirst, bool isBidirectional, bool returnsSequences, float dropout, MLCLstmResultMode resultMode);
}

New Type: MLCompute.MLCLstmLayer

public class MLCLstmLayer : MLCompute.MLCLayer, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCLstmLayer (Foundation.NSObjectFlag t);
	protected MLCLstmLayer (IntPtr handle);
	// properties
	public virtual MLCTensor[] Biases { get; }
	public virtual MLCTensorParameter[] BiasesParameters { get; }
	public override IntPtr ClassHandle { get; }
	public virtual MLCLstmDescriptor Descriptor { get; }
	public virtual MLCActivationDescriptor[] GateActivations { get; }
	public virtual MLCTensor[] HiddenWeights { get; }
	public virtual MLCTensorParameter[] HiddenWeightsParameters { get; }
	public virtual MLCTensor[] InputWeights { get; }
	public virtual MLCTensorParameter[] InputWeightsParameters { get; }
	public virtual MLCActivationDescriptor OutputResultActivation { get; }
	public virtual MLCTensor[] PeepholeWeights { get; }
	public virtual MLCTensorParameter[] PeepholeWeightsParameters { get; }
	// methods
	public static MLCLstmLayer Create (MLCLstmDescriptor descriptor, MLCTensor[] inputWeights, MLCTensor[] hiddenWeights, MLCTensor[] biases);
	public static MLCLstmLayer Create (MLCLstmDescriptor descriptor, MLCTensor[] inputWeights, MLCTensor[] hiddenWeights, MLCTensor[] peepholeWeights, MLCTensor[] biases);
	public static MLCLstmLayer Create (MLCLstmDescriptor descriptor, MLCTensor[] inputWeights, MLCTensor[] hiddenWeights, MLCTensor[] peepholeWeights, MLCTensor[] biases, MLCActivationDescriptor[] gateActivations, MLCActivationDescriptor outputResultActivation);
}

New Type: MLCompute.MLCLstmResultMode

[Serializable]
public enum MLCLstmResultMode {
	Output = 0,
	OutputAndStates = 1,
}

New Type: MLCompute.MLCLstmResultModeExtensions

public static class MLCLstmResultModeExtensions {
	// methods
	public static string GetDebugDescription (this MLCLstmResultMode self);
}

New Type: MLCompute.MLCMatMulDescriptor

public class MLCMatMulDescriptor : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCMatMulDescriptor (Foundation.NSObjectFlag t);
	protected MLCMatMulDescriptor (IntPtr handle);
	// properties
	public virtual float Alpha { get; }
	public override IntPtr ClassHandle { get; }
	public virtual bool TransposesX { get; }
	public virtual bool TransposesY { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static MLCMatMulDescriptor Create ();
	public static MLCMatMulDescriptor Create (float alpha, bool transposesX, bool transposesY);
}

New Type: MLCompute.MLCMatMulLayer

public class MLCMatMulLayer : MLCompute.MLCLayer, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCMatMulLayer (Foundation.NSObjectFlag t);
	protected MLCMatMulLayer (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual MLCMatMulDescriptor Descriptor { get; }
	// methods
	public static MLCMatMulLayer Create (MLCMatMulDescriptor descriptor);
}

New Type: MLCompute.MLCMultiheadAttentionDescriptor

public class MLCMultiheadAttentionDescriptor : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCMultiheadAttentionDescriptor (Foundation.NSObjectFlag t);
	protected MLCMultiheadAttentionDescriptor (IntPtr handle);
	// properties
	public virtual bool AddsZeroAttention { get; }
	public override IntPtr ClassHandle { get; }
	public virtual float Dropout { get; }
	public virtual bool HasAttentionBiases { get; }
	public virtual bool HasBiases { get; }
	public virtual nuint HeadCount { get; }
	public virtual nuint KeyDimension { get; }
	public virtual nuint ModelDimension { get; }
	public virtual nuint ValueDimension { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static MLCMultiheadAttentionDescriptor Create (nuint modelDimension, nuint headCount);
	public static MLCMultiheadAttentionDescriptor Create (nuint modelDimension, nuint keyDimension, nuint valueDimension, nuint headCount, float dropout, bool hasBiases, bool hasAttentionBiases, bool addsZeroAttention);
}

New Type: MLCompute.MLCMultiheadAttentionLayer

public class MLCMultiheadAttentionLayer : MLCompute.MLCLayer, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCMultiheadAttentionLayer (Foundation.NSObjectFlag t);
	protected MLCMultiheadAttentionLayer (IntPtr handle);
	// properties
	public virtual MLCTensor[] AttentionBiases { get; }
	public virtual MLCTensor[] Biases { get; }
	public virtual MLCTensorParameter[] BiasesParameters { get; }
	public override IntPtr ClassHandle { get; }
	public virtual MLCMultiheadAttentionDescriptor Descriptor { get; }
	public virtual MLCTensor[] Weights { get; }
	public virtual MLCTensorParameter[] WeightsParameters { get; }
	// methods
	public static MLCMultiheadAttentionLayer Create (MLCMultiheadAttentionDescriptor descriptor, MLCTensor[] weights, MLCTensor[] biases, MLCTensor[] attentionBiases);
}

New Type: MLCompute.MLCOptimizer

public class MLCOptimizer : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCOptimizer (Foundation.NSObjectFlag t);
	protected MLCOptimizer (IntPtr handle);
	// properties
	public virtual bool AppliesGradientClipping { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual float GradientClipMax { get; }
	public virtual float GradientClipMin { get; }
	public virtual float GradientRescale { get; }
	public virtual float LearningRate { get; set; }
	public virtual float RegularizationScale { get; }
	public virtual MLCRegularizationType RegularizationType { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: MLCompute.MLCOptimizerDescriptor

public class MLCOptimizerDescriptor : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCOptimizerDescriptor (Foundation.NSObjectFlag t);
	protected MLCOptimizerDescriptor (IntPtr handle);
	// properties
	public virtual bool AppliesGradientClipping { get; }
	public override IntPtr ClassHandle { get; }
	public virtual float GradientClipMax { get; }
	public virtual float GradientClipMin { get; }
	public virtual float GradientRescale { get; }
	public virtual float LearningRate { get; }
	public virtual float RegularizationScale { get; }
	public virtual MLCRegularizationType RegularizationType { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static MLCOptimizerDescriptor Create (float learningRate, float gradientRescale, MLCRegularizationType regularizationType, float regularizationScale);
	public static MLCOptimizerDescriptor Create (float learningRate, float gradientRescale, bool appliesGradientClipping, float gradientClipMax, float gradientClipMin, MLCRegularizationType regularizationType, float regularizationScale);
}

New Type: MLCompute.MLCPaddingLayer

public class MLCPaddingLayer : MLCompute.MLCLayer, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCPaddingLayer (Foundation.NSObjectFlag t);
	protected MLCPaddingLayer (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual float ConstantValue { get; }
	public virtual nuint PaddingBottom { get; }
	public virtual nuint PaddingLeft { get; }
	public virtual nuint PaddingRight { get; }
	public virtual nuint PaddingTop { get; }
	public virtual MLCPaddingType PaddingType { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static MLCPaddingLayer CreateConstantPadding (nuint[] padding, float constantValue);
	public static MLCPaddingLayer CreateReflectionPadding (nuint[] padding);
	public static MLCPaddingLayer CreateSymmetricPadding (nuint[] padding);
	public static MLCPaddingLayer CreateZeroPadding (nuint[] padding);
}

New Type: MLCompute.MLCPaddingPolicy

[Serializable]
public enum MLCPaddingPolicy {
	Same = 0,
	UsePaddingSize = 2,
	Valid = 1,
}

New Type: MLCompute.MLCPaddingPolicyExtensions

public static class MLCPaddingPolicyExtensions {
	// methods
	public static string GetDebugDescription (this MLCPaddingPolicy self);
}

New Type: MLCompute.MLCPaddingType

[Serializable]
public enum MLCPaddingType {
	Constant = 3,
	Reflect = 1,
	Symmetric = 2,
	Zero = 0,
}

New Type: MLCompute.MLCPaddingTypeExtensions

public static class MLCPaddingTypeExtensions {
	// methods
	public static string GetDebugDescription (this MLCPaddingType self);
}

New Type: MLCompute.MLCPoolingDescriptor

public class MLCPoolingDescriptor : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCPoolingDescriptor (Foundation.NSObjectFlag t);
	protected MLCPoolingDescriptor (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool CountIncludesPadding { get; }
	public virtual nuint DilationRateInX { get; }
	public virtual nuint DilationRateInY { get; }
	public virtual nuint KernelHeight { get; }
	public virtual nuint KernelWidth { get; }
	public virtual MLCPaddingPolicy PaddingPolicy { get; }
	public virtual nuint PaddingSizeInX { get; }
	public virtual nuint PaddingSizeInY { get; }
	public virtual MLCPoolingType PoolingType { get; }
	public virtual nuint StrideInX { get; }
	public virtual nuint StrideInY { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static MLCPoolingDescriptor Create (MLCPoolingType poolingType, nuint kernelSize, nuint stride);
	public static MLCPoolingDescriptor CreateAveragePooling (nuint[] kernelSizes, nuint[] strides, MLCPaddingPolicy paddingPolicy, nuint[] paddingSizes, bool countIncludesPadding);
	public static MLCPoolingDescriptor CreateAveragePooling (nuint[] kernelSizes, nuint[] strides, nuint[] dilationRates, MLCPaddingPolicy paddingPolicy, nuint[] paddingSizes, bool countIncludesPadding);
	public static MLCPoolingDescriptor CreateL2NormPooling (nuint[] kernelSizes, nuint[] strides, MLCPaddingPolicy paddingPolicy, nuint[] paddingSizes);
	public static MLCPoolingDescriptor CreateL2NormPooling (nuint[] kernelSizes, nuint[] strides, nuint[] dilationRates, MLCPaddingPolicy paddingPolicy, nuint[] paddingSizes);
	public static MLCPoolingDescriptor CreateMaxPooling (nuint[] kernelSizes, nuint[] strides, MLCPaddingPolicy paddingPolicy, nuint[] paddingSizes);
	public static MLCPoolingDescriptor CreateMaxPooling (nuint[] kernelSizes, nuint[] strides, nuint[] dilationRates, MLCPaddingPolicy paddingPolicy, nuint[] paddingSizes);
}

New Type: MLCompute.MLCPoolingLayer

public class MLCPoolingLayer : MLCompute.MLCLayer, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCPoolingLayer (Foundation.NSObjectFlag t);
	protected MLCPoolingLayer (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual MLCPoolingDescriptor Descriptor { get; }
	// methods
	public static MLCPoolingLayer Create (MLCPoolingDescriptor descriptor);
}

New Type: MLCompute.MLCPoolingType

[Serializable]
public enum MLCPoolingType {
	Average = 2,
	L2Norm = 3,
	Max = 1,
}

New Type: MLCompute.MLCPoolingTypeExtensions

public static class MLCPoolingTypeExtensions {
	// methods
	public static string GetDebugDescription (this MLCPoolingType self);
}

New Type: MLCompute.MLCRandomInitializerType

[Serializable]
public enum MLCRandomInitializerType {
	GlorotUniform = 2,
	Invalid = 0,
	Uniform = 1,
	Xavier = 3,
}

New Type: MLCompute.MLCReductionLayer

public class MLCReductionLayer : MLCompute.MLCLayer, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCReductionLayer (Foundation.NSObjectFlag t);
	protected MLCReductionLayer (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nuint Dimension { get; }
	public virtual MLCReductionType ReductionType { get; }
	// methods
	public static MLCReductionLayer Create (MLCReductionType reductionType, nuint dimension);
}

New Type: MLCompute.MLCReductionType

[Serializable]
public enum MLCReductionType {
	ArgMax = 5,
	ArgMin = 6,
	Max = 3,
	Mean = 2,
	Min = 4,
	None = 0,
	Sum = 1,
}

New Type: MLCompute.MLCReductionTypeExtensions

public static class MLCReductionTypeExtensions {
	// methods
	public static string GetDebugDescription (this MLCReductionType self);
}

New Type: MLCompute.MLCRegularizationType

[Serializable]
public enum MLCRegularizationType {
	L1 = 1,
	L2 = 2,
	None = 0,
}

New Type: MLCompute.MLCReshapeLayer

public class MLCReshapeLayer : MLCompute.MLCLayer, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCReshapeLayer (Foundation.NSObjectFlag t);
	protected MLCReshapeLayer (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public static MLCReshapeLayer Create (nint[] shape);
}

New Type: MLCompute.MLCRmsPropOptimizer

public class MLCRmsPropOptimizer : MLCompute.MLCOptimizer, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MLCRmsPropOptimizer ();
	protected MLCRmsPropOptimizer (Foundation.NSObjectFlag t);
	protected MLCRmsPropOptimizer (IntPtr handle);
	// properties
	public virtual float Alpha { get; }
	public override IntPtr ClassHandle { get; }
	public virtual float Epsilon { get; }
	public virtual bool IsCentered { get; }
	public virtual float MomentumScale { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static MLCRmsPropOptimizer Create (MLCOptimizerDescriptor optimizerDescriptor);
	public static MLCRmsPropOptimizer Create (MLCOptimizerDescriptor optimizerDescriptor, float momentumScale, float alpha, float epsilon, bool isCentered);
}

New Type: MLCompute.MLCSampleMode

[Serializable]
public enum MLCSampleMode {
	Linear = 1,
	Nearest = 0,
}

New Type: MLCompute.MLCSampleModeExtensions

public static class MLCSampleModeExtensions {
	// methods
	public static string GetDebugDescription (this MLCSampleMode self);
}

New Type: MLCompute.MLCSgdOptimizer

public class MLCSgdOptimizer : MLCompute.MLCOptimizer, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCSgdOptimizer (Foundation.NSObjectFlag t);
	protected MLCSgdOptimizer (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual float MomentumScale { get; }
	public virtual bool UsesNesterovMomentum { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static MLCSgdOptimizer Create (MLCOptimizerDescriptor optimizerDescriptor);
	public static MLCSgdOptimizer Create (MLCOptimizerDescriptor optimizerDescriptor, float momentumScale, bool usesNesterovMomentum);
}

New Type: MLCompute.MLCSliceLayer

public class MLCSliceLayer : MLCompute.MLCLayer, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCSliceLayer (Foundation.NSObjectFlag t);
	protected MLCSliceLayer (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nint[] End { get; }
	public virtual nint[] Start { get; }
	public virtual nint[] Stride { get; }
	// methods
	public static MLCSliceLayer Create (nint[] start, nint[] end, nint[] stride);
}

New Type: MLCompute.MLCSoftmaxLayer

public class MLCSoftmaxLayer : MLCompute.MLCLayer, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCSoftmaxLayer (Foundation.NSObjectFlag t);
	protected MLCSoftmaxLayer (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nuint Dimension { get; }
	public virtual MLCSoftmaxOperation Operation { get; }
	// methods
	public static MLCSoftmaxLayer Create (MLCSoftmaxOperation operation);
	public static MLCSoftmaxLayer Create (MLCSoftmaxOperation operation, nuint dimension);
}

New Type: MLCompute.MLCSoftmaxOperation

[Serializable]
public enum MLCSoftmaxOperation {
	LogSoftmax = 1,
	Softmax = 0,
}

New Type: MLCompute.MLCSoftmaxOperationExtensions

public static class MLCSoftmaxOperationExtensions {
	// methods
	public static string GetDebugDescription (this MLCSoftmaxOperation self);
}

New Type: MLCompute.MLCSplitLayer

public class MLCSplitLayer : MLCompute.MLCLayer, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCSplitLayer (Foundation.NSObjectFlag t);
	protected MLCSplitLayer (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nuint Dimension { get; }
	public virtual nuint SplitCount { get; }
	public virtual nint[] SplitSectionLengths { get; }
	// methods
	public static MLCSplitLayer Create (nint[] splitSectionLengths, nuint dimension);
	public static MLCSplitLayer Create (nuint splitCount, nuint dimension);
}

New Type: MLCompute.MLCTensor

public class MLCTensor : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCTensor (Foundation.NSObjectFlag t);
	protected MLCTensor (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSData Data { get; }
	public virtual MLCTensorDescriptor Descriptor { get; }
	public virtual MLCDevice Device { get; }
	public virtual bool HasValidNumerics { get; }
	public virtual string Label { get; set; }
	public virtual MLCTensorData[] OptimizerData { get; set; }
	public virtual MLCTensorOptimizerDeviceData[] OptimizerDeviceData { get; }
	public virtual nuint TensorId { get; }
	// methods
	public virtual bool BindAndWrite (MLCTensorData data, MLCDevice device);
	public virtual bool BindOptimizer (MLCTensorData[] data, MLCTensorOptimizerDeviceData[] deviceData);
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual bool CopyDataFromDeviceMemory (IntPtr bytes, nuint length, bool synchronizeWithDevice);
	public static MLCTensor Create (MLCTensorDescriptor tensorDescriptor);
	public static MLCTensor Create (nint[] shape);
	public static MLCTensor Create (MLCTensorDescriptor tensorDescriptor, Foundation.NSNumber fillData);
	public static MLCTensor Create (MLCTensorDescriptor tensorDescriptor, MLCRandomInitializerType randomInitializerType);
	public static MLCTensor Create (MLCTensorDescriptor tensorDescriptor, MLCTensorData data);
	public static MLCTensor Create (nint[] shape, MLCDataType dataType);
	public static MLCTensor Create (nint[] shape, MLCRandomInitializerType randomInitializerType);
	public static MLCTensor Create (nint[] shape, Foundation.NSNumber fillData, MLCDataType dataType);
	public static MLCTensor Create (nint[] shape, MLCTensorData data, MLCDataType dataType);
	public static MLCTensor Create (nuint sequenceLength, nuint featureChannelCount, nuint batchSize);
	public static MLCTensor Create (nuint sequenceLength, nuint featureChannelCount, nuint batchSize, MLCRandomInitializerType randomInitializerType);
	public static MLCTensor Create (nuint sequenceLength, nuint featureChannelCount, nuint batchSize, MLCTensorData data);
	public static MLCTensor Create (nuint width, nuint height, nuint featureChannelCount, nuint batchSize);
	public static MLCTensor Create (nint[] sequenceLengths, bool sortedSequences, nuint featureChannelCount, nuint batchSize, MLCRandomInitializerType randomInitializerType);
	public static MLCTensor Create (nint[] sequenceLengths, bool sortedSequences, nuint featureChannelCount, nuint batchSize, MLCTensorData data);
	public static MLCTensor Create (nuint width, nuint height, nuint featureChannelCount, nuint batchSize, MLCRandomInitializerType randomInitializerType);
	public static MLCTensor Create (nuint width, nuint height, nuint featureChannelCount, nuint batchSize, MLCTensorData data);
	public static MLCTensor Create (nuint width, nuint height, nuint featureChannelCount, nuint batchSize, MLCTensorData data, MLCDataType dataType);
	public static MLCTensor Create (nuint width, nuint height, nuint featureChannelCount, nuint batchSize, float fillWithData, MLCDataType dataType);
	public virtual bool SynchronizeData ();
	public virtual bool SynchronizeOptimizerData ();
}

New Type: MLCompute.MLCTensorData

public class MLCTensorData : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCTensorData (Foundation.NSObjectFlag t);
	protected MLCTensorData (IntPtr handle);
	// properties
	public virtual IntPtr Bytes { get; }
	public override IntPtr ClassHandle { get; }
	public virtual nuint Length { get; }
	// methods
	public static MLCTensorData CreateFromBytesNoCopy (IntPtr bytes, nuint length);
	public static MLCTensorData CreateFromImmutableBytesNoCopy (IntPtr bytes, nuint length);
}

New Type: MLCompute.MLCTensorDescriptor

public class MLCTensorDescriptor : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCTensorDescriptor (Foundation.NSObjectFlag t);
	protected MLCTensorDescriptor (IntPtr handle);
	// properties
	public virtual nint[] BatchSizePerSequenceStep { get; }
	public override IntPtr ClassHandle { get; }
	public virtual MLCDataType DataType { get; }
	public virtual nuint DimensionCount { get; }
	public static nuint MaxTensorDimensions { get; }
	public virtual nint[] SequenceLengths { get; }
	public virtual nint[] Shape { get; }
	public virtual bool SortedSequences { get; }
	public virtual nint[] Stride { get; }
	public virtual nuint TensorAllocationSizeInBytes { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static MLCTensorDescriptor Create (nint[] shape, MLCDataType dataType);
	public static MLCTensorDescriptor Create (nint[] shape, nint[] sequenceLengths, bool sortedSequences, MLCDataType dataType);
	public static MLCTensorDescriptor Create (nuint width, nuint height, nuint featureChannels, nuint batchSize);
	public static MLCTensorDescriptor Create (nuint width, nuint height, nuint featureChannelCount, nuint batchSize, MLCDataType dataType);
	public static MLCTensorDescriptor CreateConvolutionBiases (nuint featureChannelCount, MLCDataType dataType);
	public static MLCTensorDescriptor CreateConvolutionWeights (nuint inputFeatureChannelCount, nuint outputFeatureChannelCount, MLCDataType dataType);
	public static MLCTensorDescriptor CreateConvolutionWeights (nuint width, nuint height, nuint inputFeatureChannelCount, nuint outputFeatureChannelCount, MLCDataType dataType);
}

New Type: MLCompute.MLCTensorOptimizerDeviceData

public class MLCTensorOptimizerDeviceData : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCTensorOptimizerDeviceData (Foundation.NSObjectFlag t);
	protected MLCTensorOptimizerDeviceData (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: MLCompute.MLCTensorParameter

public class MLCTensorParameter : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCTensorParameter (Foundation.NSObjectFlag t);
	protected MLCTensorParameter (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool IsUpdatable { get; set; }
	public virtual MLCTensor Tensor { get; }
	// methods
	public static MLCTensorParameter Create (MLCTensor tensor);
	public static MLCTensorParameter Create (MLCTensor tensor, MLCTensorData[] optimizerData);
}

New Type: MLCompute.MLCTrainingGraph

public class MLCTrainingGraph : MLCompute.MLCGraph, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCTrainingGraph (Foundation.NSObjectFlag t);
	protected MLCTrainingGraph (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nuint DeviceMemorySize { get; }
	public virtual MLCOptimizer Optimizer { get; }
	// methods
	public virtual bool AddInputs (Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensor> inputs, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensor> lossLabels);
	public virtual bool AddInputs (Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensor> inputs, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensor> lossLabels, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensor> lossLabelWeights);
	public virtual bool AddOutputs (Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensor> outputs);
	public virtual MLCTensor AllocateUserGradient (MLCTensor tensor);
	public virtual bool Compile (MLCOptimizer optimizer);
	public virtual bool Compile (MLCGraphCompilationOptions options, MLCDevice device);
	public static MLCTrainingGraph Create (MLCGraph[] graphObjects, MLCLayer lossLayer, MLCOptimizer optimizer);
	public virtual bool Execute (Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> inputsData, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> lossLabelsData, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> lossLabelWeightsData, nuint batchSize, MLCExecutionOptions options, MLCGraphCompletionHandler completionHandler);
	public virtual bool Execute (Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> inputsData, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> lossLabelsData, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> lossLabelWeightsData, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> outputsData, nuint batchSize, MLCExecutionOptions options, MLCGraphCompletionHandler completionHandler);
	public virtual System.Threading.Tasks.Task<MLCGraphCompletionResult> ExecuteAsync (Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> inputsData, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> lossLabelsData, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> lossLabelWeightsData, nuint batchSize, MLCExecutionOptions options);
	public virtual System.Threading.Tasks.Task<MLCGraphCompletionResult> ExecuteAsync (Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> inputsData, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> lossLabelsData, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> lossLabelWeightsData, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> outputsData, nuint batchSize, MLCExecutionOptions options);
	public virtual System.Threading.Tasks.Task<MLCGraphCompletionResult> ExecuteAsync (Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> inputsData, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> lossLabelsData, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> lossLabelWeightsData, nuint batchSize, MLCExecutionOptions options, out bool result);
	public virtual System.Threading.Tasks.Task<MLCGraphCompletionResult> ExecuteAsync (Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> inputsData, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> lossLabelsData, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> lossLabelWeightsData, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> outputsData, nuint batchSize, MLCExecutionOptions options, out bool result);
	public virtual bool ExecuteForward (nuint batchSize, MLCExecutionOptions options, MLCGraphCompletionHandler completionHandler);
	public virtual bool ExecuteForward (nuint batchSize, MLCExecutionOptions options, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> outputsData, MLCGraphCompletionHandler completionHandler);
	public virtual System.Threading.Tasks.Task<MLCGraphCompletionResult> ExecuteForwardAsync (nuint batchSize, MLCExecutionOptions options);
	public virtual System.Threading.Tasks.Task<MLCGraphCompletionResult> ExecuteForwardAsync (nuint batchSize, MLCExecutionOptions options, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> outputsData);
	public virtual System.Threading.Tasks.Task<MLCGraphCompletionResult> ExecuteForwardAsync (nuint batchSize, MLCExecutionOptions options, out bool result);
	public virtual System.Threading.Tasks.Task<MLCGraphCompletionResult> ExecuteForwardAsync (nuint batchSize, MLCExecutionOptions options, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> outputsData, out bool result);
	public virtual bool ExecuteGradient (nuint batchSize, MLCExecutionOptions options, MLCGraphCompletionHandler completionHandler);
	public virtual bool ExecuteGradient (nuint batchSize, MLCExecutionOptions options, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> outputsData, MLCGraphCompletionHandler completionHandler);
	public virtual System.Threading.Tasks.Task<MLCGraphCompletionResult> ExecuteGradientAsync (nuint batchSize, MLCExecutionOptions options);
	public virtual System.Threading.Tasks.Task<MLCGraphCompletionResult> ExecuteGradientAsync (nuint batchSize, MLCExecutionOptions options, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> outputsData);
	public virtual System.Threading.Tasks.Task<MLCGraphCompletionResult> ExecuteGradientAsync (nuint batchSize, MLCExecutionOptions options, out bool result);
	public virtual System.Threading.Tasks.Task<MLCGraphCompletionResult> ExecuteGradientAsync (nuint batchSize, MLCExecutionOptions options, Foundation.NSDictionary<Foundation.NSString,MLCompute.MLCTensorData> outputsData, out bool result);
	public virtual bool ExecuteOptimizerUpdate (MLCExecutionOptions options, MLCGraphCompletionHandler completionHandler);
	public virtual System.Threading.Tasks.Task<MLCGraphCompletionResult> ExecuteOptimizerUpdateAsync (MLCExecutionOptions options);
	public virtual System.Threading.Tasks.Task<MLCGraphCompletionResult> ExecuteOptimizerUpdateAsync (MLCExecutionOptions options, out bool result);
	public virtual Foundation.NSData GetGradientData (MLCTensor parameter, MLCLayer layer);
	public virtual MLCTensor GetGradientTensor (MLCTensor input);
	public virtual MLCTensor[] GetResultGradientTensors (MLCLayer layer);
	public virtual MLCTensor[] GetSourceGradientTensors (MLCLayer layer);
	public virtual bool Link (MLCTrainingGraph[] graphs);
	public virtual bool SetTrainingTensorParameters (MLCTensorParameter[] parameters);
	public virtual bool StopGradient (MLCTensor[] tensors);
	public virtual void SynchronizeUpdates ();
}

New Type: MLCompute.MLCTransposeLayer

public class MLCTransposeLayer : MLCompute.MLCLayer, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCTransposeLayer (Foundation.NSObjectFlag t);
	protected MLCTransposeLayer (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nint[] Dimensions { get; }
	// methods
	public static MLCTransposeLayer Create (nint[] dimensions);
}

New Type: MLCompute.MLCUpsampleLayer

public class MLCUpsampleLayer : MLCompute.MLCLayer, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCUpsampleLayer (Foundation.NSObjectFlag t);
	protected MLCUpsampleLayer (IntPtr handle);
	// properties
	public virtual bool AlignsCorners { get; }
	public override IntPtr ClassHandle { get; }
	public virtual MLCSampleMode SampleMode { get; }
	public virtual nint[] Shape { get; }
	// methods
	public static MLCUpsampleLayer Create (nint[] shape);
	public static MLCUpsampleLayer Create (nint[] shape, MLCSampleMode sampleMode, bool alignsCorners);
}

New Type: MLCompute.MLCYoloLossDescriptor

public class MLCYoloLossDescriptor : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCYoloLossDescriptor (Foundation.NSObjectFlag t);
	protected MLCYoloLossDescriptor (IntPtr handle);
	// properties
	public virtual nuint AnchorBoxCount { get; }
	public virtual Foundation.NSData AnchorBoxes { get; }
	public override IntPtr ClassHandle { get; }
	public virtual float MaximumIouForObjectAbsence { get; set; }
	public virtual float MinimumIouForObjectPresence { get; set; }
	public virtual float ScaleClassLoss { get; set; }
	public virtual float ScaleNoObjectConfidenceLoss { get; set; }
	public virtual float ScaleObjectConfidenceLoss { get; set; }
	public virtual float ScaleSpatialPositionLoss { get; set; }
	public virtual float ScaleSpatialSizeLoss { get; set; }
	public virtual bool ShouldRescore { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static MLCYoloLossDescriptor Create (Foundation.NSData anchorBoxes, nuint anchorBoxCount);
}

New Type: MLCompute.MLCYoloLossLayer

public class MLCYoloLossLayer : MLCompute.MLCLossLayer, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCYoloLossLayer (Foundation.NSObjectFlag t);
	protected MLCYoloLossLayer (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual MLCYoloLossDescriptor YoloLossDescriptor { get; }
	// methods
	public static MLCYoloLossLayer Create (MLCYoloLossDescriptor lossDescriptor);
}

New Namespace UniformTypeIdentifiers

New Type: UniformTypeIdentifiers.NSString_UTAdditions

public static class NSString_UTAdditions {
	// methods
	public static Foundation.NSString AppendPathComponent (this Foundation.NSString This, string partialName, UTType contentType);
	public static Foundation.NSString AppendPathExtension (this Foundation.NSString This, UTType contentType);
}

New Type: UniformTypeIdentifiers.NSUrl_UTAdditions

public static class NSUrl_UTAdditions {
	// methods
	public static Foundation.NSUrl AppendPathComponent (this Foundation.NSUrl This, string partialName, UTType contentType);
	public static Foundation.NSUrl AppendPathExtension (this Foundation.NSUrl This, UTType contentType);
}

New Type: UniformTypeIdentifiers.UTTagClass

[Serializable]
public enum UTTagClass {
	FilenameExtension = 0,
	MimeType = 1,
}

New Type: UniformTypeIdentifiers.UTTagClassExtensions

public static class UTTagClassExtensions {
	// methods
	public static Foundation.NSString GetConstant (this UTTagClass self);
	public static UTTagClass GetValue (Foundation.NSString constant);
}

New Type: UniformTypeIdentifiers.UTType

public class UTType : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public UTType (Foundation.NSCoder coder);
	protected UTType (Foundation.NSObjectFlag t);
	protected UTType (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool Declared { get; }
	public virtual bool Dynamic { get; }
	public virtual string Identifier { get; }
	public virtual string LocalizedDescription { get; }
	public virtual string PreferredFilenameExtension { get; }
	public virtual string PreferredMimeType { get; }
	public virtual bool PublicType { get; }
	public virtual Foundation.NSUrl ReferenceUrl { get; }
	public virtual Foundation.NSSet<UTType> Supertypes { get; }
	public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSArray<Foundation.NSString>> Tags { get; }
	public virtual Foundation.NSNumber Version { get; }
	// methods
	public virtual bool ConformsTo (UTType type);
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static UTType CreateExportedType (string identifier);
	public static UTType CreateExportedType (string identifier, UTType parentType);
	public static UTType CreateFromExtension (string filenameExtension);
	public static UTType CreateFromExtension (string filenameExtension, UTType supertype);
	public static UTType CreateFromIdentifier (string identifier);
	public static UTType CreateFromMimeType (string mimeType);
	public static UTType CreateFromMimeType (string mimeType, UTType supertype);
	public static UTType CreateImportedType (string identifier);
	public static UTType CreateImportedType (string identifier, UTType parentType);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public static UTType GetType (string tag, Foundation.NSString tagClass, UTType supertype);
	public static UTType GetType (string tag, UTTagClass tagClass, UTType supertype);
	public static UTType[] GetTypes (string tag, Foundation.NSString tagClass, UTType supertype);
	public static UTType[] GetTypes (string tag, UTTagClass tagClass, UTType supertype);
	public virtual bool IsSubtypeOf (UTType type);
	public virtual bool IsSupertypeOf (UTType type);
}

New Type: UniformTypeIdentifiers.UTTypes

public static class UTTypes {
	// properties
	public static UTType ARReferenceObject { get; }
	public static UTType Aiff { get; }
	public static UTType AliasFile { get; }
	public static UTType AppleArchive { get; }
	public static UTType AppleProtectedMpeg4Audio { get; }
	public static UTType AppleProtectedMpeg4Video { get; }
	public static UTType AppleScript { get; }
	public static UTType Application { get; }
	public static UTType ApplicationBundle { get; }
	public static UTType ApplicationExtension { get; }
	public static UTType Archive { get; }
	public static UTType AssemblyLanguageSource { get; }
	public static UTType Audio { get; }
	public static UTType AudiovisualContent { get; }
	public static UTType Avi { get; }
	public static UTType BZ2 { get; }
	public static UTType BinaryPropertyList { get; }
	public static UTType Bmp { get; }
	public static UTType Bookmark { get; }
	public static UTType Bundle { get; }
	public static UTType CHeader { get; }
	public static UTType CPlusPlusHeader { get; }
	public static UTType CPlusPlusSource { get; }
	public static UTType CSource { get; }
	public static UTType CalendarEvent { get; }
	public static UTType CommaSeparatedText { get; }
	public static UTType CompositeContent { get; }
	public static UTType Contact { get; }
	public static UTType Content { get; }
	public static UTType Data { get; }
	public static UTType Database { get; }
	public static UTType DelimitedText { get; }
	public static UTType Directory { get; }
	public static UTType DiskImage { get; }
	public static UTType EmailMessage { get; }
	public static UTType Epub { get; }
	public static UTType Exe { get; }
	public static UTType Executable { get; }
	public static UTType FileUrl { get; }
	public static UTType FlatRtfd { get; }
	public static UTType Folder { get; }
	public static UTType Font { get; }
	public static UTType Framework { get; }
	public static UTType Gif { get; }
	public static UTType Gzip { get; }
	public static UTType Heic { get; }
	public static UTType Heif { get; }
	public static UTType Html { get; }
	public static UTType Icns { get; }
	public static UTType Ico { get; }
	public static UTType Image { get; }
	public static UTType InternetLocation { get; }
	public static UTType Item { get; }
	public static UTType JavaScript { get; }
	public static UTType Jpeg { get; }
	public static UTType Json { get; }
	public static UTType LivePhoto { get; }
	public static UTType Log { get; }
	public static UTType M3uPlaylist { get; }
	public static UTType MP3 { get; }
	public static UTType Message { get; }
	public static UTType Midi { get; }
	public static UTType MountPoint { get; }
	public static UTType Movie { get; }
	public static UTType Mpeg { get; }
	public static UTType Mpeg2TransportStream { get; }
	public static UTType Mpeg2Video { get; }
	public static UTType Mpeg4Audio { get; }
	public static UTType Mpeg4Movie { get; }
	public static UTType ObjectiveCPlusPlusSource { get; }
	public static UTType ObjectiveCSource { get; }
	public static UTType OsaScript { get; }
	public static UTType OsaScriptBundle { get; }
	public static UTType Package { get; }
	public static UTType Pdf { get; }
	public static UTType PerlScript { get; }
	public static UTType PhpScript { get; }
	public static UTType Pkcs12 { get; }
	public static UTType PlainText { get; }
	public static UTType Playlist { get; }
	public static UTType PluginBundle { get; }
	public static UTType Png { get; }
	public static UTType Presentation { get; }
	public static UTType PropertyList { get; }
	public static UTType PythonScript { get; }
	public static UTType QuickLookGenerator { get; }
	public static UTType QuickTimeMovie { get; }
	public static UTType RawImage { get; }
	public static UTType RealityFile { get; }
	public static UTType Resolvable { get; }
	public static UTType Rtf { get; }
	public static UTType Rtfd { get; }
	public static UTType RubyScript { get; }
	public static UTType SceneKitScene { get; }
	public static UTType Script { get; }
	public static UTType ShellScript { get; }
	public static UTType Shortcut { get; }
	public static UTType SourceCode { get; }
	public static UTType SpotlightImporter { get; }
	public static UTType Spreadsheet { get; }
	public static UTType Svg { get; }
	public static UTType SwiftSource { get; }
	public static UTType SymbolicLink { get; }
	public static UTType SystemPreferencesPane { get; }
	public static UTType TabSeparatedText { get; }
	public static UTType Text { get; }
	public static UTType ThreeDContent { get; }
	public static UTType Tiff { get; }
	public static UTType ToDoItem { get; }
	public static UTType UnixExecutable { get; }
	public static UTType Url { get; }
	public static UTType UrlBookmarkData { get; }
	public static UTType Usd { get; }
	public static UTType Usdz { get; }
	public static UTType Utf16ExternalPlainText { get; }
	public static UTType Utf16PlainText { get; }
	public static UTType Utf8PlainText { get; }
	public static UTType Utf8TabSeparatedText { get; }
	public static UTType VCard { get; }
	public static UTType Video { get; }
	public static UTType Volume { get; }
	public static UTType Wav { get; }
	public static UTType WebArchive { get; }
	public static UTType WebP { get; }
	public static UTType X509Certificate { get; }
	public static UTType Xml { get; }
	public static UTType XmlPropertyList { get; }
	public static UTType XpcService { get; }
	public static UTType Yaml { get; }
	public static UTType Zip { get; }
}