Xamarin.Mac SDK API diff: 6.22.1 vs 7.0.0

Xamarin.Mac.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.AVAudio3DMixingRenderingAlgorithm

Added values:

Auto = 7,
HrtfHQ = 6,

Type Changed: AVFoundation.AVAudioSessionRouteSharingPolicy

Added value:

LongFormVideo = 3,

Type Changed: AVFoundation.AVCaptureColorSpace

Added value:

HlgBT2020 = 2,

Type Changed: AVFoundation.AVCaptureStillImageOutput

Added property:

public virtual bool HighResolutionStillImageOutputEnabled { get; set; }

Type Changed: AVFoundation.AVError

Added values:

CreateContentKeyRequestFailed = -11860,
ExternalPlaybackNotSupportedForAsset = -11870,
IncorrectlyConfigured = -11875,
OperationNotSupportedForPreset = -11871,
RecordingAlreadyInProgress = -11859,
RosettaNotInstalled = -11877,
SegmentStartedWithNonSyncSample = -11876,
SessionHardwareCostOverage = -11872,
UnsupportedDeviceActiveFormat = -11873,

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 properties:

public virtual AVAudioSpatializationFormats AllowedAudioSpatializationFormats { get; set; }
public virtual bool AppliesPerFrameHdrDisplayMetadata { get; set; }
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.AVSampleBufferRequestMode

Added value:

Opportunistic = 2,

Type Changed: AVFoundation.AVSemanticSegmentationMatteType

Added value:

Glasses = 4,

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.AVAudioRoutingArbiter

public class AVAudioRoutingArbiter : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected AVAudioRoutingArbiter (Foundation.NSObjectFlag t);
	protected AVAudioRoutingArbiter (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static AVAudioRoutingArbiter SharedRoutingArbiter { get; }
	// methods
	public virtual void BeginArbitration (AVAudioRoutingArbitrationCategory category, System.Action<System.Boolean,Foundation.NSError> handler);
	public virtual void LeaveArbitration ();
}

New Type: AVFoundation.AVAudioRoutingArbitrationCategory

[Serializable]
public enum AVAudioRoutingArbitrationCategory {
	PlayAndRecord = 1,
	PlayAndRecordVoice = 2,
	Playback = 0,
}

New Type: AVFoundation.AVAudioSession

public static class AVAudioSession {
	// properties
	public static Foundation.NSString InterruptionNotification { get; }
	public static Foundation.NSString MediaServicesWereLostNotification { get; }
	public static Foundation.NSString MediaServicesWereResetNotification { get; }
	public static Foundation.NSString OrientationLeft { get; }
	public static Foundation.NSString OrientationRight { get; }

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

New Type: AVFoundation.AVAudioSessionInterruptionEventArgs

public class AVAudioSessionInterruptionEventArgs : Foundation.NSNotificationEventArgs {
	// constructors
	public AVAudioSessionInterruptionEventArgs (Foundation.NSNotification notification);
	// properties
	public AVAudioSessionInterruptionType InterruptionType { get; }
	public AVAudioSessionInterruptionOptions Option { get; }
	public bool? WasSuspended { get; }
}

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.AVPictureInPictureController

Added property:

public virtual bool RequiresLinearPlayback { get; set; }

Namespace AppKit

Type Changed: AppKit.NSAppearance

Added property:

public static NSAppearance CurrentDrawingAppearance { get; }

Added method:

public virtual void PerformAsCurrentDrawingAppearance (System.Action receiver);

Type Changed: AppKit.NSApplicationPresentationOptions

Added value:

DisableCursorLocationAssistance = 4096,

Type Changed: AppKit.NSButton

Added properties:

public virtual bool HasDestructiveAction { get; set; }
public virtual NSImageSymbolConfiguration SymbolConfiguration { get; set; }

Type Changed: AppKit.NSComboBox

Added interface:

INSTextContent

Type Changed: AppKit.NSControlSize

Added value:

Large = 3,

Type Changed: AppKit.NSDragOperation

Modified fields:

-All = 4294967295
+All = 18446744073709551615

Type Changed: AppKit.NSEventMask

Added value:

ChangeMode = 274877906944,

Type Changed: AppKit.NSEventSubtype

Obsoleted fields:

 [Obsolete ("This API is not available on this platform.")]
 AWT = 16,

Added value:

Touch = 3,

Type Changed: AppKit.NSEventType

Added value:

ChangeMode = 38,

Type Changed: AppKit.NSFont

Added methods:

public virtual NSFont GetFont (nfloat fontSize);
public static NSFont GetPreferredFont (string textStyle, Foundation.NSDictionary options);

Type Changed: AppKit.NSFontDescriptor

Added method:

public static NSFontDescriptor GetPreferredFont (string textStyle, Foundation.NSDictionary options);

Type Changed: AppKit.NSFontSymbolicTraits

Added value:

TraitEmphasized = 2,

Type Changed: AppKit.NSImage

Added methods:

public virtual NSImage GetImage (NSImageSymbolConfiguration configuration);
public static NSImage GetSystemSymbol (string symbolName, string accessibilityDescription);

Type Changed: AppKit.NSImageView

Added property:

public virtual NSImageSymbolConfiguration SymbolConfiguration { get; set; }

Type Changed: AppKit.NSLayoutXAxisAnchor

Added methods:

public virtual NSLayoutConstraint ConstraintEqualToSystemSpacingAfterAnchor (NSLayoutXAxisAnchor anchor, nfloat multiplier);
public virtual NSLayoutConstraint ConstraintGreaterThanOrEqualToSystemSpacingAfterAnchor (NSLayoutXAxisAnchor anchor, nfloat multiplier);
public virtual NSLayoutConstraint ConstraintLessThanOrEqualToSystemSpacingAfterAnchor (NSLayoutXAxisAnchor anchor, nfloat multiplier);

Type Changed: AppKit.NSLayoutYAxisAnchor

Added methods:

public virtual NSLayoutConstraint ConstraintEqualToSystemSpacingBelowAnchor (NSLayoutYAxisAnchor anchor, nfloat multiplier);
public virtual NSLayoutConstraint ConstraintGreaterThanOrEqualToSystemSpacingBelowAnchor (NSLayoutYAxisAnchor anchor, nfloat multiplier);
public virtual NSLayoutConstraint ConstraintLessThanOrEqualToSystemSpacingBelowAnchor (NSLayoutYAxisAnchor anchor, nfloat multiplier);

Type Changed: AppKit.NSMenu

Modified constructors:

-public NSMenu (string aTitle)
+public NSMenu (string title)

Added interface:

INSAppearanceCustomization

Added properties:

public virtual NSAppearance Appearance { get; set; }
public virtual NSAppearance EffectiveAppearance { get; }

Type Changed: AppKit.NSMutableParagraphStyle

Added property:

public override NSLineBreakStrategy LineBreakStrategy { get; set; }

Type Changed: AppKit.NSOutlineViewDelegate

Added method:

public virtual NSTintConfiguration GetTintConfiguration (NSOutlineView outlineView, Foundation.NSObject item);

Type Changed: AppKit.NSOutlineViewDelegate_Extensions

Added method:

public static NSTintConfiguration GetTintConfiguration (this INSOutlineViewDelegate This, NSOutlineView outlineView, Foundation.NSObject item);

Type Changed: AppKit.NSParagraphStyle

Added property:

public virtual NSLineBreakStrategy LineBreakStrategy { get; set; }

Type Changed: AppKit.NSSavePanel

Added property:

public virtual UniformTypeIdentifiers.UTType[] AllowedContentTypes { get; set; }

Type Changed: AppKit.NSScrollArrowPosition

Modified fields:

-DefaultSetting = 2
+DefaultSetting = 0
-None = 3
+None = 2

Type Changed: AppKit.NSSearchField

Added interface:

INSTextContent

Added properties:

public virtual CoreGraphics.CGRect CancelButtonBounds { get; }
public virtual CoreGraphics.CGRect SearchButtonBounds { get; }
public virtual CoreGraphics.CGRect SearchTextBounds { get; }

Type Changed: AppKit.NSSecureTextField

Added interface:

INSTextContent

Type Changed: AppKit.NSSplitViewItem

Added properties:

public virtual bool AllowsFullHeightLayout { get; set; }
public virtual NSTitlebarSeparatorStyle TitlebarSeparatorStyle { get; set; }

Type Changed: AppKit.NSStringAttributeKey

Added property:

public static Foundation.NSString Tracking { get; }

Type Changed: AppKit.NSTableView

Added properties:

public virtual NSTableViewStyle EffectiveStyle { get; }
public virtual NSTableViewStyle Style { get; set; }

Type Changed: AppKit.NSTableViewDraggingDestinationFeedbackStyle

Added value:

FeedbackStyleGap = 2,

Type Changed: AppKit.NSTextBlockDimension

Modified fields:

-Height = 3
+Height = 4
-MaximumHeight = 5
+MaximumHeight = 6
-MinimumHeight = 4
+MinimumHeight = 5

Type Changed: AppKit.NSTextField

Added interface:

INSTextContent

Added properties:

public virtual NSTextContentType ContentType { get; set; }
public virtual NSLineBreakStrategy LineBreakStrategy { get; set; }

Added methods:

public virtual Foundation.NSString GetContentType ();
public virtual void SetContentType (Foundation.NSString contentType);

Type Changed: AppKit.NSTextView

Added interface:

INSTextContent

Added property:

public virtual NSTextContentType ContentType { get; set; }

Added methods:

public virtual Foundation.NSString GetContentType ();
public virtual void SetContentType (Foundation.NSString contentType);

Type Changed: AppKit.NSTitlebarAccessoryViewController

Added property:

public virtual bool AutomaticallyAdjustsSize { get; set; }

Type Changed: AppKit.NSTokenField

Added interface:

INSTextContent

Type Changed: AppKit.NSTokenStyle

Added values:

PlainSquared = 4,
Squared = 3,

Type Changed: AppKit.NSToolbar

Added property:

public static Foundation.NSString NSToolbarSidebarTrackingSeparatorItemIdentifier { get; }

Type Changed: AppKit.NSToolbarItem

Added property:

public virtual bool Navigational { get; set; }

Type Changed: AppKit.NSView

Added properties:

public virtual NSEdgeInsets AdditionalSafeAreaInsets { get; set; }
public virtual NSLayoutGuide LayoutMarginsGuide { get; }
public virtual NSEdgeInsets SafeAreaInsets { get; }
public virtual NSLayoutGuide SafeAreaLayoutGuide { get; }
public virtual CoreGraphics.CGRect SafeAreaRect { get; }

Type Changed: AppKit.NSViewLayerContentsRedrawPolicy

Added value:

Crossfade = 4,

Type Changed: AppKit.NSWindow

Added properties:

public virtual string Subtitle { get; set; }
public virtual NSTitlebarSeparatorStyle TitlebarSeparatorStyle { get; set; }
public virtual NSWindowToolbarStyle ToolbarStyle { get; set; }

Type Changed: AppKit.NSWindowTitleVisibility

Obsoleted fields:

 [Obsolete ("This API is not available on this platform.")]
 HiddenWhenActive = 2,

Type Changed: AppKit.NSWorkspace

Added method:

public virtual NSImage GetIcon (UniformTypeIdentifiers.UTType contentType);

Type Changed: AppKit.NSWorkspaceLaunchOptions

Added value:

WithErrorPresentation = 64,

Type Changed: AppKit.NSWritingDirection

Obsoleted fields:

 [Obsolete ("This API is not available on this platform.")]
 Override = 2,

New Type: AppKit.INSTextContent

public interface INSTextContent : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual Foundation.NSString GetContentType ();
	public virtual void SetContentType (Foundation.NSString contentType);
}

New Type: AppKit.NSFontTextStyle

[Serializable]
public enum NSFontTextStyle {
	Body = 6,
	Callout = 7,
	Caption1 = 9,
	Caption2 = 10,
	Footnote = 8,
	Headline = 4,
	LargeTitle = 0,
	Subheadline = 5,
	Title1 = 1,
	Title2 = 2,
	Title3 = 3,
}

New Type: AppKit.NSFontTextStyleExtensions

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

New Type: AppKit.NSImageSymbolConfiguration

public class NSImageSymbolConfiguration : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NSImageSymbolConfiguration (Foundation.NSObjectFlag t);
	protected NSImageSymbolConfiguration (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static NSImageSymbolConfiguration Create (NSImageSymbolScale scale);
	public static NSImageSymbolConfiguration Create (string style);
	public static NSImageSymbolConfiguration Create (string style, NSImageSymbolScale scale);
	public static NSImageSymbolConfiguration Create (nfloat pointSize, double weight);
	public static NSImageSymbolConfiguration Create (nfloat pointSize, double weight, NSImageSymbolScale scale);
}

New Type: AppKit.NSImageSymbolScale

[Serializable]
public enum NSImageSymbolScale {
	Large = 3,
	Medium = 2,
	Small = 1,
}

New Type: AppKit.NSLineBreakStrategy

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

New Type: AppKit.NSSearchToolbarItem

public class NSSearchToolbarItem : AppKit.NSToolbarItem, INSMenuItemValidation, INSValidatedUserInterfaceItem, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NSSearchToolbarItem (Foundation.NSObjectFlag t);
	protected NSSearchToolbarItem (IntPtr handle);
	public NSSearchToolbarItem (string itemIdentifier);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nfloat PreferredWidthForSearchField { get; set; }
	public virtual bool ResignsFirstResponderWithCancel { get; set; }
	public virtual NSSearchField SearchField { get; set; }
	// methods
	public virtual void BeginSearchInteraction ();
	public virtual void EndSearchInteraction ();
}

New Type: AppKit.NSTableViewAnimationOptions

[Serializable]
[Flags]
public enum NSTableViewAnimationOptions {
	EffectFade = 1,
	EffectGap = 2,
	EffectNone = 0,
	SlideDown = 32,
	SlideLeft = 48,
	SlideRight = 64,
	SlideUp = 16,
}

New Type: AppKit.NSTableViewDiffableDataSourceCellProvider

public sealed delegate NSTableViewDiffableDataSourceCellProvider : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public NSTableViewDiffableDataSourceCellProvider (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (NSTableView tableView, NSTableColumn column, nint row, Foundation.NSObject itemId, System.AsyncCallback callback, object object);
	public virtual NSView EndInvoke (System.IAsyncResult result);
	public virtual NSView Invoke (NSTableView tableView, NSTableColumn column, nint row, Foundation.NSObject itemId);
}

New Type: AppKit.NSTableViewDiffableDataSourceRowProvider

public sealed delegate NSTableViewDiffableDataSourceRowProvider : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public NSTableViewDiffableDataSourceRowProvider (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (NSTableView tableView, nint row, Foundation.NSObject identifier, System.AsyncCallback callback, object object);
	public virtual NSTableRowView EndInvoke (System.IAsyncResult result);
	public virtual NSTableRowView Invoke (NSTableView tableView, nint row, Foundation.NSObject identifier);
}

New Type: AppKit.NSTableViewDiffableDataSourceSectionHeaderViewProvider

public sealed delegate NSTableViewDiffableDataSourceSectionHeaderViewProvider : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public NSTableViewDiffableDataSourceSectionHeaderViewProvider (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (NSTableView tableView, nint row, Foundation.NSObject sectionId, System.AsyncCallback callback, object object);
	public virtual NSView EndInvoke (System.IAsyncResult result);
	public virtual NSView Invoke (NSTableView tableView, nint row, Foundation.NSObject sectionId);
}

New Type: AppKit.NSTableViewDiffableDataSource`2

public class NSTableViewDiffableDataSource`2 : Foundation.NSObject, INSTableViewDataSource, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NSTableViewDiffableDataSource`2 (Foundation.NSObjectFlag t);
	protected NSTableViewDiffableDataSource`2 (IntPtr handle);
	public NSTableViewDiffableDataSource`2 (NSTableView tableView, NSTableViewDiffableDataSourceCellProvider cellProvider);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual NSTableViewAnimationOptions DefaultRowAnimation { get; set; }
	public virtual NSTableViewDiffableDataSourceRowProvider RowViewProvider { get; set; }
	public virtual NSTableViewDiffableDataSourceSectionHeaderViewProvider SectionHeaderViewProvider { get; set; }
	// methods
	public virtual bool AcceptDrop (NSTableView tableView, NSDraggingInfo info, nint row, NSTableViewDropOperation dropOperation);
	public virtual void ApplySnapshot (AppKit.NSDiffableDataSourceSnapshot<SectionIdentifierType,ItemIdentifierType> snapshot, bool animatingDifferences);
	public virtual void ApplySnapshot (AppKit.NSDiffableDataSourceSnapshot<SectionIdentifierType,ItemIdentifierType> snapshot, bool animatingDifferences, System.Action completion);
	public virtual System.Threading.Tasks.Task ApplySnapshotAsync (AppKit.NSDiffableDataSourceSnapshot<SectionIdentifierType,ItemIdentifierType> snapshot, bool animatingDifferences);
	public virtual void DraggingSessionEnded (NSTableView tableView, NSDraggingSession draggingSession, CoreGraphics.CGPoint endedAtScreenPoint, NSDragOperation operation);
	public virtual void DraggingSessionWillBegin (NSTableView tableView, NSDraggingSession draggingSession, CoreGraphics.CGPoint willBeginAtScreenPoint, Foundation.NSIndexSet rowIndexes);
	public virtual string[] FilesDropped (NSTableView tableView, Foundation.NSUrl dropDestination, Foundation.NSIndexSet indexSet);
	public virtual ItemIdentifierType GetItemIdentifier (nint row);
	public virtual Foundation.NSObject GetObjectValue (NSTableView tableView, NSTableColumn tableColumn, nint row);
	public virtual INSPasteboardWriting GetPasteboardWriterForRow (NSTableView tableView, nint row);
	public virtual nint GetRowCount (NSTableView tableView);
	public virtual nint GetRowForItemIdentifier (ItemIdentifierType itemIdentifier);
	public virtual nint GetRowForSectionIdentifier (SectionIdentifierType sectionIdentifier);
	public virtual SectionIdentifierType GetSectionIdentifier (nint row);
	public virtual void SetObjectValue (NSTableView tableView, Foundation.NSObject theObject, NSTableColumn tableColumn, nint row);
	public virtual AppKit.NSDiffableDataSourceSnapshot<SectionIdentifierType,ItemIdentifierType> Snapshot ();
	public virtual void SortDescriptorsChanged (NSTableView tableView, Foundation.NSSortDescriptor[] oldDescriptors);
	public virtual void UpdateDraggingItems (NSTableView tableView, NSDraggingInfo draggingInfo);
	public virtual NSDragOperation ValidateDrop (NSTableView tableView, NSDraggingInfo info, nint row, NSTableViewDropOperation dropOperation);
	public virtual bool WriteRows (NSTableView tableView, Foundation.NSIndexSet rowIndexes, NSPasteboard pboard);
}

New Type: AppKit.NSTableViewStyle

[Serializable]
public enum NSTableViewStyle {
	Automatic = 0,
	FullWidth = 1,
	Inset = 2,
	Plain = 4,
	SourceList = 3,
}

New Type: AppKit.NSTextContentType

[Serializable]
public enum NSTextContentType {
	OneTimeCode = 2,
	Password = 1,
	Username = 0,
}

New Type: AppKit.NSTextContentTypeExtensions

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

New Type: AppKit.NSTintConfiguration

public class NSTintConfiguration : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSTintConfiguration (Foundation.NSCoder coder);
	protected NSTintConfiguration (Foundation.NSObjectFlag t);
	protected NSTintConfiguration (IntPtr handle);
	// properties
	public virtual bool AdaptsToUserAccentColor { get; }
	public virtual NSColor BaseTintColor { get; }
	public override IntPtr ClassHandle { get; }
	public static NSTintConfiguration DefaultTintConfiguration { get; }
	public virtual NSColor EquivalentContentTintColor { get; }
	public static NSTintConfiguration MonochromeTintConfiguration { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static NSTintConfiguration CreateWithFixedColor (NSColor color);
	public static NSTintConfiguration CreateWithPreferredColor (NSColor color);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: AppKit.NSTitlebarSeparatorStyle

[Serializable]
public enum NSTitlebarSeparatorStyle {
	Automatic = 0,
	Line = 2,
	None = 1,
	Shadow = 3,
}

New Type: AppKit.NSTrackingSeparatorToolbarItem

public class NSTrackingSeparatorToolbarItem : AppKit.NSToolbarItem, INSMenuItemValidation, INSValidatedUserInterfaceItem, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NSTrackingSeparatorToolbarItem (Foundation.NSObjectFlag t);
	protected NSTrackingSeparatorToolbarItem (IntPtr handle);
	public NSTrackingSeparatorToolbarItem (string itemIdentifier);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nint DividerIndex { get; set; }
	public virtual NSSplitView SplitView { get; set; }
	// methods
	public static NSTrackingSeparatorToolbarItem GetTrackingSeparatorToolbar (string identifier, NSSplitView splitView, nint dividerIndex);
}

New Type: AppKit.NSWindowToolbarStyle

[Serializable]
public enum NSWindowToolbarStyle {
	Automatic = 0,
	Expanded = 1,
	Preference = 2,
	Unified = 3,
	UnifiedCompact = 4,
}

Namespace AudioToolbox

Type Changed: AudioToolbox.SmpteTimeType

Obsoleted fields:

 [Obsolete ("Value is not to be used with any API.")]
 None = 4294967295,

Modified fields:

-None = 0
+None = 4294967295
-Type2398 = 12
+Type2398 = 11
-Type24 = 1
+Type24 = 0
-Type25 = 2
+Type25 = 1
-Type2997 = 5
+Type2997 = 4
-Type2997Drop = 6
+Type2997Drop = 5
-Type30 = 4
+Type30 = 3
-Type30Drop = 3
+Type30Drop = 2
-Type50 = 11
+Type50 = 10
-Type5994 = 8
+Type5994 = 7
-Type5994Drop = 10
+Type5994Drop = 9
-Type60 = 7
+Type60 = 6
-Type60Drop = 9
+Type60Drop = 8

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.AUSpatializationAlgorithm

Added value:

UseOutputType = 7,

Type Changed: AudioUnit.AudioComponent

Added method:

public AppKit.NSImage CopyIcon ();

Type Changed: AudioUnit.AudioObjectPropertySelector

Added values:

ActualSampleRate = 1634955892,
ClockDevice = 1634755428,
ClockDeviceList = 1668049699,
IOThreadOSWorkgroup = 1869838183,
TranslateUidToClockDevice = 1969841251,

Namespace AuthenticationServices

Type Changed: AuthenticationServices.ASAuthorizationProviderAuthorizationOperation

Added value:

ConfigurationRemoved = 1,

Type Changed: AuthenticationServices.ASAuthorizationProviderExtensionAuthorizationRequest

Added properties:

public virtual bool CallerManaged { get; }
public virtual string CallerTeamIdentifier { get; }
public virtual string LocalizedCallerDisplayName { get; }

New Type: AuthenticationServices.ASCredentialIdentityStore

public class ASCredentialIdentityStore : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ASCredentialIdentityStore (Foundation.NSObjectFlag t);
	protected ASCredentialIdentityStore (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static ASCredentialIdentityStore SharedStore { get; }
	// methods
	public virtual void GetCredentialIdentityStoreState (System.Action<ASCredentialIdentityStoreState> completion);
	public virtual System.Threading.Tasks.Task<ASCredentialIdentityStoreState> GetCredentialIdentityStoreStateAsync ();
	public virtual void RemoveAllCredentialIdentities (System.Action<System.Boolean,Foundation.NSError> completion);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> RemoveAllCredentialIdentitiesAsync ();
	public virtual void RemoveCredentialIdentities (ASPasswordCredentialIdentity[] credentialIdentities, ASCredentialIdentityStoreCompletionHandler completion);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> RemoveCredentialIdentitiesAsync (ASPasswordCredentialIdentity[] credentialIdentities);
	public virtual void ReplaceCredentialIdentities (ASPasswordCredentialIdentity[] newCredentialIdentities, ASCredentialIdentityStoreCompletionHandler completion);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> ReplaceCredentialIdentitiesAsync (ASPasswordCredentialIdentity[] newCredentialIdentities);
	public virtual void SaveCredentialIdentities (ASPasswordCredentialIdentity[] credentialIdentities, ASCredentialIdentityStoreCompletionHandler completion);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> SaveCredentialIdentitiesAsync (ASPasswordCredentialIdentity[] credentialIdentities);
}

New Type: AuthenticationServices.ASCredentialIdentityStoreCompletionHandler

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

New Type: AuthenticationServices.ASCredentialIdentityStoreErrorCode

[Serializable]
public enum ASCredentialIdentityStoreErrorCode {
	InternalError = 0,
	StoreBusy = 2,
	StoreDisabled = 1,
}

New Type: AuthenticationServices.ASCredentialIdentityStoreErrorCodeExtensions

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

New Type: AuthenticationServices.ASCredentialIdentityStoreState

public class ASCredentialIdentityStoreState : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ASCredentialIdentityStoreState (Foundation.NSObjectFlag t);
	protected ASCredentialIdentityStoreState (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool Enabled { get; }
	public virtual bool SupportsIncrementalUpdates { get; }
}

New Type: AuthenticationServices.ASCredentialProviderExtensionContext

public class ASCredentialProviderExtensionContext : Foundation.NSExtensionContext, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ASCredentialProviderExtensionContext (Foundation.NSObjectFlag t);
	protected ASCredentialProviderExtensionContext (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void CancelRequest (Foundation.NSError error);
	public virtual void CompleteExtensionConfigurationRequest ();
	public virtual void CompleteRequest (ASPasswordCredential credential, ASCredentialProviderExtensionRequestCompletionHandler completionHandler);
}

New Type: AuthenticationServices.ASCredentialProviderExtensionRequestCompletionHandler

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

New Type: AuthenticationServices.ASCredentialProviderViewController

public class ASCredentialProviderViewController : AppKit.NSViewController, AppKit.INSEditor, AppKit.INSSeguePerforming, AppKit.INSTouchBarProvider, AppKit.INSUserInterfaceItemIdentification, Foundation.INSCoding, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ASCredentialProviderViewController ();
	public ASCredentialProviderViewController (Foundation.NSCoder coder);
	protected ASCredentialProviderViewController (Foundation.NSObjectFlag t);
	protected ASCredentialProviderViewController (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual ASCredentialProviderExtensionContext ExtensionContext { get; }
	// methods
	public virtual void PrepareCredentialList (ASCredentialServiceIdentifier[] serviceIdentifiers);
	public virtual void PrepareInterfaceForExtensionConfiguration ();
	public virtual void PrepareInterfaceToProvideCredential (ASPasswordCredentialIdentity credentialIdentity);
	public virtual void ProvideCredentialWithoutUserInteraction (ASPasswordCredentialIdentity credentialIdentity);
}

New Type: AuthenticationServices.ASCredentialServiceIdentifier

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

New Type: AuthenticationServices.ASCredentialServiceIdentifierType

[Serializable]
public enum ASCredentialServiceIdentifierType {
	Domain = 0,
	Url = 1,
}

New Type: AuthenticationServices.ASExtensionErrorCode

[Serializable]
public enum ASExtensionErrorCode {
	CredentialIdentityNotFound = 101,
	Failed = 0,
	UserCanceled = 1,
	UserInteractionRequired = 100,
}

New Type: AuthenticationServices.ASExtensionErrorCodeExtensions

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

New Type: AuthenticationServices.ASPasswordCredentialIdentity

public class ASPasswordCredentialIdentity : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ASPasswordCredentialIdentity (Foundation.NSCoder coder);
	protected ASPasswordCredentialIdentity (Foundation.NSObjectFlag t);
	protected ASPasswordCredentialIdentity (IntPtr handle);
	public ASPasswordCredentialIdentity (ASCredentialServiceIdentifier serviceIdentifier, string user, string recordIdentifier);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nint Rank { get; set; }
	public virtual string RecordIdentifier { get; }
	public virtual ASCredentialServiceIdentifier ServiceIdentifier { get; }
	public virtual string User { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static ASPasswordCredentialIdentity Create (ASCredentialServiceIdentifier serviceIdentifier, string user, string recordIdentifier);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

Namespace AutomaticAssessmentConfiguration

New Type: AutomaticAssessmentConfiguration.AEAutocorrectMode

[Serializable]
public enum AEAutocorrectMode {
	None = 0,
	Punctuation = 2,
	Spelling = 1,
}

Namespace CloudKit

Type Changed: CloudKit.CKNotification

Added property:

public virtual CKRecordID SubscriptionOwnerUserRecordId { get; }

Namespace Contacts

Type Changed: Contacts.CNContactFormatter

Added properties:

public static ICNKeyDescriptor RequiredKeysForDelimiter { get; }
public static ICNKeyDescriptor RequiredKeysForNameOrder { get; }

Type Changed: Contacts.CNErrorCode

Added values:

ChangeHistoryExpired = 603,
ChangeHistoryInvalidAnchor = 604,
ClientIdentifierCollision = 602,

Type Changed: Contacts.CNLabelContactRelationKey

Added properties:

public static Foundation.NSString GranddaughterOrNiece { get; }
public static Foundation.NSString GrandsonOrNephew { get; }

Namespace CoreBluetooth

Type Changed: CoreBluetooth.CBError

Added value:

TooManyLEPairedDevices = 16,

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.NSCoreDataCoreSpotlightDelegate

Obsoleted constructors:

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

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; }

Type Changed: CoreData.NSPersistentStoreRequestType

Added value:

BatchInsert = 5,

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.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.CFBundle

Added methods:

public static bool IsArchitectureLoadable (CFBundle.Architecture architecture);
public static bool IsExecutableLoadable (CFBundle bundle);
public static bool IsExecutableLoadable (Foundation.NSUrl url);

Type Changed: CoreFoundation.CFNetworkErrors

Added value:

NetServiceMissingRequiredConfiguration = -72008,

Namespace CoreGraphics

Type Changed: CoreGraphics.CGColor

Added constructor:

public CGColor (CGConstantColor color);

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 properties:

public bool UsesExtendedRange { get; }
public bool UsesItur2100TF { get; }

Added methods:

public CGColorSpace CreateExtended ();
public CGColorSpace CreateExtendedLinearized ();
public CGColorSpace CreateLinearized ();

Type Changed: CoreGraphics.CGColorSpaceNames

Added properties:

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

Type Changed: CoreGraphics.CGEvent

Added methods:

public static bool PreflightListenEventAccess ();
public static bool PreflightPostEventAccess ();
public static bool RequestListenEventAccess ();
public static bool RequestPostEventAccess ();

Type Changed: CoreGraphics.CGEventSuppressionState

Added value:

NumberOfEventSuppressionStates = 2,

Type Changed: CoreGraphics.CGEventType

Added values:

TapDisabledByTimeout = 4294967294,
TapDisabledByUserInput = 4294967295,

Type Changed: CoreGraphics.CGPDFInfo

Added properties:

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

Type Changed: CoreGraphics.CGWindowImageOption

Added values:

BestResolution = 8,
NominalResolution = 16,

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.CIContext_CIDepthBlurEffect

Added method:

public static CIFilter GetDepthBlurEffectFilter (this CIContext This, CIImage image, CIImage disparityImage, CIImage portraitEffectsMatte, CIImage hairSemanticSegmentation, CIImage glassesMatte, CIImage gainMap, ImageIO.CGImagePropertyOrientation orientation, Foundation.NSDictionary options);

Type Changed: CoreImage.CIDepthBlurEffect

Added properties:

public CIImage GainMap { get; set; }
public CIImage GlassesImage { 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.CIImageInitializationOptions

Added properties:

public bool? AuxiliarySemanticSegmentationGlassesMatte { get; set; }
public bool? ToneMapHdrToSdr { 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);
	public 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);
	public 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);
	public 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.CLError

Added value:

PromptDeclined = 18,

Type Changed: CoreLocation.CLLocation

Added property:

public static double AccuracyReduced { get; }

Type Changed: CoreLocation.CLLocationManager

Added properties:

public virtual CLAccuracyAuthorization AccuracyAuthorization { get; }
public virtual CLActivityType ActivityType { get; set; }
public virtual bool AllowsBackgroundLocationUpdates { get; set; }
public virtual CLAuthorizationStatus AuthorizationStatus { get; }
public virtual CLHeading Heading { get; }
public virtual double HeadingFilter { get; set; }
public virtual CLDeviceOrientation HeadingOrientation { get; set; }
public virtual bool IsAuthorizedForWidgetUpdates { get; }
public static bool IsRangingAvailable { get; }
public virtual bool PausesLocationUpdatesAutomatically { get; set; }
public virtual Foundation.NSSet<CLBeaconIdentityConstraint> RangedBeaconConstraints { get; }
public virtual bool ShowsBackgroundLocationIndicator { get; set; }

Added events:

public event System.EventHandler DidChangeAuthorization;
public event System.EventHandler<CLRegionBeaconsConstraintFailedEventArgs> DidFailRangingBeacons;
public event System.EventHandler<CLRegionBeaconsConstraintRangedEventArgs> DidRangeBeaconsSatisfyingConstraint;
public event System.EventHandler<CLVisitedEventArgs> DidVisit;
public event System.EventHandler<CLHeadingUpdatedEventArgs> UpdatedHeading;

Added methods:

public virtual void DismissHeadingCalibrationDisplay ();
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);
public virtual void RequestWhenInUseAuthorization ();
public virtual void StartMonitoringVisits ();
public virtual void StartRangingBeacons (CLBeaconIdentityConstraint constraint);
public virtual void StartUpdatingHeading ();
public virtual void StopMonitoringVisits ();
public virtual void StopRangingBeacons (CLBeaconIdentityConstraint constraint);
public virtual void StopUpdatingHeading ();

Type Changed: CoreLocation.CLLocationManagerDelegate

Added methods:

public virtual void DidChangeAuthorization (CLLocationManager manager);
public virtual void DidFailRangingBeacons (CLLocationManager manager, CLBeaconIdentityConstraint beaconConstraint, Foundation.NSError error);
public virtual void DidRangeBeaconsSatisfyingConstraint (CLLocationManager manager, CLBeacon[] beacons, CLBeaconIdentityConstraint beaconConstraint);
public virtual void DidVisit (CLLocationManager manager, CLVisit visit);
public virtual void UpdatedHeading (CLLocationManager manager, CLHeading newHeading);

Type Changed: CoreLocation.CLLocationManagerDelegate_Extensions

Added methods:

public static void DidChangeAuthorization (this ICLLocationManagerDelegate This, CLLocationManager manager);
public static void DidFailRangingBeacons (this ICLLocationManagerDelegate This, CLLocationManager manager, CLBeaconIdentityConstraint beaconConstraint, Foundation.NSError error);
public static void DidRangeBeaconsSatisfyingConstraint (this ICLLocationManagerDelegate This, CLLocationManager manager, CLBeacon[] beacons, CLBeaconIdentityConstraint beaconConstraint);
public static void DidVisit (this ICLLocationManagerDelegate This, CLLocationManager manager, CLVisit visit);
public static void UpdatedHeading (this ICLLocationManagerDelegate This, CLLocationManager manager, CLHeading newHeading);

New Type: CoreLocation.CLAccuracyAuthorization

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

New Type: CoreLocation.CLBeacon

public class CLBeacon : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CLBeacon ();
	public CLBeacon (Foundation.NSCoder coder);
	protected CLBeacon (Foundation.NSObjectFlag t);
	protected CLBeacon (IntPtr handle);
	// properties
	public virtual double Accuracy { get; }
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSNumber Major { get; }
	public virtual Foundation.NSNumber Minor { get; }
	public virtual CLProximity Proximity { get; }
	public virtual nint Rssi { get; }
	public virtual Foundation.NSDate Timestamp { get; }
	public virtual Foundation.NSUuid Uuid { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: CoreLocation.CLBeaconIdentityConstraint

public class CLBeaconIdentityConstraint : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CLBeaconIdentityConstraint (Foundation.NSCoder coder);
	protected CLBeaconIdentityConstraint (Foundation.NSObjectFlag t);
	public CLBeaconIdentityConstraint (Foundation.NSUuid uuid);
	protected CLBeaconIdentityConstraint (IntPtr handle);
	public CLBeaconIdentityConstraint (Foundation.NSUuid uuid, ushort major);
	public CLBeaconIdentityConstraint (Foundation.NSUuid uuid, ushort major, ushort minor);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual short? Major { get; }
	public virtual short? Minor { get; }
	public virtual Foundation.NSUuid Uuid { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: CoreLocation.CLBeaconRegion

public class CLBeaconRegion : CoreLocation.CLRegion, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CLBeaconRegion (Foundation.NSCoder coder);
	protected CLBeaconRegion (Foundation.NSObjectFlag t);
	protected CLBeaconRegion (IntPtr handle);
	public CLBeaconRegion (CLBeaconIdentityConstraint beaconIdentityConstraint, string identifier);
	// properties
	public virtual CLBeaconIdentityConstraint BeaconIdentityConstraint { get; }
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSNumber Major { get; }
	public virtual Foundation.NSNumber Minor { get; }
	public virtual bool NotifyEntryStateOnDisplay { get; set; }
	public virtual Foundation.NSUuid Uuid { get; }
	// methods
	public virtual Foundation.NSMutableDictionary GetPeripheralData (Foundation.NSNumber measuredPower);
}

New Type: CoreLocation.CLHeadingUpdatedEventArgs

public class CLHeadingUpdatedEventArgs : System.EventArgs {
	// constructors
	public CLHeadingUpdatedEventArgs (CLHeading newHeading);
	// properties
	public CLHeading NewHeading { get; set; }
}

New Type: CoreLocation.CLRegionBeaconsConstraintFailedEventArgs

public class CLRegionBeaconsConstraintFailedEventArgs : System.EventArgs {
	// constructors
	public CLRegionBeaconsConstraintFailedEventArgs (CLBeaconIdentityConstraint beaconConstraint, Foundation.NSError error);
	// properties
	public CLBeaconIdentityConstraint BeaconConstraint { get; set; }
	public Foundation.NSError Error { get; set; }
}

New Type: CoreLocation.CLRegionBeaconsConstraintRangedEventArgs

public class CLRegionBeaconsConstraintRangedEventArgs : System.EventArgs {
	// constructors
	public CLRegionBeaconsConstraintRangedEventArgs (CLBeacon[] beacons, CLBeaconIdentityConstraint beaconConstraint);
	// properties
	public CLBeaconIdentityConstraint BeaconConstraint { get; set; }
	public CLBeacon[] Beacons { get; set; }
}

New Type: CoreLocation.CLVisit

public class CLVisit : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CLVisit ();
	public CLVisit (Foundation.NSCoder coder);
	protected CLVisit (Foundation.NSObjectFlag t);
	protected CLVisit (IntPtr handle);
	// properties
	public virtual Foundation.NSDate ArrivalDate { get; }
	public override IntPtr ClassHandle { get; }
	public virtual CLLocationCoordinate2D Coordinate { get; }
	public virtual Foundation.NSDate DepartureDate { get; }
	public virtual double HorizontalAccuracy { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: CoreLocation.CLVisitedEventArgs

public class CLVisitedEventArgs : System.EventArgs {
	// constructors
	public CLVisitedEventArgs (CLVisit visit);
	// properties
	public CLVisit Visit { get; set; }
}

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);

New Type: CoreML.MLModelCollection

public class MLModelCollection : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLModelCollection (Foundation.NSObjectFlag t);
	protected MLModelCollection (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string DeploymentId { get; }
	public static Foundation.NSString DidChangeNotification { get; }
	public virtual Foundation.NSDictionary<Foundation.NSString,CoreML.MLModelCollectionEntry> Entries { get; }
	public virtual string Identifier { get; }
	// methods
	public static Foundation.NSProgress BeginAccessingModelCollection (string identifier, System.Action<MLModelCollection,Foundation.NSError> completionHandler);
	public static System.Threading.Tasks.Task<MLModelCollection> BeginAccessingModelCollectionAsync (string identifier);
	public static System.Threading.Tasks.Task<MLModelCollection> BeginAccessingModelCollectionAsync (string identifier, out Foundation.NSProgress result);
	public static void EndAccessingModelCollection (string identifier, System.Action<System.Boolean,Foundation.NSError> completionHandler);
	public static System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> EndAccessingModelCollectionAsync (string identifier);

	// 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: CoreML.MLModelCollectionEntry

public class MLModelCollectionEntry : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLModelCollectionEntry (Foundation.NSObjectFlag t);
	protected MLModelCollectionEntry (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string ModelIdentifier { get; }
	public virtual Foundation.NSUrl ModelUrl { get; }
	// methods
	public virtual bool IsEqual (MLModelCollectionEntry entry);
}

Namespace CoreMedia

Type Changed: CoreMedia.CMVideoCodecType

Added value:

VP9 = 1987063865,

Namespace CoreMidi

Type Changed: CoreMidi.MidiCIProfile

Added constructor:

public MidiCIProfile (Foundation.NSData data);

Type Changed: CoreMidi.MidiCIProfileState

Added constructor:

public MidiCIProfileState (byte midiChannelNumber, MidiCIProfile[] enabled, MidiCIProfile[] disabled);

Added property:

public virtual byte MidiChannel { get; }

Type Changed: CoreMidi.MidiCISession

Added constructor:

public MidiCISession (MidiCIDiscoveredNode discoveredNode, System.Action dataReadyHandler, MidiCISessionDisconnectHandler disconnectHandler);

Added properties:

public virtual MidiCIDeviceInfo DeviceInfo { get; }
public virtual int MaxPropertyRequests { get; }
public virtual ulong MaxSysExSize { get; }
public virtual MidiCIProfileSpecificDataHandler ProfileSpecificDataHandler { get; set; }

Added method:

public virtual bool SendProfile (MidiCIProfile profile, byte channel, Foundation.NSData profileSpecificData);

New Type: CoreMidi.IMidiCIProfileResponderDelegate

public interface IMidiCIProfileResponderDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual bool ConnectInitiator (Foundation.NSNumber initiatorMuid, MidiCIDeviceInfo deviceInfo);
	public virtual void InitiatorDisconnected (Foundation.NSNumber initiatorMuid);
}

New Type: CoreMidi.MidiCIDeviceInfo

public class MidiCIDeviceInfo : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MidiCIDeviceInfo (Foundation.NSCoder coder);
	protected MidiCIDeviceInfo (Foundation.NSObjectFlag t);
	protected MidiCIDeviceInfo (IntPtr handle);
	public MidiCIDeviceInfo (MidiEndpoint midiDestination, Foundation.NSData manufacturer, Foundation.NSData family, Foundation.NSData modelNumber, Foundation.NSData revisionLevel);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSData Family { get; }
	public virtual Foundation.NSData ManufacturerId { get; }
	public virtual Foundation.NSData ModelNumber { get; }
	public virtual Foundation.NSData RevisionLevel { get; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public MidiEndpoint GetMidiDestination ();
}

New Type: CoreMidi.MidiCIDiscoveredNode

public class MidiCIDiscoveredNode : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MidiCIDiscoveredNode (Foundation.NSCoder coder);
	protected MidiCIDiscoveredNode (Foundation.NSObjectFlag t);
	protected MidiCIDiscoveredNode (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual MidiCIDeviceInfo DeviceInfo { get; }
	public virtual ulong MaximumSysExSize { get; }
	public virtual bool SupportsProfiles { get; }
	public virtual bool SupportsProperties { get; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public MidiEndpoint GetDestination ();
}

New Type: CoreMidi.MidiCIDiscoveryManager

public class MidiCIDiscoveryManager : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MidiCIDiscoveryManager (Foundation.NSObjectFlag t);
	protected MidiCIDiscoveryManager (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static MidiCIDiscoveryManager SharedInstance { get; }
	// methods
	public virtual void Discover (MidiCIDiscoveryResponseDelegate completedHandler);
}

New Type: CoreMidi.MidiCIDiscoveryResponseDelegate

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

New Type: CoreMidi.MidiCIProfileResponderDelegate

public abstract class MidiCIProfileResponderDelegate : Foundation.NSObject, IMidiCIProfileResponderDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MidiCIProfileResponderDelegate ();
	protected MidiCIProfileResponderDelegate (Foundation.NSObjectFlag t);
	protected MidiCIProfileResponderDelegate (IntPtr handle);
	// methods
	public virtual bool ConnectInitiator (Foundation.NSNumber initiatorMuid, MidiCIDeviceInfo deviceInfo);
	public virtual void HandleData (MidiCIProfile profile, byte channel, Foundation.NSData inData);
	public virtual void InitiatorDisconnected (Foundation.NSNumber initiatorMuid);
	public virtual bool WillSetProfile (MidiCIProfile profile, byte channel, bool shouldEnable);
}

New Type: CoreMidi.MidiCIProfileResponderDelegate_Extensions

public static class MidiCIProfileResponderDelegate_Extensions {
	// methods
	public static void HandleData (this IMidiCIProfileResponderDelegate This, MidiCIProfile profile, byte channel, Foundation.NSData inData);
	public static bool WillSetProfile (this IMidiCIProfileResponderDelegate This, MidiCIProfile profile, byte channel, bool shouldEnable);
}

New Type: CoreMidi.MidiCIProfileSpecificDataHandler

public sealed delegate MidiCIProfileSpecificDataHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public MidiCIProfileSpecificDataHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (MidiCISession session, byte channel, MidiCIProfile profile, Foundation.NSData data, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (MidiCISession session, byte channel, MidiCIProfile profile, Foundation.NSData data);
}

New Type: CoreMidi.MidiCIResponder

public class MidiCIResponder : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MidiCIResponder (Foundation.NSObjectFlag t);
	protected MidiCIResponder (IntPtr handle);
	public MidiCIResponder (MidiCIDeviceInfo deviceInfo, IMidiCIProfileResponderDelegate delegate, MidiCIProfileState[] profileList, bool propertiesSupported);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual MidiCIDeviceInfo DeviceInfo { get; }
	public virtual int[] Initiators { get; }
	public IMidiCIProfileResponderDelegate ProfileDelegate { get; }
	public virtual Foundation.NSObject WeakProfileDelegate { get; }
	// methods
	public virtual bool NotifyProfile (MidiCIProfile profile, byte channel, bool enabledState);
	public virtual bool SendProfile (MidiCIProfile profile, byte channel, Foundation.NSData profileSpecificData);
	public virtual bool Start ();
	public virtual void Stop ();
}

New Type: CoreMidi.MidiCISessionDisconnectHandler

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

New Type: CoreMidi.MidiCVStatus

[Serializable]
public enum MidiCVStatus {
	AssignableControl = 3,
	AssignablePnc = 1,
	ChannelPressure = 13,
	ControlChange = 11,
	NoteOff = 8,
	NoteOn = 9,
	PerNoteMgmt = 15,
	PerNotePitchBend = 6,
	PitchBend = 14,
	PolyPressure = 10,
	ProgramChange = 12,
	RegisteredControl = 2,
	RegisteredPnc = 0,
	RelAssignableControl = 5,
	RelRegisteredControl = 4,
}

New Type: CoreMidi.MidiMessageType

[Serializable]
public enum MidiMessageType {
	ChannelVoice1 = 2,
	ChannelVoice2 = 4,
	Data128 = 5,
	SysEx = 3,
	System = 1,
	Utility = 0,
}

New Type: CoreMidi.MidiProtocolId

[Serializable]
public enum MidiProtocolId {
	Protocol_1_0 = 1,
	Protocol_2_0 = 2,
}

New Type: CoreMidi.MidiSysExStatus

[Serializable]
public enum MidiSysExStatus {
	Complete = 0,
	Continue = 2,
	End = 3,
	Start = 1,
}

New Type: CoreMidi.MidiSystemStatus

[Serializable]
public enum MidiSystemStatus {
	ActiveSending = 254,
	Continue = 251,
	EndOfExclusive = 247,
	Mtc = 241,
	SongPosPointer = 242,
	SongSelect = 243,
	Start = 250,
	StartOfExclusive = 240,
	Stop = 252,
	SystemReset = 255,
	TimingClock = 248,
	TuneRequest = 246,
}

Namespace CoreMotion

Type Changed: CoreMotion.CMDeviceMotion

Added property:

public virtual CMDeviceMotionSensorLocation SensorLocation { get; }

Type Changed: CoreMotion.CMError

Added values:

NilData = 112,
Size = 113,

New Type: CoreMotion.CMDeviceMotionSensorLocation

[Serializable]
public enum CMDeviceMotionSensorLocation {
	Default = 0,
	HeadphoneLeft = 1,
	HeadphoneRight = 2,
}

Namespace CoreServices

Type Changed: CoreServices.FSEventStreamCreateFlags

Added value:

FullHistory = 128,

Namespace CoreSpotlight

Type Changed: CoreSpotlight.CSSearchableItemAttributeSet

Added constructor:

public CSSearchableItemAttributeSet (UniformTypeIdentifiers.UTType contentType);

Namespace CoreText

Type Changed: CoreText.CTFont

Added method:

public string GetGlyphName (ushort glyph);

Type Changed: CoreText.CTFontManagerError

Added value:

UnsupportedScope = 307,

Type Changed: CoreText.CTFontOptions

Obsoleted fields:

 [Obsolete ("This API is not available on this platform.")]
 IncludeDisabled = 128,

Type Changed: CoreText.CTFrameProgression

Added value:

LeftToRight = 2,

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 CoreWlan

Type Changed: CoreWlan.CWSecurity

Modified fields:

-Unknown = 2147483647
+Unknown = 9223372036854775807

Namespace DeviceCheck

Type Changed: DeviceCheck.DCError

Added values:

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

Namespace FileProvider

Type Changed: FileProvider.NSFileProviderItemCapabilities

Obsoleted fields:

 [Obsolete ("This enum value is not constant across OS and versions.")]
 All = 127,

Modified fields:

-All = 63
+All = 127

Added value:

Evicting = 64,

Type Changed: FileProvider.NSFileProviderItem_Extensions

Obsoleted methods:

 [Obsolete ("This API was removed from macOS in Xcode 12.2 beta 2")]
 public static Foundation.NSNumber GetFavoriteRank (this INSFileProviderItem This);

Added methods:

public static UniformTypeIdentifiers.UTType GetContentType (this INSFileProviderItem This);
public static Foundation.NSDictionary<Foundation.NSString,Foundation.NSData> GetExtendedAttributes (this INSFileProviderItem This);
public static NSFileProviderFileSystemFlags GetFileSystemFlags (this INSFileProviderItem This);
public static NSFileProviderItemVersion GetItemVersion (this INSFileProviderItem This);
public static string GetSymlinkTargetPath (this INSFileProviderItem This);

New Type: FileProvider.INSFileProviderCustomAction

public interface INSFileProviderCustomAction : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual Foundation.NSProgress PerformAction (string actionIdentifier, string[] itemIdentifiers, System.Action<Foundation.NSError> completionHandler);
}

New Type: FileProvider.INSFileProviderEnumerating

public interface INSFileProviderEnumerating : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual INSFileProviderEnumerator GetEnumerator (string containerItemIdentifier, NSFileProviderRequest request, out Foundation.NSError error);
}

New Type: FileProvider.INSFileProviderIncrementalContentFetching

public interface INSFileProviderIncrementalContentFetching : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual Foundation.NSProgress FetchContents (string itemIdentifier, NSFileProviderItemVersion requestedVersion, Foundation.NSUrl existingContents, NSFileProviderItemVersion existingVersion, NSFileProviderRequest request, NSFileProviderFetchContentsCompletionHandler completionHandler);
}

New Type: FileProvider.INSFileProviderReplicatedExtension

public interface INSFileProviderReplicatedExtension : INSFileProviderEnumerating, ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual Foundation.NSProgress CreateItem (INSFileProviderItem itemTemplate, NSFileProviderItemFields fields, Foundation.NSUrl url, NSFileProviderCreateItemOptions options, NSFileProviderRequest request, NSFileProviderCreateOrModifyItemCompletionHandler completionHandler);
	public virtual Foundation.NSProgress DeleteItem (string identifier, NSFileProviderItemVersion version, NSFileProviderDeleteItemOptions options, NSFileProviderRequest request, System.Action<Foundation.NSError> completionHandler);
	public virtual Foundation.NSProgress FetchContents (string itemIdentifier, NSFileProviderItemVersion requestedVersion, NSFileProviderRequest request, NSFileProviderFetchContentsCompletionHandler completionHandler);
	public virtual Foundation.NSProgress GetItem (string identifier, NSFileProviderRequest request, System.Action<INSFileProviderItem,Foundation.NSError> completionHandler);
	public virtual void Invalidate ();
	public virtual Foundation.NSProgress ModifyItem (INSFileProviderItem item, NSFileProviderItemVersion version, NSFileProviderItemFields changedFields, Foundation.NSUrl newContents, NSFileProviderModifyItemOptions options, NSFileProviderRequest request, NSFileProviderCreateOrModifyItemCompletionHandler completionHandler);
}

New Type: FileProvider.INSFileProviderServiceSource

public interface INSFileProviderServiceSource : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual string ServiceName { get; }
	// methods
	public virtual Foundation.NSXpcListenerEndpoint MakeListenerEndpoint (out Foundation.NSError error);
}

New Type: FileProvider.INSFileProviderServicing

public interface INSFileProviderServicing : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual Foundation.NSProgress GetSupportedServiceSources (string itemIdentifier, System.Action<INSFileProviderServiceSource[],Foundation.NSError> completionHandler);
}

New Type: FileProvider.INSFileProviderThumbnailing

public interface INSFileProviderThumbnailing : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual Foundation.NSProgress FetchThumbnails (string[] itemIdentifiers, CoreGraphics.CGSize size, NSFileProviderPerThumbnailCompletionHandler perThumbnailCompletionHandler, System.Action<Foundation.NSError> completionHandler);
}

New Type: FileProvider.NSFileProviderChangeObserver_Extensions

public static class NSFileProviderChangeObserver_Extensions {
	// methods
	public static nint GetSuggestedBatchSize (this INSFileProviderChangeObserver This);
}

New Type: FileProvider.NSFileProviderCreateItemOptions

[Serializable]
[Flags]
public enum NSFileProviderCreateItemOptions {
	MayAlreadyExist = 1,
	None = 0,
}

New Type: FileProvider.NSFileProviderCreateOrModifyItemCompletionHandler

public sealed delegate NSFileProviderCreateOrModifyItemCompletionHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public NSFileProviderCreateOrModifyItemCompletionHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (INSFileProviderItem item, NSFileProviderItemFields stillPendingFields, bool shouldFetchContent, Foundation.NSError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (INSFileProviderItem item, NSFileProviderItemFields stillPendingFields, bool shouldFetchContent, Foundation.NSError error);
}

New Type: FileProvider.NSFileProviderDeleteItemOptions

[Serializable]
[Flags]
public enum NSFileProviderDeleteItemOptions {
	None = 0,
	Recursive = 1,
}

New Type: FileProvider.NSFileProviderDomain

public class NSFileProviderDomain : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NSFileProviderDomain (Foundation.NSObjectFlag t);
	protected NSFileProviderDomain (IntPtr handle);
	public NSFileProviderDomain (string identifier, string displayName);
	// properties
	public override IntPtr ClassHandle { get; }
	public static Foundation.NSString DidChange { get; }
	public virtual bool Disconnected { get; }
	public virtual string DisplayName { get; }
	public virtual bool Hidden { get; set; }
	public virtual string Identifier { get; }
	public virtual bool UserEnabled { 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: FileProvider.NSFileProviderEnumerationObserver_Extensions

public static class NSFileProviderEnumerationObserver_Extensions {
	// methods
	public static nint GetSuggestedPageSize (this INSFileProviderEnumerationObserver This);
}

New Type: FileProvider.NSFileProviderError

[Serializable]
public enum NSFileProviderError {
	CannotSynchronize = -2005,
	DirectoryNotEmpty = -1007,
	FilenameCollision = -1001,
	InsufficientQuota = -1003,
	NewerExtensionVersionFound = -2004,
	NoSuchItem = -1005,
	NotAuthenticated = -1000,
	OlderExtensionVersionRunning = -2003,
	PageExpired = -1002,
	ProviderNotFound = -2001,
	ProviderTranslocated = -2002,
	ServerUnreachable = -1004,
	SyncAnchorExpired = -1002,
	VersionOutOfDate = -1006,
}

New Type: FileProvider.NSFileProviderErrorExtensions

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

New Type: FileProvider.NSFileProviderErrorKeys

public static class NSFileProviderErrorKeys {
	// properties
	public static Foundation.NSString ItemKey { get; }
	public static Foundation.NSString NonExistentItemIdentifierKey { get; }
}

New Type: FileProvider.NSFileProviderFavoriteRank

public static class NSFileProviderFavoriteRank {
	// properties
	public static ulong Unranked { get; }
}

New Type: FileProvider.NSFileProviderFetchContentsCompletionHandler

public sealed delegate NSFileProviderFetchContentsCompletionHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public NSFileProviderFetchContentsCompletionHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (Foundation.NSUrl fileContents, INSFileProviderItem item, Foundation.NSError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (Foundation.NSUrl fileContents, INSFileProviderItem item, Foundation.NSError error);
}

New Type: FileProvider.NSFileProviderFileSystemFlags

[Serializable]
[Flags]
public enum NSFileProviderFileSystemFlags {
	Hidden = 8,
	PathExtensionHidden = 16,
	UserExecutable = 1,
	UserReadable = 2,
	UserWritable = 4,
}

New Type: FileProvider.NSFileProviderGetIdentifierHandler

public sealed delegate NSFileProviderGetIdentifierHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public NSFileProviderGetIdentifierHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (Foundation.NSString itemIdentifier, Foundation.NSString domainIdentifier, Foundation.NSError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (Foundation.NSString itemIdentifier, Foundation.NSString domainIdentifier, Foundation.NSError error);
}

New Type: FileProvider.NSFileProviderGetIdentifierResult

public class NSFileProviderGetIdentifierResult {
	// constructors
	public NSFileProviderGetIdentifierResult (Foundation.NSString itemIdentifier, Foundation.NSString domainIdentifier);
	// properties
	public Foundation.NSString DomainIdentifier { get; set; }
	public Foundation.NSString ItemIdentifier { get; set; }
}

New Type: FileProvider.NSFileProviderItemFields

[Serializable]
[Flags]
public enum NSFileProviderItemFields {
	ContentModificationDate = 128,
	Contents = 1,
	CreationDate = 64,
	ExtendedAttributes = 512,
	FavoriteRank = 32,
	FileSystemFlags = 256,
	Filename = 2,
	LastUsedDate = 8,
	ParentItemIdentifier = 4,
	TagData = 16,
}

New Type: FileProvider.NSFileProviderItemIdentifier

public static class NSFileProviderItemIdentifier {
	// properties
	public static Foundation.NSString RootContainer { get; }
	public static Foundation.NSString TrashContainer { get; }
	public static Foundation.NSString WorkingSetContainer { get; }
}

New Type: FileProvider.NSFileProviderItemVersion

public class NSFileProviderItemVersion : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSFileProviderItemVersion ();
	protected NSFileProviderItemVersion (Foundation.NSObjectFlag t);
	protected NSFileProviderItemVersion (IntPtr handle);
	public NSFileProviderItemVersion (Foundation.NSData contentVersion, Foundation.NSData metadataVersion);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSData ContentVersion { get; }
	public virtual Foundation.NSData MetadataVersion { get; }
}

New Type: FileProvider.NSFileProviderManager

public class NSFileProviderManager : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NSFileProviderManager (Foundation.NSObjectFlag t);
	protected NSFileProviderManager (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public static void AddDomain (NSFileProviderDomain domain, System.Action<Foundation.NSError> completionHandler);
	public static System.Threading.Tasks.Task AddDomainAsync (NSFileProviderDomain domain);
	public virtual void Disconnect (string localizedReason, NSFileProviderManagerDisconnectionOptions options, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task DisconnectAsync (string localizedReason, NSFileProviderManagerDisconnectionOptions options);
	public virtual void EvictItem (Foundation.NSString itemIdentifier, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task EvictItemAsync (Foundation.NSString itemIdentifier);
	public static NSFileProviderManager FromDomain (NSFileProviderDomain domain);
	public static void GetDomains (System.Action<NSFileProviderDomain[],Foundation.NSError> completionHandler);
	public static System.Threading.Tasks.Task<NSFileProviderDomain[]> GetDomainsAsync ();
	public static void GetIdentifierForUserVisibleFile (Foundation.NSUrl url, NSFileProviderGetIdentifierHandler completionHandler);
	public static System.Threading.Tasks.Task<NSFileProviderGetIdentifierResult> GetIdentifierForUserVisibleFileAsync (Foundation.NSUrl url);
	public virtual INSFileProviderEnumerator GetMaterializedItemsEnumerator ();
	public virtual Foundation.NSUrl GetTemporaryDirectoryUrl (out Foundation.NSError error);
	public virtual void GetUserVisibleUrl (Foundation.NSString itemIdentifier, System.Action<Foundation.NSUrl,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<Foundation.NSUrl> GetUserVisibleUrlAsync (Foundation.NSString itemIdentifier);
	public static void Import (NSFileProviderDomain domain, Foundation.NSUrl url, System.Action<Foundation.NSError> completionHandler);
	public static System.Threading.Tasks.Task ImportAsync (NSFileProviderDomain domain, Foundation.NSUrl url);
	public virtual void Reconnect (System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task ReconnectAsync ();
	public virtual void Register (Foundation.NSUrlSessionTask task, string identifier, System.Action<Foundation.NSError> completion);
	public virtual void ReimportItemsBelowItem (Foundation.NSString itemIdentifier, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task ReimportItemsBelowItemAsync (Foundation.NSString itemIdentifier);
	public static void RemoveAllDomains (System.Action<Foundation.NSError> completionHandler);
	public static System.Threading.Tasks.Task RemoveAllDomainsAsync ();
	public static void RemoveDomain (NSFileProviderDomain domain, System.Action<Foundation.NSError> completionHandler);
	public static System.Threading.Tasks.Task RemoveDomainAsync (NSFileProviderDomain domain);
	public virtual void SignalEnumerator (string containerItemIdentifier, System.Action<Foundation.NSError> completion);
	public virtual void SignalErrorResolved (Foundation.NSError error, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task SignalErrorResolvedAsync (Foundation.NSError error);
	public virtual void WaitForChangesOnItemsBelowItem (string itemIdentifier, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task WaitForChangesOnItemsBelowItemAsync (string itemIdentifier);
	public virtual void WaitForStabilization (System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task WaitForStabilizationAsync ();
}

New Type: FileProvider.NSFileProviderManagerDisconnectionOptions

[Serializable]
[Flags]
public enum NSFileProviderManagerDisconnectionOptions {
	None = 0,
	Temporary = 1,
}

New Type: FileProvider.NSFileProviderModifyItemOptions

[Serializable]
[Flags]
public enum NSFileProviderModifyItemOptions {
	MayAlreadyExist = 1,
	None = 0,
}

New Type: FileProvider.NSFileProviderPage

public static class NSFileProviderPage {
	// properties
	public static Foundation.NSData InitialPageSortedByDate { get; }
	public static Foundation.NSData InitialPageSortedByName { get; }
}

New Type: FileProvider.NSFileProviderPerThumbnailCompletionHandler

public sealed delegate NSFileProviderPerThumbnailCompletionHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public NSFileProviderPerThumbnailCompletionHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (Foundation.NSString identifier, Foundation.NSData imageData, Foundation.NSError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (Foundation.NSString identifier, Foundation.NSData imageData, Foundation.NSError error);
}

New Type: FileProvider.NSFileProviderReplicatedExtension_Extensions

public static class NSFileProviderReplicatedExtension_Extensions {
	// methods
	public static void ImportDidFinish (this INSFileProviderReplicatedExtension This, System.Action completionHandler);
	public static void MaterializedItemsDidChange (this INSFileProviderReplicatedExtension This, System.Action completionHandler);
}

New Type: FileProvider.NSFileProviderRequest

public class NSFileProviderRequest : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSFileProviderRequest ();
	protected NSFileProviderRequest (Foundation.NSObjectFlag t);
	protected NSFileProviderRequest (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool IsFileViewerRequest { get; }
	public virtual bool IsSystemRequest { get; }
	public virtual Foundation.NSUrl RequestingExecutable { get; }
}

Namespace Foundation

Type Changed: Foundation.NSActivityOptions

Added value:

InitiatedAllowingIdleSystemSleep = 15728639,

Type Changed: Foundation.NSBundleExecutableArchitecture

Added value:

ARM64 = 16777228,

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.NSDataReadingOptions

Obsoleted fields:

 [Obsolete ("This option is unavailable.")]
 Coordinated = 4,

Type Changed: Foundation.NSDateFormatterBehavior

Added value:

Mode_10_0 = 1000,

Type Changed: Foundation.NSDirectoryEnumerationOptions

Obsoleted fields:

 [Obsolete ("Use 'None' instead.")]
 SkipsNone = 0,

Added value:

None = 0,

Type Changed: Foundation.NSError

Obsoleted methods:

 [Obsolete ("This API has been removed.")]
 public static NSError GetFileProviderErrorForOutOfDateItem (FileProvider.INSFileProviderItem updatedVersion);

Added method:

public static NSError GetFileProviderErrorForRejectedDeletion (FileProvider.INSFileProviderItem updatedVersion);

Type Changed: Foundation.NSFileCoordinatorWritingOptions

Added value:

ContentIndependentMetadataOnly = 16,

Type Changed: Foundation.NSFileManager

Added properties:

public static NSString FileProtectionComplete { get; }
public static NSString FileProtectionCompleteUnlessOpen { get; }
public static NSString FileProtectionCompleteUntilFirstUserAuthentication { get; }
public static NSString FileProtectionKey { get; }
public static NSString FileProtectionNone { get; }

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.NSNumberFormatterStyle

Added values:

CurrencyAccountingStyle = 10,
CurrencyIsoCodeStyle = 8,
CurrencyPluralStyle = 9,
OrdinalStyle = 6,

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 FileProtectionComplete { get; }
public static NSString FileProtectionCompleteUnlessOpen { get; }
public static NSString FileProtectionCompleteUntilFirstUserAuthentication { get; }
public static NSString FileProtectionKey { get; }
public static NSString FileProtectionNone { 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; }

Type Changed: Foundation.NSUserActivity

Added properties:

public virtual string[] ContextIdentifierPath { get; }
public virtual bool IsClassKitDeepLink { 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; }
public virtual string UnmappedLocalizedName { get; set; }
public virtual string UnmappedSfSymbolsName { 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; }
}

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.GKError

Added values:

ApiObsolete = 34,
ConnectionTimeout = 33,
NotAuthorized = 32,

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);

Type Changed: GameKit.GKGameCenterViewControllerState

Added values:

Dashboard = 4,
LocalPlayerProfile = 3,

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.GKPeerConnectionState

Added value:

ConnectedRelay = 5,

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 CoreGraphics.CGRect FrameInScreenCoordinates { get; }
	public virtual bool IsPresentingGameCenter { get; }
	public virtual GKAccessPointLocation Location { get; set; }
	public virtual AppKit.NSWindow 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 AppKit.NSViewController 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 AppKit.NSViewController 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 ImageIO

Type Changed: ImageIO.CGImageAuxiliaryDataType

Added values:

SemanticSegmentationGlassesMatte = 6,
TypeHdrGainMap = 7,

Type Changed: ImageIO.CGImageDestinationOptions

Added properties:

public bool? PreserveGainMap { get; set; }
public Foundation.NSDictionary TgaDictionary { get; set; }
public Foundation.NSDictionary WebPDictionary { get; set; }

Type Changed: ImageIO.CGImageDestinationOptionsKeys

Added properties:

public static Foundation.NSString PreserveGainMapKey { get; }
public static Foundation.NSString TgaDictionary { get; }
public static Foundation.NSString WebPDictionary { get; }

Type Changed: ImageIO.CGImageProperties

Added properties:

public static Foundation.NSString TgaCompression { get; }
public static Foundation.NSString TgaDictionary { 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.CGImagePropertyTgaCompression

[Serializable]
public enum CGImagePropertyTgaCompression {
	None = 0,
	Rle = 1,
}

Namespace Intents

Type Changed: Intents.INIntent

Added property:

public virtual string SuggestedInvocationPhrase { get; set; }

Type Changed: Intents.INIntentIdentifier

Added value:

StartCall = 25,

Type Changed: Intents.INIntentResolutionResult

Added methods:

public static INIntentResolutionResult GetConfirmationRequired (Foundation.NSObject itemToConfirm, nint reason);
public static INIntentResolutionResult GetUnsupported (nint reason);

Type Changed: Intents.INPerson

Added constructor:

public INPerson (INPersonHandle personHandle, Foundation.NSPersonNameComponents nameComponents, string displayName, INImage image, string contactIdentifier, string customIdentifier, string relationship);

Type Changed: Intents.INPersonHandleLabel

Added value:

School = 10,

New Type: Intents.IINIntentHandlerProviding

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

New Type: Intents.INAirline

public class INAirline : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INAirline (Foundation.NSCoder coder);
	protected INAirline (Foundation.NSObjectFlag t);
	protected INAirline (IntPtr handle);
	public INAirline (string name, string iataCode, string icaoCode);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string IataCode { get; }
	public virtual string IcaoCode { get; }
	public virtual string Name { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Intents.INAirport

public class INAirport : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INAirport (Foundation.NSCoder coder);
	protected INAirport (Foundation.NSObjectFlag t);
	protected INAirport (IntPtr handle);
	public INAirport (string name, string iataCode, string icaoCode);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string IataCode { get; }
	public virtual string IcaoCode { get; }
	public virtual string Name { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Intents.INAirportGate

public class INAirportGate : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INAirportGate (Foundation.NSCoder coder);
	protected INAirportGate (Foundation.NSObjectFlag t);
	protected INAirportGate (IntPtr handle);
	public INAirportGate (INAirport airport, string terminal, string gate);
	// properties
	public virtual INAirport Airport { get; }
	public override IntPtr ClassHandle { get; }
	public virtual string Gate { get; }
	public virtual string Terminal { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Intents.INBoatReservation

public class INBoatReservation : Intents.INReservation, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INBoatReservation (Foundation.NSCoder coder);
	protected INBoatReservation (Foundation.NSObjectFlag t);
	protected INBoatReservation (IntPtr handle);
	public INBoatReservation (INSpeakableString itemReference, string reservationNumber, Foundation.NSDate bookingTime, INReservationStatus reservationStatus, string reservationHolderName, INReservationAction[] actions, Foundation.NSUrl url, INSeat reservedSeat, INBoatTrip boatTrip);
	// properties
	public virtual INBoatTrip BoatTrip { get; }
	public override IntPtr ClassHandle { get; }
	public virtual INSeat ReservedSeat { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Intents.INBoatTrip

public class INBoatTrip : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INBoatTrip (Foundation.NSCoder coder);
	protected INBoatTrip (Foundation.NSObjectFlag t);
	protected INBoatTrip (IntPtr handle);
	public INBoatTrip (string provider, string boatName, string boatNumber, INDateComponentsRange tripDuration, CoreLocation.CLPlacemark departureBoatTerminalLocation, CoreLocation.CLPlacemark arrivalBoatTerminalLocation);
	// properties
	public virtual CoreLocation.CLPlacemark ArrivalBoatTerminalLocation { get; }
	public virtual string BoatName { get; }
	public virtual string BoatNumber { get; }
	public override IntPtr ClassHandle { get; }
	public virtual CoreLocation.CLPlacemark DepartureBoatTerminalLocation { get; }
	public virtual string Provider { get; }
	public virtual INDateComponentsRange TripDuration { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

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 GetSuccess (bool resolvedValue);
}

New Type: Intents.INBusReservation

public class INBusReservation : Intents.INReservation, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INBusReservation (Foundation.NSCoder coder);
	protected INBusReservation (Foundation.NSObjectFlag t);
	protected INBusReservation (IntPtr handle);
	public INBusReservation (INSpeakableString itemReference, string reservationNumber, Foundation.NSDate bookingTime, INReservationStatus reservationStatus, string reservationHolderName, INReservationAction[] actions, Foundation.NSUrl url, INSeat reservedSeat, INBusTrip busTrip);
	// properties
	public virtual INBusTrip BusTrip { get; }
	public override IntPtr ClassHandle { get; }
	public virtual INSeat ReservedSeat { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Intents.INBusTrip

public class INBusTrip : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INBusTrip (Foundation.NSCoder coder);
	protected INBusTrip (Foundation.NSObjectFlag t);
	protected INBusTrip (IntPtr handle);
	public INBusTrip (string provider, string busName, string busNumber, INDateComponentsRange tripDuration, CoreLocation.CLPlacemark departureBusStopLocation, string departurePlatform, CoreLocation.CLPlacemark arrivalBusStopLocation, string arrivalPlatform);
	// properties
	public virtual CoreLocation.CLPlacemark ArrivalBusStopLocation { get; }
	public virtual string ArrivalPlatform { get; }
	public virtual string BusName { get; }
	public virtual string BusNumber { get; }
	public override IntPtr ClassHandle { get; }
	public virtual CoreLocation.CLPlacemark DepartureBusStopLocation { get; }
	public virtual string DeparturePlatform { get; }
	public virtual string Provider { get; }
	public virtual INDateComponentsRange TripDuration { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Intents.INDateComponentsResolutionResult

public class INDateComponentsResolutionResult : Intents.INIntentResolutionResult, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected INDateComponentsResolutionResult (Foundation.NSObjectFlag t);
	protected INDateComponentsResolutionResult (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static INDateComponentsResolutionResult NeedsValue { get; }
	public static INDateComponentsResolutionResult NotRequired { get; }
	public static INDateComponentsResolutionResult Unsupported { get; }
	// methods
	public static INDateComponentsResolutionResult GetConfirmationRequired (Foundation.NSDateComponents componentsToConfirm);
	public static INDateComponentsResolutionResult GetDisambiguation (Foundation.NSDateComponents[] componentsToDisambiguate);
	public static INDateComponentsResolutionResult GetSuccess (Foundation.NSDateComponents resolvedDateComponents);
}

New Type: Intents.INEnergyResolutionResult

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

New Type: Intents.INEnumResolutionResult

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

public class INFile : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INFile (Foundation.NSCoder coder);
	protected INFile (Foundation.NSObjectFlag t);
	protected INFile (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSData Data { get; }
	public virtual Foundation.NSUrl FileUrl { get; }
	public virtual string Filename { get; set; }
	public virtual string TypeIdentifier { get; }
	// methods
	public static INFile Create (Foundation.NSData data, string filename, string typeIdentifier);
	public static INFile Create (Foundation.NSUrl fileUrl, string filename, string typeIdentifier);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Intents.INFileResolutionResult

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

New Type: Intents.INFlight

public class INFlight : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INFlight (Foundation.NSCoder coder);
	protected INFlight (Foundation.NSObjectFlag t);
	protected INFlight (IntPtr handle);
	public INFlight (INAirline airline, string flightNumber, INDateComponentsRange boardingTime, INDateComponentsRange flightDuration, INAirportGate departureAirportGate, INAirportGate arrivalAirportGate);
	// properties
	public virtual INAirline Airline { get; }
	public virtual INAirportGate ArrivalAirportGate { get; }
	public virtual INDateComponentsRange BoardingTime { get; }
	public override IntPtr ClassHandle { get; }
	public virtual INAirportGate DepartureAirportGate { get; }
	public virtual INDateComponentsRange FlightDuration { get; }
	public virtual string FlightNumber { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Intents.INFlightReservation

public class INFlightReservation : Intents.INReservation, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INFlightReservation (Foundation.NSCoder coder);
	protected INFlightReservation (Foundation.NSObjectFlag t);
	protected INFlightReservation (IntPtr handle);
	public INFlightReservation (INSpeakableString itemReference, string reservationNumber, Foundation.NSDate bookingTime, INReservationStatus reservationStatus, string reservationHolderName, INReservationAction[] actions, INSeat reservedSeat, INFlight flight);
	public INFlightReservation (INSpeakableString itemReference, string reservationNumber, Foundation.NSDate bookingTime, INReservationStatus reservationStatus, string reservationHolderName, INReservationAction[] actions, Foundation.NSUrl url, INSeat reservedSeat, INFlight flight);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual INFlight Flight { get; }
	public virtual INSeat ReservedSeat { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Intents.INGetReservationDetailsIntent

public class INGetReservationDetailsIntent : Intents.INIntent, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INGetReservationDetailsIntent (Foundation.NSCoder coder);
	protected INGetReservationDetailsIntent (Foundation.NSObjectFlag t);
	protected INGetReservationDetailsIntent (IntPtr handle);
	public INGetReservationDetailsIntent (INSpeakableString reservationContainerReference, INSpeakableString[] reservationItemReferences);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual INSpeakableString ReservationContainerReference { get; }
	public virtual INSpeakableString[] ReservationItemReferences { get; }
}

New Type: Intents.INGetReservationDetailsIntentResponse

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

New Type: Intents.INGetReservationDetailsIntentResponseCode

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

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.INLengthResolutionResult

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

New Type: Intents.INLodgingReservation

public class INLodgingReservation : Intents.INReservation, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INLodgingReservation (Foundation.NSCoder coder);
	protected INLodgingReservation (Foundation.NSObjectFlag t);
	protected INLodgingReservation (IntPtr handle);
	public INLodgingReservation (INSpeakableString itemReference, string reservationNumber, Foundation.NSDate bookingTime, INReservationStatus reservationStatus, string reservationHolderName, INReservationAction[] actions, CoreLocation.CLPlacemark lodgingBusinessLocation, INDateComponentsRange reservationDuration, int? numberOfAdults, int? numberOfChildren);
	public INLodgingReservation (INSpeakableString itemReference, string reservationNumber, Foundation.NSDate bookingTime, INReservationStatus reservationStatus, string reservationHolderName, INReservationAction[] actions, Foundation.NSUrl url, CoreLocation.CLPlacemark lodgingBusinessLocation, INDateComponentsRange reservationDuration, int? numberOfAdults, int? numberOfChildren);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual CoreLocation.CLPlacemark LodgingBusinessLocation { get; }
	public virtual int? NumberOfAdults { get; }
	public virtual int? NumberOfChildren { get; }
	public virtual INDateComponentsRange ReservationDuration { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Intents.INMassResolutionResult

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

New Type: Intents.INObject

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

New Type: Intents.INObjectCollection`1

public class INObjectCollection`1 : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INObjectCollection`1 (Foundation.NSCoder coder);
	protected INObjectCollection`1 (Foundation.NSObjectFlag t);
	public INObjectCollection`1 (Intents.INObjectSection<ObjectType>[] sections);
	public INObjectCollection`1 (ObjectType[] items);
	protected INObjectCollection`1 (IntPtr handle);
	// properties
	public virtual ObjectType[] AllItems { get; }
	public override IntPtr ClassHandle { get; }
	public virtual Intents.INObjectSection<ObjectType>[] Sections { get; }
	public virtual bool UsesIndexedCollation { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Intents.INObjectResolutionResult

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

New Type: Intents.INObjectSection`1

public class INObjectSection`1 : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INObjectSection`1 (Foundation.NSCoder coder);
	protected INObjectSection`1 (Foundation.NSObjectFlag t);
	protected INObjectSection`1 (IntPtr handle);
	public INObjectSection`1 (string title, ObjectType[] items);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual ObjectType[] Items { get; }
	public virtual string Title { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Intents.INPaymentMethod

public class INPaymentMethod : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INPaymentMethod (Foundation.NSCoder coder);
	protected INPaymentMethod (Foundation.NSObjectFlag t);
	protected INPaymentMethod (IntPtr handle);
	public INPaymentMethod (INPaymentMethodType type, string name, string identificationHint, INImage icon);
	// properties
	public static INPaymentMethod ApplePayPaymentMethod { get; }
	public override IntPtr ClassHandle { get; }
	public virtual INImage Icon { get; }
	public virtual string IdentificationHint { get; }
	public virtual string Name { get; }
	public virtual INPaymentMethodType Type { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Intents.INPaymentMethodResolutionResult

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

New Type: Intents.INPaymentMethodType

[Serializable]
public enum INPaymentMethodType {
	ApplePay = 8,
	Brokerage = 3,
	Checking = 1,
	Credit = 5,
	Debit = 4,
	Prepaid = 6,
	Savings = 2,
	Store = 7,
	Unknown = 0,
}

New Type: Intents.INRentalCar

public class INRentalCar : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INRentalCar (Foundation.NSCoder coder);
	protected INRentalCar (Foundation.NSObjectFlag t);
	protected INRentalCar (IntPtr handle);
	public INRentalCar (string rentalCompanyName, string type, string make, string model, string rentalCarDescription);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string Make { get; }
	public virtual string Model { get; }
	public virtual string RentalCarDescription { get; }
	public virtual string RentalCompanyName { get; }
	public virtual string Type { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Intents.INRentalCarReservation

public class INRentalCarReservation : Intents.INReservation, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INRentalCarReservation (Foundation.NSCoder coder);
	protected INRentalCarReservation (Foundation.NSObjectFlag t);
	protected INRentalCarReservation (IntPtr handle);
	public INRentalCarReservation (INSpeakableString itemReference, string reservationNumber, Foundation.NSDate bookingTime, INReservationStatus reservationStatus, string reservationHolderName, INReservationAction[] actions, INRentalCar rentalCar, INDateComponentsRange rentalDuration, CoreLocation.CLPlacemark pickupLocation, CoreLocation.CLPlacemark dropOffLocation);
	public INRentalCarReservation (INSpeakableString itemReference, string reservationNumber, Foundation.NSDate bookingTime, INReservationStatus reservationStatus, string reservationHolderName, INReservationAction[] actions, Foundation.NSUrl url, INRentalCar rentalCar, INDateComponentsRange rentalDuration, CoreLocation.CLPlacemark pickupLocation, CoreLocation.CLPlacemark dropOffLocation);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual CoreLocation.CLPlacemark DropOffLocation { get; }
	public virtual CoreLocation.CLPlacemark PickupLocation { get; }
	public virtual INRentalCar RentalCar { get; }
	public virtual INDateComponentsRange RentalDuration { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Intents.INReservation

public class INReservation : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INReservation (Foundation.NSCoder coder);
	protected INReservation (Foundation.NSObjectFlag t);
	protected INReservation (IntPtr handle);
	// properties
	public virtual INReservationAction[] Actions { get; }
	public virtual Foundation.NSDate BookingTime { get; }
	public override IntPtr ClassHandle { get; }
	public virtual INSpeakableString ItemReference { get; }
	public virtual string ReservationHolderName { get; }
	public virtual string ReservationNumber { get; }
	public virtual INReservationStatus ReservationStatus { get; }
	public virtual Foundation.NSUrl Url { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Intents.INReservationAction

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

New Type: Intents.INReservationActionType

[Serializable]
public enum INReservationActionType {
	CheckIn = 1,
	Unknown = 0,
}

New Type: Intents.INReservationStatus

[Serializable]
public enum INReservationStatus {
	Canceled = 1,
	Confirmed = 4,
	Hold = 3,
	Pending = 2,
	Unknown = 0,
}

New Type: Intents.INRestaurantReservation

public class INRestaurantReservation : Intents.INReservation, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INRestaurantReservation (Foundation.NSCoder coder);
	protected INRestaurantReservation (Foundation.NSObjectFlag t);
	protected INRestaurantReservation (IntPtr handle);
	public INRestaurantReservation (INSpeakableString itemReference, string reservationNumber, Foundation.NSDate bookingTime, INReservationStatus reservationStatus, string reservationHolderName, INReservationAction[] actions, INDateComponentsRange reservationDuration, int? partySize, CoreLocation.CLPlacemark restaurantLocation);
	public INRestaurantReservation (INSpeakableString itemReference, string reservationNumber, Foundation.NSDate bookingTime, INReservationStatus reservationStatus, string reservationHolderName, INReservationAction[] actions, Foundation.NSUrl url, INDateComponentsRange reservationDuration, int? partySize, CoreLocation.CLPlacemark restaurantLocation);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual int? PartySize { get; }
	public virtual INDateComponentsRange ReservationDuration { get; }
	public virtual CoreLocation.CLPlacemark RestaurantLocation { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Intents.INSeat

public class INSeat : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INSeat (Foundation.NSCoder coder);
	protected INSeat (Foundation.NSObjectFlag t);
	protected INSeat (IntPtr handle);
	public INSeat (string seatSection, string seatRow, string seatNumber, string seatingType);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string SeatNumber { get; }
	public virtual string SeatRow { get; }
	public virtual string SeatSection { get; }
	public virtual string SeatingType { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Intents.INShortcut

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

New Type: Intents.INSpeedResolutionResult

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

New Type: Intents.INTemperatureResolutionResult

public class INTemperatureResolutionResult : Intents.INIntentResolutionResult, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected INTemperatureResolutionResult (Foundation.NSObjectFlag t);
	protected INTemperatureResolutionResult (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static INTemperatureResolutionResult NeedsValue { get; }
	public static INTemperatureResolutionResult NotRequired { get; }
	public static INTemperatureResolutionResult Unsupported { get; }
	// methods
	public static INTemperatureResolutionResult GetConfirmationRequired (Foundation.NSMeasurement<Foundation.NSUnitTemperature> temperatureToConfirm);
	public static INTemperatureResolutionResult GetDisambiguation (Foundation.NSMeasurement<Foundation.NSUnitTemperature>[] temperaturesToDisambiguate);
	public static INTemperatureResolutionResult GetSuccess (Foundation.NSMeasurement<Foundation.NSUnitTemperature> resolvedTemperature);
}

New Type: Intents.INTicketedEventCategory

[Serializable]
public enum INTicketedEventCategory {
	Movie = 1,
	Unknown = 0,
}

New Type: Intents.INTimeIntervalResolutionResult

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

New Type: Intents.INTrainReservation

public class INTrainReservation : Intents.INReservation, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INTrainReservation (Foundation.NSCoder coder);
	protected INTrainReservation (Foundation.NSObjectFlag t);
	protected INTrainReservation (IntPtr handle);
	public INTrainReservation (INSpeakableString itemReference, string reservationNumber, Foundation.NSDate bookingTime, INReservationStatus reservationStatus, string reservationHolderName, INReservationAction[] actions, INSeat reservedSeat, INTrainTrip trainTrip);
	public INTrainReservation (INSpeakableString itemReference, string reservationNumber, Foundation.NSDate bookingTime, INReservationStatus reservationStatus, string reservationHolderName, INReservationAction[] actions, Foundation.NSUrl url, INSeat reservedSeat, INTrainTrip trainTrip);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual INSeat ReservedSeat { get; }
	public virtual INTrainTrip TrainTrip { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Intents.INTrainTrip

public class INTrainTrip : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INTrainTrip (Foundation.NSCoder coder);
	protected INTrainTrip (Foundation.NSObjectFlag t);
	protected INTrainTrip (IntPtr handle);
	public INTrainTrip (string provider, string trainName, string trainNumber, INDateComponentsRange tripDuration, CoreLocation.CLPlacemark departureStationLocation, string departurePlatform, CoreLocation.CLPlacemark arrivalStationLocation, string arrivalPlatform);
	// properties
	public virtual string ArrivalPlatform { get; }
	public virtual CoreLocation.CLPlacemark ArrivalStationLocation { get; }
	public override IntPtr ClassHandle { get; }
	public virtual string DeparturePlatform { get; }
	public virtual CoreLocation.CLPlacemark DepartureStationLocation { get; }
	public virtual string Provider { get; }
	public virtual string TrainName { get; }
	public virtual string TrainNumber { get; }
	public virtual INDateComponentsRange TripDuration { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Intents.INUrlResolutionResult

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

New Type: Intents.INVolumeResolutionResult

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

Namespace MapKit

Type Changed: MapKit.MKAnnotationView

Added properties:

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

Type Changed: MapKit.MKAnnotationViewCollisionMode

Added value:

None = 2,

Type Changed: MapKit.MKCircleRenderer

Added properties:

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

Type Changed: MapKit.MKErrorCode

Added value:

DecodingFailed = 6,

Type Changed: MapKit.MKLocalSearch

Added constructor:

public MKLocalSearch (MKLocalPointsOfInterestRequest request);

Type Changed: MapKit.MKMapView

Added properties:

public virtual bool ShowsPitchControl { get; set; }
public virtual MKUserTrackingMode UserTrackingMode { get; set; }

Added event:

public event System.EventHandler<MMapViewUserTrackingEventArgs> DidChangeUserTrackingMode;

Added method:

public virtual void SetUserTrackingMode (MKUserTrackingMode trackingMode, bool animated);

Type Changed: MapKit.MKMapViewDelegate

Added method:

public virtual void DidChangeUserTrackingMode (MKMapView mapView, MKUserTrackingMode mode, bool animated);

Type Changed: MapKit.MKMapViewDelegate_Extensions

Added method:

public static void DidChangeUserTrackingMode (this IMKMapViewDelegate This, MKMapView mapView, MKUserTrackingMode mode, bool animated);

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.MKCompassButton

public class MKCompassButton : AppKit.NSView, AppKit.INSAccessibility, AppKit.INSAccessibilityElementProtocol, AppKit.INSAppearanceCustomization, AppKit.INSDraggingDestination, AppKit.INSTouchBarProvider, AppKit.INSUserInterfaceItemIdentification, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MKCompassButton (Foundation.NSCoder coder);
	protected MKCompassButton (Foundation.NSObjectFlag t);
	protected MKCompassButton (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual MKFeatureVisibility CompassVisibility { get; set; }
	public virtual MKMapView MapView { get; set; }
	// methods
	protected override void Dispose (bool disposing);
	public static MKCompassButton FromMapView (MKMapView mapView);
}

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 AppKit.NSColor[] Colors { get; }
	public virtual nfloat[] Locations { get; }
	// methods
	public virtual void SetColors (AppKit.NSColor[] 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.MKMarkerAnnotationView

public class MKMarkerAnnotationView : MapKit.MKAnnotationView, AppKit.INSAccessibility, AppKit.INSAccessibilityElementProtocol, AppKit.INSAppearanceCustomization, AppKit.INSDraggingDestination, AppKit.INSTouchBarProvider, AppKit.INSUserInterfaceItemIdentification, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MKMarkerAnnotationView ();
	public MKMarkerAnnotationView (Foundation.NSCoder coder);
	protected MKMarkerAnnotationView (Foundation.NSObjectFlag t);
	protected MKMarkerAnnotationView (IntPtr handle);
	public MKMarkerAnnotationView (IMKAnnotation annotation, string reuseIdentifier);
	// properties
	public virtual bool AnimatesWhenAdded { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual AppKit.NSImage GlyphImage { get; set; }
	public virtual string GlyphText { get; set; }
	public virtual AppKit.NSColor GlyphTintColor { get; set; }
	public virtual AppKit.NSColor MarkerTintColor { get; set; }
	public virtual AppKit.NSImage SelectedGlyphImage { get; set; }
	public virtual MKFeatureVisibility SubtitleVisibility { get; set; }
	public virtual MKFeatureVisibility TitleVisibility { get; set; }
}

New Type: MapKit.MKPitchControl

public class MKPitchControl : AppKit.NSView, AppKit.INSAccessibility, AppKit.INSAccessibilityElementProtocol, AppKit.INSAppearanceCustomization, AppKit.INSDraggingDestination, AppKit.INSTouchBarProvider, AppKit.INSUserInterfaceItemIdentification, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MKPitchControl (CoreGraphics.CGRect frameRect);
	public MKPitchControl (Foundation.NSCoder coder);
	protected MKPitchControl (Foundation.NSObjectFlag t);
	protected MKPitchControl (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual MKMapView MapView { get; set; }
	// methods
	public static MKPitchControl Create (MKMapView mapView);
	protected override void Dispose (bool disposing);
}

New Type: MapKit.MKUserLocationView

public class MKUserLocationView : MapKit.MKAnnotationView, AppKit.INSAccessibility, AppKit.INSAccessibilityElementProtocol, AppKit.INSAppearanceCustomization, AppKit.INSDraggingDestination, AppKit.INSTouchBarProvider, AppKit.INSUserInterfaceItemIdentification, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// 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 override IntPtr ClassHandle { get; }
}

New Type: MapKit.MKZoomControl

public class MKZoomControl : AppKit.NSView, AppKit.INSAccessibility, AppKit.INSAccessibilityElementProtocol, AppKit.INSAppearanceCustomization, AppKit.INSDraggingDestination, AppKit.INSTouchBarProvider, AppKit.INSUserInterfaceItemIdentification, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MKZoomControl (CoreGraphics.CGRect frameRect);
	public MKZoomControl (Foundation.NSCoder coder);
	protected MKZoomControl (Foundation.NSObjectFlag t);
	protected MKZoomControl (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual MKMapView MapView { get; set; }
	// methods
	public static MKZoomControl Create (MKMapView mapView);
	protected override void Dispose (bool disposing);
}

New Type: MapKit.MMapViewUserTrackingEventArgs

public class MMapViewUserTrackingEventArgs : System.EventArgs {
	// constructors
	public MMapViewUserTrackingEventArgs (MKUserTrackingMode mode, bool animated);
	// properties
	public bool Animated { get; set; }
	public MKUserTrackingMode Mode { get; set; }
}

Namespace MediaPlayer

New Type: MediaPlayer.MPMediaPlaylistProperty

public static class MPMediaPlaylistProperty {
	// properties
	public static Foundation.NSString AuthorDisplayName { get; }
	public static Foundation.NSString CloudGlobalId { get; }
	public static Foundation.NSString DescriptionText { get; }
	public static Foundation.NSString Name { get; }
	public static Foundation.NSString PersistentID { get; }
	public static Foundation.NSString PlaylistAttributes { get; }
	public static Foundation.NSString SeedItems { get; }
}

Namespace Metal

Type Changed: Metal.MTLArgumentEncoder_Extensions

Added methods:

public static void SetAccelerationStructure (this IMTLArgumentEncoder This, IMTLAccelerationStructure accelerationStructure, nuint index);
public static void SetComputePipelineState (this IMTLArgumentEncoder This, IMTLComputePipelineState pipeline, nuint index);
public static void SetComputePipelineStates (this IMTLArgumentEncoder This, IMTLComputePipelineState[] pipelines, Foundation.NSRange range);
public static void SetIntersectionFunctionTable (this IMTLArgumentEncoder This, IMTLIntersectionFunctionTable intersectionFunctionTable, nuint index);
public static void SetIntersectionFunctionTables (this IMTLArgumentEncoder This, IMTLIntersectionFunctionTable[] intersectionFunctionTables, Foundation.NSRange range);
public static void SetVisibleFunctionTable (this IMTLArgumentEncoder This, IMTLVisibleFunctionTable visibleFunctionTable, nuint index);
public static void SetVisibleFunctionTables (this IMTLArgumentEncoder This, IMTLVisibleFunctionTable[] visibleFunctionTables, Foundation.NSRange range);

Type Changed: Metal.MTLArgumentType

Added values:

InstanceAccelerationStructure = 26,
IntersectionFunctionTable = 27,
PrimitiveAccelerationStructure = 25,
VisibleFunctionTable = 24,

Type Changed: Metal.MTLBlendFactor

Added values:

OneMinusSource1Alpha = 18,
OneMinusSource1Color = 16,
Source1Alpha = 17,
Source1Color = 15,

Type Changed: Metal.MTLBlitCommandEncoder_Extensions

Added methods:

public static void GetTextureAccessCounters (this IMTLBlitCommandEncoder This, IMTLTexture texture, MTLRegion region, nuint mipLevel, nuint slice, bool resetCounters, IMTLBuffer countersBuffer, nuint countersBufferOffset);
public static void ResetTextureAccessCounters (this IMTLBlitCommandEncoder This, IMTLTexture texture, MTLRegion region, nuint mipLevel, nuint slice);

Type Changed: Metal.MTLBlitOption

Added value:

RowLinearPvrtc = 4,

Type Changed: Metal.MTLCommandBuffer_Extensions

Added methods:

public static IMTLAccelerationStructureCommandEncoder CreateAccelerationStructureCommandEncoder (this IMTLCommandBuffer This);
public static IMTLBlitCommandEncoder CreateBlitCommandEncoder (this IMTLCommandBuffer This, MTLBlitPassDescriptor blitPassDescriptor);
public static IMTLComputeCommandEncoder CreateComputeCommandEncoder (this IMTLCommandBuffer This, MTLComputePassDescriptor computePassDescriptor);
public static IMTLResourceStateCommandEncoder CreateResourceStateCommandEncoder (this IMTLCommandBuffer This, MTLResourceStatePassDescriptor resourceStatePassDescriptor);
public static MTLCommandBufferErrorOption GetErrorOptions (this IMTLCommandBuffer This);
public static IMTLLogContainer GetLogs (this IMTLCommandBuffer This);
public static IMTLResourceStateCommandEncoder GetResourceStateCommandEncoder (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 methods:

public static void ExecuteCommands (this IMTLComputeCommandEncoder This, IMTLIndirectCommandBuffer indirectCommandBuffer, Foundation.NSRange executionRange);
public static void ExecuteCommands (this IMTLComputeCommandEncoder This, IMTLIndirectCommandBuffer indirectCommandbuffer, IMTLBuffer indirectRangeBuffer, nuint indirectBufferOffset);
public static void SetAccelerationStructure (this IMTLComputeCommandEncoder This, IMTLAccelerationStructure accelerationStructure, nuint bufferIndex);
public static void SetImageblock (this IMTLComputeCommandEncoder This, nuint width, nuint height);
public static void SetIntersectionFunctionTable (this IMTLComputeCommandEncoder This, IMTLIntersectionFunctionTable intersectionFunctionTable, nuint bufferIndex);
public static void SetIntersectionFunctionTables (this IMTLComputeCommandEncoder This, IMTLIntersectionFunctionTable[] intersectionFunctionTables, Foundation.NSRange range);
public static void SetVisibleFunctionTable (this IMTLComputeCommandEncoder This, IMTLVisibleFunctionTable visibleFunctionTable, nuint bufferIndex);
public static void SetVisibleFunctionTables (this IMTLComputeCommandEncoder This, IMTLVisibleFunctionTable[] visibleFunctionTables, Foundation.NSRange range);

Type Changed: Metal.MTLComputePipelineDescriptor

Added properties:

public virtual IMTLBinaryArchive[] BinaryArchives { get; set; }
public virtual IMTLDynamicLibrary[] InsertLibraries { get; set; }
public virtual MTLLinkedFunctions LinkedFunctions { get; set; }
public virtual nuint MaxCallStackDepth { get; set; }
public virtual bool SupportAddingBinaryFunctions { get; set; }
public virtual bool SupportIndirectCommandBuffers { get; set; }

Type Changed: Metal.MTLComputePipelineState_Extensions

Added methods:

public static IMTLComputePipelineState CreateComputePipelineState (this IMTLComputePipelineState This, IMTLFunction[] functions, out Foundation.NSError error);
public static IMTLFunctionHandle CreateFunctionHandle (this IMTLComputePipelineState This, IMTLFunction function);
public static IMTLIntersectionFunctionTable CreateIntersectionFunctionTable (this IMTLComputePipelineState This, MTLIntersectionFunctionTableDescriptor descriptor);
public static IMTLVisibleFunctionTable CreateVisibleFunctionTable (this IMTLComputePipelineState This, MTLVisibleFunctionTableDescriptor descriptor);
public static nuint GetImageblockMemoryLength (this IMTLComputePipelineState This, MTLSize imageblockDimensions);
public static bool GetSupportIndirectCommandBuffers (this IMTLComputePipelineState This);

Type Changed: Metal.MTLCounterSampleBufferError

Modified fields:

-Internal = 1
+Internal = 2

Added value:

Invalid = 1,

Type Changed: Metal.MTLDataType

Added values:

ComputePipeline = 79,
InstanceAccelerationStructure = 118,
IntersectionFunctionTable = 116,
PrimitiveAccelerationStructure = 117,
VisibleFunctionTable = 115,

Type Changed: Metal.MTLDevice_Extensions

Added methods:

public static void ConvertSparsePixelRegions (this IMTLDevice This, IntPtr pixelRegions, IntPtr tileRegions, MTLSize tileSize, MTLSparseTextureRegionAlignmentMode mode, nuint numRegions);
public static void ConvertSparseTileRegions (this IMTLDevice This, IntPtr tileRegions, IntPtr pixelRegions, MTLSize tileSize, nuint numRegions);
public static IMTLAccelerationStructure CreateAccelerationStructure (this IMTLDevice This, MTLAccelerationStructureDescriptor descriptor);
public static IMTLAccelerationStructure CreateAccelerationStructure (this IMTLDevice This, nuint size);
public static MTLAccelerationStructureSizes CreateAccelerationStructureSizes (this IMTLDevice This, MTLAccelerationStructureDescriptor descriptor);
public static IMTLBinaryArchive CreateBinaryArchive (this IMTLDevice This, MTLBinaryArchiveDescriptor 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 void CreateRenderPipelineState (this IMTLDevice This, MTLTileRenderPipelineDescriptor descriptor, MTLPipelineOption options, MTLNewRenderPipelineStateWithReflectionCompletionHandler completionHandler);
public static IMTLRenderPipelineState CreateRenderPipelineState (this IMTLDevice This, MTLTileRenderPipelineDescriptor descriptor, MTLPipelineOption options, out MTLRenderPipelineReflection reflection, out Foundation.NSError error);
public static MTLSize GetSparseTileSize (this IMTLDevice This, MTLTextureType textureType, MTLPixelFormat pixelFormat, nuint sampleCount);
public static nuint GetSparseTileSizeInBytes (this IMTLDevice This);
public static bool GetSupports32BitFloatFiltering (this IMTLDevice This);
public static bool GetSupports32BitMsaa (this IMTLDevice This);
public static bool GetSupportsBCTextureCompression (this IMTLDevice This);
public static bool GetSupportsDynamicLibraries (this IMTLDevice This);
public static bool GetSupportsFunctionPointers (this IMTLDevice This);
public static bool GetSupportsPullModelInterpolation (this IMTLDevice This);
public static bool GetSupportsQueryTextureLod (this IMTLDevice This);
public static bool GetSupportsRaytracing (this IMTLDevice This);
public static bool SupportsCounterSampling (this IMTLDevice This, MTLCounterSamplingPoint samplingPoint);

Type Changed: Metal.MTLFeatureSet

Added value:

tvOS_GPUFamily2_v2 = 30005,

Type Changed: Metal.MTLFunctionType

Added values:

Intersection = 6,
Visible = 5,

Type Changed: Metal.MTLFunction_Extensions

Added method:

public static MTLFunctionOptions GetOptions (this IMTLFunction This);

Type Changed: Metal.MTLGpuFamily

Added values:

Apple6 = 1006,
Apple7 = 1007,

Type Changed: Metal.MTLHeapType

Added value:

Sparse = 2,

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.MTLIndirectCommandType

Added values:

ConcurrentDispatch = 32,
ConcurrentDispatchThreads = 64,

Type Changed: Metal.MTLLanguageVersion

Added values:

v1_0 = 65536,
v2_2 = 131074,
v2_3 = 131075,

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 void CreateIntersectionFunction (this IMTLLibrary This, MTLIntersectionFunctionDescriptor descriptor, System.Action<IMTLFunction,Foundation.NSError> completionHandler);
public static IMTLFunction CreateIntersectionFunction (this IMTLLibrary This, MTLIntersectionFunctionDescriptor descriptor, out Foundation.NSError error);
public static string GetInstallName (this IMTLLibrary This);
public static MTLLibraryType GetType (this IMTLLibrary This);

Type Changed: Metal.MTLPipelineOption

Added value:

FailOnBinaryArchiveMiss = 4,

Type Changed: Metal.MTLPixelFormat

Added values:

A1BGR5Unorm = 41,
ABGR4Unorm = 42,
ASTC_10x10_HDR = 234,
ASTC_10x10_LDR = 216,
ASTC_10x10_sRGB = 198,
ASTC_10x5_HDR = 231,
ASTC_10x5_LDR = 213,
ASTC_10x5_sRGB = 195,
ASTC_10x6_HDR = 232,
ASTC_10x6_LDR = 214,
ASTC_10x6_sRGB = 196,
ASTC_10x8_HDR = 233,
ASTC_10x8_LDR = 215,
ASTC_10x8_sRGB = 197,
ASTC_12x10_HDR = 235,
ASTC_12x10_LDR = 217,
ASTC_12x10_sRGB = 199,
ASTC_12x12_HDR = 236,
ASTC_12x12_LDR = 218,
ASTC_12x12_sRGB = 200,
ASTC_4x4_HDR = 222,
ASTC_4x4_LDR = 204,
ASTC_4x4_sRGB = 186,
ASTC_5x4_HDR = 223,
ASTC_5x4_LDR = 205,
ASTC_5x4_sRGB = 187,
ASTC_5x5_HDR = 224,
ASTC_5x5_LDR = 206,
ASTC_5x5_sRGB = 188,
ASTC_6x5_HDR = 225,
ASTC_6x5_LDR = 207,
ASTC_6x5_sRGB = 189,
ASTC_6x6_HDR = 226,
ASTC_6x6_LDR = 208,
ASTC_6x6_sRGB = 190,
ASTC_8x5_HDR = 228,
ASTC_8x5_LDR = 210,
ASTC_8x5_sRGB = 192,
ASTC_8x6_HDR = 229,
ASTC_8x6_LDR = 211,
ASTC_8x6_sRGB = 193,
ASTC_8x8_HDR = 230,
ASTC_8x8_LDR = 212,
ASTC_8x8_sRGB = 194,
B5G6R5Unorm = 40,
BGR10_XR = 554,
BGR10_XR_sRGB = 555,
BGR5A1Unorm = 43,
BGRA10_XR = 552,
BGRA10_XR_sRGB = 553,
Depth16Unorm = 250,
EAC_R11Snorm = 172,
EAC_R11Unorm = 170,
EAC_RG11Snorm = 176,
EAC_RG11Unorm = 174,
EAC_RGBA8 = 178,
EAC_RGBA8_sRGB = 179,
ETC2_RGB8 = 180,
ETC2_RGB8A1 = 182,
ETC2_RGB8A1_sRGB = 183,
ETC2_RGB8_sRGB = 181,
PVRTC_RGBA_2BPP = 164,
PVRTC_RGBA_2BPP_sRGB = 165,
PVRTC_RGBA_4BPP = 166,
PVRTC_RGBA_4BPP_sRGB = 167,
PVRTC_RGB_2BPP = 160,
PVRTC_RGB_2BPP_sRGB = 161,
PVRTC_RGB_4BPP = 162,
PVRTC_RGB_4BPP_sRGB = 163,
RG8Unorm_sRGB = 31,

Type Changed: Metal.MTLRenderCommandEncoder_Extensions

Added methods:

public static void DispatchThreadsPerTile (this IMTLRenderCommandEncoder This, MTLSize threadsPerTile);
public static nuint GetTileHeight (this IMTLRenderCommandEncoder This);
public static nuint GetTileWidth (this IMTLRenderCommandEncoder This);
public static void SetThreadgroupMemoryLength (this IMTLRenderCommandEncoder This, nuint length, nuint offset, nuint index);
public static void SetTileBuffer (this IMTLRenderCommandEncoder This, IMTLBuffer buffer, nuint offset, nuint index);
public static void SetTileBufferOffset (this IMTLRenderCommandEncoder This, nuint offset, nuint index);
public static void SetTileBuffers (this IMTLRenderCommandEncoder This, IMTLBuffer[] buffers, IntPtr offsets, Foundation.NSRange range);
public static void SetTileBytes (this IMTLRenderCommandEncoder This, IntPtr bytes, nuint length, nuint index);
public static void SetTileSamplerState (this IMTLRenderCommandEncoder This, IMTLSamplerState sampler, nuint index);
public static void SetTileSamplerState (this IMTLRenderCommandEncoder This, IMTLSamplerState sampler, float lodMinClamp, float lodMaxClamp, nuint index);
public static void SetTileSamplerStates (this IMTLRenderCommandEncoder This, IMTLSamplerState[] samplers, Foundation.NSRange range);
public static void SetTileSamplerStates (this IMTLRenderCommandEncoder This, IMTLSamplerState[] samplers, IntPtr lodMinClamps, IntPtr lodMaxClamps, Foundation.NSRange range);
public static void SetTileTexture (this IMTLRenderCommandEncoder This, IMTLTexture texture, nuint index);
public static void SetTileTextures (this IMTLRenderCommandEncoder This, IMTLTexture[] textures, Foundation.NSRange range);

Type Changed: Metal.MTLRenderPassDescriptor

Added properties:

public virtual nuint ImageblockSampleLength { get; set; }
public virtual MTLRenderPassSampleBufferAttachmentDescriptorArray SampleBufferAttachments { get; }
public virtual nuint ThreadgroupMemoryLength { get; set; }
public virtual nuint TileHeight { get; set; }
public virtual nuint TileWidth { get; set; }

Type Changed: Metal.MTLRenderPipelineDescriptor

Added property:

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

Type Changed: Metal.MTLRenderPipelineReflection

Added property:

public virtual MTLArgument[] TileArguments { get; }

Type Changed: Metal.MTLRenderPipelineState_Extensions

Added methods:

public static nuint GetImageblockMemoryLength (this IMTLRenderPipelineState This, MTLSize imageblockDimensions);
public static nuint GetImageblockSampleLength (this IMTLRenderPipelineState This);
public static nuint GetMaxTotalThreadsPerThreadgroup (this IMTLRenderPipelineState This);
public static bool GetThreadgroupSizeMatchesTileSize (this IMTLRenderPipelineState This);

Type Changed: Metal.MTLResourceOptions

Added value:

HazardTrackingModeTracked = 512,

Type Changed: Metal.MTLSamplerDescriptor

Added property:

public virtual bool LodAverage { get; set; }

Type Changed: Metal.MTLTextureUsage

Obsoleted fields:

 [Obsolete ("This option is unavailable.")]
 Blit = 8,

Type Changed: Metal.MTLTexture_Extensions

Added methods:

public static nuint GetFirstMipmapInTail (this IMTLTexture This);
public static bool GetIsSparse (this IMTLTexture This);
public static nuint GetTailSizeInBytes (this IMTLTexture This);

New Type: Metal.IMTLAccelerationStructure

public interface IMTLAccelerationStructure : IMTLResource, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual nuint Size { get; }
}

New Type: Metal.IMTLAccelerationStructureCommandEncoder

public interface IMTLAccelerationStructureCommandEncoder : IMTLCommandEncoder, ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void BuildAccelerationStructure (IMTLAccelerationStructure accelerationStructure, MTLAccelerationStructureDescriptor descriptor, IMTLBuffer scratchBuffer, nuint scratchBufferOffset);
	public virtual void CopyAccelerationStructure (IMTLAccelerationStructure sourceAccelerationStructure, IMTLAccelerationStructure destinationAccelerationStructure);
	public virtual void CopyAndCompactAccelerationStructure (IMTLAccelerationStructure sourceAccelerationStructure, IMTLAccelerationStructure destinationAccelerationStructure);
	public virtual void RefitAccelerationStructure (IMTLAccelerationStructure sourceAccelerationStructure, MTLAccelerationStructureDescriptor descriptor, IMTLAccelerationStructure destinationAccelerationStructure, IMTLBuffer scratchBuffer, nuint scratchBufferOffset);
	public virtual void SampleCountersInBuffer (MTLCounterSampleBuffer sampleBuffer, nuint sampleIndex, bool barrier);
	public virtual void UpdateFence (IMTLFence fence);
	public virtual void UseHeap (IMTLHeap heap);
	public virtual void UseHeaps (IMTLHeap[] heaps, nuint count);
	public virtual void UseResource (IMTLResource resource, MTLResourceUsage usage);
	public virtual void UseResources (IMTLResource[] resources, nuint count, MTLResourceUsage usage);
	public virtual void WaitForFence (IMTLFence fence);
	public virtual void WriteCompactedAccelerationStructureSize (IMTLAccelerationStructure accelerationStructure, IMTLBuffer buffer, nuint offset);
}

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 AddTileRenderPipelineFunctions (MTLTileRenderPipelineDescriptor 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.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.IMTLFunctionHandle

public interface IMTLFunctionHandle : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual IMTLDevice Device { get; }
	public virtual MTLFunctionType FunctionType { get; }
	public virtual string Name { get; }
}

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.IMTLIndirectComputeCommand

public interface IMTLIndirectComputeCommand : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void ClearBarrier ();
	public virtual void ConcurrentDispatchThreadgroups (MTLSize threadgroupsPerGrid, MTLSize threadsPerThreadgroup);
	public virtual void ConcurrentDispatchThreads (MTLSize threadsPerGrid, MTLSize threadsPerThreadgroup);
	public virtual void Reset ();
	public virtual void SetBarrier ();
	public virtual void SetComputePipelineState (IMTLComputePipelineState pipelineState);
	public virtual void SetKernelBuffer (IMTLBuffer buffer, nuint offset, nuint index);
	public virtual void SetStageInRegion (MTLRegion region);
	public virtual void SetThreadgroupMemoryLength (nuint length, nuint index);
}

New Type: Metal.IMTLIntersectionFunctionTable

public interface IMTLIntersectionFunctionTable : IMTLResource, ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void SetBuffer (IMTLBuffer buffer, nuint offset, nuint index);
	public virtual void SetBuffers (IntPtr buffers, IntPtr offsets, Foundation.NSRange range);
	public virtual void SetFunction (IMTLFunctionHandle function, nuint index);
	public virtual void SetFunctions (IMTLFunctionHandle[] functions, Foundation.NSRange range);
	public virtual void SetOpaqueTriangleIntersectionFunction (MTLIntersectionFunctionSignature signature, Foundation.NSRange range);
	public virtual void SetOpaqueTriangleIntersectionFunction (MTLIntersectionFunctionSignature signature, nuint index);
	public virtual void SetVisibleFunctionTable (IMTLVisibleFunctionTable functionTable, nuint bufferIndex);
	public virtual void SetVisibleFunctionTables (IMTLVisibleFunctionTable[] functionTables, Foundation.NSRange bufferRange);
}

New Type: Metal.IMTLLogContainer

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

New Type: Metal.IMTLResourceStateCommandEncoder

public interface IMTLResourceStateCommandEncoder : IMTLCommandEncoder, ObjCRuntime.INativeObject, System.IDisposable {
}

New Type: Metal.IMTLVisibleFunctionTable

public interface IMTLVisibleFunctionTable : IMTLResource, ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void SetFunction (IMTLFunctionHandle function, nuint index);
	public virtual void SetFunctions (IMTLFunctionHandle[] functions, Foundation.NSRange range);
}

New Type: Metal.MTLAccelerationStructureBoundingBoxGeometryDescriptor

public class MTLAccelerationStructureBoundingBoxGeometryDescriptor : Metal.MTLAccelerationStructureGeometryDescriptor, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MTLAccelerationStructureBoundingBoxGeometryDescriptor (Foundation.NSObjectFlag t);
	protected MTLAccelerationStructureBoundingBoxGeometryDescriptor (IntPtr handle);
	// properties
	public virtual IMTLBuffer BoundingBoxBuffer { get; set; }
	public virtual nuint BoundingBoxBufferOffset { get; set; }
	public virtual nuint BoundingBoxCount { get; set; }
	public virtual nuint BoundingBoxStride { get; set; }
	public override IntPtr ClassHandle { get; }
	// methods
	public static MTLAccelerationStructureBoundingBoxGeometryDescriptor Create ();
}

New Type: Metal.MTLAccelerationStructureDescriptor

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

New Type: Metal.MTLAccelerationStructureGeometryDescriptor

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

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.MTLAccelerationStructureTriangleGeometryDescriptor

public class MTLAccelerationStructureTriangleGeometryDescriptor : Metal.MTLAccelerationStructureGeometryDescriptor, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MTLAccelerationStructureTriangleGeometryDescriptor ();
	protected MTLAccelerationStructureTriangleGeometryDescriptor (Foundation.NSObjectFlag t);
	protected MTLAccelerationStructureTriangleGeometryDescriptor (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual IMTLBuffer IndexBuffer { get; set; }
	public virtual nuint IndexBufferOffset { get; set; }
	public virtual MTLIndexType IndexType { get; set; }
	public virtual nuint TriangleCount { get; set; }
	public virtual IMTLBuffer VertexBuffer { get; set; }
	public virtual nuint VertexBufferOffset { get; set; }
	public virtual nuint VertexStride { get; set; }
	// methods
	public static MTLAccelerationStructureTriangleGeometryDescriptor Create ();
}

New Type: Metal.MTLAccelerationStructureUsage

[Serializable]
[Flags]
public enum MTLAccelerationStructureUsage {
	None = 0,
	PreferFastBuild = 2,
	Refit = 1,
}

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.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.MTLCounterSamplingPoint

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

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.MTLIndirectCommandBuffer_Extensions

public static class MTLIndirectCommandBuffer_Extensions {
	// methods
	public static IMTLIndirectComputeCommand GetIndirectComputeCommand (this IMTLIndirectCommandBuffer This, nuint commandIndex);
}

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.MTLInstanceAccelerationStructureDescriptor

public class MTLInstanceAccelerationStructureDescriptor : Metal.MTLAccelerationStructureDescriptor, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MTLInstanceAccelerationStructureDescriptor (Foundation.NSObjectFlag t);
	protected MTLInstanceAccelerationStructureDescriptor (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nuint InstanceCount { get; set; }
	public virtual IMTLBuffer InstanceDescriptorBuffer { get; set; }
	public virtual nuint InstanceDescriptorBufferOffset { get; set; }
	public virtual nuint InstanceDescriptorStride { get; set; }
	public virtual IMTLAccelerationStructure[] InstancedAccelerationStructures { get; set; }
	// methods
	public static MTLInstanceAccelerationStructureDescriptor Create ();
}

New Type: Metal.MTLIntersectionFunctionDescriptor

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

New Type: Metal.MTLIntersectionFunctionSignature

[Serializable]
[Flags]
public enum MTLIntersectionFunctionSignature {
	Instancing = 1,
	None = 0,
	TriangleData = 2,
	WorldSpaceData = 4,
}

New Type: Metal.MTLIntersectionFunctionTableDescriptor

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

New Type: Metal.MTLIntersectionFunctionTableExtensions

public static class MTLIntersectionFunctionTableExtensions {
	// methods
	public static void SetBuffers (this IMTLIntersectionFunctionTable table, IMTLBuffer[] buffers, nuint[] offsets, Foundation.NSRange range);
}

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 virtual IMTLFunction[] BinaryFunctions { get; set; }
	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.MTLNewRenderPipelineStateWithReflectionCompletionHandler

public sealed delegate MTLNewRenderPipelineStateWithReflectionCompletionHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public MTLNewRenderPipelineStateWithReflectionCompletionHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (IMTLRenderPipelineState renderPipelineState, MTLRenderPipelineReflection reflection, Foundation.NSError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (IMTLRenderPipelineState renderPipelineState, MTLRenderPipelineReflection reflection, Foundation.NSError error);
}

New Type: Metal.MTLPrimitiveAccelerationStructureDescriptor

public class MTLPrimitiveAccelerationStructureDescriptor : Metal.MTLAccelerationStructureDescriptor, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MTLPrimitiveAccelerationStructureDescriptor (Foundation.NSObjectFlag t);
	protected MTLPrimitiveAccelerationStructureDescriptor (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual MTLAccelerationStructureGeometryDescriptor[] GeometryDescriptors { get; set; }
	// methods
	public static MTLPrimitiveAccelerationStructureDescriptor 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);
}

New Type: Metal.MTLResourceStateCommandEncoder_Extensions

public static class MTLResourceStateCommandEncoder_Extensions {
	// methods
	public static void Update (this IMTLResourceStateCommandEncoder This, IMTLFence fence);
	public static void Update (this IMTLResourceStateCommandEncoder This, IMTLTexture texture, MTLSparseTextureMappingMode mode, IMTLBuffer indirectBuffer, nuint indirectBufferOffset);
	public static void Update (this IMTLResourceStateCommandEncoder This, IMTLTexture texture, MTLSparseTextureMappingMode mode, MTLRegion region, nuint mipLevel, nuint slice);
	public static void Update (this IMTLResourceStateCommandEncoder This, IMTLTexture texture, MTLSparseTextureMappingMode mode, IntPtr regions, IntPtr mipLevels, IntPtr slices, nuint numRegions);
	public static void Wait (this IMTLResourceStateCommandEncoder This, IMTLFence fence);
}

New Type: Metal.MTLResourceStatePassDescriptor

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

New Type: Metal.MTLResourceStatePassSampleBufferAttachmentDescriptor

public class MTLResourceStatePassSampleBufferAttachmentDescriptor : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MTLResourceStatePassSampleBufferAttachmentDescriptor ();
	protected MTLResourceStatePassSampleBufferAttachmentDescriptor (Foundation.NSObjectFlag t);
	protected MTLResourceStatePassSampleBufferAttachmentDescriptor (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.MTLResourceStatePassSampleBufferAttachmentDescriptorArray

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

New Type: Metal.MTLSparseTextureMappingMode

[Serializable]
[Flags]
public enum MTLSparseTextureMappingMode {
	Map = 0,
	Unmap = 1,
}

New Type: Metal.MTLSparseTextureRegionAlignmentMode

[Serializable]
[Flags]
public enum MTLSparseTextureRegionAlignmentMode {
	Inward = 1,
	Outward = 0,
}

New Type: Metal.MTLTileRenderPipelineColorAttachmentDescriptor

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

New Type: Metal.MTLTileRenderPipelineColorAttachmentDescriptorArray

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

New Type: Metal.MTLTileRenderPipelineDescriptor

public class MTLTileRenderPipelineDescriptor : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MTLTileRenderPipelineDescriptor ();
	protected MTLTileRenderPipelineDescriptor (Foundation.NSObjectFlag t);
	protected MTLTileRenderPipelineDescriptor (IntPtr handle);
	// properties
	public virtual IMTLBinaryArchive[] BinaryArchives { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual MTLTileRenderPipelineColorAttachmentDescriptorArray ColorAttachments { get; }
	public virtual string Label { get; set; }
	public virtual nuint MaxTotalThreadsPerThreadgroup { get; set; }
	public virtual nuint RasterSampleCount { get; set; }
	public virtual bool ThreadgroupSizeMatchesTileSize { get; set; }
	public virtual MTLPipelineBufferDescriptorArray TileBuffers { get; }
	public virtual IMTLFunction TileFunction { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void Reset ();
}

New Type: Metal.MTLVisibleFunctionTableDescriptor

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

Namespace MetalPerformanceShaders

Type Changed: MetalPerformanceShaders.MPSAccelerationStructureUsage

Added values:

PreferCpuBuild = 8,
PreferGpuBuild = 4,

Type Changed: MetalPerformanceShaders.MPSBoundingBoxIntersectionTestType

Added value:

Fast = 2,

Type Changed: MetalPerformanceShaders.MPSCnnNeuronType

Modified fields:

-Count = 15
+Count = 16

Added value:

GeLU = 15,

Type Changed: MetalPerformanceShaders.MPSCommandBuffer

Added properties:

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

Added methods:

public virtual Metal.IMTLAccelerationStructureCommandEncoder CreateAccelerationStructureCommandEncoder ();
public virtual Metal.IMTLBlitCommandEncoder CreateBlitCommandEncoder (Metal.MTLBlitPassDescriptor blitPassDescriptor);
public virtual Metal.IMTLComputeCommandEncoder CreateComputeCommandEncoder (Metal.MTLComputePassDescriptor computePassDescriptor);
public virtual Metal.IMTLResourceStateCommandEncoder CreateResourceStateCommandEncoder (Metal.MTLResourceStatePassDescriptor resourceStatePassDescriptor);

Type Changed: MetalPerformanceShaders.MPSDataType

Added values:

Int64 = 536870976,
UInt64 = 64,

Type Changed: MetalPerformanceShaders.MPSMatrixRandomDistribution

Added value:

Normal = 3,

Type Changed: MetalPerformanceShaders.MPSRayDataType

Added value:

PackedOriginDirection = 3,

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 Network

New Type: Network.NWConnectionGroup

public class NWConnectionGroup : CoreFoundation.NativeObject, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public NWConnectionGroup (NWMulticastGroup groupDescriptor, NWParameters parameters);
	protected NWConnectionGroup (IntPtr handle, bool owns);
	// properties
	public NWMulticastGroup GroupDescriptor { get; }
	public NWParameters Parameters { get; }
	// methods
	public void Cancel ();
	public NWConnection GetConnection (NWContentContext context);
	public NWEndpoint GetLocalEndpoint (NWContentContext context);
	public NWPath GetPath (NWContentContext context);
	public NWEndpoint GetRemmoteEndpoint (NWContentContext context);
	public void Reply (NWContentContext inboundMessage, NWContentContext outboundMessage, CoreFoundation.DispatchData content);
	public void Send (CoreFoundation.DispatchData content, NWEndpoint endpoint, NWContentContext context, System.Action<NWError> handler);
	public void SetQueue (CoreFoundation.DispatchQueue queue);
	public void SetReceiveHandler (uint maximumMessageSize, bool rejectOversizedMessages, NWConnectionGroupReceiveDelegate handler);
	public void SetStateChangedHandler (NWConnectionGroupStateChangedDelegate handler);
	public void Start ();
}

New Type: Network.NWConnectionGroupReceiveDelegate

public sealed delegate NWConnectionGroupReceiveDelegate : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public NWConnectionGroupReceiveDelegate (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (CoreFoundation.DispatchData content, NWContentContext context, bool isCompleted, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (CoreFoundation.DispatchData content, NWContentContext context, bool isCompleted);
}

New Type: Network.NWConnectionGroupState

[Serializable]
public enum NWConnectionGroupState {
	Cancelled = 4,
	Failed = 3,
	Invalid = 0,
	Ready = 2,
	Waiting = 1,
}

New Type: Network.NWConnectionGroupStateChangedDelegate

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

New Type: Network.NWMulticastGroup

public class NWMulticastGroup : CoreFoundation.NativeObject, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public NWMulticastGroup (NWEndpoint endpoint);
	// properties
	public bool DisabledUnicastTraffic { get; set; }
	// methods
	public void AddEndpoint (NWEndpoint endpoint);
	public void EnumerateEndpoints (System.Func<NWEndpoint,System.Boolean> handler);
	public void SetSpecificSource (NWEndpoint endpoint);
}

Namespace NetworkExtension

Type Changed: NetworkExtension.NEDnsSettings

Added properties:

public static Foundation.NSString ConfigurationDidChangeNotification { get; }
public virtual NEDnsProtocol DnsProtocol { get; }

Type Changed: NetworkExtension.NEFilterReportEvent

Added value:

Statistics = 4,

Type Changed: NetworkExtension.NEFilterSocketFlow

Added property:

public virtual string RemoteHostname { get; }

Type Changed: NetworkExtension.NEProviderStopReason

Added values:

AppUpdate = 16,
Sleep = 15,

Type Changed: NetworkExtension.NETunnelProviderManager

Added properties:

public virtual string[] AssociatedDomains { get; set; }
public virtual string[] ExcludedDomains { get; set; }

Type Changed: NetworkExtension.NEVpnProtocolIke2

Added property:

public virtual nuint Mtu { get; set; }

Type Changed: NetworkExtension.NWPath

Added property:

public virtual bool Constrained { get; }

New Type: NetworkExtension.NEDnsOverHttpsSettings

public class NEDnsOverHttpsSettings : NetworkExtension.NEDnsSettings, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NEDnsOverHttpsSettings ();
	public NEDnsOverHttpsSettings (Foundation.NSCoder coder);
	protected NEDnsOverHttpsSettings (Foundation.NSObjectFlag t);
	protected NEDnsOverHttpsSettings (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSUrl ServerUrl { get; set; }
}

New Type: NetworkExtension.NEDnsOverTlsSettings

public class NEDnsOverTlsSettings : NetworkExtension.NEDnsSettings, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NEDnsOverTlsSettings ();
	public NEDnsOverTlsSettings (Foundation.NSCoder coder);
	protected NEDnsOverTlsSettings (Foundation.NSObjectFlag t);
	protected NEDnsOverTlsSettings (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string ServerName { get; set; }
}

New Type: NetworkExtension.NEDnsProtocol

[Serializable]
public enum NEDnsProtocol {
	Cleartext = 1,
	Https = 3,
	Tls = 2,
}

New Type: NetworkExtension.NEDnsSettingsManager

public class NEDnsSettingsManager : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NEDnsSettingsManager (Foundation.NSObjectFlag t);
	protected NEDnsSettingsManager (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual NEDnsSettings DnsSettings { get; set; }
	public virtual bool Enabled { get; }
	public virtual string LocalizedDescription { get; set; }
	public virtual NEOnDemandRule[] OnDemandRules { get; set; }
	public static NEDnsSettingsManager SharedManager { get; }
	// methods
	public virtual void LoadFromPreferences (System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task LoadFromPreferencesAsync ();
	public virtual void RemoveFromPreferences (System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task RemoveFromPreferencesAsync ();
	public virtual void SaveToPreferences (System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task SaveToPreferencesAsync ();
}

New Type: NetworkExtension.NEDnsSettingsManagerError

[Serializable]
public enum NEDnsSettingsManagerError {
	CannotBeRemoved = 4,
	Disabled = 2,
	Invalid = 1,
	Stale = 3,
}

New Type: NetworkExtension.NEDnsSettingsManagerErrorExtensions

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

Namespace ObjCRuntime

Type Changed: ObjCRuntime.Constants

Modified fields:

-public const string SdkVersion = "10.15";
+public const string SdkVersion = "11.0";
-public const string Version = "6.22.1";
+public const string Version = "7.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 ClassKitLibrary = "/System/Library/Frameworks/ClassKit.framework/ClassKit";
public static const string MLComputeLibrary = "/System/Library/Frameworks/MLCompute.framework/MLCompute";
public static const string NearbyInteractionLibrary = "/System/Library/Frameworks/NearbyInteraction.framework/NearbyInteraction";
public static const string OSLogLibrary = "/System/Library/Frameworks/OSLog.framework/OSLog";
public static const string PassKitLibrary = "/System/Library/Frameworks/PassKit.framework/PassKit";
public static const string ReplayKitLibrary = "/System/Library/Frameworks/ReplayKit.framework/ReplayKit";
public static const string ScreenTimeLibrary = "/System/Library/Frameworks/ScreenTime.framework/ScreenTime";
public static const string UniformTypeIdentifiersLibrary = "/System/Library/Frameworks/UniformTypeIdentifiers.framework/UniformTypeIdentifiers";
public static const string UserNotificationsUILibrary = "/System/Library/Frameworks/UserNotificationsUI.framework/UserNotificationsUI";

Namespace PdfKit

Type Changed: PdfKit.PdfMarkupType

Added value:

Redact = 3,

Namespace PencilKit

Type Changed: PencilKit.PKDrawing

Added constructor:

public PKDrawing (PKStroke[] strokes);

Added property:

public virtual PKStroke[] Strokes { get; }

Added method:

public virtual PKDrawing GetDrawing (PKStroke[] strokes);

New Type: PencilKit.PKEraserTool

public class PKEraserTool : PencilKit.PKTool, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected PKEraserTool (Foundation.NSObjectFlag t);
	public PKEraserTool (PKEraserType eraserType);
	protected PKEraserTool (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual PKEraserType EraserType { get; }
}

New Type: PencilKit.PKEraserType

[Serializable]
public enum PKEraserType {
	Bitmap = 1,
	Vector = 0,
}

New Type: PencilKit.PKFloatRange

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

New Type: PencilKit.PKInk

public class PKInk : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected PKInk (Foundation.NSObjectFlag t);
	protected PKInk (IntPtr handle);
	public PKInk (Foundation.NSString type, AppKit.NSColor color);
	public PKInk (PKInkType type, AppKit.NSColor color);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual AppKit.NSColor Color { get; }
	public PKInkType InkType { get; }
	public virtual Foundation.NSString WeakInkType { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: PencilKit.PKInkType

[Serializable]
public enum PKInkType {
	Marker = 2,
	Pen = 0,
	Pencil = 1,
}

New Type: PencilKit.PKInkTypeExtensions

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

New Type: PencilKit.PKInkingTool

public class PKInkingTool : PencilKit.PKTool, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected PKInkingTool (Foundation.NSObjectFlag t);
	protected PKInkingTool (IntPtr handle);
	public PKInkingTool (PKInk ink, nfloat width);
	public PKInkingTool (PKInkType type, AppKit.NSColor color);
	public PKInkingTool (PKInkType type, AppKit.NSColor color, nfloat width);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual AppKit.NSColor Color { get; }
	public virtual PKInk Ink { get; }
	public virtual PKInkType InkType { get; }
	public virtual nfloat Width { get; }
	// methods
	public static nfloat GetDefaultWidth (PKInkType inkType);
	public static nfloat GetMaximumWidth (PKInkType inkType);
	public static nfloat GetMinimumWidth (PKInkType inkType);
}

New Type: PencilKit.PKInterpolatedPointsEnumeratorHandler

public sealed delegate PKInterpolatedPointsEnumeratorHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public PKInterpolatedPointsEnumeratorHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (PKStrokePoint strokePoint, out bool stop, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (out bool stop, System.IAsyncResult result);
	public virtual void Invoke (PKStrokePoint strokePoint, out bool stop);
}

New Type: PencilKit.PKLassoTool

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

New Type: PencilKit.PKStroke

public class PKStroke : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected PKStroke (Foundation.NSObjectFlag t);
	protected PKStroke (IntPtr handle);
	public PKStroke (PKInk ink, PKStrokePath path, CoreGraphics.CGAffineTransform transform, AppKit.NSBezierPath mask);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual PKInk Ink { get; }
	public virtual AppKit.NSBezierPath Mask { get; }
	public virtual PKFloatRange[] MaskedPathRanges { get; }
	public virtual PKStrokePath Path { get; }
	public virtual CoreGraphics.CGRect RenderBounds { get; }
	public virtual CoreGraphics.CGAffineTransform Transform { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: PencilKit.PKStrokePath

public class PKStrokePath : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected PKStrokePath (Foundation.NSObjectFlag t);
	protected PKStrokePath (IntPtr handle);
	public PKStrokePath (PKStrokePoint[] controlPoints, Foundation.NSDate creationDate);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nuint Count { get; }
	public virtual Foundation.NSDate CreationDate { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EnumerateInterpolatedPointsByDistanceStep (PKFloatRange range, nfloat distanceStep, PKInterpolatedPointsEnumeratorHandler enumeratorHandler);
	public virtual void EnumerateInterpolatedPointsByParametricStep (PKFloatRange range, nfloat parametricStep, PKInterpolatedPointsEnumeratorHandler enumeratorHandler);
	public virtual void EnumerateInterpolatedPointsByTimeStep (PKFloatRange range, double timeStep, PKInterpolatedPointsEnumeratorHandler enumeratorHandler);
	public virtual CoreGraphics.CGPoint GetInterpolatedLocation (nfloat parametricValue);
	public virtual PKStrokePoint GetInterpolatedPoint (nfloat parametricValue);
	public virtual PKStrokePoint GetObject (nuint indexedSubscript);
	public virtual nfloat GetParametricValue (nfloat parametricValue, double timeStep);
	public virtual nfloat GetParametricValue (nfloat parametricValue, nfloat distanceStep);
	public virtual PKStrokePoint GetPoint (nuint index);
}

New Type: PencilKit.PKStrokePoint

public class PKStrokePoint : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected PKStrokePoint (Foundation.NSObjectFlag t);
	protected PKStrokePoint (IntPtr handle);
	public PKStrokePoint (CoreGraphics.CGPoint location, double timeOffset, CoreGraphics.CGSize size, nfloat opacity, nfloat force, nfloat azimuth, nfloat altitude);
	// properties
	public virtual nfloat Altitude { get; }
	public virtual nfloat Azimuth { get; }
	public override IntPtr ClassHandle { get; }
	public virtual nfloat Force { get; }
	public virtual CoreGraphics.CGPoint Location { get; }
	public virtual nfloat Opacity { get; }
	public virtual CoreGraphics.CGSize Size { get; }
	public virtual double TimeOffset { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: PencilKit.PKTool

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

Namespace Photos

Type Changed: Photos.PHAuthorizationStatus

Added value:

Limited = 4,

Type Changed: Photos.PHCollectionListChangeRequest

Added method:

public static PHCollectionListChangeRequest ChangeRequestForTopLevelCollectionList (PHFetchResult childCollections);

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 QuickLookThumbnailing

Type Changed: QuickLookThumbnailing.QLThumbnailGenerationRequest

Added property:

public virtual UniformTypeIdentifiers.UTType ContentType { get; set; }

Namespace SceneKit

Type Changed: SceneKit.SCNGeometryElement

Added method:

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

Type Changed: SceneKit.SCNLayer

Added property:

public virtual Metal.MTLRenderPassDescriptor CurrentRenderPassDescriptor { get; }

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

Added property:

public virtual Metal.MTLRenderPassDescriptor CurrentRenderPassDescriptor { get; }

Namespace Security

Type Changed: Security.AuthorizationFlags

Added value:

NoData = 1048576,

Type Changed: Security.SecAuthenticationType

Modified fields:

-Default = 7
+Default = 1953261156
-Dpa = 2
+Dpa = 1633775716
-HtmlForm = 6
+HtmlForm = 1836216166
-HttpBasic = 4
+HttpBasic = 1886680168
-HttpDigest = 5
+HttpDigest = 1685353576
-Msn = 1
+Msn = 1634628461
-Ntlm = 0
+Ntlm = 1835824238
-Rpa = 3
+Rpa = 1633775730

Added value:

Any = 0,

Type Changed: Security.SecKeyChain

Modified methods:

-public SecStatusCode AddInternetPassword (string serverName, string accountName, byte[] password, SecProtocol protocolType = 2, short port = 0, string path = "NULL", SecAuthenticationType authenticationType = 7, string securityDomain = "NULL")
+public SecStatusCode AddInternetPassword (string serverName, string accountName, byte[] password, SecProtocol protocolType = 2, short port = 0, string path = "NULL", SecAuthenticationType authenticationType = 1953261156, string securityDomain = "NULL")
-public SecStatusCode FindInternetPassword (string serverName, string accountName, out byte[] password, SecProtocol protocolType = 2, short port = 0, string path = "NULL", SecAuthenticationType authenticationType = 7, string securityDomain = "NULL")
+public SecStatusCode FindInternetPassword (string serverName, string accountName, out byte[] password, SecProtocol protocolType = 2, short port = 0, string path = "NULL", SecAuthenticationType authenticationType = 1953261156, string securityDomain = "NULL")

Type Changed: Security.SecStatusCode

Added values:

CertificateIsCA = -67902,
RestrictedApi = -34020,

Type Changed: Security.SecTrust

Added method:

public SecKey GetKey ();

Type Changed: Security.SslProtocol

Added value:

Dtls_1_2 = 11,

Type Changed: Security.SslStatus

Added value:

SslEarlyDataRejected = -9890,

New Type: Security.SecSharedCredential

public static class SecSharedCredential {
	// properties
	public static Foundation.NSString SharedPassword { get; }
	// methods
	public static void AddSharedWebCredential (string domainName, string account, string password, System.Action<Foundation.NSError> handler);
	public static string CreateSharedWebCredentialPassword ();
	public static void RequestSharedWebCredential (string domainName, string account, System.Action<SecSharedCredentialInfo[],Foundation.NSError> handler);

	[Obsolete ("Use the overload accepting a 'SecSharedCredentialInfo' argument.")]
public static void RequestSharedWebCredential (string domainName, string account, System.Action<System.String[],Foundation.NSError> handler);
}

New Type: Security.SecSharedCredentialInfo

public class SecSharedCredentialInfo : Foundation.DictionaryContainer {
	// constructors
	public SecSharedCredentialInfo ();
	public SecSharedCredentialInfo (Foundation.NSDictionary dictionary);
	// properties
	public string Account { get; set; }
	public string Password { get; set; }
	public int? Port { get; set; }
	public string Server { get; set; }
}

Namespace SpriteKit

Type Changed: SpriteKit.SKView

Added property:

public virtual bool DisableDepthStencilBuffer { get; set; }

Namespace StoreKit

Type Changed: StoreKit.SKError

Added values:

IneligibleForOffer = 18,
OverlayCancelled = 15,
OverlayInvalidConfiguration = 16,
OverlayTimeout = 17,
UnsupportedPlatform = 19,

Type Changed: StoreKit.SKPaymentQueue

Added property:

public virtual ISKPaymentTransactionObserver[] TransactionObservers { get; }

Type Changed: StoreKit.SKPaymentTransactionObserver

Added methods:

public virtual void DidRevokeEntitlements (SKPaymentQueue queue, string[] productIdentifiers);
public virtual bool ShouldAddStorePayment (SKPaymentQueue queue, SKPayment payment, SKProduct product);

Type Changed: StoreKit.SKPaymentTransactionObserver_Extensions

Added methods:

public static void DidRevokeEntitlements (this ISKPaymentTransactionObserver This, SKPaymentQueue queue, string[] productIdentifiers);
public static bool ShouldAddStorePayment (this ISKPaymentTransactionObserver This, SKPaymentQueue queue, SKPayment payment, SKProduct product);

Type Changed: StoreKit.SKProduct

Added property:

public virtual bool IsFamilyShareable { get; }

New Type: StoreKit.ISKStoreProductViewControllerDelegate

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

New Type: StoreKit.SKCloudServiceController

public class SKCloudServiceController : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public SKCloudServiceController ();
	protected SKCloudServiceController (Foundation.NSObjectFlag t);
	protected SKCloudServiceController (IntPtr handle);
	// properties
	public static SKCloudServiceAuthorizationStatus AuthorizationStatus { get; }
	public override IntPtr ClassHandle { get; }
	public static Foundation.NSString CloudServiceCapabilitiesDidChangeNotification { get; }
	public static Foundation.NSString StorefrontCountryCodeDidChangeNotification { get; }
	public static Foundation.NSString StorefrontIdentifierDidChangeNotification { get; }
	// methods
	public static void RequestAuthorization (System.Action<SKCloudServiceAuthorizationStatus> handler);
	public static System.Threading.Tasks.Task<SKCloudServiceAuthorizationStatus> RequestAuthorizationAsync ();
	public virtual void RequestCapabilities (System.Action<SKCloudServiceCapability,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<SKCloudServiceCapability> RequestCapabilitiesAsync ();
	public virtual void RequestPersonalizationToken (string clientToken, System.Action<Foundation.NSString,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<Foundation.NSString> RequestPersonalizationTokenAsync (string clientToken);
	public virtual void RequestStorefrontCountryCode (System.Action<Foundation.NSString,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<Foundation.NSString> RequestStorefrontCountryCodeAsync ();
	public virtual void RequestStorefrontIdentifier (System.Action<Foundation.NSString,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<Foundation.NSString> RequestStorefrontIdentifierAsync ();
	public virtual void RequestUserToken (string developerToken, System.Action<Foundation.NSString,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<Foundation.NSString> RequestUserTokenAsync (string developerToken);

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

New Type: StoreKit.SKProductStorePromotionController

public class SKProductStorePromotionController : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected SKProductStorePromotionController (Foundation.NSObjectFlag t);
	protected SKProductStorePromotionController (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static SKProductStorePromotionController Default { get; }
	// methods
	public virtual void FetchStorePromotionOrder (System.Action<SKProduct[],Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<SKProduct[]> FetchStorePromotionOrderAsync ();
	public virtual void FetchStorePromotionVisibility (SKProduct product, System.Action<SKProductStorePromotionVisibility,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<SKProductStorePromotionVisibility> FetchStorePromotionVisibilityAsync (SKProduct product);
	public virtual void Update (SKProduct[] storePromotionOrder, System.Action<Foundation.NSError> completionHandler);
	public virtual void Update (SKProductStorePromotionVisibility promotionVisibility, SKProduct product, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task UpdateAsync (SKProduct[] storePromotionOrder);
	public virtual System.Threading.Tasks.Task UpdateAsync (SKProductStorePromotionVisibility promotionVisibility, SKProduct product);
}

New Type: StoreKit.SKProductStorePromotionVisibility

[Serializable]
public enum SKProductStorePromotionVisibility {
	Default = 0,
	Hide = 2,
	Show = 1,
}

New Type: StoreKit.SKStoreProductParameterKey

public static class SKStoreProductParameterKey {
	// properties
	public static Foundation.NSString AdvertisingPartnerToken { get; }
	public static Foundation.NSString AffiliateToken { get; }
	public static Foundation.NSString CampaignToken { get; }
	public static Foundation.NSString ITunesItemIdentifier { get; }
	public static Foundation.NSString ProductIdentifier { get; }
	public static Foundation.NSString ProviderToken { get; }
}

New Type: StoreKit.SKStoreProductViewController

public class SKStoreProductViewController : AppKit.NSViewController, AppKit.INSEditor, AppKit.INSSeguePerforming, AppKit.INSTouchBarProvider, AppKit.INSUserInterfaceItemIdentification, Foundation.INSCoding, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public SKStoreProductViewController ();
	public SKStoreProductViewController (Foundation.NSCoder coder);
	protected SKStoreProductViewController (Foundation.NSObjectFlag t);
	protected SKStoreProductViewController (IntPtr handle);
	public SKStoreProductViewController (string nibName, Foundation.NSBundle bundle);
	// properties
	public override IntPtr ClassHandle { get; }
	public ISKStoreProductViewControllerDelegate Delegate { get; set; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// events
	public event System.EventHandler Finished;
	// methods
	protected override void Dispose (bool disposing);
	public void LoadProduct (StoreProductParameters parameters, System.Action<System.Boolean,Foundation.NSError> callback);
	public System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> LoadProductAsync (StoreProductParameters parameters);
}

New Type: StoreKit.SKStoreProductViewControllerDelegate

public class SKStoreProductViewControllerDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, ISKStoreProductViewControllerDelegate, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public SKStoreProductViewControllerDelegate ();
	protected SKStoreProductViewControllerDelegate (Foundation.NSObjectFlag t);
	protected SKStoreProductViewControllerDelegate (IntPtr handle);
	// methods
	public virtual void Finished (SKStoreProductViewController controller);
}

New Type: StoreKit.SKStoreProductViewControllerDelegate_Extensions

public static class SKStoreProductViewControllerDelegate_Extensions {
	// methods
	public static void Finished (this ISKStoreProductViewControllerDelegate This, SKStoreProductViewController controller);
}

New Type: StoreKit.StoreProductParameters

public class StoreProductParameters : Foundation.DictionaryContainer {
	// constructors
	public StoreProductParameters ();
	public StoreProductParameters (Foundation.NSDictionary dictionary);
	public StoreProductParameters (int iTunesItemIdentifier);
	// properties
	public string AffiliateToken { get; set; }
	public string CampaignToken { get; set; }
	public int? ITunesItemIdentifier { get; set; }
	public string ProductIdentifier { get; }
	public string ProviderToken { get; }
}

Namespace UserNotifications

Type Changed: UserNotifications.UNAuthorizationOptions

Added value:

Announcement = 128,

Type Changed: UserNotifications.UNAuthorizationStatus

Added value:

Ephemeral = 4,

Type Changed: UserNotifications.UNNotificationPresentationOptions

Added values:

Banner = 16,
List = 8,

Namespace VideoSubscriberAccount

Type Changed: VideoSubscriberAccount.VSAccountMetadataRequest

Added property:

public virtual VSAccountApplicationProvider[] ApplicationAccountProviders { get; set; }

New Type: VideoSubscriberAccount.VSAccountApplicationProvider

public class VSAccountApplicationProvider : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected VSAccountApplicationProvider (Foundation.NSObjectFlag t);
	protected VSAccountApplicationProvider (IntPtr handle);
	public VSAccountApplicationProvider (string localizedDisplayName, string identifier);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string Identifier { get; }
	public virtual string LocalizedDisplayName { get; }
}

Namespace VideoToolbox

Type Changed: VideoToolbox.VTCompressionProperties

Added property:

public bool? PreserveDynamicHdrMetadata { get; set; }

Type Changed: VideoToolbox.VTCompressionPropertyKey

Added properties:

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

Type Changed: VideoToolbox.VTDecompressionProperties

Added property:

public bool? PropagatePerFrameHhrDisplayMetadata { get; set; }

Type Changed: VideoToolbox.VTDecompressionPropertyKey

Added property:

public static Foundation.NSString PropagatePerFrameHdrDisplayMetadata { get; }

Type Changed: VideoToolbox.VTStatus

Added values:

DecoderNeedsRosetta = -17692,
EncoderNeedsRosetta = -17693,

Type Changed: VideoToolbox.VTUtilities

Added method:

public static void RegisterSupplementalVideoDecoder (CoreMedia.CMVideoCodecType codecType);

Type Changed: VideoToolbox.VTVideoEncoder

Added properties:

public ulong? GpuRegistryId { get; }
public bool? InstanceLimit { get; }
public bool? IsHardwareAccelerated { get; }
public Foundation.NSNumber PerformanceRating { get; }
public Foundation.NSNumber QualityRating { get; }
public Foundation.NSDictionary SupportedSelectionProperties { get; }
public bool SupportsFrameReordering { get; }

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; }
}

Namespace WebKit

Type Changed: WebKit.WKErrorCode

Added values:

JavaScriptAppBoundDomain = 14,
JavaScriptInvalidFrameTarget = 12,
NavigationAppBoundDomain = 13,

Type Changed: WebKit.WKNavigationDelegate

Added method:

public virtual void ShouldAllowDeprecatedTls (WKWebView webView, Foundation.NSUrlAuthenticationChallenge challenge, System.Action<bool> decisionHandler);

Type Changed: WebKit.WKNavigationDelegate_Extensions

Added method:

public static void ShouldAllowDeprecatedTls (this IWKNavigationDelegate This, WKWebView webView, Foundation.NSUrlAuthenticationChallenge challenge, System.Action<bool> decisionHandler);

Type Changed: WebKit.WKScriptMessage

Added property:

public virtual WKContentWorld World { get; }

Type Changed: WebKit.WKUserContentController

Added methods:

public virtual void AddScriptMessageHandler (IWKScriptMessageHandler scriptMessageHandler, WKContentWorld world, string name);
public virtual void AddScriptMessageHandler (IWKScriptMessageHandlerWithReply scriptMessageHandlerWithReply, WKContentWorld contentWorld, string name);
public virtual void RemoveAllScriptMessageHandlers ();
public virtual void RemoveAllScriptMessageHandlers (WKContentWorld contentWorld);
public virtual void RemoveScriptMessageHandler (string name, WKContentWorld contentWorld);

Type Changed: WebKit.WKUserScript

Added constructor:

public WKUserScript (Foundation.NSString source, WKUserScriptInjectionTime injectionTime, bool isForMainFrameOnly, WKContentWorld contentWorld);

Type Changed: WebKit.WKWebView

Added properties:

public virtual string MediaType { get; set; }
public virtual nfloat PageZoom { get; set; }

Added methods:

public virtual void CallAsyncJavaScript (string functionBody, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> arguments, WKFrameInfo frame, WKContentWorld contentWorld, System.Action<Foundation.NSObject,Foundation.NSError> completionHandler);
public virtual System.Threading.Tasks.Task<Foundation.NSObject> CallAsyncJavaScriptAsync (string functionBody, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> arguments, WKFrameInfo frame, WKContentWorld contentWorld);
public virtual void CreatePdf (WKPdfConfiguration pdfConfiguration, System.Action<Foundation.NSData,Foundation.NSError> completionHandler);
public virtual System.Threading.Tasks.Task<Foundation.NSData> CreatePdfAsync (WKPdfConfiguration pdfConfiguration);
public virtual void CreateWebArchive (System.Action<Foundation.NSData,Foundation.NSError> completionHandler);
public virtual System.Threading.Tasks.Task<Foundation.NSData> CreateWebArchiveAsync ();
public virtual void EvaluateJavaScript (string javaScriptString, WKFrameInfo frame, WKContentWorld contentWorld, System.Action<Foundation.NSObject,Foundation.NSError> completionHandler);
public virtual System.Threading.Tasks.Task<Foundation.NSObject> EvaluateJavaScriptAsync (string javaScriptString, WKFrameInfo frame, WKContentWorld contentWorld);
public virtual void Find (string string, WKFindConfiguration configuration, System.Action<WKFindResult> completionHandler);
public virtual System.Threading.Tasks.Task<WKFindResult> FindAsync (string string, WKFindConfiguration configuration);
public virtual AppKit.NSPrintOperation GetPrintOperation (AppKit.NSPrintInfo printInfo);

Type Changed: WebKit.WKWebViewConfiguration

Added property:

public virtual bool LimitsNavigationsToAppBoundDomains { get; set; }

Type Changed: WebKit.WKWebpagePreferences

Added property:

public virtual bool AllowsContentJavaScript { get; set; }

Type Changed: WebKit.WKWebsiteDataStore

Obsoleted constructors:

 [Obsolete ("This constructor does not create a valid instance of the type.")]
 public WKWebsiteDataStore ();

Type Changed: WebKit.WebDragDestinationAction

Obsoleted fields:

 [Obsolete ("This API is not available on this platform.")]
 Selection = 8,

New Type: WebKit.IWKScriptMessageHandlerWithReply

public interface IWKScriptMessageHandlerWithReply : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DidReceiveScriptMessage (WKUserContentController userContentController, WKScriptMessage message, System.Action<Foundation.NSObject,Foundation.NSString> replyHandler);
}

New Type: WebKit.WKContentWorld

public class WKContentWorld : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected WKContentWorld (Foundation.NSObjectFlag t);
	protected WKContentWorld (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static WKContentWorld DefaultClient { get; }
	public virtual string Name { get; }
	public static WKContentWorld Page { get; }
	// methods
	public static WKContentWorld Create (string name);
}

New Type: WebKit.WKFindConfiguration

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

New Type: WebKit.WKFindResult

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

New Type: WebKit.WKPdfConfiguration

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

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 ClassKit

New Type: ClassKit.CLSActivity

public class CLSActivity : ClassKit.CLSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CLSActivity (Foundation.NSCoder coder);
	protected CLSActivity (Foundation.NSObjectFlag t);
	protected CLSActivity (IntPtr handle);
	// properties
	public virtual CLSActivityItem[] AdditionalActivityItems { get; }
	public override IntPtr ClassHandle { get; }
	public virtual double Duration { get; }
	public virtual CLSActivityItem PrimaryActivityItem { get; set; }
	public virtual double Progress { get; set; }
	public virtual bool Started { get; }
	// methods
	public virtual void AddAdditionalActivityItem (CLSActivityItem activityItem);
	public virtual void AddProgressRange (double start, double end);
	public virtual void Start ();
	public virtual void Stop ();
}

New Type: ClassKit.CLSActivityItem

public class CLSActivityItem : ClassKit.CLSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CLSActivityItem (Foundation.NSCoder coder);
	protected CLSActivityItem (Foundation.NSObjectFlag t);
	protected CLSActivityItem (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string Identifier { get; }
	public virtual string Title { get; set; }
}

New Type: ClassKit.CLSBinaryItem

public class CLSBinaryItem : ClassKit.CLSActivityItem, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CLSBinaryItem (Foundation.NSCoder coder);
	protected CLSBinaryItem (Foundation.NSObjectFlag t);
	protected CLSBinaryItem (IntPtr handle);
	public CLSBinaryItem (string identifier, string title, CLSBinaryValueType valueType);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool Value { get; set; }
	public virtual CLSBinaryValueType ValueType { get; }
}

New Type: ClassKit.CLSBinaryValueType

[Serializable]
public enum CLSBinaryValueType {
	CorrectIncorrect = 3,
	PassFail = 1,
	TrueFalse = 0,
	YesNo = 2,
}

New Type: ClassKit.CLSContext

public class CLSContext : ClassKit.CLSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CLSContext (Foundation.NSCoder coder);
	protected CLSContext (Foundation.NSObjectFlag t);
	protected CLSContext (IntPtr handle);
	public CLSContext (CLSContextType type, string identifier, string title);
	// properties
	public virtual bool Active { get; }
	public virtual bool Assignable { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual CLSActivity CurrentActivity { get; }
	public virtual string CustomTypeName { get; set; }
	public virtual nint DisplayOrder { get; set; }
	public virtual string Identifier { get; }
	public virtual string[] IdentifierPath { get; }
	public virtual CLSContext Parent { get; }
	public virtual Foundation.NSSet<CLSProgressReportingCapability> ProgressReportingCapabilities { get; }
	public virtual Foundation.NSRange SuggestedAge { get; set; }
	public virtual Foundation.NSRange SuggestedCompletionTime { get; set; }
	public virtual string Summary { get; set; }
	public virtual CoreGraphics.CGImage Thumbnail { get; set; }
	public virtual string Title { get; set; }
	public CLSContextTopic Topic { get; set; }
	public virtual CLSContextType Type { get; }
	public virtual Foundation.NSUrl UniversalLinkUrl { get; set; }
	protected virtual Foundation.NSString WeakTopic { get; set; }
	// methods
	public virtual void AddChild (CLSContext childContext);
	public virtual void AddProgressReportingCapabilities (Foundation.NSSet<CLSProgressReportingCapability> capabilities);
	public virtual void BecomeActive ();
	public virtual CLSActivity CreateNewActivity ();
	public virtual void FindDescendantMatching (string[] identifierPath, System.Action<CLSContext,Foundation.NSError> completion);
	public virtual System.Threading.Tasks.Task<CLSContext> FindDescendantMatchingAsync (string[] identifierPath);
	public virtual void RemoveFromParent ();
	public virtual void ResetProgressReportingCapabilities ();
	public virtual void ResignActive ();
	public virtual void SetType (CLSContextType type);
}

New Type: ClassKit.CLSContextTopic

[Serializable]
public enum CLSContextTopic {
	ArtsAndMusic = 6,
	ComputerScienceAndEngineering = 5,
	HealthAndFitness = 7,
	LiteracyAndWriting = 2,
	Math = 0,
	Science = 1,
	SocialScience = 4,
	WorldLanguage = 3,
}

New Type: ClassKit.CLSContextTopicExtensions

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

New Type: ClassKit.CLSContextType

[Serializable]
public enum CLSContextType {
	App = 1,
	Audio = 14,
	Book = 11,
	Challenge = 7,
	Chapter = 2,
	Course = 16,
	Custom = 17,
	Document = 13,
	Exercise = 9,
	Game = 12,
	Lesson = 10,
	Level = 4,
	None = 0,
	Page = 5,
	Quiz = 8,
	Section = 3,
	Task = 6,
	Video = 15,
}

New Type: ClassKit.CLSDataStore

public class CLSDataStore : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected CLSDataStore (Foundation.NSObjectFlag t);
	protected CLSDataStore (IntPtr handle);
	// properties
	public virtual CLSContext ActiveContext { get; }
	public override IntPtr ClassHandle { get; }
	public ICLSDataStoreDelegate Delegate { get; set; }
	public virtual CLSContext MainAppContext { get; }
	public virtual CLSActivity RunningActivity { get; }
	public static CLSDataStore Shared { get; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	public virtual void CompleteAllAssignedActivitiesMatching (string[] contextPath);
	protected override void Dispose (bool disposing);
	public virtual void FindContextsMatching (Foundation.NSPredicate predicate, System.Action<CLSContext[],Foundation.NSError> completion);
	public virtual void FindContextsMatching (string[] identifierPath, System.Action<CLSContext[],Foundation.NSError> completion);
	public virtual System.Threading.Tasks.Task<CLSContext[]> FindContextsMatchingAsync (Foundation.NSPredicate predicate);
	public virtual System.Threading.Tasks.Task<CLSContext[]> FindContextsMatchingAsync (string[] identifierPath);
	public virtual void Remove (CLSContext context);
	public virtual void Save (System.Action<Foundation.NSError> completion);
	public virtual System.Threading.Tasks.Task SaveAsync ();
}

New Type: ClassKit.CLSDataStoreDelegate

public abstract class CLSDataStoreDelegate : Foundation.NSObject, ICLSDataStoreDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected CLSDataStoreDelegate ();
	protected CLSDataStoreDelegate (Foundation.NSObjectFlag t);
	protected CLSDataStoreDelegate (IntPtr handle);
	// methods
	public virtual CLSContext CreateContext (string identifier, CLSContext parentContext, string[] parentIdentifierPath);
}

New Type: ClassKit.CLSErrorCode

[Serializable]
public enum CLSErrorCode {
	AuthorizationDenied = 4,
	ClassKitUnavailable = 1,
	DatabaseInaccessible = 5,
	InvalidArgument = 2,
	InvalidCreate = 7,
	InvalidModification = 3,
	InvalidUpdate = 8,
	Limits = 6,
	None = 0,
	PartialFailure = 9,
}

New Type: ClassKit.CLSErrorCodeExtensions

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

New Type: ClassKit.CLSErrorUserInfoKeys

public static class CLSErrorUserInfoKeys {
	// properties
	public static Foundation.NSString ObjectKey { get; }
	public static Foundation.NSString UnderlyingErrorsKey { get; }
}

New Type: ClassKit.CLSObject

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

New Type: ClassKit.CLSPredicateKeyPath

public static class CLSPredicateKeyPath {
	// properties
	public static Foundation.NSString DateCreated { get; }
	public static Foundation.NSString Identifier { get; }
	public static Foundation.NSString Parent { get; }
	public static Foundation.NSString Title { get; }
	public static Foundation.NSString Topic { get; }
	public static Foundation.NSString UniversalLinkUrl { get; }
}

New Type: ClassKit.CLSProgressReportingCapability

public class CLSProgressReportingCapability : ClassKit.CLSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CLSProgressReportingCapability (Foundation.NSCoder coder);
	protected CLSProgressReportingCapability (Foundation.NSObjectFlag t);
	protected CLSProgressReportingCapability (IntPtr handle);
	public CLSProgressReportingCapability (CLSProgressReportingCapabilityKind kind, string details);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string Details { get; }
	public virtual CLSProgressReportingCapabilityKind Kind { get; }
}

New Type: ClassKit.CLSProgressReportingCapabilityKind

[Serializable]
public enum CLSProgressReportingCapabilityKind {
	Binary = 2,
	Duration = 0,
	Percent = 1,
	Quantity = 3,
	Score = 4,
}

New Type: ClassKit.CLSQuantityItem

public class CLSQuantityItem : ClassKit.CLSActivityItem, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CLSQuantityItem (Foundation.NSCoder coder);
	protected CLSQuantityItem (Foundation.NSObjectFlag t);
	protected CLSQuantityItem (IntPtr handle);
	public CLSQuantityItem (string identifier, string title);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual double Quantity { get; set; }
}

New Type: ClassKit.CLSScoreItem

public class CLSScoreItem : ClassKit.CLSActivityItem, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CLSScoreItem (Foundation.NSCoder coder);
	protected CLSScoreItem (Foundation.NSObjectFlag t);
	protected CLSScoreItem (IntPtr handle);
	public CLSScoreItem (string identifier, string title, double score, double maxScore);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual double MaxScore { get; set; }
	public virtual double Score { get; set; }
}

New Type: ClassKit.ICLSContextProvider

public interface ICLSContextProvider : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void UpdateDescendants (CLSContext context, System.Action<Foundation.NSError> completion);
}

New Type: ClassKit.ICLSDataStoreDelegate

public interface ICLSDataStoreDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual CLSContext CreateContext (string identifier, CLSContext parentContext, string[] parentIdentifierPath);
}

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,
	Int32 = 7,
	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 GetDevice (MLCDeviceType type, bool selectsMultipleComputeDevices);
	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 BindOptimizer (MLCTensorData[] data, MLCTensorOptimizerDeviceData[] deviceData, 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 OSLog

New Type: OSLog.IOSLogEntryFromProcess

public interface IOSLogEntryFromProcess : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual ulong ActivityIdentifier { get; }
	public virtual string Process { get; }
	public virtual int ProcessIdentifier { get; }
	public virtual string Sender { get; }
	public virtual ulong ThreadIdentifier { get; }
}

New Type: OSLog.IOSLogEntryWithPayload

public interface IOSLogEntryWithPayload : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual string Category { get; }
	public virtual OSLogMessageComponent[] Components { get; }
	public virtual string FormatString { get; }
	public virtual string Subsystem { get; }
}

New Type: OSLog.OSLogEntry

public class OSLogEntry : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected OSLogEntry (Foundation.NSObjectFlag t);
	protected OSLogEntry (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string ComposedMessage { get; }
	public virtual Foundation.NSDate Date { get; }
	public virtual OSLogEntryStoreCategory StoreCategory { get; }
}

New Type: OSLog.OSLogEntryActivity

public class OSLogEntryActivity : OSLog.OSLogEntry, Foundation.INSObjectProtocol, IOSLogEntryFromProcess, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected OSLogEntryActivity (Foundation.NSObjectFlag t);
	protected OSLogEntryActivity (IntPtr handle);
	// properties
	public virtual ulong ActivityIdentifier { get; }
	public override IntPtr ClassHandle { get; }
	public virtual ulong ParentActivityIdentifier { get; }
	public virtual string Process { get; }
	public virtual int ProcessIdentifier { get; }
	public virtual string Sender { get; }
	public virtual ulong ThreadIdentifier { get; }
}

New Type: OSLog.OSLogEntryBoundary

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

New Type: OSLog.OSLogEntryLog

public class OSLogEntryLog : OSLog.OSLogEntry, Foundation.INSObjectProtocol, IOSLogEntryFromProcess, IOSLogEntryWithPayload, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected OSLogEntryLog (Foundation.NSObjectFlag t);
	protected OSLogEntryLog (IntPtr handle);
	// properties
	public virtual ulong ActivityIdentifier { get; }
	public virtual string Category { get; }
	public override IntPtr ClassHandle { get; }
	public virtual OSLogMessageComponent[] Components { get; }
	public virtual string FormatString { get; }
	public virtual OSLogEntryLogLevel Level { get; }
	public virtual string Process { get; }
	public virtual int ProcessIdentifier { get; }
	public virtual string Sender { get; }
	public virtual string Subsystem { get; }
	public virtual ulong ThreadIdentifier { get; }
}

New Type: OSLog.OSLogEntryLogLevel

[Serializable]
public enum OSLogEntryLogLevel {
	Debug = 1,
	Error = 4,
	Fault = 5,
	Info = 2,
	Notice = 3,
	Undefined = 0,
}

New Type: OSLog.OSLogEntrySignpost

public class OSLogEntrySignpost : OSLog.OSLogEntry, Foundation.INSObjectProtocol, IOSLogEntryFromProcess, IOSLogEntryWithPayload, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected OSLogEntrySignpost (Foundation.NSObjectFlag t);
	protected OSLogEntrySignpost (IntPtr handle);
	// properties
	public virtual ulong ActivityIdentifier { get; }
	public virtual string Category { get; }
	public override IntPtr ClassHandle { get; }
	public virtual OSLogMessageComponent[] Components { get; }
	public virtual string FormatString { get; }
	public virtual string Process { get; }
	public virtual int ProcessIdentifier { get; }
	public virtual string Sender { get; }
	public virtual ulong SignpostIdentifier { get; }
	public virtual string SignpostName { get; }
	public virtual OSLogEntrySignpostType SignpostType { get; }
	public virtual string Subsystem { get; }
	public virtual ulong ThreadIdentifier { get; }
}

New Type: OSLog.OSLogEntrySignpostType

[Serializable]
public enum OSLogEntrySignpostType {
	Event = 3,
	IntervalBegin = 1,
	IntervalEnd = 2,
	Undefined = 0,
}

New Type: OSLog.OSLogEntryStoreCategory

[Serializable]
public enum OSLogEntryStoreCategory {
	LongTerm1 = 4,
	LongTerm14 = 7,
	LongTerm3 = 5,
	LongTerm30 = 8,
	LongTerm7 = 6,
	LongTermAuto = 3,
	Metadata = 1,
	ShortTerm = 2,
	Undefined = 0,
}

New Type: OSLog.OSLogEnumerator

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

New Type: OSLog.OSLogEnumeratorOptions

[Serializable]
[Flags]
public enum OSLogEnumeratorOptions {
	Reverse = 1,
}

New Type: OSLog.OSLogMessageComponent

public class OSLogMessageComponent : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected OSLogMessageComponent (Foundation.NSObjectFlag t);
	protected OSLogMessageComponent (IntPtr handle);
	// properties
	public virtual OSLogMessageComponentArgumentCategory ArgumentCategory { get; }
	public virtual Foundation.NSData ArgumentDataValue { get; }
	public virtual double ArgumentDoubleValue { get; }
	public virtual long ArgumentInt64Value { get; }
	public virtual Foundation.NSNumber ArgumentNumberValue { get; }
	public virtual string ArgumentStringValue { get; }
	public virtual ulong ArgumentUInt64Value { get; }
	public override IntPtr ClassHandle { get; }
	public virtual string FormatSubstring { get; }
	public virtual string Placeholder { get; }
}

New Type: OSLog.OSLogMessageComponentArgumentCategory

[Serializable]
public enum OSLogMessageComponentArgumentCategory {
	Data = 1,
	Double = 2,
	Int64 = 3,
	String = 4,
	UInt64 = 5,
	Undefined = 0,
}

New Type: OSLog.OSLogPosition

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

New Type: OSLog.OSLogStore

public class OSLogStore : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected OSLogStore (Foundation.NSObjectFlag t);
	protected OSLogStore (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public static OSLogStore CreateLocalStore (out Foundation.NSError error);
	public static OSLogStore CreateStore (Foundation.NSUrl url, out Foundation.NSError error);
	public virtual OSLogEnumerator GetEntriesEnumerator (out Foundation.NSError error);
	public virtual OSLogEnumerator GetEntriesEnumerator (OSLogEnumeratorOptions options, OSLogPosition position, Foundation.NSPredicate predicate, out Foundation.NSError error);
	public virtual OSLogPosition GetPosition (Foundation.NSDate date);
	public virtual OSLogPosition GetPositionWithTimeIntervalSinceEnd (double seconds);
	public virtual OSLogPosition GetPositionWithTimeIntervalSinceLatestBoot (double seconds);
}

New Namespace PassKit

New Type: PassKit.IPKPaymentAuthorizationControllerDelegate

public interface IPKPaymentAuthorizationControllerDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DidFinish (PKPaymentAuthorizationController controller);
	public virtual AppKit.NSWindow GetPresentationWindow (PKPaymentAuthorizationController controller);
}

New Type: PassKit.IPKPaymentAuthorizationViewControllerDelegate

public interface IPKPaymentAuthorizationViewControllerDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void PaymentAuthorizationViewControllerDidFinish (PKPaymentAuthorizationViewController controller);
	public virtual void WillAuthorizePayment (PKPaymentAuthorizationViewController controller);
}

New Type: PassKit.IPKPaymentInformationRequestHandling

public interface IPKPaymentInformationRequestHandling : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void HandleConfigurationRequest (PKBarcodeEventConfigurationRequest configurationRequest, System.Action completion);
	public virtual void HandleInformationRequest (PKBarcodeEventMetadataRequest infoRequest, PKInformationRequestCompletionBlock completion);
	public virtual void HandleSignatureRequest (PKBarcodeEventSignatureRequest signatureRequest, PKSignatureRequestCompletionBlock completion);
}

New Type: PassKit.PKAddCarKeyPassConfiguration

public class PKAddCarKeyPassConfiguration : PassKit.PKAddSecureElementPassConfiguration, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public PKAddCarKeyPassConfiguration ();
	protected PKAddCarKeyPassConfiguration (Foundation.NSObjectFlag t);
	protected PKAddCarKeyPassConfiguration (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string Password { get; set; }
}

New Type: PassKit.PKAddPaymentPassError

[Serializable]
public enum PKAddPaymentPassError {
	SystemCancelled = 2,
	Unsupported = 0,
	UserCancelled = 1,
}

New Type: PassKit.PKAddPaymentPassRequest

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

New Type: PassKit.PKAddPaymentPassRequestConfiguration

public class PKAddPaymentPassRequestConfiguration : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public PKAddPaymentPassRequestConfiguration (Foundation.NSCoder coder);
	protected PKAddPaymentPassRequestConfiguration (Foundation.NSObjectFlag t);
	public PKAddPaymentPassRequestConfiguration (Foundation.NSString encryptionScheme);
	protected PKAddPaymentPassRequestConfiguration (IntPtr handle);
	// properties
	public virtual PKLabeledValue[] CardDetails { get; set; }
	public virtual string CardholderName { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSString EncryptionScheme { get; }
	public virtual string LocalizedDescription { get; set; }
	public virtual string PaymentNetwork { get; set; }
	public virtual string PrimaryAccountIdentifier { get; set; }
	public virtual string PrimaryAccountSuffix { get; set; }
	public virtual Foundation.NSSet<Foundation.NSString> ProductIdentifiers { get; set; }
	public virtual bool RequiresFelicaSecureElement { get; set; }
	public virtual PKAddPaymentPassStyle Style { get; set; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: PassKit.PKAddPaymentPassStyle

[Serializable]
public enum PKAddPaymentPassStyle {
	Access = 1,
	Payment = 0,
}

New Type: PassKit.PKAddSecureElementPassConfiguration

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

New Type: PassKit.PKAddSecureElementPassErrorCode

[Serializable]
public enum PKAddSecureElementPassErrorCode {
	DeviceNotReadyError = 5,
	DeviceNotSupportedError = 4,
	InvalidConfigurationError = 3,
	UnavailableError = 2,
	UnknownError = 0,
	UserCanceledError = 1,
}

New Type: PassKit.PKAddSecureElementPassErrorCodeExtensions

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

New Type: PassKit.PKAddShareablePassConfiguration

public class PKAddShareablePassConfiguration : PassKit.PKAddSecureElementPassConfiguration, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected PKAddShareablePassConfiguration (Foundation.NSObjectFlag t);
	protected PKAddShareablePassConfiguration (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual PKShareablePassMetadata[] CredentialsMetadata { get; }
	public virtual PKAddShareablePassConfigurationPrimaryAction PrimaryAction { get; }
	public virtual string ProvisioningPolicyIdentifier { get; }
	// methods
	public static void GetConfiguration (PKShareablePassMetadata[] passMetadata, string provisioningPolicyIdentifier, PKAddShareablePassConfigurationPrimaryAction action, System.Action<PKAddShareablePassConfiguration,Foundation.NSError> completion);
	public static System.Threading.Tasks.Task<PKAddShareablePassConfiguration> GetConfigurationAsync (PKShareablePassMetadata[] passMetadata, string provisioningPolicyIdentifier, PKAddShareablePassConfigurationPrimaryAction action);
}

New Type: PassKit.PKAddShareablePassConfigurationPrimaryAction

[Serializable]
public enum PKAddShareablePassConfigurationPrimaryAction {
	Add = 0,
	Share = 1,
}

New Type: PassKit.PKAutomaticPassPresentationSuppressionResult

[Serializable]
public enum PKAutomaticPassPresentationSuppressionResult {
	AlreadyPresenting = 1,
	Cancelled = 3,
	Denied = 2,
	NotSupported = 0,
	Success = 4,
}

New Type: PassKit.PKBarcodeEventConfigurationDataType

[Serializable]
public enum PKBarcodeEventConfigurationDataType {
	SigningCertificate = 2,
	SigningKeyMaterial = 1,
	Unknown = 0,
}

New Type: PassKit.PKBarcodeEventConfigurationRequest

public class PKBarcodeEventConfigurationRequest : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected PKBarcodeEventConfigurationRequest (Foundation.NSObjectFlag t);
	protected PKBarcodeEventConfigurationRequest (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSData ConfigurationData { get; }
	public virtual PKBarcodeEventConfigurationDataType ConfigurationDataType { get; }
	public virtual string DeviceAccountIdentifier { get; }
}

New Type: PassKit.PKBarcodeEventMetadataRequest

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

New Type: PassKit.PKBarcodeEventMetadataResponse

public class PKBarcodeEventMetadataResponse : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public PKBarcodeEventMetadataResponse (Foundation.NSData paymentInformation);
	protected PKBarcodeEventMetadataResponse (Foundation.NSObjectFlag t);
	protected PKBarcodeEventMetadataResponse (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSData PaymentInformation { get; set; }
}

New Type: PassKit.PKBarcodeEventSignatureRequest

public class PKBarcodeEventSignatureRequest : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected PKBarcodeEventSignatureRequest (Foundation.NSObjectFlag t);
	protected PKBarcodeEventSignatureRequest (IntPtr handle);
	// properties
	public virtual Foundation.NSNumber Amount { get; }
	public virtual string BarcodeIdentifier { get; }
	public override IntPtr ClassHandle { get; }
	public virtual string CurrencyCode { get; }
	public virtual string DeviceAccountIdentifier { get; }
	public virtual string MerchantName { get; }
	public virtual Foundation.NSData PartialSignature { get; }
	public virtual string RawMerchantName { get; }
	public virtual Foundation.NSDate TransactionDate { get; }
	public virtual string TransactionIdentifier { get; }
	public virtual string TransactionStatus { get; }
}

New Type: PassKit.PKBarcodeEventSignatureResponse

public class PKBarcodeEventSignatureResponse : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public PKBarcodeEventSignatureResponse (Foundation.NSData signedData);
	protected PKBarcodeEventSignatureResponse (Foundation.NSObjectFlag t);
	protected PKBarcodeEventSignatureResponse (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSData SignedData { get; set; }
}

New Type: PassKit.PKContact

public class PKContact : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public PKContact ();
	public PKContact (Foundation.NSCoder coder);
	protected PKContact (Foundation.NSObjectFlag t);
	protected PKContact (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string EmailAddress { get; set; }
	public virtual Foundation.NSPersonNameComponents Name { get; set; }
	public virtual Contacts.CNPhoneNumber PhoneNumber { get; set; }
	public virtual Contacts.CNPostalAddress PostalAddress { get; set; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: PassKit.PKContactFields

[Serializable]
[Flags]
public enum PKContactFields {
	EmailAddress = 2,
	Name = 8,
	None = 0,
	PhoneNumber = 4,
	PhoneticName = 16,
	PostalAddress = 1,
}

New Type: PassKit.PKContactFieldsExtensions

public static class PKContactFieldsExtensions {
	// methods
	public static Foundation.NSString GetConstant (this PKContactFields self);
	public static Foundation.NSSet GetSet (PKContactFields values);
	public static PKContactFields GetValue (Foundation.NSSet set);
	public static PKContactFields GetValue (Foundation.NSString constant);
}

New Type: PassKit.PKEncryptionScheme

public static class PKEncryptionScheme {
	// properties
	public static Foundation.NSString Ecc_V2 { get; }
	public static Foundation.NSString Rsa_V2 { get; }
}

New Type: PassKit.PKInformationRequestCompletionBlock

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

New Type: PassKit.PKIssuerProvisioningExtensionPassEntry

public class PKIssuerProvisioningExtensionPassEntry : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected PKIssuerProvisioningExtensionPassEntry (Foundation.NSObjectFlag t);
	protected PKIssuerProvisioningExtensionPassEntry (IntPtr handle);
	// properties
	public virtual CoreGraphics.CGImage Art { get; }
	public override IntPtr ClassHandle { get; }
	public virtual string Identifier { get; }
	public virtual string Title { get; }
}

New Type: PassKit.PKIssuerProvisioningExtensionPaymentPassEntry

public class PKIssuerProvisioningExtensionPaymentPassEntry : PassKit.PKIssuerProvisioningExtensionPassEntry, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected PKIssuerProvisioningExtensionPaymentPassEntry (Foundation.NSObjectFlag t);
	protected PKIssuerProvisioningExtensionPaymentPassEntry (IntPtr handle);
	public PKIssuerProvisioningExtensionPaymentPassEntry (string identifier, string title, CoreGraphics.CGImage art, PKAddPaymentPassRequestConfiguration configuration);
	// properties
	public virtual PKAddPaymentPassRequestConfiguration AddRequestConfiguration { get; }
	public override IntPtr ClassHandle { get; }
}

New Type: PassKit.PKIssuerProvisioningExtensionStatus

public class PKIssuerProvisioningExtensionStatus : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public PKIssuerProvisioningExtensionStatus ();
	protected PKIssuerProvisioningExtensionStatus (Foundation.NSObjectFlag t);
	protected PKIssuerProvisioningExtensionStatus (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool PassEntriesAvailable { get; set; }
	public virtual bool RemotePassEntriesAvailable { get; set; }
	public virtual bool RequiresAuthentication { get; set; }
}

New Type: PassKit.PKLabeledValue

public class PKLabeledValue : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected PKLabeledValue (Foundation.NSObjectFlag t);
	protected PKLabeledValue (IntPtr handle);
	public PKLabeledValue (string label, string value);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string Label { get; }
	public virtual string Value { get; }
}

New Type: PassKit.PKMerchantCapability

[Serializable]
public enum PKMerchantCapability {
	Credit = 4,
	Debit = 8,
	EMV = 2,
	ThreeDS = 1,
}

New Type: PassKit.PKObject

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

New Type: PassKit.PKPass

public class PKPass : PassKit.PKObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public PKPass ();
	public PKPass (Foundation.NSCoder coder);
	protected PKPass (Foundation.NSObjectFlag t);
	protected PKPass (IntPtr handle);
	public PKPass (Foundation.NSData data, out Foundation.NSError error);
	// properties
	public virtual string AuthenticationToken { get; }
	public override IntPtr ClassHandle { get; }
	public virtual string DeviceName { get; }
	public virtual string LocalizedDescription { get; }
	public virtual string LocalizedName { get; }
	public virtual string OrganizationName { get; }
	public virtual PKPassType PassType { get; }
	public virtual string PassTypeIdentifier { get; }
	public virtual Foundation.NSUrl PassUrl { get; }
	public virtual Foundation.NSDate RelevantDate { get; }
	public virtual bool RemotePass { get; }
	public virtual PKSecureElementPass SecureElementPass { get; }
	public virtual string SerialNumber { get; }
	public virtual Foundation.NSDictionary UserInfo { get; }
	public virtual Foundation.NSUrl WebServiceUrl { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public virtual Foundation.NSObject GetLocalizedValue (Foundation.NSString key);
}

New Type: PassKit.PKPassKitErrorCode

[Serializable]
public enum PKPassKitErrorCode {
	InvalidData = 1,
	InvalidSignature = 3,
	None = 0,
	NotEntitled = 4,
	Unknown = -1,
	UnsupportedVersion = 2,
}

New Type: PassKit.PKPassKitErrorCodeExtensions

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

New Type: PassKit.PKPassLibrary

public class PKPassLibrary : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public PKPassLibrary ();
	protected PKPassLibrary (Foundation.NSObjectFlag t);
	protected PKPassLibrary (IntPtr handle);
	// properties
	public virtual bool CanAddFelicaPass { get; }
	public override IntPtr ClassHandle { get; }
	public static Foundation.NSString DidChangeNotification { get; }
	public static bool IsAvailable { get; }
	public static bool IsSuppressingAutomaticPassPresentation { get; }
	public static Foundation.NSString RemotePaymentPassesDidChangeNotification { get; }
	public virtual PKSecureElementPass[] RemoteSecureElementPasses { get; }
	public virtual bool SecureElementPassActivationAvailable { get; }
	// methods
	public virtual void ActivateSecureElementPass (PKSecureElementPass secureElementPass, Foundation.NSData activationData, System.Action<System.Boolean,Foundation.NSError> completion);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> ActivateSecureElementPassAsync (PKSecureElementPass secureElementPass, Foundation.NSData activationData);
	public virtual void AddPasses (PKPass[] passes, System.Action<PKPassLibraryAddPassesStatus> completion);
	public virtual System.Threading.Tasks.Task<PKPassLibraryAddPassesStatus> AddPassesAsync (PKPass[] passes);
	public virtual bool CanAddSecureElementPass (string primaryAccountIdentifier);
	public virtual bool Contains (PKPass pass);
	public static void EndAutomaticPassPresentationSuppression (nuint requestToken);
	public virtual PKPass GetPass (string identifier, string serialNumber);
	public virtual PKPass[] GetPasses ();
	public virtual PKPass[] GetPasses (PKPassType passType);
	public virtual void OpenPaymentSetup ();
	public virtual void PresentSecureElementPass (PKSecureElementPass pass);
	public virtual void Remove (PKPass pass);
	public virtual bool Replace (PKPass pass);
	public static nuint RequestAutomaticPassPresentationSuppression (System.Action<PKAutomaticPassPresentationSuppressionResult> responseHandler);
	public virtual void SignData (Foundation.NSData signData, PKSecureElementPass secureElementPass, PKPassLibrarySignDataCompletionHandler completion);
	public virtual System.Threading.Tasks.Task<PKSignDataCompletionResult> SignDataAsync (Foundation.NSData signData, PKSecureElementPass secureElementPass);

	// 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);
		public static Foundation.NSObject ObserveRemotePaymentPassesDidChange (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveRemotePaymentPassesDidChange (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
	}
}

New Type: PassKit.PKPassLibraryAddPassesStatus

[Serializable]
public enum PKPassLibraryAddPassesStatus {
	DidAddPasses = 0,
	DidCancelAddPasses = 2,
	ShouldReviewPasses = 1,
}

New Type: PassKit.PKPassLibrarySignDataCompletionHandler

public sealed delegate PKPassLibrarySignDataCompletionHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public PKPassLibrarySignDataCompletionHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (Foundation.NSData signedData, Foundation.NSData signature, Foundation.NSError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (Foundation.NSData signedData, Foundation.NSData signature, Foundation.NSError error);
}

New Type: PassKit.PKPassLibraryUserInfoKey

public static class PKPassLibraryUserInfoKey {
	// properties
	public static Foundation.NSString AddedPasses { get; }
	public static Foundation.NSString PassTypeIdentifier { get; }
	public static Foundation.NSString RemovedPassInfos { get; }
	public static Foundation.NSString ReplacementPasses { get; }
	public static Foundation.NSString SerialNumber { get; }
}

New Type: PassKit.PKPassType

[Serializable]
public enum PKPassType {
	Any = 18446744073709551615,
	Barcode = 0,
	Payment = 1,
	SecureElement = 1,
}

New Type: PassKit.PKPayment

public class PKPayment : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public PKPayment ();
	protected PKPayment (Foundation.NSObjectFlag t);
	protected PKPayment (IntPtr handle);
	// properties
	public virtual PKContact BillingContact { get; }
	public override IntPtr ClassHandle { get; }
	public virtual PKContact ShippingContact { get; }
	public virtual PKShippingMethod ShippingMethod { get; }
	public virtual PKPaymentToken Token { get; }
}

New Type: PassKit.PKPaymentAuthorizationController

public class PKPaymentAuthorizationController : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected PKPaymentAuthorizationController (Foundation.NSObjectFlag t);
	public PKPaymentAuthorizationController (PKPaymentRequest request);
	protected PKPaymentAuthorizationController (IntPtr handle);
	// properties
	public static bool CanMakePayments { get; }
	public override IntPtr ClassHandle { get; }
	public virtual IPKPaymentAuthorizationControllerDelegate Delegate { get; set; }
	// methods
	public static bool CanMakePaymentsUsingNetworks (string[] supportedNetworks);
	public static bool CanMakePaymentsUsingNetworks (string[] supportedNetworks, PKMerchantCapability capabilties);
	public virtual void Dismiss (System.Action completion);
	public virtual System.Threading.Tasks.Task DismissAsync ();
	protected override void Dispose (bool disposing);
	public virtual void Present (System.Action<bool> completion);
	public virtual System.Threading.Tasks.Task<bool> PresentAsync ();
}

New Type: PassKit.PKPaymentAuthorizationControllerDelegate

public abstract class PKPaymentAuthorizationControllerDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, IPKPaymentAuthorizationControllerDelegate, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected PKPaymentAuthorizationControllerDelegate ();
	protected PKPaymentAuthorizationControllerDelegate (Foundation.NSObjectFlag t);
	protected PKPaymentAuthorizationControllerDelegate (IntPtr handle);
	// methods
	public virtual void DidAuthorizePayment (PKPaymentAuthorizationController controller, PKPayment payment, System.Action<PKPaymentAuthorizationResult> completion);
	public virtual void DidFinish (PKPaymentAuthorizationController controller);
	public virtual void DidRequestMerchantSessionUpdate (PKPaymentAuthorizationController controller, System.Action<PKPaymentRequestMerchantSessionUpdate> handler);
	public virtual void DidSelectPaymentMethod (PKPaymentAuthorizationController controller, PKPaymentMethod paymentMethod, System.Action<PKPaymentRequestPaymentMethodUpdate> completion);
	public virtual void DidSelectShippingContact (PKPaymentAuthorizationController controller, PKContact contact, System.Action<PKPaymentRequestShippingContactUpdate> completion);
	public virtual void DidSelectShippingMethod (PKPaymentAuthorizationController controller, PKPaymentMethod paymentMethod, System.Action<PKPaymentRequestPaymentMethodUpdate> completion);
	public virtual AppKit.NSWindow GetPresentationWindow (PKPaymentAuthorizationController controller);
	public virtual void WillAuthorizePayment (PKPaymentAuthorizationController controller);
}

New Type: PassKit.PKPaymentAuthorizationControllerDelegate_Extensions

public static class PKPaymentAuthorizationControllerDelegate_Extensions {
	// methods
	public static void DidAuthorizePayment (this IPKPaymentAuthorizationControllerDelegate This, PKPaymentAuthorizationController controller, PKPayment payment, System.Action<PKPaymentAuthorizationResult> completion);
	public static void DidRequestMerchantSessionUpdate (this IPKPaymentAuthorizationControllerDelegate This, PKPaymentAuthorizationController controller, System.Action<PKPaymentRequestMerchantSessionUpdate> handler);
	public static void DidSelectPaymentMethod (this IPKPaymentAuthorizationControllerDelegate This, PKPaymentAuthorizationController controller, PKPaymentMethod paymentMethod, System.Action<PKPaymentRequestPaymentMethodUpdate> completion);
	public static void DidSelectShippingContact (this IPKPaymentAuthorizationControllerDelegate This, PKPaymentAuthorizationController controller, PKContact contact, System.Action<PKPaymentRequestShippingContactUpdate> completion);
	public static void DidSelectShippingMethod (this IPKPaymentAuthorizationControllerDelegate This, PKPaymentAuthorizationController controller, PKPaymentMethod paymentMethod, System.Action<PKPaymentRequestPaymentMethodUpdate> completion);
	public static void WillAuthorizePayment (this IPKPaymentAuthorizationControllerDelegate This, PKPaymentAuthorizationController controller);
}

New Type: PassKit.PKPaymentAuthorizationResult

public class PKPaymentAuthorizationResult : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected PKPaymentAuthorizationResult (Foundation.NSObjectFlag t);
	protected PKPaymentAuthorizationResult (IntPtr handle);
	public PKPaymentAuthorizationResult (PKPaymentAuthorizationStatus status, Foundation.NSError[] errors);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSError[] Errors { get; set; }
	public virtual PKPaymentAuthorizationStatus Status { get; set; }
}

New Type: PassKit.PKPaymentAuthorizationResultEventArgs

public class PKPaymentAuthorizationResultEventArgs : System.EventArgs {
	// constructors
	public PKPaymentAuthorizationResultEventArgs (PKPayment payment, System.Action<PKPaymentAuthorizationResult> completion);
	// properties
	public System.Action<PKPaymentAuthorizationResult> Completion { get; set; }
	public PKPayment Payment { get; set; }
}

New Type: PassKit.PKPaymentAuthorizationStatus

[Serializable]
public enum PKPaymentAuthorizationStatus {
	Failure = 1,
	InvalidBillingPostalAddress = 2,
	InvalidShippingContact = 4,
	InvalidShippingPostalAddress = 3,
	PinIncorrect = 6,
	PinLockout = 7,
	PinRequired = 5,
	Success = 0,
}

New Type: PassKit.PKPaymentAuthorizationViewController

public class PKPaymentAuthorizationViewController : AppKit.NSViewController, AppKit.INSEditor, AppKit.INSSeguePerforming, AppKit.INSTouchBarProvider, AppKit.INSUserInterfaceItemIdentification, Foundation.INSCoding, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public PKPaymentAuthorizationViewController ();
	public PKPaymentAuthorizationViewController (Foundation.NSCoder coder);
	protected PKPaymentAuthorizationViewController (Foundation.NSObjectFlag t);
	public PKPaymentAuthorizationViewController (PKPaymentRequest request);
	protected PKPaymentAuthorizationViewController (IntPtr handle);
	// properties
	public static bool CanMakePayments { get; }
	public override IntPtr ClassHandle { get; }
	public IPKPaymentAuthorizationViewControllerDelegate Delegate { get; set; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// events
	public event System.EventHandler<PKPaymentAuthorizationResultEventArgs> DidAuthorizePayment2;
	public event System.EventHandler<PKPaymentRequestMerchantSessionUpdateEventArgs> DidRequestMerchantSessionUpdate;
	public event System.EventHandler<PKPaymentRequestPaymentMethodUpdateEventArgs> DidSelectPaymentMethod2;
	public event System.EventHandler<PKPaymentRequestShippingContactUpdateEventArgs> DidSelectShippingContact2;
	public event System.EventHandler<PKPaymentRequestShippingMethodUpdateEventArgs> DidSelectShippingMethod2;
	public event System.EventHandler PaymentAuthorizationViewControllerDidFinish;
	public event System.EventHandler WillAuthorizePayment;
	// methods
	public static bool CanMakePaymentsUsingNetworks (Foundation.NSString[] paymentNetworks);
	public static bool CanMakePaymentsUsingNetworks (string[] supportedNetworks, PKMerchantCapability capabilties);
	protected override void Dispose (bool disposing);
}

New Type: PassKit.PKPaymentAuthorizationViewControllerDelegate

public abstract class PKPaymentAuthorizationViewControllerDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, IPKPaymentAuthorizationViewControllerDelegate, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected PKPaymentAuthorizationViewControllerDelegate ();
	protected PKPaymentAuthorizationViewControllerDelegate (Foundation.NSObjectFlag t);
	protected PKPaymentAuthorizationViewControllerDelegate (IntPtr handle);
	// methods
	public virtual void DidAuthorizePayment2 (PKPaymentAuthorizationViewController controller, PKPayment payment, System.Action<PKPaymentAuthorizationResult> completion);
	public virtual void DidRequestMerchantSessionUpdate (PKPaymentAuthorizationViewController controller, System.Action<PKPaymentRequestMerchantSessionUpdate> updateHandler);
	public virtual void DidSelectPaymentMethod2 (PKPaymentAuthorizationViewController controller, PKPaymentMethod paymentMethod, System.Action<PKPaymentRequestPaymentMethodUpdate> completion);
	public virtual void DidSelectShippingContact2 (PKPaymentAuthorizationViewController controller, PKContact contact, System.Action<PKPaymentRequestShippingContactUpdate> completion);
	public virtual void DidSelectShippingMethod2 (PKPaymentAuthorizationViewController controller, PKShippingMethod shippingMethod, System.Action<PKPaymentRequestShippingMethodUpdate> completion);
	public virtual void PaymentAuthorizationViewControllerDidFinish (PKPaymentAuthorizationViewController controller);
	public virtual void WillAuthorizePayment (PKPaymentAuthorizationViewController controller);
}

New Type: PassKit.PKPaymentAuthorizationViewControllerDelegate_Extensions

public static class PKPaymentAuthorizationViewControllerDelegate_Extensions {
	// methods
	public static void DidAuthorizePayment2 (this IPKPaymentAuthorizationViewControllerDelegate This, PKPaymentAuthorizationViewController controller, PKPayment payment, System.Action<PKPaymentAuthorizationResult> completion);
	public static void DidRequestMerchantSessionUpdate (this IPKPaymentAuthorizationViewControllerDelegate This, PKPaymentAuthorizationViewController controller, System.Action<PKPaymentRequestMerchantSessionUpdate> updateHandler);
	public static void DidSelectPaymentMethod2 (this IPKPaymentAuthorizationViewControllerDelegate This, PKPaymentAuthorizationViewController controller, PKPaymentMethod paymentMethod, System.Action<PKPaymentRequestPaymentMethodUpdate> completion);
	public static void DidSelectShippingContact2 (this IPKPaymentAuthorizationViewControllerDelegate This, PKPaymentAuthorizationViewController controller, PKContact contact, System.Action<PKPaymentRequestShippingContactUpdate> completion);
	public static void DidSelectShippingMethod2 (this IPKPaymentAuthorizationViewControllerDelegate This, PKPaymentAuthorizationViewController controller, PKShippingMethod shippingMethod, System.Action<PKPaymentRequestShippingMethodUpdate> completion);
}

New Type: PassKit.PKPaymentButton

public class PKPaymentButton : AppKit.NSButton, AppKit.INSAccessibility, AppKit.INSAccessibilityButton, AppKit.INSAccessibilityElementProtocol, AppKit.INSAppearanceCustomization, AppKit.INSDraggingDestination, AppKit.INSTouchBarProvider, AppKit.INSUserInterfaceCompression, AppKit.INSUserInterfaceItemIdentification, AppKit.INSUserInterfaceValidations, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public PKPaymentButton (Foundation.NSCoder coder);
	protected PKPaymentButton (Foundation.NSObjectFlag t);
	protected PKPaymentButton (IntPtr handle);
	public PKPaymentButton (PKPaymentButtonType type, PKPaymentButtonStyle style);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nfloat CornerRadius { get; set; }
	// methods
	public static PKPaymentButton FromType (PKPaymentButtonType buttonType, PKPaymentButtonStyle buttonStyle);
}

New Type: PassKit.PKPaymentButtonStyle

[Serializable]
public enum PKPaymentButtonStyle {
	Automatic = 3,
	Black = 2,
	White = 0,
	WhiteOutline = 1,
}

New Type: PassKit.PKPaymentButtonType

[Serializable]
public enum PKPaymentButtonType {
	AddMoney = 9,
	Book = 5,
	Buy = 1,
	Checkout = 6,
	Contribute = 14,
	Donate = 4,
	InStore = 3,
	Order = 11,
	Plain = 0,
	Reload = 8,
	Rent = 12,
	SetUp = 2,
	Subscribe = 7,
	Support = 13,
	Tip = 15,
	TopUp = 10,
}

New Type: PassKit.PKPaymentErrorCode

[Serializable]
public enum PKPaymentErrorCode {
	BillingContactInvalid = 2,
	ShippingAddressUnserviceable = 3,
	ShippingContactInvalid = 1,
	Unknown = -1,
}

New Type: PassKit.PKPaymentErrorCodeExtensions

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

New Type: PassKit.PKPaymentErrorKeys

public static class PKPaymentErrorKeys {
	// properties
	public static Foundation.NSString ContactFieldUserInfoKey { get; }
	public static Foundation.NSString PostalAddressUserInfoKey { get; }
}

New Type: PassKit.PKPaymentInformationEventExtension

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

New Type: PassKit.PKPaymentMerchantSession

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

New Type: PassKit.PKPaymentMethod

public class PKPaymentMethod : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public PKPaymentMethod ();
	public PKPaymentMethod (Foundation.NSCoder coder);
	protected PKPaymentMethod (Foundation.NSObjectFlag t);
	protected PKPaymentMethod (IntPtr handle);
	// properties
	public virtual Contacts.CNContact BillingAddress { get; }
	public override IntPtr ClassHandle { get; }
	public virtual string DisplayName { get; }
	public virtual string Network { get; }
	public virtual PKSecureElementPass SecureElementPass { get; }
	public virtual PKPaymentMethodType Type { get; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: PassKit.PKPaymentMethodType

[Serializable]
public enum PKPaymentMethodType {
	Credit = 2,
	Debit = 1,
	Prepaid = 3,
	Store = 4,
	Unknown = 0,
}

New Type: PassKit.PKPaymentNetwork

public static class PKPaymentNetwork {
	// properties
	public static Foundation.NSString Amex { get; }
	public static Foundation.NSString Barcode { get; }
	public static Foundation.NSString CartesBancaires { get; }
	public static Foundation.NSString ChinaUnionPay { get; }
	public static Foundation.NSString Discover { get; }
	public static Foundation.NSString Eftpos { get; }
	public static Foundation.NSString Electron { get; }
	public static Foundation.NSString Elo { get; }
	public static Foundation.NSString Girocard { get; }
	public static Foundation.NSString IDCredit { get; }
	public static Foundation.NSString Interac { get; }
	public static Foundation.NSString Jcb { get; }
	public static Foundation.NSString Mada { get; }
	public static Foundation.NSString Maestro { get; }
	public static Foundation.NSString MasterCard { get; }
	public static Foundation.NSString PrivateLabel { get; }
	public static Foundation.NSString QuicPay { get; }
	public static Foundation.NSString Suica { get; }
	public static Foundation.NSString VPay { get; }
	public static Foundation.NSString Visa { get; }
}

New Type: PassKit.PKPaymentPass

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

New Type: PassKit.PKPaymentRequest

public class PKPaymentRequest : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public PKPaymentRequest ();
	protected PKPaymentRequest (Foundation.NSObjectFlag t);
	protected PKPaymentRequest (IntPtr handle);
	// properties
	public virtual Foundation.NSData ApplicationData { get; set; }
	public static Foundation.NSString[] AvailableNetworks { get; }
	public virtual PKContact BillingContact { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual string CountryCode { get; set; }
	public virtual string CurrencyCode { get; set; }
	public virtual PKMerchantCapability MerchantCapabilities { get; set; }
	public virtual string MerchantIdentifier { get; set; }
	public virtual PKPaymentSummaryItem[] PaymentSummaryItems { get; set; }
	public PKContactFields RequiredBillingContactFields { get; set; }
	public PKContactFields RequiredShippingContactFields { get; set; }
	public virtual PKContact ShippingContact { get; set; }
	public virtual PKShippingMethod[] ShippingMethods { get; set; }
	public virtual PKShippingType ShippingType { get; set; }
	public virtual Foundation.NSSet<Foundation.NSString> SupportedCountries { get; set; }
	public virtual Foundation.NSString[] SupportedNetworks { get; set; }
	public virtual Foundation.NSSet WeakRequiredBillingContactFields { get; set; }
	public virtual Foundation.NSSet WeakRequiredShippingContactFields { get; set; }
	// methods
	public static Foundation.NSError CreatePaymentBillingAddressInvalidError (Contacts.CNPostalAddressKeyOption postalAddress, string localizedDescription);
	public static Foundation.NSError CreatePaymentBillingAddressInvalidError (Foundation.NSString postalAddressKey, string localizedDescription);
	public static Foundation.NSError CreatePaymentContactInvalidError (Foundation.NSString field, string localizedDescription);
	public static Foundation.NSError CreatePaymentContactInvalidError (PKContactFields contactField, string localizedDescription);
	public static Foundation.NSError CreatePaymentShippingAddressInvalidError (Contacts.CNPostalAddressKeyOption postalAddress, string localizedDescription);
	public static Foundation.NSError CreatePaymentShippingAddressInvalidError (Foundation.NSString postalAddressKey, string localizedDescription);
	public static Foundation.NSError CreatePaymentShippingAddressUnserviceableError (string localizedDescription);
}

New Type: PassKit.PKPaymentRequestMerchantSessionUpdate

public class PKPaymentRequestMerchantSessionUpdate : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public PKPaymentRequestMerchantSessionUpdate ();
	protected PKPaymentRequestMerchantSessionUpdate (Foundation.NSObjectFlag t);
	protected PKPaymentRequestMerchantSessionUpdate (IntPtr handle);
	public PKPaymentRequestMerchantSessionUpdate (PKPaymentAuthorizationStatus status, PKPaymentMerchantSession session);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual PKPaymentMerchantSession Session { get; set; }
	public virtual PKPaymentAuthorizationStatus Status { get; set; }
}

New Type: PassKit.PKPaymentRequestMerchantSessionUpdateEventArgs

public class PKPaymentRequestMerchantSessionUpdateEventArgs : System.EventArgs {
	// constructors
	public PKPaymentRequestMerchantSessionUpdateEventArgs (System.Action<PKPaymentRequestMerchantSessionUpdate> updateHandler);
	// properties
	public System.Action<PKPaymentRequestMerchantSessionUpdate> UpdateHandler { get; set; }
}

New Type: PassKit.PKPaymentRequestPaymentMethodUpdate

public class PKPaymentRequestPaymentMethodUpdate : PassKit.PKPaymentRequestUpdate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected PKPaymentRequestPaymentMethodUpdate (Foundation.NSObjectFlag t);
	public PKPaymentRequestPaymentMethodUpdate (PKPaymentSummaryItem[] paymentSummaryItems);
	protected PKPaymentRequestPaymentMethodUpdate (IntPtr handle);
	public PKPaymentRequestPaymentMethodUpdate (Foundation.NSError[] errors, PKPaymentSummaryItem[] paymentSummaryItems);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSError[] Errors { get; set; }
}

New Type: PassKit.PKPaymentRequestPaymentMethodUpdateEventArgs

public class PKPaymentRequestPaymentMethodUpdateEventArgs : System.EventArgs {
	// constructors
	public PKPaymentRequestPaymentMethodUpdateEventArgs (PKPaymentMethod paymentMethod, System.Action<PKPaymentRequestPaymentMethodUpdate> completion);
	// properties
	public System.Action<PKPaymentRequestPaymentMethodUpdate> Completion { get; set; }
	public PKPaymentMethod PaymentMethod { get; set; }
}

New Type: PassKit.PKPaymentRequestShippingContactUpdate

public class PKPaymentRequestShippingContactUpdate : PassKit.PKPaymentRequestUpdate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected PKPaymentRequestShippingContactUpdate (Foundation.NSObjectFlag t);
	protected PKPaymentRequestShippingContactUpdate (IntPtr handle);
	public PKPaymentRequestShippingContactUpdate (Foundation.NSError[] errors, PKPaymentSummaryItem[] paymentSummaryItems, PKShippingMethod[] shippingMethods);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSError[] Errors { get; set; }
	public virtual PKShippingMethod[] ShippingMethods { get; set; }
}

New Type: PassKit.PKPaymentRequestShippingContactUpdateEventArgs

public class PKPaymentRequestShippingContactUpdateEventArgs : System.EventArgs {
	// constructors
	public PKPaymentRequestShippingContactUpdateEventArgs (PKContact contact, System.Action<PKPaymentRequestShippingContactUpdate> completion);
	// properties
	public System.Action<PKPaymentRequestShippingContactUpdate> Completion { get; set; }
	public PKContact Contact { get; set; }
}

New Type: PassKit.PKPaymentRequestShippingMethodUpdate

public class PKPaymentRequestShippingMethodUpdate : PassKit.PKPaymentRequestUpdate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected PKPaymentRequestShippingMethodUpdate (Foundation.NSObjectFlag t);
	public PKPaymentRequestShippingMethodUpdate (PKPaymentSummaryItem[] paymentSummaryItems);
	protected PKPaymentRequestShippingMethodUpdate (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
}

New Type: PassKit.PKPaymentRequestShippingMethodUpdateEventArgs

public class PKPaymentRequestShippingMethodUpdateEventArgs : System.EventArgs {
	// constructors
	public PKPaymentRequestShippingMethodUpdateEventArgs (PKShippingMethod shippingMethod, System.Action<PKPaymentRequestShippingMethodUpdate> completion);
	// properties
	public System.Action<PKPaymentRequestShippingMethodUpdate> Completion { get; set; }
	public PKShippingMethod ShippingMethod { get; set; }
}

New Type: PassKit.PKPaymentRequestUpdate

public class PKPaymentRequestUpdate : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected PKPaymentRequestUpdate (Foundation.NSObjectFlag t);
	public PKPaymentRequestUpdate (PKPaymentSummaryItem[] paymentSummaryItems);
	protected PKPaymentRequestUpdate (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual PKPaymentSummaryItem[] PaymentSummaryItems { get; set; }
	public virtual PKPaymentAuthorizationStatus Status { get; set; }
}

New Type: PassKit.PKPaymentSummaryItem

public class PKPaymentSummaryItem : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public PKPaymentSummaryItem ();
	protected PKPaymentSummaryItem (Foundation.NSObjectFlag t);
	protected PKPaymentSummaryItem (IntPtr handle);
	// properties
	public virtual Foundation.NSDecimalNumber Amount { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual string Label { get; set; }
	public virtual PKPaymentSummaryItemType Type { get; set; }
	// methods
	public static PKPaymentSummaryItem Create (string label, Foundation.NSDecimalNumber amount);
	public static PKPaymentSummaryItem Create (string label, Foundation.NSDecimalNumber amount, PKPaymentSummaryItemType type);
}

New Type: PassKit.PKPaymentSummaryItemType

[Serializable]
public enum PKPaymentSummaryItemType {
	Final = 0,
	Pending = 1,
}

New Type: PassKit.PKPaymentToken

public class PKPaymentToken : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public PKPaymentToken ();
	protected PKPaymentToken (Foundation.NSObjectFlag t);
	protected PKPaymentToken (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSData PaymentData { get; }
	public virtual PKPaymentMethod PaymentMethod { get; }
	public virtual string TransactionIdentifier { get; }
}

New Type: PassKit.PKSecureElementPass

public class PKSecureElementPass : PassKit.PKPass, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public PKSecureElementPass (Foundation.NSCoder coder);
	protected PKSecureElementPass (Foundation.NSObjectFlag t);
	protected PKSecureElementPass (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string DeviceAccountIdentifier { get; }
	public virtual string DeviceAccountNumberSuffix { get; }
	public virtual string DevicePassIdentifier { get; }
	public virtual string PairedTerminalIdentifier { get; }
	public virtual PKSecureElementPassActivationState PassActivationState { get; }
	public virtual string PrimaryAccountIdentifier { get; }
	public virtual string PrimaryAccountNumberSuffix { get; }
}

New Type: PassKit.PKSecureElementPassActivationState

[Serializable]
public enum PKSecureElementPassActivationState {
	Activated = 0,
	Activating = 2,
	Deactivated = 4,
	RequiresActivation = 1,
	Suspended = 3,
}

New Type: PassKit.PKShareablePassMetadata

public class PKShareablePassMetadata : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected PKShareablePassMetadata (Foundation.NSObjectFlag t);
	protected PKShareablePassMetadata (IntPtr handle);
	public PKShareablePassMetadata (string credentialIdentifier, string cardConfigurationIdentifier, string sharingInstanceIdentifier, CoreGraphics.CGImage passThumbnailImage, string ownerDisplayName, string localizedDescription);
	// properties
	public virtual string CardConfigurationIdentifier { get; }
	public override IntPtr ClassHandle { get; }
	public virtual string CredentialIdentifier { get; }
	public virtual string LocalizedDescription { get; }
	public virtual string OwnerDisplayName { get; }
	public virtual CoreGraphics.CGImage PassThumbnailImage { get; }
	public virtual string SharingInstanceIdentifier { get; }
}

New Type: PassKit.PKShippingMethod

public class PKShippingMethod : PassKit.PKPaymentSummaryItem, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public PKShippingMethod ();
	protected PKShippingMethod (Foundation.NSObjectFlag t);
	protected PKShippingMethod (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string Detail { get; set; }
	public virtual string Identifier { get; set; }
}

New Type: PassKit.PKShippingType

[Serializable]
public enum PKShippingType {
	Delivery = 1,
	ServicePickup = 3,
	Shipping = 0,
	StorePickup = 2,
}

New Type: PassKit.PKSignDataCompletionResult

public class PKSignDataCompletionResult {
	// constructors
	public PKSignDataCompletionResult (Foundation.NSData signedData, Foundation.NSData signature);
	// properties
	public Foundation.NSData Signature { get; set; }
	public Foundation.NSData SignedData { get; set; }
}

New Type: PassKit.PKSignatureRequestCompletionBlock

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

New Type: PassKit.PKSuicaPassProperties

public class PKSuicaPassProperties : PassKit.PKTransitPassProperties, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected PKSuicaPassProperties (Foundation.NSObjectFlag t);
	protected PKSuicaPassProperties (IntPtr handle);
	// properties
	public virtual bool BalanceAllowedForCommute { get; }
	public virtual bool Blacklisted { get; }
	public override IntPtr ClassHandle { get; }
	public virtual bool GreenCarTicketUsed { get; }
	public virtual bool InShinkansenStation { get; }
	public virtual bool InStation { get; }
	public virtual bool LowBalanceGateNotificationEnabled { get; }
	public virtual Foundation.NSDecimalNumber TransitBalance { get; }
	public virtual string TransitBalanceCurrencyCode { get; }
	// methods
	public static PKSuicaPassProperties GetPassProperties (PKPass pass);
}

New Type: PassKit.PKTransitPassProperties

public class PKTransitPassProperties : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected PKTransitPassProperties (Foundation.NSObjectFlag t);
	protected PKTransitPassProperties (IntPtr handle);
	// properties
	public virtual bool Blacklisted { get; }
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSDate ExpirationDate { get; }
	public virtual bool InStation { get; }
	public virtual Foundation.NSDecimalNumber TransitBalance { get; }
	public virtual string TransitBalanceCurrencyCode { get; }
	// methods
	public static PKTransitPassProperties GetPassProperties (PKPass pass);
}

New Namespace ReplayKit

New Type: ReplayKit.IRPBroadcastActivityControllerDelegate

public interface IRPBroadcastActivityControllerDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DidFinish (RPBroadcastActivityController broadcastActivityController, RPBroadcastController broadcastController, Foundation.NSError error);
}

New Type: ReplayKit.IRPBroadcastControllerDelegate

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

New Type: ReplayKit.IRPPreviewViewControllerDelegate

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

New Type: ReplayKit.IRPScreenRecorderDelegate

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

New Type: ReplayKit.LoadBroadcastingHandler

public sealed delegate LoadBroadcastingHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public LoadBroadcastingHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (string bundleID, string displayName, AppKit.NSImage appIcon, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (string bundleID, string displayName, AppKit.NSImage appIcon);
}

New Type: ReplayKit.NSExtensionContext_RPBroadcastExtension

public static class NSExtensionContext_RPBroadcastExtension {
	// methods
	public static void CompleteRequest (this Foundation.NSExtensionContext This, Foundation.NSUrl broadcastURL, Foundation.NSDictionary<Foundation.NSString,Foundation.INSCoding> setupInfo);
	public static void LoadBroadcastingApplicationInfo (this Foundation.NSExtensionContext This, LoadBroadcastingHandler handler);
}

New Type: ReplayKit.RPBroadcastActivityController

public class RPBroadcastActivityController : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public RPBroadcastActivityController ();
	protected RPBroadcastActivityController (Foundation.NSObjectFlag t);
	protected RPBroadcastActivityController (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public IRPBroadcastActivityControllerDelegate Delegate { get; set; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	protected override void Dispose (bool disposing);
	public static void ShowBroadcastPicker (CoreGraphics.CGPoint point, AppKit.NSWindow window, string preferredExtension, System.Action<RPBroadcastActivityController,Foundation.NSError> handler);
}

New Type: ReplayKit.RPBroadcastActivityControllerDelegate

public abstract class RPBroadcastActivityControllerDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, IRPBroadcastActivityControllerDelegate, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected RPBroadcastActivityControllerDelegate ();
	protected RPBroadcastActivityControllerDelegate (Foundation.NSObjectFlag t);
	protected RPBroadcastActivityControllerDelegate (IntPtr handle);
	// methods
	public virtual void DidFinish (RPBroadcastActivityController broadcastActivityController, RPBroadcastController broadcastController, Foundation.NSError error);
}

New Type: ReplayKit.RPBroadcastController

public class RPBroadcastController : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public RPBroadcastController ();
	protected RPBroadcastController (Foundation.NSObjectFlag t);
	protected RPBroadcastController (IntPtr handle);
	// properties
	public virtual Foundation.NSUrl BroadcastUrl { get; }
	public virtual bool Broadcasting { get; }
	public override IntPtr ClassHandle { get; }
	public virtual IRPBroadcastControllerDelegate Delegate { get; set; }
	public virtual bool Paused { get; }
	public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.INSCoding> ServiceInfo { get; }
	// methods
	protected override void Dispose (bool disposing);
	public virtual void FinishBroadcast (System.Action<Foundation.NSError> handler);
	public virtual System.Threading.Tasks.Task FinishBroadcastAsync ();
	public virtual void PauseBroadcast ();
	public virtual void ResumeBroadcast ();
	public virtual void StartBroadcast (System.Action<Foundation.NSError> handler);
	public virtual System.Threading.Tasks.Task StartBroadcastAsync ();
}

New Type: ReplayKit.RPBroadcastControllerDelegate

public class RPBroadcastControllerDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, IRPBroadcastControllerDelegate, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public RPBroadcastControllerDelegate ();
	protected RPBroadcastControllerDelegate (Foundation.NSObjectFlag t);
	protected RPBroadcastControllerDelegate (IntPtr handle);
	// methods
	public virtual void DidFinish (RPBroadcastController broadcastController, Foundation.NSError error);
	public virtual void DidUpdateBroadcastUrl (RPBroadcastController broadcastController, Foundation.NSUrl broadcastUrl);
	public virtual void DidUpdateServiceInfo (RPBroadcastController broadcastController, Foundation.NSDictionary<Foundation.NSString,Foundation.INSCoding> serviceInfo);
}

New Type: ReplayKit.RPBroadcastControllerDelegate_Extensions

public static class RPBroadcastControllerDelegate_Extensions {
	// methods
	public static void DidFinish (this IRPBroadcastControllerDelegate This, RPBroadcastController broadcastController, Foundation.NSError error);
	public static void DidUpdateBroadcastUrl (this IRPBroadcastControllerDelegate This, RPBroadcastController broadcastController, Foundation.NSUrl broadcastUrl);
	public static void DidUpdateServiceInfo (this IRPBroadcastControllerDelegate This, RPBroadcastController broadcastController, Foundation.NSDictionary<Foundation.NSString,Foundation.INSCoding> serviceInfo);
}

New Type: ReplayKit.RPBroadcastHandler

public class RPBroadcastHandler : Foundation.NSObject, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public RPBroadcastHandler ();
	protected RPBroadcastHandler (Foundation.NSObjectFlag t);
	protected RPBroadcastHandler (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void BeginRequestWithExtensionContext (Foundation.NSExtensionContext context);
	public virtual void UpdateServiceInfo (Foundation.NSDictionary<Foundation.NSString,Foundation.INSCoding> serviceInfo);
}

New Type: ReplayKit.RPBroadcastSampleHandler

public class RPBroadcastSampleHandler : ReplayKit.RPBroadcastHandler, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public RPBroadcastSampleHandler ();
	protected RPBroadcastSampleHandler (Foundation.NSObjectFlag t);
	protected RPBroadcastSampleHandler (IntPtr handle);
	// properties
	public static Foundation.NSString ApplicationInfoBundleIdentifierKey { get; }
	public override IntPtr ClassHandle { get; }
	public static Foundation.NSString VideoSampleOrientationKey { get; }
	// methods
	public virtual void BroadcastAnnotated (Foundation.NSDictionary applicationInfo);
	public virtual void BroadcastFinished ();
	public virtual void BroadcastPaused ();
	public virtual void BroadcastResumed ();
	public virtual void BroadcastStarted (Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> setupInfo);
	public virtual void FinishBroadcast (Foundation.NSError error);
	public virtual void ProcessSampleBuffer (CoreMedia.CMSampleBuffer sampleBuffer, RPSampleBufferType sampleBufferType);
}

New Type: ReplayKit.RPCameraPosition

[Serializable]
public enum RPCameraPosition {
	Back = 2,
	Front = 1,
}

New Type: ReplayKit.RPPreviewViewController

public class RPPreviewViewController : AppKit.NSViewController, AppKit.INSEditor, AppKit.INSSeguePerforming, AppKit.INSTouchBarProvider, AppKit.INSUserInterfaceItemIdentification, Foundation.INSCoding, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public RPPreviewViewController ();
	public RPPreviewViewController (Foundation.NSCoder coder);
	protected RPPreviewViewController (Foundation.NSObjectFlag t);
	protected RPPreviewViewController (IntPtr handle);
	public RPPreviewViewController (string nibName, Foundation.NSBundle bundle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual IRPPreviewViewControllerDelegate PreviewControllerDelegate { get; set; }
	// methods
	protected override void Dispose (bool disposing);
}

New Type: ReplayKit.RPPreviewViewControllerDelegate

public class RPPreviewViewControllerDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, IRPPreviewViewControllerDelegate, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public RPPreviewViewControllerDelegate ();
	protected RPPreviewViewControllerDelegate (Foundation.NSObjectFlag t);
	protected RPPreviewViewControllerDelegate (IntPtr handle);
	// methods
	public virtual void DidFinish (RPPreviewViewController previewController);
	public virtual void DidFinish (RPPreviewViewController previewController, Foundation.NSSet<Foundation.NSString> activityTypes);
}

New Type: ReplayKit.RPPreviewViewControllerDelegate_Extensions

public static class RPPreviewViewControllerDelegate_Extensions {
	// methods
	public static void DidFinish (this IRPPreviewViewControllerDelegate This, RPPreviewViewController previewController);
	public static void DidFinish (this IRPPreviewViewControllerDelegate This, RPPreviewViewController previewController, Foundation.NSSet<Foundation.NSString> activityTypes);
}

New Type: ReplayKit.RPRecordingError

[Serializable]
public enum RPRecordingError {
	ActivePhoneCall = -5811,
	AttemptToStartInRecordingState = -5830,
	AttemptToStopNonRecording = -5829,
	BroadcastInvalidSession = -5808,
	BroadcastSetupFailed = -5819,
	CarPlay = -5813,
	ContentResize = -5807,
	Disabled = -5802,
	Entitlements = -5810,
	Failed = -5804,
	FailedApplicationConnectionInterrupted = -5815,
	FailedApplicationConnectionInvalid = -5814,
	FailedAssetWriterExportCanceled = -5828,
	FailedAssetWriterExportFailed = -5826,
	FailedAssetWriterFailedToSave = -5823,
	FailedAssetWriterInWrongState = -5825,
	FailedIncorrectTimeStamps = -5821,
	FailedMediaServicesFailure = -5817,
	FailedNoAssetWriter = -5824,
	FailedNoMatchingApplicationContext = -5816,
	FailedToObtainUrl = -5820,
	FailedToProcessFirstSample = -5822,
	FailedToRemoveFile = -5827,
	FailedToSave = -5812,
	FailedToStart = -5803,
	FailedToStartCaptureStack = -5833,
	FilePermissions = -5835,
	InsufficientStorage = -5805,
	Interrupted = -5806,
	InvalidParameter = -5834,
	None = 0,
	PhotoFailure = -5831,
	RecordingInvalidSession = -5832,
	SystemDormancy = -5809,
	Unknown = -5800,
	UserDeclined = -5801,
	VideoMixingFailure = -5818,
}

New Type: ReplayKit.RPRecordingErrorExtensions

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

New Type: ReplayKit.RPSampleBufferType

[Serializable]
public enum RPSampleBufferType {
	AudioApp = 2,
	AudioMic = 3,
	Video = 1,
}

New Type: ReplayKit.RPScreenRecorder

public sealed class RPScreenRecorder : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected RPScreenRecorder (IntPtr handle);
	// properties
	public bool Available { get; }
	public bool CameraEnabled { get; set; }
	public RPCameraPosition CameraPosition { get; set; }
	public AppKit.NSView CameraPreviewView { get; }
	public override IntPtr ClassHandle { get; }
	public IRPScreenRecorderDelegate Delegate { get; set; }
	public bool MicrophoneEnabled { get; set; }
	public bool Recording { get; }
	public static RPScreenRecorder SharedRecorder { get; }
	// methods
	public void DiscardRecording (System.Action handler);
	public System.Threading.Tasks.Task DiscardRecordingAsync ();
	protected override void Dispose (bool disposing);
	public void StartCapture (System.Action<CoreMedia.CMSampleBuffer,ReplayKit.RPSampleBufferType,Foundation.NSError> captureHandler, System.Action<Foundation.NSError> completionHandler);
	public System.Threading.Tasks.Task StartCaptureAsync (System.Action<CoreMedia.CMSampleBuffer,ReplayKit.RPSampleBufferType,Foundation.NSError> captureHandler);
	public void StartRecording (System.Action<Foundation.NSError> handler);
	public System.Threading.Tasks.Task StartRecordingAsync ();
	public void StopCapture (System.Action<Foundation.NSError> handler);
	public System.Threading.Tasks.Task StopCaptureAsync ();
	public void StopRecording (System.Action<RPPreviewViewController,Foundation.NSError> handler);
	public void StopRecording (Foundation.NSUrl url, System.Action<Foundation.NSError> completionHandler);
	public System.Threading.Tasks.Task<RPPreviewViewController> StopRecordingAsync ();
	public System.Threading.Tasks.Task StopRecordingAsync (Foundation.NSUrl url);
}

New Type: ReplayKit.RPScreenRecorderDelegate

public class RPScreenRecorderDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, IRPScreenRecorderDelegate, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public RPScreenRecorderDelegate ();
	protected RPScreenRecorderDelegate (Foundation.NSObjectFlag t);
	protected RPScreenRecorderDelegate (IntPtr handle);
	// methods
	public virtual void DidChangeAvailability (RPScreenRecorder screenRecorder);
	public virtual void DidStopRecording (RPScreenRecorder screenRecorder, RPPreviewViewController previewViewController, Foundation.NSError error);
}

New Type: ReplayKit.RPScreenRecorderDelegate_Extensions

public static class RPScreenRecorderDelegate_Extensions {
	// methods
	public static void DidChangeAvailability (this IRPScreenRecorderDelegate This, RPScreenRecorder screenRecorder);
	public static void DidStopRecording (this IRPScreenRecorderDelegate This, RPScreenRecorder screenRecorder, RPPreviewViewController previewViewController, Foundation.NSError error);
}

New Namespace ScreenTime

New Type: ScreenTime.STScreenTimeConfiguration

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

New Type: ScreenTime.STScreenTimeConfigurationObserver

public class STScreenTimeConfigurationObserver : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public STScreenTimeConfigurationObserver (CoreFoundation.DispatchQueue updateQueue);
	protected STScreenTimeConfigurationObserver (Foundation.NSObjectFlag t);
	protected STScreenTimeConfigurationObserver (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual STScreenTimeConfiguration Configuration { get; }
	// methods
	public virtual void StartObserving ();
	public virtual void StopObserving ();
}

New Type: ScreenTime.STWebHistory

public class STWebHistory : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected STWebHistory (Foundation.NSObjectFlag t);
	protected STWebHistory (IntPtr handle);
	public STWebHistory (string bundleIdentifier, out Foundation.NSError error);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void DeleteAllHistory ();
	public virtual void DeleteHistory (Foundation.NSDateInterval interval);
	public virtual void DeleteHistory (Foundation.NSUrl url);
}

New Type: ScreenTime.STWebpageController

public class STWebpageController : AppKit.NSViewController, AppKit.INSEditor, AppKit.INSSeguePerforming, AppKit.INSTouchBarProvider, AppKit.INSUserInterfaceItemIdentification, Foundation.INSCoding, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public STWebpageController (Foundation.NSCoder coder);
	protected STWebpageController (Foundation.NSObjectFlag t);
	protected STWebpageController (IntPtr handle);
	public STWebpageController (string nibNameOrNull, Foundation.NSBundle nibBundleOrNull);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool SuppressUsageRecording { get; set; }
	public virtual Foundation.NSUrl Url { get; set; }
	public virtual bool UrlIsBlocked { get; }
	public virtual bool UrlIsPictureInPicture { get; set; }
	public virtual bool UrlIsPlayingVideo { get; set; }
	// methods
	public virtual bool SetBundleIdentifier (string bundleIdentifier, out Foundation.NSError error);
}

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; }
}

New Namespace UserNotificationsUI

New Type: UserNotificationsUI.IUNNotificationContentExtension

public interface IUNNotificationContentExtension : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DidReceiveNotification (UserNotifications.UNNotification notification);
}

New Type: UserNotificationsUI.NSExtensionContext_UNNotificationContentExtension

public static class NSExtensionContext_UNNotificationContentExtension {
	// methods
	public static void DismissNotificationContentExtension (this Foundation.NSExtensionContext This);
	public static UserNotifications.UNNotificationAction[] GetNotificationActions (this Foundation.NSExtensionContext This);
	public static void MediaPlayingPaused (this Foundation.NSExtensionContext This);
	public static void MediaPlayingStarted (this Foundation.NSExtensionContext This);
	public static void PerformNotificationDefaultAction (this Foundation.NSExtensionContext This);
	public static void SetNotificationActions (this Foundation.NSExtensionContext This, UserNotifications.UNNotificationAction[] actions);
}

New Type: UserNotificationsUI.UNNotificationContentExtensionMediaPlayPauseButtonType

[Serializable]
public enum UNNotificationContentExtensionMediaPlayPauseButtonType {
	Default = 1,
	None = 0,
	Overlay = 2,
}

New Type: UserNotificationsUI.UNNotificationContentExtensionResponseOption

[Serializable]
public enum UNNotificationContentExtensionResponseOption {
	Dismiss = 1,
	DismissAndForwardAction = 2,
	DoNotDismiss = 0,
}

New Type: UserNotificationsUI.UNNotificationContentExtension_Extensions

public static class UNNotificationContentExtension_Extensions {
	// methods
	public static void DidReceiveNotificationResponse (this IUNNotificationContentExtension This, UserNotifications.UNNotificationResponse response, System.Action<UNNotificationContentExtensionResponseOption> completion);
	public static CoreGraphics.CGRect GetMediaPlayPauseButtonFrame (this IUNNotificationContentExtension This);
	public static AppKit.NSColor GetMediaPlayPauseButtonTintColor (this IUNNotificationContentExtension This);
	public static UNNotificationContentExtensionMediaPlayPauseButtonType GetMediaPlayPauseButtonType (this IUNNotificationContentExtension This);
	public static void PauseMedia (this IUNNotificationContentExtension This);
	public static void PlayMedia (this IUNNotificationContentExtension This);
}