Xamarin.Mac.dll

Hide non-breaking changes

Namespace AVFoundation

Type Changed: AVFoundation.AVAsset

Added property:

	public virtual CoreMedia.CMTime OverallDurationHint { get; }

Type Changed: AVFoundation.AVAssetExportSession

Added constructor:

	public AVAssetExportSession (AVAsset asset, AVAssetExportSessionPreset preset);

Type Changed: AVFoundation.AVAudioChannelLayout

Obsoleted constructors:

[Obsolete ("Valid instance of this type cannot be directly created")] public AVAudioChannelLayout ();

Type Changed: AVFoundation.AVAudioConnectionPoint

Obsoleted constructors:

[Obsolete ("Valid instance of this type cannot be directly created")] public AVAudioConnectionPoint ();

Type Changed: AVFoundation.AVAudioConverterPrimeInfo

Added constructor:

	public AVAudioConverterPrimeInfo (uint leadingFrames, uint trailingFrames);

Added methods:

	public bool Equals (AVAudioConverterPrimeInfo other);
	public override bool Equals (object obj);
	public override int GetHashCode ();
	public override string ToString ();
	public static bool op_Equality (AVAudioConverterPrimeInfo left, AVAudioConverterPrimeInfo right);
	public static bool op_Inequality (AVAudioConverterPrimeInfo left, AVAudioConverterPrimeInfo right);

Type Changed: AVFoundation.AVAudioFormat

Added property:

	public virtual Foundation.NSData MagicCookie { get; set; }

Type Changed: AVFoundation.AVAudioPlayer

Added property:

	public virtual AVAudioFormat Format { get; }

Added method:

	public virtual void SetVolume (float volume, double duration);

Type Changed: AVFoundation.AVAudioRecorder

Added method:

	public static AVAudioRecorder Create (Foundation.NSUrl url, AVAudioFormat format, Foundation.NSError error);

Type Changed: AVFoundation.AVAudioSessionCategoryOptions

Added values:

	AllowAirPlay = 64,
	AllowBluetoothA2DP = 32,

Type Changed: AVFoundation.AVAudioSettings

Added property:

	public static Foundation.NSString AVSampleRateConverterAlgorithm_MinimumPhase { get; }

Type Changed: AVFoundation.AVBeatRange

Added methods:

	public bool Equals (AVBeatRange other);
	public override bool Equals (object obj);
	public override int GetHashCode ();
	public override string ToString ();
	public static bool op_Equality (AVBeatRange left, AVBeatRange right);
	public static bool op_Inequality (AVBeatRange left, AVBeatRange right);

Type Changed: AVFoundation.AVCaptureConnection

Added methods:

	public static AVCaptureConnection FromInputPort (AVCaptureInputPort port, AVCaptureVideoPreviewLayer layer);
	public static AVCaptureConnection FromInputPorts (AVCaptureInputPort[] ports, AVCaptureOutput output);

Type Changed: AVFoundation.AVCaptureDevice

Obsoleted methods:

[Obsolete ("Use GetDefaultDevice(AVMediaTypes)")] public static AVCaptureDevice DefaultDeviceWithMediaType (string mediaType);

Added methods:

	public static AVCaptureDevice GetDefaultDevice (AVMediaTypes mediaType);
	public static AVCaptureDevice GetDefaultDevice (Foundation.NSString mediaType);
	public bool HasMediaType (AVMediaTypes mediaType);

Type Changed: AVFoundation.AVCaptureWhiteBalanceChromaticityValues

Added methods:

	public bool Equals (AVCaptureWhiteBalanceChromaticityValues other);
	public override bool Equals (object obj);
	public override int GetHashCode ();
	public static bool op_Equality (AVCaptureWhiteBalanceChromaticityValues left, AVCaptureWhiteBalanceChromaticityValues right);
	public static bool op_Inequality (AVCaptureWhiteBalanceChromaticityValues left, AVCaptureWhiteBalanceChromaticityValues right);

Type Changed: AVFoundation.AVCaptureWhiteBalanceGains

Added methods:

	public bool Equals (AVCaptureWhiteBalanceGains other);
	public override bool Equals (object obj);
	public override int GetHashCode ();
	public static bool op_Equality (AVCaptureWhiteBalanceGains left, AVCaptureWhiteBalanceGains right);
	public static bool op_Inequality (AVCaptureWhiteBalanceGains left, AVCaptureWhiteBalanceGains right);

Type Changed: AVFoundation.AVCaptureWhiteBalanceTemperatureAndTintValues

Added methods:

	public bool Equals (AVCaptureWhiteBalanceTemperatureAndTintValues other);
	public override bool Equals (object obj);
	public override int GetHashCode ();
	public static bool op_Equality (AVCaptureWhiteBalanceTemperatureAndTintValues left, AVCaptureWhiteBalanceTemperatureAndTintValues right);
	public static bool op_Inequality (AVCaptureWhiteBalanceTemperatureAndTintValues left, AVCaptureWhiteBalanceTemperatureAndTintValues right);

Type Changed: AVFoundation.AVError

Modified fields:

ApplicationIsNotAuthorizedToUseDevice = 11852 -11852
MaximumStillImageCaptureRequestsExceeded = 11830 -11830

Added values:

	OperationNotAllowed = -11862,
	UnsupportedOutputSettings = -11861,

Type Changed: AVFoundation.AVMediaCharacteristic

Added property:

	public static Foundation.NSString UsesWideGamutColorSpace { get; }

Type Changed: AVFoundation.AVMetadata

Added properties:

	public static Foundation.NSString ID3MetadataKeyInvolvedPeopleList_v24 { get; }
	public static Foundation.NSString IsoUserDataKeyDate { get; }

Type Changed: AVFoundation.AVMetadataIdentifiers

Type Changed: AVFoundation.AVMetadataIdentifiers.Iso

Added property:

	public static Foundation.NSString UserDataDate { get; }

Type Changed: AVFoundation.AVMutableVideoComposition

Added properties:

	public virtual string ColorPrimaries { get; set; }
	public virtual string ColorTransferFunction { get; set; }
	public virtual string ColorYCbCrMatrix { get; set; }

Type Changed: AVFoundation.AVPlayer

Added properties:

	public virtual bool AutomaticallyWaitsToMinimizeStalling { get; set; }
	public virtual string ReasonForWaitingToPlay { get; }
	public virtual AVPlayerTimeControlStatus TimeControlStatus { get; }
	public static Foundation.NSString WaitingToMinimizeStallsReason { get; }
	public static Foundation.NSString WaitingWhileEvaluatingBufferingRateReason { get; }
	public static Foundation.NSString WaitingWithNoItemToPlayReason { get; }

Added method:

	public virtual void PlayImmediatelyAtRate (float rate);

Type Changed: AVFoundation.AVPlayerItem

Added property:

	public virtual double PreferredForwardBufferDuration { get; set; }

Type Changed: AVFoundation.AVPlayerItemAccessLogEvent

Added properties:

	public virtual double AverageAudioBitrate { get; }
	public virtual double AverageVideoBitrate { get; }

Type Changed: AVFoundation.AVPlayerItemVideoOutput

Added constructor:

	public AVPlayerItemVideoOutput (AVPlayerItemVideoOutputSettings settings);

Type Changed: AVFoundation.AVSampleBufferDisplayLayer

Added properties:

	public static Foundation.NSString FailedToDecodeNotification { get; }
	public static Foundation.NSString FailedToDecodeNotificationErrorKey { get; }

Type Changed: AVFoundation.AVUrlAsset

Added property:

	public virtual AVAssetCache Cache { get; }

Type Changed: AVFoundation.AVVideo

Added properties:

	public static Foundation.NSString AppleProRes422 { get; }
	public static Foundation.NSString AppleProRes4444 { get; }

Type Changed: AVFoundation.AVVideoCompositing

Added property:

	public virtual bool SupportsWideColorSourceFrames { get; }

Type Changed: AVFoundation.AVVideoCompositing_Extensions

Added method:

	public static bool GetSupportsWideColorSourceFrames (IAVVideoCompositing This);

Type Changed: AVFoundation.AVVideoComposition

Added properties:

	public virtual string ColorPrimaries { get; }
	public virtual string ColorTransferFunction { get; }
	public virtual string ColorYCbCrMatrix { get; }

New Type AVFoundation.AVAssetCache

public class AVAssetCache : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected AVAssetCache (Foundation.NSObjectFlag t);
	protected AVAssetCache (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool IsPlayableOffline { get; }
	// methods
	public virtual AVMediaSelectionOption[] GetMediaSelectionOptions (AVMediaSelectionGroup mediaSelectionGroup);
}

New Type AVFoundation.AVAssetExportSessionPreset

[Serializable]
public enum AVAssetExportSessionPreset {
	AppleM4A = 8,
	HighestQuality = 2,
	LowQuality = 0,
	MediumQuality = 1,
	Passthrough = 9,
	Preset1280x720 = 5,
	Preset1920x1080 = 6,
	Preset3840x2160 = 7,
	Preset640x480 = 3,
	Preset960x540 = 4,
}

New Type AVFoundation.AVAssetExportSessionPresetExtensions

public static class AVAssetExportSessionPresetExtensions {
	// methods
	public static Foundation.NSString GetConstant (AVAssetExportSessionPreset self);
	public static AVAssetExportSessionPreset GetValue (Foundation.NSString constant);
}

New Type AVFoundation.AVCleanApertureProperties

public class AVCleanApertureProperties : Foundation.DictionaryContainer {
	// constructors
	public AVCleanApertureProperties ();
	public AVCleanApertureProperties (Foundation.NSDictionary dictionary);
	// properties
	public Foundation.NSNumber Height { get; set; }
	public Foundation.NSNumber HorizontalOffset { get; set; }
	public Foundation.NSNumber VerticalOffset { get; set; }
	public Foundation.NSNumber Width { get; set; }
}

New Type AVFoundation.AVColorProperties

public class AVColorProperties : Foundation.DictionaryContainer {
	// constructors
	public AVColorProperties ();
	public AVColorProperties (Foundation.NSDictionary dictionary);
	// properties
	public Foundation.NSString AVVideoColorPrimaries { get; set; }
	public Foundation.NSString AVVideoTransferFunction { get; set; }
	public Foundation.NSString AVVideoYCbCrMatrix { get; }
}

New Type AVFoundation.AVCompressionProperties

public class AVCompressionProperties : Foundation.DictionaryContainer {
	// constructors
	public AVCompressionProperties ();
	public AVCompressionProperties (Foundation.NSDictionary dictionary);
	// properties
	public AVCleanApertureProperties CleanAperture { get; set; }
	public AVPixelAspectRatioProperties PixelAspectRatio { get; set; }
}

New Type AVFoundation.AVMediaTypes

[Serializable]
public enum AVMediaTypes {
	Audio = 1,
	ClosedCaption = 3,
	Metadata = 9,
	MetadataObject = 8,
	Muxed = 7,
	Subtitle = 4,
	Text = 2,
	Timecode = 5,
	TimedMetadata = 6,
	Video = 0,
}

New Type AVFoundation.AVMediaTypesExtensions

public static class AVMediaTypesExtensions {
	// methods
	public static Foundation.NSString GetConstant (AVMediaTypes self);
	public static AVMediaTypes GetValue (Foundation.NSString constant);
}

New Type AVFoundation.AVMusicTrackLoopCount

[Serializable]
public enum AVMusicTrackLoopCount {
	Forever = -1,
}

New Type AVFoundation.AVPixelAspectRatioProperties

public class AVPixelAspectRatioProperties : Foundation.DictionaryContainer {
	// constructors
	public AVPixelAspectRatioProperties ();
	public AVPixelAspectRatioProperties (Foundation.NSDictionary dictionary);
	// properties
	public Foundation.NSNumber PixelAspectRatioHorizontalSpacing { get; set; }
	public Foundation.NSNumber PixelAspectRatioVerticalSpacing { get; set; }
}

New Type AVFoundation.AVPlayerItemVideoOutputSettings

public class AVPlayerItemVideoOutputSettings : Foundation.DictionaryContainer {
	// constructors
	public AVPlayerItemVideoOutputSettings ();
	public AVPlayerItemVideoOutputSettings (Foundation.NSDictionary dictionary);
	// properties
	public Foundation.NSString Codec { get; set; }
	public AVColorProperties ColorProperties { get; set; }
	public AVCompressionProperties CompressionProperties { get; set; }
	public Foundation.NSNumber Height { get; set; }
	public Foundation.NSString ScalingMode { get; set; }
	public Foundation.NSNumber Width { get; set; }
}

New Type AVFoundation.AVPlayerLooper

public class AVPlayerLooper : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected AVPlayerLooper (Foundation.NSObjectFlag t);
	protected AVPlayerLooper (IntPtr handle);
	public AVPlayerLooper (AVQueuePlayer player, AVPlayerItem itemToLoop, CoreMedia.CMTimeRange loopRange);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSError Error { get; }
	public virtual nint LoopCount { get; }
	public virtual bool LoopingEnabled { get; }
	public virtual AVPlayerItem[] LoopingPlayerItems { get; }
	public virtual AVPlayerLooperStatus Status { get; }
	// methods
	public virtual void DisableLooping ();
	public static AVPlayerLooper FromPlayer (AVQueuePlayer player, AVPlayerItem itemToLoop);
	public static AVPlayerLooper FromPlayer (AVQueuePlayer player, AVPlayerItem itemToLoop, CoreMedia.CMTimeRange loopRange);
}

New Type AVFoundation.AVPlayerLooperStatus

[Serializable]
public enum AVPlayerLooperStatus {
	Cancelled = 3,
	Failed = 2,
	Ready = 1,
	Unknown = 0,
}

New Type AVFoundation.AVPlayerTimeControlStatus

[Serializable]
public enum AVPlayerTimeControlStatus {
	Paused = 0,
	Playing = 2,
	WaitingToPlayAtSpecifiedRate = 1,
}

New Type AVFoundation.AVVideoColorPrimaries

public static class AVVideoColorPrimaries {
	// properties
	public static Foundation.NSString Ebu_3213 { get; }
	public static Foundation.NSString Itu_R_709_2 { get; }
	public static Foundation.NSString Smpte_C { get; }
}

New Type AVFoundation.AVVideoTransferFunction

public static class AVVideoTransferFunction {
	// properties
	public static Foundation.NSString AVVideoTransferFunction_Itu_R_709_2 { get; }
	public static Foundation.NSString AVVideoTransferFunction_Smpte_240M_1995 { get; }
}

New Type AVFoundation.AVVideoYCbCrMatrix

public static class AVVideoYCbCrMatrix {
	// properties
	public static Foundation.NSString Itu_R_601_4 { get; }
	public static Foundation.NSString Itu_R_709_2 { get; }
	public static Foundation.NSString Smpte_240M_1995 { get; }
}

Namespace AVKit

Type Changed: AVKit.AVPlayerView

Added interface:

	AppKit.INSTouchBarProvider

Namespace Accounts

Type Changed: Accounts.ACErrorCode

Obsoleted fields:

[Obsolete ("Use MissingTransportMessageId")] MissingMessageID = 21,

Namespace AppKit

Type Changed: AppKit.NSAccessibilityAttributes

Added properties:

	public static Foundation.NSString RequiredAttribute { get; }
	public static Foundation.NSString TextAlignmentAttribute { get; }

Type Changed: AppKit.NSAccessibilityElement

Added property:

	public virtual bool AccessibilityRequired { get; set; }

Type Changed: AppKit.NSAccessibilityRoles

Added property:

	public static Foundation.NSString MenuBarItemRole { get; }

Type Changed: AppKit.NSApplication

Added interface:

	INSTouchBarProvider

Added property:

	public virtual bool AccessibilityRequired { get; set; }

Added event:

	public event System.EventHandler<NSApplicationUserAcceptedCloudKitShareEventArgs> UserDidAcceptCloudKitShare;

Added method:

	public virtual void EnumerateWindows (NSWindowListOptions options, NSApplicationEnumerateWindowsHandler block);

Type Changed: AppKit.NSApplicationDelegate

Added method:

	public virtual void UserDidAcceptCloudKitShare (NSApplication application, CloudKit.CKShareMetadata metadata);

Type Changed: AppKit.NSApplicationDelegate_Extensions

Added method:

	public static void UserDidAcceptCloudKitShare (INSApplicationDelegate This, NSApplication application, CloudKit.CKShareMetadata metadata);

Type Changed: AppKit.NSBox

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSBrowser

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSBrowserCell

Added constructors:

	public NSBrowserCell (NSImage image);
	public NSBrowserCell (string str);

Type Changed: AppKit.NSButton

Added interface:

	INSTouchBarProvider

Added properties:

	public virtual NSColor BezelColor { get; set; }
	public virtual bool ImageHugsTitle { get; set; }
	public virtual NSImageScale ImageScaling { get; set; }

Added methods:

	public static NSButton CreateButton (NSImage image, System.Action action);
	public static NSButton CreateButton (string title, System.Action action);
	public static NSButton CreateButton (string title, NSImage image, System.Action action);
	public static NSButton CreateCheckbox (string title, System.Action action);
	public static NSButton CreateRadioButton (string title, System.Action action);

Type Changed: AppKit.NSCell

Added property:

	public virtual bool AccessibilityRequired { get; set; }

Type Changed: AppKit.NSCellImagePosition

Added values:

	ImageLeading = 7,
	ImageTrailing = 8,

Type Changed: AppKit.NSClickGestureRecognizer

Added property:

	public virtual nint NumberOfTouchesRequired { get; set; }

Type Changed: AppKit.NSClipView

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSCollectionView

Added interface:

	INSTouchBarProvider

Added property:

	public virtual bool BackgroundViewScrollsWithContent { get; set; }

Added method:

	public virtual void ToggleSectionCollapse (Foundation.NSObject sender);

Type Changed: AppKit.NSCollectionViewFlowLayout

Added properties:

	public virtual bool SectionFootersPinToVisibleBounds { get; set; }
	public virtual bool SectionHeadersPinToVisibleBounds { get; set; }

Added methods:

	public virtual void CollapseSectionAtIndex (uint sectionIndex);
	public virtual void ExpandSectionAtIndex (uint sectionIndex);
	public virtual bool SectionAtIndexIsCollapsed (uint sectionIndex);

Type Changed: AppKit.NSCollectionViewItem

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSColor

Added property:

	public static NSColor ScrubberTexturedBackgroundColor { get; }

Added methods:

	public static NSColor FromColor (NSColorSpace space, nfloat hue, nfloat saturation, nfloat brightness, nfloat alpha);
	public static NSColor FromDisplayP3 (nfloat red, nfloat green, nfloat blue, nfloat alpha);

Type Changed: AppKit.NSColorList

Added method:

	public virtual bool WriteToUrl (Foundation.NSUrl url, Foundation.NSError error);

Type Changed: AppKit.NSColorPanel

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSColorSpace

Added properties:

	public static NSColorSpace DisplayP3ColorSpace { get; }
	public static NSColorSpace ExtendedGenericGamma22GrayColorSpace { get; }
	public static NSColorSpace ExtendedSRgbColorSpace { get; }

Type Changed: AppKit.NSColorWell

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSComboBox

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSCompositingOperation

Added values:

	Color = 27,
	ColorBurn = 20,
	ColorDodge = 19,
	Darken = 17,
	Difference = 23,
	Exclusion = 24,
	HardLight = 22,
	Hue = 25,
	Lighten = 18,
	Luminosity = 28,
	Multiply = 14,
	Overlay = 16,
	Saturation = 26,
	Screen = 15,
	SoftLight = 21,

Type Changed: AppKit.NSControl

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSDatePicker

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSDocument

Added property:

	public virtual bool IsBrowsingVersions { get; }

Added methods:

	public virtual void StopBrowsingVersions (System.Action completionHandler);
	public virtual System.Threading.Tasks.Task StopBrowsingVersionsAsync ();

Type Changed: AppKit.NSDrawer

Added interface:

	INSTouchBarProvider

Added property:

	public virtual bool AccessibilityRequired { get; set; }

Type Changed: AppKit.NSEvent

Added property:

	public virtual Foundation.NSSet<NSTouch> AllTouches { get; }

Added methods:

	public virtual NSTouch[] GetCoalescedTouches (NSTouch touch);
	public virtual Foundation.NSSet<NSTouch> GetTouches (NSView view);

Type Changed: AppKit.NSEventMask

Added value:

	DirectTouch = 137438953472,

Type Changed: AppKit.NSEventType

Added value:

	DirectTouch = 37,

Type Changed: AppKit.NSFontPanel

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSForm

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSGestureRecognizer

Added property:

	public NSTouchEvent ShouldReceiveTouch { get; set; }

Added methods:

	public virtual void TouchesBegan (NSEvent touchEvent);
	public virtual void TouchesCancelled (NSEvent touchEvent);
	public virtual void TouchesEnded (NSEvent touchEvent);
	public virtual void TouchesMoved (NSEvent touchEvent);

Type Changed: AppKit.NSGestureRecognizerDelegate

Added method:

	public virtual bool ShouldReceiveTouch (NSGestureRecognizer gestureRecognizer, NSTouch touch);

Type Changed: AppKit.NSGestureRecognizerDelegate_Extensions

Added method:

	public static bool ShouldReceiveTouch (INSGestureRecognizerDelegate This, NSGestureRecognizer gestureRecognizer, NSTouch touch);

Type Changed: AppKit.NSImageName

Added values:

	TouchBarAddDetailTemplate = 40,
	TouchBarAddTemplate = 41,
	TouchBarAlarmTemplate = 42,
	TouchBarAudioInputMuteTemplate = 43,
	TouchBarAudioInputTemplate = 44,
	TouchBarAudioOutputMuteTemplate = 45,
	TouchBarAudioOutputVolumeHighTemplate = 46,
	TouchBarAudioOutputVolumeLowTemplate = 47,
	TouchBarAudioOutputVolumeMediumTemplate = 48,
	TouchBarAudioOutputVolumeOffTemplate = 49,
	TouchBarBookmarksTemplate = 50,
	TouchBarColorPickerFill = 51,
	TouchBarColorPickerFont = 52,
	TouchBarColorPickerStroke = 53,
	TouchBarCommunicationAudioTemplate = 54,
	TouchBarCommunicationVideoTemplate = 55,
	TouchBarComposeTemplate = 56,
	TouchBarDeleteTemplate = 57,
	TouchBarDownloadTemplate = 58,
	TouchBarEnterFullScreenTemplate = 59,
	TouchBarExitFullScreenTemplate = 60,
	TouchBarFastForwardTemplate = 61,
	TouchBarFolderCopyToTemplate = 62,
	TouchBarFolderMoveToTemplate = 63,
	TouchBarFolderTemplate = 64,
	TouchBarGetInfoTemplate = 65,
	TouchBarGoBackTemplate = 66,
	TouchBarGoDownTemplate = 67,
	TouchBarGoForwardTemplate = 68,
	TouchBarGoUpTemplate = 69,
	TouchBarHistoryTemplate = 70,
	TouchBarIconViewTemplate = 71,
	TouchBarListViewTemplate = 72,
	TouchBarMailTemplate = 73,
	TouchBarNewFolderTemplate = 74,
	TouchBarNewMessageTemplate = 75,
	TouchBarOpenInBrowserTemplate = 76,
	TouchBarPauseTemplate = 77,
	TouchBarPlayPauseTemplate = 79,
	TouchBarPlayTemplate = 80,
	TouchBarPlayheadTemplate = 78,
	TouchBarQuickLookTemplate = 81,
	TouchBarRecordStartTemplate = 82,
	TouchBarRecordStopTemplate = 83,
	TouchBarRefreshTemplate = 84,
	TouchBarRewindTemplate = 85,
	TouchBarRotateLeftTemplate = 86,
	TouchBarRotateRightTemplate = 87,
	TouchBarSearchTemplate = 88,
	TouchBarShareTemplate = 89,
	TouchBarSidebarTemplate = 90,
	TouchBarSkipAhead15SecondsTemplate = 91,
	TouchBarSkipAhead30SecondsTemplate = 92,
	TouchBarSkipAheadTemplate = 93,
	TouchBarSkipBack15SecondsTemplate = 94,
	TouchBarSkipBack30SecondsTemplate = 95,
	TouchBarSkipBackTemplate = 96,
	TouchBarSkipToEndTemplate = 97,
	TouchBarSkipToStartTemplate = 98,
	TouchBarSlideshowTemplate = 99,
	TouchBarTagIconTemplate = 100,
	TouchBarTextBoldTemplate = 101,
	TouchBarTextBoxTemplate = 102,
	TouchBarTextCenterAlignTemplate = 103,
	TouchBarTextItalicTemplate = 104,
	TouchBarTextJustifiedAlignTemplate = 105,
	TouchBarTextLeftAlignTemplate = 106,
	TouchBarTextListTemplate = 107,
	TouchBarTextRightAlignTemplate = 108,
	TouchBarTextStrikethroughTemplate = 109,
	TouchBarTextUnderlineTemplate = 110,
	TouchBarUserAddTemplate = 111,
	TouchBarUserGroupTemplate = 112,
	TouchBarUserTemplate = 113,
	TouchBarVolumeDownTemplate = 114,
	TouchBarVolumeUpTemplate = 115,

Type Changed: AppKit.NSImageRep

Added property:

	public virtual NSImageLayoutDirection LayoutDirection { get; set; }

Type Changed: AppKit.NSImageView

Added interface:

	INSTouchBarProvider

Added method:

	public static NSImageView FromImage (NSImage image);

Type Changed: AppKit.NSLayoutAnchor`1

Added constructor:

	public NSLayoutAnchor`1 (Foundation.NSCoder coder);

Added interfaces:

	Foundation.INSCoding
	Foundation.INSCopying

Added methods:

	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);

Type Changed: AppKit.NSLayoutConstraint

Added properties:

	public virtual AppKit.NSLayoutAnchor<Foundation.NSObject> FirstAnchor { get; }
	public virtual AppKit.NSLayoutAnchor<Foundation.NSObject> SecondAnchor { get; }

Type Changed: AppKit.NSLayoutDimension

Added constructor:

	public NSLayoutDimension (Foundation.NSCoder coder);

Added interfaces:

	Foundation.INSCoding
	Foundation.INSCopying

Type Changed: AppKit.NSLayoutGuide

Added property:

	public virtual bool HasAmbiguousLayout { get; }

Added method:

	public virtual NSLayoutConstraint[] GetConstraintsAffectingLayout (NSLayoutConstraintOrientation orientation);

Type Changed: AppKit.NSLayoutXAxisAnchor

Added constructor:

	public NSLayoutXAxisAnchor (Foundation.NSCoder coder);

Added interfaces:

	Foundation.INSCoding
	Foundation.INSCopying

Type Changed: AppKit.NSLayoutYAxisAnchor

Added constructor:

	public NSLayoutYAxisAnchor (Foundation.NSCoder coder);

Added interfaces:

	Foundation.INSCoding
	Foundation.INSCopying

Type Changed: AppKit.NSLevelIndicator

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSMatrix

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSMenu

Added interfaces:

	INSAccessibility
	INSUserInterfaceItemIdentification

Added properties:

	public virtual CoreGraphics.CGPoint AccessibilityActivationPoint { get; set; }
	public virtual Foundation.NSNumber[] AccessibilityAllowedValues { get; set; }
	public virtual bool AccessibilityAlternateUIVisible { get; set; }
	public virtual Foundation.NSObject AccessibilityApplicationFocusedUIElement { get; set; }
	public virtual Foundation.NSObject AccessibilityCancelButton { get; set; }
	public virtual Foundation.NSObject[] AccessibilityChildren { get; set; }
	public virtual Foundation.NSObject AccessibilityClearButton { get; set; }
	public virtual Foundation.NSObject AccessibilityCloseButton { get; set; }
	public virtual nint AccessibilityColumnCount { get; set; }
	public virtual Foundation.NSObject[] AccessibilityColumnHeaderUIElements { get; set; }
	public virtual Foundation.NSRange AccessibilityColumnIndexRange { get; set; }
	public virtual Foundation.NSObject[] AccessibilityColumnTitles { get; set; }
	public virtual Foundation.NSObject[] AccessibilityColumns { get; set; }
	public virtual Foundation.NSObject[] AccessibilityContents { get; set; }
	public virtual Foundation.NSObject AccessibilityCriticalValue { get; set; }
	public virtual Foundation.NSObject AccessibilityDecrementButton { get; set; }
	public virtual Foundation.NSObject AccessibilityDefaultButton { get; set; }
	public virtual bool AccessibilityDisclosed { get; set; }
	public virtual Foundation.NSObject AccessibilityDisclosedByRow { get; set; }
	public virtual Foundation.NSObject AccessibilityDisclosedRows { get; set; }
	public virtual nint AccessibilityDisclosureLevel { get; set; }
	public virtual string AccessibilityDocument { get; set; }
	public virtual bool AccessibilityEdited { get; set; }
	public virtual bool AccessibilityElement { get; set; }
	public virtual bool AccessibilityEnabled { get; set; }
	public virtual bool AccessibilityExpanded { get; set; }
	public virtual Foundation.NSObject AccessibilityExtrasMenuBar { get; set; }
	public virtual string AccessibilityFilename { get; set; }
	public virtual bool AccessibilityFocused { get; set; }
	public virtual Foundation.NSObject AccessibilityFocusedWindow { get; set; }
	public virtual CoreGraphics.CGRect AccessibilityFrame { get; set; }
	public virtual CoreGraphics.CGRect AccessibilityFrameInParentSpace { get; set; }
	public virtual bool AccessibilityFrontmost { get; set; }
	public virtual Foundation.NSObject AccessibilityFullScreenButton { get; set; }
	public virtual Foundation.NSObject AccessibilityGrowArea { get; set; }
	public virtual Foundation.NSObject[] AccessibilityHandles { get; set; }
	public virtual Foundation.NSObject AccessibilityHeader { get; set; }
	public virtual string AccessibilityHelp { get; set; }
	public virtual bool AccessibilityHidden { get; set; }
	public virtual Foundation.NSObject AccessibilityHorizontalScrollBar { get; set; }
	public virtual string AccessibilityHorizontalUnitDescription { get; set; }
	public virtual NSAccessibilityUnits AccessibilityHorizontalUnits { get; set; }
	public virtual string AccessibilityIdentifier { get; set; }
	public virtual Foundation.NSObject AccessibilityIncrementButton { get; set; }
	public virtual nint AccessibilityIndex { get; set; }
	public virtual nint AccessibilityInsertionPointLineNumber { get; set; }
	public virtual string AccessibilityLabel { get; set; }
	public virtual Foundation.NSObject[] AccessibilityLabelUIElements { get; set; }
	public virtual float AccessibilityLabelValue { get; set; }
	public virtual Foundation.NSObject[] AccessibilityLinkedUIElements { get; set; }
	public virtual bool AccessibilityMain { get; set; }
	public virtual Foundation.NSObject AccessibilityMainWindow { get; set; }
	public virtual Foundation.NSObject AccessibilityMarkerGroupUIElement { get; set; }
	public virtual string AccessibilityMarkerTypeDescription { get; set; }
	public virtual Foundation.NSObject[] AccessibilityMarkerUIElements { get; set; }
	public virtual Foundation.NSObject AccessibilityMarkerValues { get; set; }
	public virtual Foundation.NSObject AccessibilityMaxValue { get; set; }
	public virtual Foundation.NSObject AccessibilityMenuBar { get; set; }
	public virtual Foundation.NSObject AccessibilityMinValue { get; set; }
	public virtual Foundation.NSObject AccessibilityMinimizeButton { get; set; }
	public virtual bool AccessibilityMinimized { get; set; }
	public virtual bool AccessibilityModal { get; set; }
	public virtual Foundation.NSObject[] AccessibilityNextContents { get; set; }
	public virtual nint AccessibilityNumberOfCharacters { get; set; }
	public virtual bool AccessibilityOrderedByRow { get; set; }
	public virtual NSAccessibilityOrientation AccessibilityOrientation { get; set; }
	public virtual Foundation.NSObject AccessibilityOverflowButton { get; set; }
	public virtual Foundation.NSObject AccessibilityParent { get; set; }
	public virtual string AccessibilityPlaceholderValue { get; set; }
	public virtual Foundation.NSObject[] AccessibilityPreviousContents { get; set; }
	public virtual bool AccessibilityProtectedContent { get; set; }
	public virtual Foundation.NSObject AccessibilityProxy { get; set; }
	public virtual bool AccessibilityRequired { get; set; }
	public virtual string AccessibilityRole { get; set; }
	public virtual string AccessibilityRoleDescription { get; set; }
	public virtual nint AccessibilityRowCount { get; set; }
	public virtual Foundation.NSObject[] AccessibilityRowHeaderUIElements { get; set; }
	public virtual Foundation.NSRange AccessibilityRowIndexRange { get; set; }
	public virtual Foundation.NSObject[] AccessibilityRows { get; set; }
	public virtual NSAccessibilityRulerMarkerType AccessibilityRulerMarkerType { get; set; }
	public virtual Foundation.NSObject AccessibilitySearchButton { get; set; }
	public virtual Foundation.NSObject AccessibilitySearchMenu { get; set; }
	public virtual bool AccessibilitySelected { get; set; }
	public virtual Foundation.NSObject[] AccessibilitySelectedCells { get; set; }
	public virtual Foundation.NSObject[] AccessibilitySelectedChildren { get; set; }
	public virtual Foundation.NSObject[] AccessibilitySelectedColumns { get; set; }
	public virtual Foundation.NSObject[] AccessibilitySelectedRows { get; set; }
	public virtual string AccessibilitySelectedText { get; set; }
	public virtual Foundation.NSRange AccessibilitySelectedTextRange { get; set; }
	public virtual Foundation.NSValue[] AccessibilitySelectedTextRanges { get; set; }
	public virtual Foundation.NSObject[] AccessibilityServesAsTitleForUIElements { get; set; }
	public virtual Foundation.NSRange AccessibilitySharedCharacterRange { get; set; }
	public virtual Foundation.NSObject[] AccessibilitySharedFocusElements { get; set; }
	public virtual Foundation.NSObject[] AccessibilitySharedTextUIElements { get; set; }
	public virtual Foundation.NSObject AccessibilityShownMenu { get; set; }
	public virtual NSAccessibilitySortDirection AccessibilitySortDirection { get; set; }
	public virtual Foundation.NSObject[] AccessibilitySplitters { get; set; }
	public virtual string AccessibilitySubrole { get; set; }
	public virtual Foundation.NSObject[] AccessibilityTabs { get; set; }
	public virtual string AccessibilityTitle { get; set; }
	public virtual Foundation.NSObject AccessibilityTitleUIElement { get; set; }
	public virtual Foundation.NSObject AccessibilityToolbarButton { get; set; }
	public virtual Foundation.NSObject AccessibilityTopLevelUIElement { get; set; }
	public virtual string AccessibilityUnitDescription { get; set; }
	public virtual NSAccessibilityUnits AccessibilityUnits { get; set; }
	public virtual Foundation.NSUrl AccessibilityUrl { get; set; }
	public virtual Foundation.NSObject AccessibilityValue { get; set; }
	public virtual string AccessibilityValueDescription { get; set; }
	public virtual Foundation.NSObject AccessibilityVerticalScrollBar { get; set; }
	public virtual string AccessibilityVerticalUnitDescription { get; set; }
	public virtual NSAccessibilityUnits AccessibilityVerticalUnits { get; set; }
	public virtual Foundation.NSObject[] AccessibilityVisibleCells { get; set; }
	public virtual Foundation.NSRange AccessibilityVisibleCharacterRange { get; set; }
	public virtual Foundation.NSObject[] AccessibilityVisibleChildren { get; set; }
	public virtual Foundation.NSObject[] AccessibilityVisibleColumns { get; set; }
	public virtual Foundation.NSObject[] AccessibilityVisibleRows { get; set; }
	public virtual Foundation.NSObject AccessibilityWarningValue { get; set; }
	public virtual Foundation.NSObject AccessibilityWindow { get; set; }
	public virtual Foundation.NSObject[] AccessibilityWindows { get; set; }
	public virtual Foundation.NSObject AccessibilityZoomButton { get; set; }
	public virtual string Identifier { get; set; }

Added methods:

	public virtual void AccessibilityAddChildElement (NSAccessibilityElement childElement);
	public virtual bool AccessibilityPerformCancel ();
	public virtual bool AccessibilityPerformConfirm ();
	public virtual bool AccessibilityPerformDecrement ();
	public virtual bool AccessibilityPerformDelete ();
	public virtual bool AccessibilityPerformIncrement ();
	public virtual bool AccessibilityPerformPick ();
	public virtual bool AccessibilityPerformPress ();
	public virtual bool AccessibilityPerformRaise ();
	public virtual bool AccessibilityPerformShowAlternateUI ();
	public virtual bool AccessibilityPerformShowDefaultUI ();
	public virtual bool AccessibilityPerformShowMenu ();
	public static Foundation.NSObject CreateElement (Foundation.NSString role, CoreGraphics.CGRect frame, Foundation.NSString label, Foundation.NSObject parent);
	public virtual Foundation.NSAttributedString GetAccessibilityAttributedString (Foundation.NSRange range);
	public virtual Foundation.NSObject GetAccessibilityCellForColumn (nint column, nint row);
	public virtual CoreGraphics.CGRect GetAccessibilityFrame (Foundation.NSRange range);
	public virtual CoreGraphics.CGPoint GetAccessibilityLayoutForScreen (CoreGraphics.CGPoint point);
	public virtual CoreGraphics.CGSize GetAccessibilityLayoutForScreen (CoreGraphics.CGSize size);
	public virtual nint GetAccessibilityLine (nint index);
	public virtual Foundation.NSRange GetAccessibilityRange (CoreGraphics.CGPoint point);
	public virtual Foundation.NSRange GetAccessibilityRange (nint index);
	public virtual Foundation.NSRange GetAccessibilityRangeForLine (nint line);
	public virtual Foundation.NSData GetAccessibilityRtf (Foundation.NSRange range);
	public virtual CoreGraphics.CGPoint GetAccessibilityScreenForLayout (CoreGraphics.CGPoint point);
	public virtual CoreGraphics.CGSize GetAccessibilityScreenForLayout (CoreGraphics.CGSize size);
	public virtual string GetAccessibilityString (Foundation.NSRange range);
	public virtual Foundation.NSRange GetAccessibilityStyleRange (nint index);
	public virtual bool IsAccessibilitySelectorAllowed (ObjCRuntime.Selector selector);

Type Changed: AppKit.NSMenuItem

Added interfaces:

	INSAccessibility
	INSUserInterfaceItemIdentification

Added properties:

	public virtual CoreGraphics.CGPoint AccessibilityActivationPoint { get; set; }
	public virtual Foundation.NSNumber[] AccessibilityAllowedValues { get; set; }
	public virtual bool AccessibilityAlternateUIVisible { get; set; }
	public virtual Foundation.NSObject AccessibilityApplicationFocusedUIElement { get; set; }
	public virtual Foundation.NSObject AccessibilityCancelButton { get; set; }
	public virtual Foundation.NSObject[] AccessibilityChildren { get; set; }
	public virtual Foundation.NSObject AccessibilityClearButton { get; set; }
	public virtual Foundation.NSObject AccessibilityCloseButton { get; set; }
	public virtual nint AccessibilityColumnCount { get; set; }
	public virtual Foundation.NSObject[] AccessibilityColumnHeaderUIElements { get; set; }
	public virtual Foundation.NSRange AccessibilityColumnIndexRange { get; set; }
	public virtual Foundation.NSObject[] AccessibilityColumnTitles { get; set; }
	public virtual Foundation.NSObject[] AccessibilityColumns { get; set; }
	public virtual Foundation.NSObject[] AccessibilityContents { get; set; }
	public virtual Foundation.NSObject AccessibilityCriticalValue { get; set; }
	public virtual Foundation.NSObject AccessibilityDecrementButton { get; set; }
	public virtual Foundation.NSObject AccessibilityDefaultButton { get; set; }
	public virtual bool AccessibilityDisclosed { get; set; }
	public virtual Foundation.NSObject AccessibilityDisclosedByRow { get; set; }
	public virtual Foundation.NSObject AccessibilityDisclosedRows { get; set; }
	public virtual nint AccessibilityDisclosureLevel { get; set; }
	public virtual string AccessibilityDocument { get; set; }
	public virtual bool AccessibilityEdited { get; set; }
	public virtual bool AccessibilityElement { get; set; }
	public virtual bool AccessibilityEnabled { get; set; }
	public virtual bool AccessibilityExpanded { get; set; }
	public virtual Foundation.NSObject AccessibilityExtrasMenuBar { get; set; }
	public virtual string AccessibilityFilename { get; set; }
	public virtual bool AccessibilityFocused { get; set; }
	public virtual Foundation.NSObject AccessibilityFocusedWindow { get; set; }
	public virtual CoreGraphics.CGRect AccessibilityFrame { get; set; }
	public virtual CoreGraphics.CGRect AccessibilityFrameInParentSpace { get; set; }
	public virtual bool AccessibilityFrontmost { get; set; }
	public virtual Foundation.NSObject AccessibilityFullScreenButton { get; set; }
	public virtual Foundation.NSObject AccessibilityGrowArea { get; set; }
	public virtual Foundation.NSObject[] AccessibilityHandles { get; set; }
	public virtual Foundation.NSObject AccessibilityHeader { get; set; }
	public virtual string AccessibilityHelp { get; set; }
	public virtual bool AccessibilityHidden { get; set; }
	public virtual Foundation.NSObject AccessibilityHorizontalScrollBar { get; set; }
	public virtual string AccessibilityHorizontalUnitDescription { get; set; }
	public virtual NSAccessibilityUnits AccessibilityHorizontalUnits { get; set; }
	public virtual string AccessibilityIdentifier { get; set; }
	public virtual Foundation.NSObject AccessibilityIncrementButton { get; set; }
	public virtual nint AccessibilityIndex { get; set; }
	public virtual nint AccessibilityInsertionPointLineNumber { get; set; }
	public virtual string AccessibilityLabel { get; set; }
	public virtual Foundation.NSObject[] AccessibilityLabelUIElements { get; set; }
	public virtual float AccessibilityLabelValue { get; set; }
	public virtual Foundation.NSObject[] AccessibilityLinkedUIElements { get; set; }
	public virtual bool AccessibilityMain { get; set; }
	public virtual Foundation.NSObject AccessibilityMainWindow { get; set; }
	public virtual Foundation.NSObject AccessibilityMarkerGroupUIElement { get; set; }
	public virtual string AccessibilityMarkerTypeDescription { get; set; }
	public virtual Foundation.NSObject[] AccessibilityMarkerUIElements { get; set; }
	public virtual Foundation.NSObject AccessibilityMarkerValues { get; set; }
	public virtual Foundation.NSObject AccessibilityMaxValue { get; set; }
	public virtual Foundation.NSObject AccessibilityMenuBar { get; set; }
	public virtual Foundation.NSObject AccessibilityMinValue { get; set; }
	public virtual Foundation.NSObject AccessibilityMinimizeButton { get; set; }
	public virtual bool AccessibilityMinimized { get; set; }
	public virtual bool AccessibilityModal { get; set; }
	public virtual Foundation.NSObject[] AccessibilityNextContents { get; set; }
	public virtual nint AccessibilityNumberOfCharacters { get; set; }
	public virtual bool AccessibilityOrderedByRow { get; set; }
	public virtual NSAccessibilityOrientation AccessibilityOrientation { get; set; }
	public virtual Foundation.NSObject AccessibilityOverflowButton { get; set; }
	public virtual Foundation.NSObject AccessibilityParent { get; set; }
	public virtual string AccessibilityPlaceholderValue { get; set; }
	public virtual Foundation.NSObject[] AccessibilityPreviousContents { get; set; }
	public virtual bool AccessibilityProtectedContent { get; set; }
	public virtual Foundation.NSObject AccessibilityProxy { get; set; }
	public virtual bool AccessibilityRequired { get; set; }
	public virtual string AccessibilityRole { get; set; }
	public virtual string AccessibilityRoleDescription { get; set; }
	public virtual nint AccessibilityRowCount { get; set; }
	public virtual Foundation.NSObject[] AccessibilityRowHeaderUIElements { get; set; }
	public virtual Foundation.NSRange AccessibilityRowIndexRange { get; set; }
	public virtual Foundation.NSObject[] AccessibilityRows { get; set; }
	public virtual NSAccessibilityRulerMarkerType AccessibilityRulerMarkerType { get; set; }
	public virtual Foundation.NSObject AccessibilitySearchButton { get; set; }
	public virtual Foundation.NSObject AccessibilitySearchMenu { get; set; }
	public virtual bool AccessibilitySelected { get; set; }
	public virtual Foundation.NSObject[] AccessibilitySelectedCells { get; set; }
	public virtual Foundation.NSObject[] AccessibilitySelectedChildren { get; set; }
	public virtual Foundation.NSObject[] AccessibilitySelectedColumns { get; set; }
	public virtual Foundation.NSObject[] AccessibilitySelectedRows { get; set; }
	public virtual string AccessibilitySelectedText { get; set; }
	public virtual Foundation.NSRange AccessibilitySelectedTextRange { get; set; }
	public virtual Foundation.NSValue[] AccessibilitySelectedTextRanges { get; set; }
	public virtual Foundation.NSObject[] AccessibilityServesAsTitleForUIElements { get; set; }
	public virtual Foundation.NSRange AccessibilitySharedCharacterRange { get; set; }
	public virtual Foundation.NSObject[] AccessibilitySharedFocusElements { get; set; }
	public virtual Foundation.NSObject[] AccessibilitySharedTextUIElements { get; set; }
	public virtual Foundation.NSObject AccessibilityShownMenu { get; set; }
	public virtual NSAccessibilitySortDirection AccessibilitySortDirection { get; set; }
	public virtual Foundation.NSObject[] AccessibilitySplitters { get; set; }
	public virtual string AccessibilitySubrole { get; set; }
	public virtual Foundation.NSObject[] AccessibilityTabs { get; set; }
	public virtual string AccessibilityTitle { get; set; }
	public virtual Foundation.NSObject AccessibilityTitleUIElement { get; set; }
	public virtual Foundation.NSObject AccessibilityToolbarButton { get; set; }
	public virtual Foundation.NSObject AccessibilityTopLevelUIElement { get; set; }
	public virtual string AccessibilityUnitDescription { get; set; }
	public virtual NSAccessibilityUnits AccessibilityUnits { get; set; }
	public virtual Foundation.NSUrl AccessibilityUrl { get; set; }
	public virtual Foundation.NSObject AccessibilityValue { get; set; }
	public virtual string AccessibilityValueDescription { get; set; }
	public virtual Foundation.NSObject AccessibilityVerticalScrollBar { get; set; }
	public virtual string AccessibilityVerticalUnitDescription { get; set; }
	public virtual NSAccessibilityUnits AccessibilityVerticalUnits { get; set; }
	public virtual Foundation.NSObject[] AccessibilityVisibleCells { get; set; }
	public virtual Foundation.NSRange AccessibilityVisibleCharacterRange { get; set; }
	public virtual Foundation.NSObject[] AccessibilityVisibleChildren { get; set; }
	public virtual Foundation.NSObject[] AccessibilityVisibleColumns { get; set; }
	public virtual Foundation.NSObject[] AccessibilityVisibleRows { get; set; }
	public virtual Foundation.NSObject AccessibilityWarningValue { get; set; }
	public virtual Foundation.NSObject AccessibilityWindow { get; set; }
	public virtual Foundation.NSObject[] AccessibilityWindows { get; set; }
	public virtual Foundation.NSObject AccessibilityZoomButton { get; set; }
	public virtual string Identifier { get; set; }

Added methods:

	public virtual void AccessibilityAddChildElement (NSAccessibilityElement childElement);
	public virtual bool AccessibilityPerformCancel ();
	public virtual bool AccessibilityPerformConfirm ();
	public virtual bool AccessibilityPerformDecrement ();
	public virtual bool AccessibilityPerformDelete ();
	public virtual bool AccessibilityPerformIncrement ();
	public virtual bool AccessibilityPerformPick ();
	public virtual bool AccessibilityPerformPress ();
	public virtual bool AccessibilityPerformRaise ();
	public virtual bool AccessibilityPerformShowAlternateUI ();
	public virtual bool AccessibilityPerformShowDefaultUI ();
	public virtual bool AccessibilityPerformShowMenu ();
	public static Foundation.NSObject CreateElement (Foundation.NSString role, CoreGraphics.CGRect frame, Foundation.NSString label, Foundation.NSObject parent);
	public virtual Foundation.NSAttributedString GetAccessibilityAttributedString (Foundation.NSRange range);
	public virtual Foundation.NSObject GetAccessibilityCellForColumn (nint column, nint row);
	public virtual CoreGraphics.CGRect GetAccessibilityFrame (Foundation.NSRange range);
	public virtual CoreGraphics.CGPoint GetAccessibilityLayoutForScreen (CoreGraphics.CGPoint point);
	public virtual CoreGraphics.CGSize GetAccessibilityLayoutForScreen (CoreGraphics.CGSize size);
	public virtual nint GetAccessibilityLine (nint index);
	public virtual Foundation.NSRange GetAccessibilityRange (CoreGraphics.CGPoint point);
	public virtual Foundation.NSRange GetAccessibilityRange (nint index);
	public virtual Foundation.NSRange GetAccessibilityRangeForLine (nint line);
	public virtual Foundation.NSData GetAccessibilityRtf (Foundation.NSRange range);
	public virtual CoreGraphics.CGPoint GetAccessibilityScreenForLayout (CoreGraphics.CGPoint point);
	public virtual CoreGraphics.CGSize GetAccessibilityScreenForLayout (CoreGraphics.CGSize size);
	public virtual string GetAccessibilityString (Foundation.NSRange range);
	public virtual Foundation.NSRange GetAccessibilityStyleRange (nint index);
	public virtual bool IsAccessibilitySelectorAllowed (ObjCRuntime.Selector selector);

Type Changed: AppKit.NSMenuView

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSMutableFontCollection

Obsoleted constructors:

[Obsolete ("macOS 10.12 does not allow creation via this constructor")] public NSMutableFontCollection ();

Type Changed: AppKit.NSOpenGLPixelFormat

Added constructor:

	public NSOpenGLPixelFormat (uint[] attribs);

Type Changed: AppKit.NSOpenGLView

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSOpenPanel

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSOutlineView

Added interface:

	INSTouchBarProvider

Added property:

	public virtual bool StronglyReferencesItems { get; set; }

Type Changed: AppKit.NSPageController

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSPanGestureRecognizer

Added property:

	public virtual nint NumberOfTouchesRequired { get; set; }

Type Changed: AppKit.NSPanel

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSPasteboard

Added method:

	public virtual nint PrepareForNewContents (NSPasteboardContentsOptions options);

Type Changed: AppKit.NSPathControl

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSPopUpButton

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSPopover

Added interface:

	INSTouchBarProvider

Added property:

	public virtual bool AccessibilityRequired { get; set; }

Type Changed: AppKit.NSPredicateEditor

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSPressGestureRecognizer

Added property:

	public virtual nint NumberOfTouchesRequired { get; set; }

Type Changed: AppKit.NSProgressIndicator

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSRemoteNotificationType

Added values:

	Alert = 4,
	Sound = 2,

Type Changed: AppKit.NSRemoteOpenPanel

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSRemoteSavePanel

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSResponder

Added interface:

	INSTouchBarProvider

Added property:

	public virtual NSTouchBar TouchBar { get; }

Added methods:

	public virtual void GetNewWindowForTab (Foundation.NSObject sender);
	public virtual bool PresentError (Foundation.NSError error);
	public void PresentError (Foundation.NSError error, NSWindow window, Foundation.NSObject delegate, ObjCRuntime.Selector didPresentSelector, IntPtr contextInfo);
	public virtual Foundation.NSError WillPresentError (Foundation.NSError error);

Type Changed: AppKit.NSRuleEditor

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSRulerView

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSSavePanel

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSScreen

Added method:

	public virtual bool CanRepresentDisplayGamut (NSDisplayGamut displayGamut);

Type Changed: AppKit.NSScrollView

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSScroller

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSSearchField

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSSearchFieldDelegate

Added methods:

	public virtual Foundation.NSObject[] GetCandidates (NSTextField textField, NSTextView textView, Foundation.NSRange selectedRange);
	public virtual Foundation.NSTextCheckingResult[] GetTextCheckingResults (NSTextField textField, NSTextView textView, Foundation.NSTextCheckingResult[] candidates, Foundation.NSRange selectedRange);
	public virtual bool ShouldSelectCandidate (NSTextField textField, NSTextView textView, uint index);

Type Changed: AppKit.NSSecureTextField

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSSegmentedControl

Added interface:

	INSTouchBarProvider

Added property:

	public virtual NSColor SelectedSegmentBezelColor { get; set; }

Added methods:

	public static NSSegmentedControl FromImages (NSImage[] images, NSSegmentSwitchTracking trackingMode, System.Action action);
	public static NSSegmentedControl FromLabels (string[] labels, NSSegmentSwitchTracking trackingMode, System.Action action);

Type Changed: AppKit.NSSharingService

Added property:

	public NSSharingServiceAnchoringViewForSharingService CreateAnchoringView { get; set; }

Type Changed: AppKit.NSSharingServiceDelegate

Added method:

	public virtual NSView CreateAnchoringView (NSSharingService sharingService, CoreGraphics.CGRect positioningRect, NSRectEdge preferredEdge);

Type Changed: AppKit.NSSharingServiceDelegate_Extensions

Added method:

	public static NSView CreateAnchoringView (INSSharingServiceDelegate This, NSSharingService sharingService, CoreGraphics.CGRect positioningRect, NSRectEdge preferredEdge);

Type Changed: AppKit.NSSharingServiceName

Added value:

	CloudSharing = 15,

Type Changed: AppKit.NSSlider

Added interface:

	INSTouchBarProvider

Modified properties:

public virtual nint IsVertical { get; set; }

Added property:

	public virtual NSColor TrackFillColor { get; set; }

Added methods:

	public static NSSlider FromTarget (System.Action action);
	public static NSSlider FromValue (double value, double minValue, double maxValue, System.Action action);

Type Changed: AppKit.NSSliderCell

Modified properties:

public virtual nint IsVertical { get; set; }

Type Changed: AppKit.NSSpellChecker

Added properties:

	public static Foundation.NSString DidChangeAutomaticCapitalizationNotification { get; }
	public static Foundation.NSString DidChangeAutomaticPeriodSubstitutionNotification { get; }
	public static Foundation.NSString DidChangeAutomaticTextCompletionNotification { get; }
	public static bool IsAutomaticCapitalizationEnabled { get; }
	public static bool IsAutomaticPeriodSubstitutionEnabled { get; }
	public static bool IsAutomaticTextCompletionEnabled { get; }
	public static Foundation.NSString TextCheckingSelectedRangeKey { get; }

Added methods:

	public virtual bool DeletesAutospace (string precedingString, string followingString, string language);
	public virtual bool PreventsAutocorrectionBefore (string aString, string language);
	public virtual nint RequestCandidates (Foundation.NSRange selectedRange, string stringToCheck, ulong checkingTypes, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> options, nint tag, System.Action<System.nint,Foundation.NSTextCheckingResult[]> completionHandler);
	public virtual System.Threading.Tasks.Task<NSSpellCheckerCanidates> RequestCandidatesAsync (Foundation.NSRange selectedRange, string stringToCheck, ulong checkingTypes, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> options, nint tag);
	public virtual System.Threading.Tasks.Task<NSSpellCheckerCanidates> RequestCandidatesAsync (Foundation.NSRange selectedRange, string stringToCheck, ulong checkingTypes, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> options, nint tag, nint result);

Type Changed: AppKit.NSSpellChecker.Notifications

Added methods:

	public static Foundation.NSObject ObserveDidChangeAutomaticCapitalization (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
	public static Foundation.NSObject ObserveDidChangeAutomaticPeriodSubstitution (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
	public static Foundation.NSObject ObserveDidChangeAutomaticTextCompletion (System.EventHandler<Foundation.NSNotificationEventArgs> handler);

Type Changed: AppKit.NSSplitView

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSSplitViewController

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSStackView

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSStatusBarButton

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSStatusItem

Added properties:

	public virtual string AutosaveName { get; set; }
	public virtual NSStatusItemBehavior Behavior { get; set; }
	public virtual bool Visible { get; set; }

Type Changed: AppKit.NSStepper

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSTabView

Added interface:

	INSTouchBarProvider

Added properties:

	public virtual NSTabViewBorderType BorderType { get; set; }
	public virtual NSTabPosition TabPosition { get; set; }

Type Changed: AppKit.NSTabViewController

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSTableCellView

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSTableHeaderView

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSTableRowView

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSTableView

Added interface:

	INSTouchBarProvider

Added property:

	public virtual NSUserInterfaceLayoutDirection UserInterfaceLayoutDirection { get; set; }

Type Changed: AppKit.NSTableViewRowAction

Added property:

	public virtual NSImage Image { get; set; }

Type Changed: AppKit.NSText

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSTextField

Added interface:

	INSTouchBarProvider

Added properties:

	public NSTextFieldGetCandidates GetCandidates { get; set; }
	public NSTextFieldTextCheckingResults GetTextCheckingResults { get; set; }
	public NSTextFieldSelectCandidate ShouldSelectCandidate { get; set; }

Added methods:

	public static NSTextField CreateLabel (Foundation.NSAttributedString attributedStringValue);
	public static NSTextField CreateLabel (string stringValue);
	public static NSTextField CreateTextField (string stringValue);
	public static NSTextField CreateWrappingLabel (string stringValue);

Type Changed: AppKit.NSTextFieldDelegate

Added methods:

	public virtual Foundation.NSObject[] GetCandidates (NSTextField textField, NSTextView textView, Foundation.NSRange selectedRange);
	public virtual Foundation.NSTextCheckingResult[] GetTextCheckingResults (NSTextField textField, NSTextView textView, Foundation.NSTextCheckingResult[] candidates, Foundation.NSRange selectedRange);
	public virtual bool ShouldSelectCandidate (NSTextField textField, NSTextView textView, uint index);

Type Changed: AppKit.NSTextFieldDelegate_Extensions

Added methods:

	public static Foundation.NSObject[] GetCandidates (INSTextFieldDelegate This, NSTextField textField, NSTextView textView, Foundation.NSRange selectedRange);
	public static Foundation.NSTextCheckingResult[] GetTextCheckingResults (INSTextFieldDelegate This, NSTextField textField, NSTextView textView, Foundation.NSTextCheckingResult[] candidates, Foundation.NSRange selectedRange);
	public static bool ShouldSelectCandidate (INSTextFieldDelegate This, NSTextField textField, NSTextView textView, uint index);

Type Changed: AppKit.NSTextInputContext

Added constructor:

	public NSTextInputContext (INSTextInputClient client);

Added properties:

	public virtual bool AcceptsGlyphInfo { get; set; }
	public virtual string[] AllowedInputSourceLocales { get; set; }
	public virtual INSTextInputClient Client { get; }
	public virtual string[] KeyboardInputSources { get; }
	public virtual string SelectedKeyboardInputSource { get; set; }

Type Changed: AppKit.NSTextTab

Added interface:

	Foundation.INSSecureCoding

Type Changed: AppKit.NSTextTableBlock

Obsoleted constructors:

[Obsolete ("macOS 10.12 does not allow creation via this constructor")] public NSTextTableBlock ();

Type Changed: AppKit.NSTextView

Added interfaces:

	INSCandidateListTouchBarItemDelegate
	INSTouchBarDelegate
	INSTouchBarProvider

Added properties:

	public virtual bool AllowsCharacterPickerTouchBarItem { get; set; }
	public virtual bool AutomaticTextCompletionEnabled { get; set; }
	public virtual NSCandidateListTouchBarItem CandidateListTouchBarItem { get; }
	public NSTextViewGetCandidates GetCandidates { get; set; }
	public NSTextViewTextCheckingResults GetTextCheckingCandidates { get; set; }
	public NSTextViewSelectCandidate ShouldSelectCandidates { get; set; }
	public NSTextViewUpdateTouchBarItemIdentifiers ShouldUpdateTouchBarItemIdentifiers { get; set; }
	public static bool StronglyReferencesTextStorage { get; }

Added methods:

	public virtual void BeginSelectingCandidate (NSCandidateListTouchBarItem anItem, nint index);
	public virtual void ChangeSelectionFromCandidate (NSCandidateListTouchBarItem anItem, nint previousIndex, nint index);
	public virtual void ChangedCandidateListVisibility (NSCandidateListTouchBarItem anItem, bool isVisible);
	public virtual void EndSelectingCandidate (NSCandidateListTouchBarItem anItem, nint index);
	public virtual NSTouchBarItem MakeItem (NSTouchBar touchBar, string identifier);
	public virtual void ToggleAutomaticTextCompletion (Foundation.NSObject sender);
	public virtual void UpdateCandidates ();
	public virtual void UpdateTextTouchBarItems ();
	public virtual void UpdateTouchBarItemIdentifiers ();

Type Changed: AppKit.NSTextViewDelegate

Added methods:

	public virtual Foundation.NSObject[] GetCandidates (NSTextView textView, Foundation.NSRange selectedRange);
	public virtual Foundation.NSTextCheckingResult[] GetTextCheckingCandidates (NSTextView textView, Foundation.NSTextCheckingResult[] candidates, Foundation.NSRange selectedRange);
	public virtual bool ShouldSelectCandidates (NSTextView textView, uint index);
	public virtual string[] ShouldUpdateTouchBarItemIdentifiers (NSTextView textView, string[] identifiers);

Type Changed: AppKit.NSTextViewDelegate_Extensions

Added methods:

	public static Foundation.NSObject[] GetCandidates (INSTextViewDelegate This, NSTextView textView, Foundation.NSRange selectedRange);
	public static Foundation.NSTextCheckingResult[] GetTextCheckingCandidates (INSTextViewDelegate This, NSTextView textView, Foundation.NSTextCheckingResult[] candidates, Foundation.NSRange selectedRange);
	public static bool ShouldSelectCandidates (INSTextViewDelegate This, NSTextView textView, uint index);
	public static string[] ShouldUpdateTouchBarItemIdentifiers (INSTextViewDelegate This, NSTextView textView, string[] identifiers);

Type Changed: AppKit.NSTickMarkPosition

Added values:

	Leading = 2,
	Trailing = 3,

Type Changed: AppKit.NSTitlebarAccessoryViewController

Added interfaces:

	INSAnimationDelegate
	INSTouchBarProvider

Added properties:

	public virtual Foundation.NSDictionary Animations { get; set; }
	public virtual Foundation.NSObject Animator { get; }
	public virtual bool IsHidden { get; set; }

Added methods:

	public virtual void AnimationDidEnd (NSAnimation animation);
	public virtual void AnimationDidReachProgressMark (NSAnimation animation, float progress);
	public virtual void AnimationDidStop (NSAnimation animation);
	public virtual Foundation.NSObject AnimationFor (Foundation.NSString key);
	public virtual bool AnimationShouldStart (NSAnimation animation);
	public virtual float ComputeAnimationCurve (NSAnimation animation, float progress);
	public static Foundation.NSObject DefaultAnimationFor (Foundation.NSString key);

Type Changed: AppKit.NSTokenField

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSToolbar

Added properties:

	public static Foundation.NSString NSToolbarCloudSharingItemIdentifier { get; }
	public static Foundation.NSString NSToolbarToggleSidebarItemIdentifier { get; }

Type Changed: AppKit.NSView

Added interface:

	INSTouchBarProvider

Added property:

	public virtual bool AccessibilityRequired { get; set; }

Type Changed: AppKit.NSViewController

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSVisualEffectMaterial

Added values:

	MediumLight = 8,
	Menu = 5,
	Popover = 6,
	Selection = 4,
	Sidebar = 7,
	UltraDark = 9,

Type Changed: AppKit.NSVisualEffectView

Added interface:

	INSTouchBarProvider

Added property:

	public virtual bool Emphasized { get; set; }

Type Changed: AppKit.NSWindow

Added interface:

	INSTouchBarProvider

Added field:

	public static bool DisableReleasedWhenClosedInConstructor;

Added properties:

	public virtual bool AccessibilityRequired { get; set; }
	public static bool AllowsAutomaticWindowTabbing { get; set; }
	public virtual NSWindow[] TabbedWindows { get; }
	public virtual string TabbingIdentifier { get; set; }
	public virtual NSWindowTabbingMode TabbingMode { get; set; }
	public static NSWindowUserTabbingPreference UserTabbingPreference { get; }
	public virtual NSUserInterfaceLayoutDirection WindowTitlebarLayoutDirection { get; }

Added methods:

	public virtual void AddTabbedWindow (NSWindow window, NSWindowOrderingMode ordered);
	public virtual bool CanRepresentDisplayGamut (NSDisplayGamut displayGamut);
	public virtual void MergeAllWindows (Foundation.NSObject sender);
	public virtual void MoveTabToNewWindow (Foundation.NSObject sender);
	public virtual void SelectNextTab (Foundation.NSObject sender);
	public virtual void SelectPreviousTab (Foundation.NSObject sender);
	public virtual void ToggleTabBar (Foundation.NSObject sender);

Type Changed: AppKit.NSWindowCollectionBehavior

Added value:

	FullScreenNone = 512,

Type Changed: AppKit.NSWindowController

Added interface:

	INSTouchBarProvider

Type Changed: AppKit.NSWorkspace

Added properties:

	public virtual bool AccessibilityDisplayShouldInvertColors { get; }
	public virtual bool AccessibilityDisplayShouldReduceMotion { get; }

New Type AppKit.AttributedStringForCandidateHandler

public sealed delegate AttributedStringForCandidateHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public AttributedStringForCandidateHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (Foundation.NSObject candidate, nint index, System.AsyncCallback callback, object object);
	public virtual Foundation.NSAttributedString EndInvoke (System.IAsyncResult result);
	public virtual Foundation.NSAttributedString Invoke (Foundation.NSObject candidate, nint index);
}

New Type AppKit.INSCandidateListTouchBarItemDelegate

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

New Type AppKit.INSCloudSharingServiceDelegate

public interface INSCloudSharingServiceDelegate : INSSharingServiceDelegate, ObjCRuntime.INativeObject, System.IDisposable {
}

New Type AppKit.INSCloudSharingValidation

public interface INSCloudSharingValidation : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual CloudKit.CKShare GetCloudShare (INSValidatedUserInterfaceItem item);
}

New Type AppKit.INSCollectionViewSectionHeaderView

public interface INSCollectionViewSectionHeaderView : INSCollectionViewElement, INSUserInterfaceItemIdentification, ObjCRuntime.INativeObject, System.IDisposable {
}

New Type AppKit.INSFilePromiseProviderDelegate

public interface INSFilePromiseProviderDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual string GetFileNameForDestination (NSFilePromiseProvider filePromiseProvider, string fileType);
}

New Type AppKit.INSMenuValidation

public interface INSMenuValidation : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual bool ValidateMenuItem (NSMenuItem menuItem);
}

New Type AppKit.INSScrubberDataSource

public interface INSScrubberDataSource : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual nint GetNumberOfItems (NSScrubber scrubber);
	public virtual NSScrubberItemView GetViewForItem (NSScrubber scrubber, nint index);
}

New Type AppKit.INSScrubberDelegate

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

New Type AppKit.INSScrubberFlowLayoutDelegate

public interface INSScrubberFlowLayoutDelegate : INSScrubberDelegate, ObjCRuntime.INativeObject, System.IDisposable {
}

New Type AppKit.INSSharingServicePickerTouchBarItemDelegate

public interface INSSharingServicePickerTouchBarItemDelegate : INSSharingServicePickerDelegate, ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual INSPasteboardWriting[] ItemsForSharingServicePickerTouchBarItem (NSSharingServicePickerTouchBarItem pickerTouchBarItem);
}

New Type AppKit.INSToolTipOwner

public interface INSToolTipOwner : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual string GetStringForToolTip (NSView view, nint tag, CoreGraphics.CGPoint point, IntPtr data);
}

New Type AppKit.INSTouchBarDelegate

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

New Type AppKit.INSTouchBarProvider

public interface INSTouchBarProvider : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual NSTouchBar TouchBar { get; }
}

New Type AppKit.INSUserInterfaceValidations

public interface INSUserInterfaceValidations : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual bool ValidateUserInterfaceItem (INSValidatedUserInterfaceItem item);
}

New Type AppKit.INSValidatedUserInterfaceItem

public interface INSValidatedUserInterfaceItem : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual ObjCRuntime.Selector Action { get; }
	public virtual nint Tag { get; }
}

New Type AppKit.NSAccessibility_Extensions

public static class NSAccessibility_Extensions {
	// methods
	public static bool GetAccessibilityRequired (INSAccessibility This);
	public static void SetAccessibilityRequired (INSAccessibility This, bool value);
}

New Type AppKit.NSApplicationEnumerateWindowsHandler

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

New Type AppKit.NSApplicationUserAcceptedCloudKitShareEventArgs

public class NSApplicationUserAcceptedCloudKitShareEventArgs : System.EventArgs {
	// constructors
	public NSApplicationUserAcceptedCloudKitShareEventArgs (CloudKit.CKShareMetadata metadata);
	// properties
	public CloudKit.CKShareMetadata Metadata { get; set; }
}

New Type AppKit.NSApplication_NSTouchBarCustomization

public static class NSApplication_NSTouchBarCustomization {
	// methods
	public static bool GetAutomaticCustomizeTouchBarMenuItemEnabled (NSApplication This);
	public static void SetAutomaticCustomizeTouchBarMenuItemEnabled (NSApplication This, bool enabled);
	public static void ToggleTouchBarCustomizationPalette (NSApplication This, Foundation.NSObject sender);
}

New Type AppKit.NSCandidateListTouchBarItem

public class NSCandidateListTouchBarItem : AppKit.NSTouchBarItem, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSCandidateListTouchBarItem (Foundation.NSCoder coder);
	protected NSCandidateListTouchBarItem (Foundation.NSObjectFlag t);
	protected NSCandidateListTouchBarItem (IntPtr handle);
	public NSCandidateListTouchBarItem (string identifier);
	// properties
	public virtual bool AllowsCollapsing { get; set; }
	public virtual bool AllowsTextInputContextCandidates { get; set; }
	public virtual AttributedStringForCandidateHandler AttributedStringForCandidate { get; set; }
	public virtual bool CandidateListVisible { get; }
	public virtual Foundation.NSObject[] Candidates { get; }
	public override IntPtr ClassHandle { get; }
	public virtual INSTextInputClient Client { get; set; }
	public virtual bool Collapsed { get; set; }
	public virtual string CustomizationLabel { get; set; }
	public virtual INSCandidateListTouchBarItemDelegate Delegate { get; set; }
	// methods
	protected override void Dispose (bool disposing);
	public virtual void SetCandidates (Foundation.NSObject[] candidates, Foundation.NSRange selectedRange, string originalString);
	public virtual void UpdateWithInsertionPointVisibility (bool isVisible);
}

New Type AppKit.NSCandidateListTouchBarItemDelegate

public class NSCandidateListTouchBarItemDelegate : Foundation.NSObject, INSCandidateListTouchBarItemDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSCandidateListTouchBarItemDelegate ();
	protected NSCandidateListTouchBarItemDelegate (Foundation.NSObjectFlag t);
	protected NSCandidateListTouchBarItemDelegate (IntPtr handle);
	// methods
	public virtual void BeginSelectingCandidate (NSCandidateListTouchBarItem anItem, nint index);
	public virtual void ChangeSelectionFromCandidate (NSCandidateListTouchBarItem anItem, nint previousIndex, nint index);
	public virtual void ChangedCandidateListVisibility (NSCandidateListTouchBarItem anItem, bool isVisible);
	public virtual void EndSelectingCandidate (NSCandidateListTouchBarItem anItem, nint index);
}

New Type AppKit.NSCandidateListTouchBarItemDelegate_Extensions

public static class NSCandidateListTouchBarItemDelegate_Extensions {
	// methods
	public static void BeginSelectingCandidate (INSCandidateListTouchBarItemDelegate This, NSCandidateListTouchBarItem anItem, nint index);
	public static void ChangeSelectionFromCandidate (INSCandidateListTouchBarItemDelegate This, NSCandidateListTouchBarItem anItem, nint previousIndex, nint index);
	public static void ChangedCandidateListVisibility (INSCandidateListTouchBarItemDelegate This, NSCandidateListTouchBarItem anItem, bool isVisible);
	public static void EndSelectingCandidate (INSCandidateListTouchBarItemDelegate This, NSCandidateListTouchBarItem anItem, nint index);
}

New Type AppKit.NSCloudKitSharingServiceOptions

[Serializable]
[Flags]
public enum NSCloudKitSharingServiceOptions {
	AllowPrivate = 2,
	AllowPublic = 1,
	AllowReadOnly = 16,
	AllowReadWrite = 32,
	Standard = 0,
}

New Type AppKit.NSCloudSharingServiceDelegate

public class NSCloudSharingServiceDelegate : AppKit.NSSharingServiceDelegate, INSCloudSharingServiceDelegate, INSSharingServiceDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSCloudSharingServiceDelegate ();
	protected NSCloudSharingServiceDelegate (Foundation.NSObjectFlag t);
	protected NSCloudSharingServiceDelegate (IntPtr handle);
	// methods
	public virtual void Completed (NSSharingService sharingService, Foundation.NSObject[] items, Foundation.NSError error);
	public virtual NSCloudKitSharingServiceOptions Options (NSSharingService cloudKitSharingService, Foundation.NSItemProvider provider);
	public virtual void Saved (NSSharingService sharingService, CloudKit.CKShare share);
	public virtual void Stopped (NSSharingService sharingService, CloudKit.CKShare share);
}

New Type AppKit.NSCloudSharingServiceDelegate_Extensions

public static class NSCloudSharingServiceDelegate_Extensions {
	// methods
	public static void Completed (INSCloudSharingServiceDelegate This, NSSharingService sharingService, Foundation.NSObject[] items, Foundation.NSError error);
	public static NSCloudKitSharingServiceOptions Options (INSCloudSharingServiceDelegate This, NSSharingService cloudKitSharingService, Foundation.NSItemProvider provider);
	public static void Saved (INSCloudSharingServiceDelegate This, NSSharingService sharingService, CloudKit.CKShare share);
	public static void Stopped (INSCloudSharingServiceDelegate This, NSSharingService sharingService, CloudKit.CKShare share);
}

New Type AppKit.NSCollectionViewSectionHeaderView_Extensions

public static class NSCollectionViewSectionHeaderView_Extensions {
	// methods
	public static NSButton GetSectionCollapseButton (INSCollectionViewSectionHeaderView This);
	public static void SetSectionCollapseButton (INSCollectionViewSectionHeaderView This, NSButton value);
}

New Type AppKit.NSColorPickerTouchBarItem

public class NSColorPickerTouchBarItem : AppKit.NSTouchBarItem, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSColorPickerTouchBarItem (Foundation.NSCoder coder);
	protected NSColorPickerTouchBarItem (Foundation.NSObjectFlag t);
	protected NSColorPickerTouchBarItem (IntPtr handle);
	public NSColorPickerTouchBarItem (string identifier);
	// properties
	public virtual ObjCRuntime.Selector Action { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual NSColor Color { get; set; }
	public virtual NSColorList ColorList { get; set; }
	public virtual string CustomizationLabel { get; set; }
	public virtual bool Enabled { get; set; }
	public virtual bool ShowsAlpha { get; set; }
	public virtual Foundation.NSObject Target { get; set; }
	// events
	public event System.EventHandler Activated;
	// methods
	public static NSColorPickerTouchBarItem CreateColorPicker (string identifier);
	public static NSColorPickerTouchBarItem CreateColorPicker (string identifier, NSImage image);
	public static NSColorPickerTouchBarItem CreateStrokeColorPicker (string identifier);
	public static NSColorPickerTouchBarItem CreateTextColorPicker (string identifier);
	protected override void Dispose (bool disposing);
}

New Type AppKit.NSCustomTouchBarItem

public class NSCustomTouchBarItem : AppKit.NSTouchBarItem, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSCustomTouchBarItem (Foundation.NSCoder coder);
	protected NSCustomTouchBarItem (Foundation.NSObjectFlag t);
	protected NSCustomTouchBarItem (IntPtr handle);
	public NSCustomTouchBarItem (string identifier);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string CustomizationLabel { get; set; }
	public virtual NSView View { get; set; }
	public virtual NSViewController ViewController { get; set; }
}

New Type AppKit.NSDisplayGamut

[Serializable]
public enum NSDisplayGamut {
	P3 = 2,
	Srgb = 1,
}

New Type AppKit.NSFilePromiseProvider

public class NSFilePromiseProvider : Foundation.NSObject, INSPasteboardWriting, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSFilePromiseProvider ();
	protected NSFilePromiseProvider (Foundation.NSObjectFlag t);
	protected NSFilePromiseProvider (IntPtr handle);
	public NSFilePromiseProvider (string fileType, INSFilePromiseProviderDelegate delegate);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual INSFilePromiseProviderDelegate Delegate { get; set; }
	public virtual string FileType { get; set; }
	public virtual Foundation.NSObject UserInfo { get; set; }
	// methods
	protected override void Dispose (bool disposing);
	public virtual Foundation.NSObject GetPasteboardPropertyListForType (string type);
	public virtual string[] GetWritableTypesForPasteboard (NSPasteboard pasteboard);
	public virtual NSPasteboardWritingOptions GetWritingOptionsForType (string type, NSPasteboard pasteboard);
}

New Type AppKit.NSFilePromiseProviderDelegate_Extensions

public static class NSFilePromiseProviderDelegate_Extensions {
	// methods
	public static Foundation.NSOperationQueue GetOperationQueue (INSFilePromiseProviderDelegate This, NSFilePromiseProvider filePromiseProvider);
	public static void WritePromiseToUrl (INSFilePromiseProviderDelegate This, NSFilePromiseProvider filePromiseProvider, Foundation.NSUrl url, System.Action<Foundation.NSError> completionHandler);
}

New Type AppKit.NSFilePromiseReceiver

public class NSFilePromiseReceiver : Foundation.NSObject, INSPasteboardReading, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSFilePromiseReceiver ();
	protected NSFilePromiseReceiver (Foundation.NSObjectFlag t);
	protected NSFilePromiseReceiver (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string[] FileNames { get; }
	public virtual string[] FileTypes { get; }
	public static string[] ReadableDraggedTypes { get; }
	// methods
	public static string[] GetReadableTypesForPasteboard (NSPasteboard pasteboard);
	public static NSPasteboardReadingOptions GetReadingOptionsForType (string type, NSPasteboard pasteboard);

	[Obsolete ("No longer an OS X API - it will never be called")]
	public virtual Foundation.NSObject InitWithPasteboardPropertyList (Foundation.NSObject propertyList, string type);
	public virtual void ReceivePromisedFiles (Foundation.NSUrl destinationDir, Foundation.NSDictionary options, Foundation.NSOperationQueue operationQueue, System.Action<Foundation.NSUrl,Foundation.NSError> reader);
}

New Type AppKit.NSGestureRecognizer_NSTouchBar

public static class NSGestureRecognizer_NSTouchBar {
	// methods
	public static NSTouchTypeMask GetAllowedTouchTypes (NSGestureRecognizer This);
	public static void SetAllowedTouchTypes (NSGestureRecognizer This, NSTouchTypeMask types);
}

New Type AppKit.NSGridCell

public class NSGridCell : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSGridCell (Foundation.NSCoder coder);
	protected NSGridCell (Foundation.NSObjectFlag t);
	protected NSGridCell (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual NSGridColumn Column { get; }
	public virtual NSView ContentView { get; set; }
	public virtual NSLayoutConstraint[] CustomPlacementConstraints { get; set; }
	public static NSView EmptyContentView { get; }
	public virtual NSGridRow Row { get; }
	public virtual NSGridRowAlignment RowAlignment { get; set; }
	public virtual NSGridCellPlacement X { get; set; }
	public virtual NSGridCellPlacement Y { get; set; }
	// methods
	protected override void Dispose (bool disposing);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type AppKit.NSGridCellPlacement

[Serializable]
public enum NSGridCellPlacement {
	Bottom = 3,
	Center = 4,
	Fill = 5,
	Inherited = 0,
	Leading = 2,
	None = 1,
	Top = 2,
	Trailing = 3,
}

New Type AppKit.NSGridColumn

public class NSGridColumn : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSGridColumn (Foundation.NSCoder coder);
	protected NSGridColumn (Foundation.NSObjectFlag t);
	protected NSGridColumn (IntPtr handle);
	// properties
	public virtual nint CellCount { get; }
	public override IntPtr ClassHandle { get; }
	public virtual NSGridView GridView { get; }
	public virtual bool Hidden { get; set; }
	public virtual nfloat LeadingPadding { get; set; }
	public virtual nfloat TrailingPadding { get; set; }
	public virtual nfloat Width { get; set; }
	public virtual NSGridCellPlacement X { get; set; }
	// methods
	protected override void Dispose (bool disposing);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public virtual NSGridCell GetCell (nint index);
	public virtual void MergeCells (Foundation.NSRange range);
}

New Type AppKit.NSGridRow

public class NSGridRow : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSGridRow (Foundation.NSCoder coder);
	protected NSGridRow (Foundation.NSObjectFlag t);
	protected NSGridRow (IntPtr handle);
	// properties
	public virtual nfloat BottomPadding { get; set; }
	public virtual nint CellCount { get; }
	public override IntPtr ClassHandle { get; }
	public virtual NSGridView GridView { get; }
	public virtual nfloat Height { get; set; }
	public virtual bool Hidden { get; set; }
	public virtual NSGridRowAlignment RowAlignment { get; set; }
	public virtual nfloat TopPadding { get; set; }
	public virtual NSGridCellPlacement Y { get; set; }
	// methods
	protected override void Dispose (bool disposing);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public virtual NSGridCell GetCell (nint index);
	public virtual void MergeCells (Foundation.NSRange range);
}

New Type AppKit.NSGridRowAlignment

[Serializable]
public enum NSGridRowAlignment {
	FirstBaseline = 2,
	Inherited = 0,
	LastBaseline = 3,
	None = 1,
}

New Type AppKit.NSGridView

public class NSGridView : AppKit.NSView, INSAccessibility, INSAccessibilityElementProtocol, INSAppearanceCustomization, INSDraggingDestination, INSTouchBarProvider, INSUserInterfaceItemIdentification, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSGridView ();
	public NSGridView (CoreGraphics.CGRect frameRect);
	public NSGridView (Foundation.NSCoder coder);
	protected NSGridView (Foundation.NSObjectFlag t);
	protected NSGridView (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nint ColumnCount { get; }
	public virtual nfloat ColumnSpacing { get; set; }
	public virtual NSGridRowAlignment RowAlignment { get; set; }
	public virtual nint RowCount { get; }
	public virtual nfloat RowSpacing { get; set; }
	public static nfloat SizeForContent { get; }
	public virtual NSGridCellPlacement X { get; set; }
	public virtual NSGridCellPlacement Y { get; set; }
	// methods
	public virtual NSGridColumn AddColumn (NSView[] views);
	public virtual NSGridRow AddRow (NSView[] views);
	public static NSGridView Create (NSView[] rows);
	public static NSGridView Create (nint columnCount, nint rowCount);
	public virtual NSGridCell GetCell (NSView view);
	public virtual NSGridCell GetCell (nint columnIndex, nint rowIndex);
	public virtual NSGridColumn GetColumn (nint index);
	public virtual nint GetIndex (NSGridColumn column);
	public virtual nint GetIndex (NSGridRow row);
	public virtual NSGridRow GetRow (nint index);
	public virtual NSGridColumn InsertColumn (nint index, NSView[] views);
	public virtual NSGridRow InsertRow (nint index, NSView[] views);
	public virtual void MergeCells (Foundation.NSRange hRange, Foundation.NSRange vRange);
	public virtual void MoveColumn (nint fromIndex, nint toIndex);
	public virtual void MoveRow (nint fromIndex, nint toIndex);
	public virtual void RemoveColumn (nint index);
	public virtual void RemoveRow (nint index);
}

New Type AppKit.NSGroupTouchBarItem

public class NSGroupTouchBarItem : AppKit.NSTouchBarItem, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSGroupTouchBarItem (Foundation.NSCoder coder);
	protected NSGroupTouchBarItem (Foundation.NSObjectFlag t);
	protected NSGroupTouchBarItem (IntPtr handle);
	public NSGroupTouchBarItem (string identifier);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string CustomizationLabel { get; set; }
	public virtual NSTouchBar GroupTouchBar { get; set; }
	// methods
	public static NSGroupTouchBarItem CreateGroupItem (string identifier, NSTouchBarItem[] items);
}

New Type AppKit.NSImageHint

public static class NSImageHint {
	// properties
	public static Foundation.NSString Ctm { get; }
	public static Foundation.NSString Interpolation { get; }
	public static Foundation.NSString UserInterfaceLayoutDirection { get; }
}

New Type AppKit.NSImageLayoutDirection

[Serializable]
public enum NSImageLayoutDirection {
	LeftToRight = 2,
	RightToLeft = 3,
	Unspecified = -1,
}

New Type AppKit.NSImageNameExtensions

public static class NSImageNameExtensions {
	// methods
	public static Foundation.NSString GetConstant (NSImageName self);
	public static NSImageName GetValue (Foundation.NSString constant);
}

New Type AppKit.NSOpenGLLayer

public class NSOpenGLLayer : CoreAnimation.CAOpenGLLayer, CoreAnimation.ICAMediaTiming, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSOpenGLLayer ();
	public NSOpenGLLayer (Foundation.NSCoder coder);
	protected NSOpenGLLayer (Foundation.NSObjectFlag t);
	protected NSOpenGLLayer (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual NSOpenGLContext OpenGLContext { get; set; }
	public virtual NSOpenGLPixelFormat OpenGLPixelFormat { get; set; }
	public virtual NSView View { get; set; }
	// methods
	public virtual bool CanDraw (NSOpenGLContext context, NSOpenGLPixelFormat pixelFormat, double t, CoreVideo.CVTimeStamp ts);
	protected override void Dispose (bool disposing);
	public virtual void Draw (NSOpenGLContext context, NSOpenGLPixelFormat pixelFormat, double t, CoreVideo.CVTimeStamp ts);
	public virtual NSOpenGLContext GetOpenGLContext (NSOpenGLPixelFormat pixelFormat);
	public virtual NSOpenGLPixelFormat GetOpenGLPixelFormat (uint mask);
}

New Type AppKit.NSPasteboardContentsOptions

[Serializable]
public enum NSPasteboardContentsOptions {
	CurrentHostOnly = 1,
}

New Type AppKit.NSPopoverTouchBarItem

public class NSPopoverTouchBarItem : AppKit.NSTouchBarItem, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSPopoverTouchBarItem (Foundation.NSCoder coder);
	protected NSPopoverTouchBarItem (Foundation.NSObjectFlag t);
	protected NSPopoverTouchBarItem (IntPtr handle);
	public NSPopoverTouchBarItem (string identifier);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual NSView CollapsedRepresentation { get; set; }
	public virtual NSImage CollapsedRepresentationImage { get; set; }
	public virtual string CollapsedRepresentationLabel { get; set; }
	public virtual string CustomizationLabel { get; set; }
	public virtual NSTouchBar PopoverTouchBar { get; set; }
	public virtual NSTouchBar PressAndHoldTouchBar { get; set; }
	public virtual bool ShowsCloseButton { get; set; }
	// methods
	public virtual void DismissPopover (Foundation.NSObject sender);
	public virtual NSGestureRecognizer MakeStandardActivatePopoverGestureRecognizer ();
	public virtual void ShowPopover (Foundation.NSObject sender);
}

New Type AppKit.NSResponder_NSTouchBarProvider

public static class NSResponder_NSTouchBarProvider {
	// methods
	public static NSTouchBar GetTouchBar (NSResponder This);
	public static NSTouchBar MakeTouchBar (NSResponder This);
	public static void SetTouchBar (NSResponder This, NSTouchBar bar);
}

New Type AppKit.NSScrubber

public class NSScrubber : AppKit.NSView, INSAccessibility, INSAccessibilityElementProtocol, INSAppearanceCustomization, INSDraggingDestination, INSTouchBarProvider, INSUserInterfaceItemIdentification, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSScrubber ();
	public NSScrubber (CoreGraphics.CGRect frameRect);
	public NSScrubber (Foundation.NSCoder coder);
	protected NSScrubber (Foundation.NSObjectFlag t);
	protected NSScrubber (IntPtr handle);
	// properties
	public virtual NSColor BackgroundColor { get; set; }
	public virtual NSView BackgroundView { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual bool Continuous { get; set; }
	public virtual INSScrubberDataSource DataSource { get; set; }
	public virtual INSScrubberDelegate Delegate { get; set; }
	public virtual bool FloatsSelectionViews { get; set; }
	public virtual nint HighlightedIndex { get; }
	public virtual NSScrubberAlignment ItemAlignment { get; set; }
	public virtual NSScrubberMode Mode { get; set; }
	public virtual nint NumberOfItems { get; }
	public virtual NSScrubberLayout ScrubberLayout { get; set; }
	public virtual nint SelectedIndex { get; set; }
	public virtual NSScrubberSelectionStyle SelectionBackgroundStyle { get; set; }
	public virtual NSScrubberSelectionStyle SelectionOverlayStyle { get; set; }
	public virtual bool ShowsAdditionalContentIndicators { get; set; }
	public virtual bool ShowsArrowButtons { get; set; }
	// methods
	protected override void Dispose (bool disposing);
	public virtual NSScrubberItemView GetItemViewForItem (nint index);
	public virtual void InsertItems (Foundation.NSIndexSet indexes);
	public virtual NSScrubberItemView MakeItem (string itemIdentifier, Foundation.NSObject owner);
	public virtual void MoveItem (nint oldIndex, nint newIndex);
	public virtual void PerformSequentialBatchUpdates (System.Action updateHandler);
	public virtual void RegisterClass (ObjCRuntime.Class itemViewClass, string itemIdentifier);
	public virtual void RegisterNib (NSNib nib, string itemIdentifier);
	public virtual void ReloadData ();
	public virtual void ReloadItems (Foundation.NSIndexSet indexes);
	public virtual void RemoveItems (Foundation.NSIndexSet indexes);
	public virtual void ScrollItem (nint index, NSScrubberAlignment alignment);
}

New Type AppKit.NSScrubberAlignment

[Serializable]
public enum NSScrubberAlignment {
	Center = 3,
	Leading = 1,
	None = 0,
	Trailing = 2,
}

New Type AppKit.NSScrubberArrangedView

public class NSScrubberArrangedView : AppKit.NSView, INSAccessibility, INSAccessibilityElementProtocol, INSAppearanceCustomization, INSDraggingDestination, INSTouchBarProvider, INSUserInterfaceItemIdentification, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSScrubberArrangedView ();
	public NSScrubberArrangedView (Foundation.NSCoder coder);
	protected NSScrubberArrangedView (Foundation.NSObjectFlag t);
	protected NSScrubberArrangedView (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool Highlighted { get; set; }
	public virtual bool Selected { get; set; }
	// methods
	public virtual void ApplyLayoutAttributes (NSScrubberLayoutAttributes layoutAttributes);
}

New Type AppKit.NSScrubberDataSource

public abstract class NSScrubberDataSource : Foundation.NSObject, INSScrubberDataSource, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NSScrubberDataSource ();
	protected NSScrubberDataSource (Foundation.NSObjectFlag t);
	protected NSScrubberDataSource (IntPtr handle);
	// methods
	public virtual nint GetNumberOfItems (NSScrubber scrubber);
	public virtual NSScrubberItemView GetViewForItem (NSScrubber scrubber, nint index);
}

New Type AppKit.NSScrubberDelegate

public class NSScrubberDelegate : Foundation.NSObject, INSScrubberDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSScrubberDelegate ();
	protected NSScrubberDelegate (Foundation.NSObjectFlag t);
	protected NSScrubberDelegate (IntPtr handle);
	// methods
	public virtual void DidBeginInteracting (NSScrubber scrubber);
	public virtual void DidCancelInteracting (NSScrubber scrubber);
	public virtual void DidChangeVisible (NSScrubber scrubber, Foundation.NSRange visibleRange);
	public virtual void DidFinishInteracting (NSScrubber scrubber);
	public virtual void DidHighlightItem (NSScrubber scrubber, nint highlightedIndex);
	public virtual void DidSelectItem (NSScrubber scrubber, nint selectedIndex);
}

New Type AppKit.NSScrubberDelegate_Extensions

public static class NSScrubberDelegate_Extensions {
	// methods
	public static void DidBeginInteracting (INSScrubberDelegate This, NSScrubber scrubber);
	public static void DidCancelInteracting (INSScrubberDelegate This, NSScrubber scrubber);
	public static void DidChangeVisible (INSScrubberDelegate This, NSScrubber scrubber, Foundation.NSRange visibleRange);
	public static void DidFinishInteracting (INSScrubberDelegate This, NSScrubber scrubber);
	public static void DidHighlightItem (INSScrubberDelegate This, NSScrubber scrubber, nint highlightedIndex);
	public static void DidSelectItem (INSScrubberDelegate This, NSScrubber scrubber, nint selectedIndex);
}

New Type AppKit.NSScrubberFlowLayout

public class NSScrubberFlowLayout : AppKit.NSScrubberLayout, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSScrubberFlowLayout ();
	public NSScrubberFlowLayout (Foundation.NSCoder coder);
	protected NSScrubberFlowLayout (Foundation.NSObjectFlag t);
	protected NSScrubberFlowLayout (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual CoreGraphics.CGSize ItemSize { get; set; }
	public virtual nfloat ItemSpacing { get; set; }
	// methods
	public virtual void InvalidateLayoutForItems (Foundation.NSIndexSet invalidItemIndexes);
}

New Type AppKit.NSScrubberFlowLayoutDelegate

public class NSScrubberFlowLayoutDelegate : Foundation.NSObject, INSScrubberDelegate, INSScrubberFlowLayoutDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSScrubberFlowLayoutDelegate ();
	protected NSScrubberFlowLayoutDelegate (Foundation.NSObjectFlag t);
	protected NSScrubberFlowLayoutDelegate (IntPtr handle);
	// methods
	public virtual void DidBeginInteracting (NSScrubber scrubber);
	public virtual void DidCancelInteracting (NSScrubber scrubber);
	public virtual void DidChangeVisible (NSScrubber scrubber, Foundation.NSRange visibleRange);
	public virtual void DidFinishInteracting (NSScrubber scrubber);
	public virtual void DidHighlightItem (NSScrubber scrubber, nint highlightedIndex);
	public virtual void DidSelectItem (NSScrubber scrubber, nint selectedIndex);
	public virtual CoreGraphics.CGSize Layout (NSScrubber scrubber, NSScrubberFlowLayout layout, nint itemIndex);
}

New Type AppKit.NSScrubberFlowLayoutDelegate_Extensions

public static class NSScrubberFlowLayoutDelegate_Extensions {
	// methods
	public static CoreGraphics.CGSize Layout (INSScrubberFlowLayoutDelegate This, NSScrubber scrubber, NSScrubberFlowLayout layout, nint itemIndex);
}

New Type AppKit.NSScrubberImageItemView

public class NSScrubberImageItemView : AppKit.NSScrubberItemView, INSAccessibility, INSAccessibilityElementProtocol, INSAppearanceCustomization, INSDraggingDestination, INSTouchBarProvider, INSUserInterfaceItemIdentification, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSScrubberImageItemView ();
	public NSScrubberImageItemView (Foundation.NSCoder coder);
	protected NSScrubberImageItemView (Foundation.NSObjectFlag t);
	protected NSScrubberImageItemView (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual NSImage Image { get; set; }
	public virtual NSImageAlignment ImageAlignment { get; set; }
	public virtual NSImageView ImageView { get; }
}

New Type AppKit.NSScrubberItemView

public class NSScrubberItemView : AppKit.NSScrubberArrangedView, INSAccessibility, INSAccessibilityElementProtocol, INSAppearanceCustomization, INSDraggingDestination, INSTouchBarProvider, INSUserInterfaceItemIdentification, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSScrubberItemView ();
	public NSScrubberItemView (Foundation.NSCoder coder);
	protected NSScrubberItemView (Foundation.NSObjectFlag t);
	protected NSScrubberItemView (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
}

New Type AppKit.NSScrubberLayout

public class NSScrubberLayout : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSScrubberLayout ();
	public NSScrubberLayout (Foundation.NSCoder coder);
	protected NSScrubberLayout (Foundation.NSObjectFlag t);
	protected NSScrubberLayout (IntPtr handle);
	// properties
	public virtual bool AutomaticallyMirrorsInRightToLeftLayout { get; }
	public override IntPtr ClassHandle { get; }
	public static ObjCRuntime.Class LayoutAttributesClass { get; }
	public virtual NSScrubber Scrubber { get; }
	public virtual CoreGraphics.CGSize ScrubberContentSize { get; }
	public virtual CoreGraphics.CGRect VisibleRect { get; }
	// methods
	protected override void Dispose (bool disposing);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public virtual void InvalidateLayout ();
	public virtual NSScrubberLayoutAttributes LayoutAttributesForItem (nint index);
	public virtual Foundation.NSSet<NSScrubberLayoutAttributes> LayoutAttributesForItems (CoreGraphics.CGRect rect);
	public virtual void PrepareLayout ();
	public virtual bool ShouldInvalidateLayoutForChangeFromVisibleRect (CoreGraphics.CGRect fromVisibleRect, CoreGraphics.CGRect toVisibleRect);
	public virtual bool ShouldInvalidateLayoutForHighlightChange ();
	public virtual bool ShouldInvalidateLayoutForSelectionChange ();
}

New Type AppKit.NSScrubberLayoutAttributes

public class NSScrubberLayoutAttributes : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSScrubberLayoutAttributes ();
	protected NSScrubberLayoutAttributes (Foundation.NSObjectFlag t);
	protected NSScrubberLayoutAttributes (IntPtr handle);
	// properties
	public virtual nfloat Alpha { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual CoreGraphics.CGRect Frame { get; set; }
	public virtual nint ItemIndex { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static NSScrubberLayoutAttributes CreateLayoutAttributes (nint index);
}

New Type AppKit.NSScrubberMode

[Serializable]
public enum NSScrubberMode {
	Fixed = 0,
	Free = 1,
}

New Type AppKit.NSScrubberProportionalLayout

public class NSScrubberProportionalLayout : AppKit.NSScrubberLayout, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSScrubberProportionalLayout ();
	public NSScrubberProportionalLayout (Foundation.NSCoder coder);
	protected NSScrubberProportionalLayout (Foundation.NSObjectFlag t);
	protected NSScrubberProportionalLayout (IntPtr handle);
	public NSScrubberProportionalLayout (nint numberOfVisibleItems);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nint NumberOfVisibleItems { get; set; }
}

New Type AppKit.NSScrubberSelectionStyle

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

New Type AppKit.NSScrubberSelectionView

public class NSScrubberSelectionView : AppKit.NSScrubberArrangedView, INSAccessibility, INSAccessibilityElementProtocol, INSAppearanceCustomization, INSDraggingDestination, INSTouchBarProvider, INSUserInterfaceItemIdentification, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSScrubberSelectionView ();
	public NSScrubberSelectionView (Foundation.NSCoder coder);
	protected NSScrubberSelectionView (Foundation.NSObjectFlag t);
	protected NSScrubberSelectionView (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
}

New Type AppKit.NSScrubberTextItemView

public class NSScrubberTextItemView : AppKit.NSScrubberItemView, INSAccessibility, INSAccessibilityElementProtocol, INSAppearanceCustomization, INSDraggingDestination, INSTouchBarProvider, INSUserInterfaceItemIdentification, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSScrubberTextItemView ();
	public NSScrubberTextItemView (Foundation.NSCoder coder);
	protected NSScrubberTextItemView (Foundation.NSObjectFlag t);
	protected NSScrubberTextItemView (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual NSTextField TextField { get; }
	public virtual string Title { get; set; }
}

New Type AppKit.NSSharingServiceAnchoringViewForSharingService

public sealed delegate NSSharingServiceAnchoringViewForSharingService : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public NSSharingServiceAnchoringViewForSharingService (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (NSSharingService sharingService, CoreGraphics.CGRect positioningRect, NSRectEdge preferredEdge, System.AsyncCallback callback, object object);
	public virtual NSView EndInvoke (CoreGraphics.CGRect positioningRect, NSRectEdge preferredEdge, System.IAsyncResult result);
	public virtual NSView Invoke (NSSharingService sharingService, CoreGraphics.CGRect positioningRect, NSRectEdge preferredEdge);
}

New Type AppKit.NSSharingServicePickerTouchBarItem

public class NSSharingServicePickerTouchBarItem : AppKit.NSTouchBarItem, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSSharingServicePickerTouchBarItem (Foundation.NSCoder coder);
	protected NSSharingServicePickerTouchBarItem (Foundation.NSObjectFlag t);
	protected NSSharingServicePickerTouchBarItem (IntPtr handle);
	public NSSharingServicePickerTouchBarItem (string identifier);
	// properties
	public virtual NSImage ButtonImage { get; set; }
	public virtual string ButtonTitle { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual INSSharingServicePickerTouchBarItemDelegate Delegate { get; set; }
	public virtual bool Enabled { get; set; }
	// methods
	protected override void Dispose (bool disposing);
}

New Type AppKit.NSSharingServicePickerTouchBarItemDelegate

public abstract class NSSharingServicePickerTouchBarItemDelegate : Foundation.NSObject, INSSharingServicePickerDelegate, INSSharingServicePickerTouchBarItemDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NSSharingServicePickerTouchBarItemDelegate ();
	protected NSSharingServicePickerTouchBarItemDelegate (Foundation.NSObjectFlag t);
	protected NSSharingServicePickerTouchBarItemDelegate (IntPtr handle);
	// methods
	public virtual INSSharingServiceDelegate DelegateForSharingService (NSSharingServicePicker sharingServicePicker, NSSharingService sharingService);
	public virtual void DidChooseSharingService (NSSharingServicePicker sharingServicePicker, NSSharingService service);
	public virtual INSPasteboardWriting[] ItemsForSharingServicePickerTouchBarItem (NSSharingServicePickerTouchBarItem pickerTouchBarItem);
	public virtual NSSharingService[] SharingServicesForItems (NSSharingServicePicker sharingServicePicker, Foundation.NSObject[] items, NSSharingService[] proposedServices);
}

New Type AppKit.NSSliderAccessory

public class NSSliderAccessory : Foundation.NSObject, INSAccessibility, INSAccessibilityElementProtocol, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSSliderAccessory (Foundation.NSCoder coder);
	protected NSSliderAccessory (Foundation.NSObjectFlag t);
	protected NSSliderAccessory (IntPtr handle);
	// properties
	public virtual CoreGraphics.CGPoint AccessibilityActivationPoint { get; set; }
	public virtual Foundation.NSNumber[] AccessibilityAllowedValues { get; set; }
	public virtual bool AccessibilityAlternateUIVisible { get; set; }
	public virtual Foundation.NSObject AccessibilityApplicationFocusedUIElement { get; set; }
	public virtual Foundation.NSObject AccessibilityCancelButton { get; set; }
	public virtual Foundation.NSObject[] AccessibilityChildren { get; set; }
	public virtual Foundation.NSObject AccessibilityClearButton { get; set; }
	public virtual Foundation.NSObject AccessibilityCloseButton { get; set; }
	public virtual nint AccessibilityColumnCount { get; set; }
	public virtual Foundation.NSObject[] AccessibilityColumnHeaderUIElements { get; set; }
	public virtual Foundation.NSRange AccessibilityColumnIndexRange { get; set; }
	public virtual Foundation.NSObject[] AccessibilityColumnTitles { get; set; }
	public virtual Foundation.NSObject[] AccessibilityColumns { get; set; }
	public virtual Foundation.NSObject[] AccessibilityContents { get; set; }
	public virtual Foundation.NSObject AccessibilityCriticalValue { get; set; }
	public virtual Foundation.NSObject AccessibilityDecrementButton { get; set; }
	public virtual Foundation.NSObject AccessibilityDefaultButton { get; set; }
	public virtual bool AccessibilityDisclosed { get; set; }
	public virtual Foundation.NSObject AccessibilityDisclosedByRow { get; set; }
	public virtual Foundation.NSObject AccessibilityDisclosedRows { get; set; }
	public virtual nint AccessibilityDisclosureLevel { get; set; }
	public virtual string AccessibilityDocument { get; set; }
	public virtual bool AccessibilityEdited { get; set; }
	public virtual bool AccessibilityElement { get; set; }
	public virtual bool AccessibilityEnabled { get; set; }
	public virtual bool AccessibilityExpanded { get; set; }
	public virtual Foundation.NSObject AccessibilityExtrasMenuBar { get; set; }
	public virtual string AccessibilityFilename { get; set; }
	public virtual bool AccessibilityFocused { get; set; }
	public virtual Foundation.NSObject AccessibilityFocusedWindow { get; set; }
	public virtual CoreGraphics.CGRect AccessibilityFrame { get; set; }
	public virtual bool AccessibilityFrontmost { get; set; }
	public virtual Foundation.NSObject AccessibilityFullScreenButton { get; set; }
	public virtual Foundation.NSObject AccessibilityGrowArea { get; set; }
	public virtual Foundation.NSObject[] AccessibilityHandles { get; set; }
	public virtual Foundation.NSObject AccessibilityHeader { get; set; }
	public virtual string AccessibilityHelp { get; set; }
	public virtual bool AccessibilityHidden { get; set; }
	public virtual Foundation.NSObject AccessibilityHorizontalScrollBar { get; set; }
	public virtual string AccessibilityHorizontalUnitDescription { get; set; }
	public virtual NSAccessibilityUnits AccessibilityHorizontalUnits { get; set; }
	public virtual string AccessibilityIdentifier { get; set; }
	public virtual Foundation.NSObject AccessibilityIncrementButton { get; set; }
	public virtual nint AccessibilityIndex { get; set; }
	public virtual nint AccessibilityInsertionPointLineNumber { get; set; }
	public virtual string AccessibilityLabel { get; set; }
	public virtual Foundation.NSObject[] AccessibilityLabelUIElements { get; set; }
	public virtual float AccessibilityLabelValue { get; set; }
	public virtual Foundation.NSObject[] AccessibilityLinkedUIElements { get; set; }
	public virtual bool AccessibilityMain { get; set; }
	public virtual Foundation.NSObject AccessibilityMainWindow { get; set; }
	public virtual Foundation.NSObject AccessibilityMarkerGroupUIElement { get; set; }
	public virtual string AccessibilityMarkerTypeDescription { get; set; }
	public virtual Foundation.NSObject[] AccessibilityMarkerUIElements { get; set; }
	public virtual Foundation.NSObject AccessibilityMarkerValues { get; set; }
	public virtual Foundation.NSObject AccessibilityMaxValue { get; set; }
	public virtual Foundation.NSObject AccessibilityMenuBar { get; set; }
	public virtual Foundation.NSObject AccessibilityMinValue { get; set; }
	public virtual Foundation.NSObject AccessibilityMinimizeButton { get; set; }
	public virtual bool AccessibilityMinimized { get; set; }
	public virtual bool AccessibilityModal { get; set; }
	public virtual Foundation.NSObject[] AccessibilityNextContents { get; set; }
	public virtual nint AccessibilityNumberOfCharacters { get; set; }
	public virtual bool AccessibilityOrderedByRow { get; set; }
	public virtual NSAccessibilityOrientation AccessibilityOrientation { get; set; }
	public virtual Foundation.NSObject AccessibilityOverflowButton { get; set; }
	public virtual Foundation.NSObject AccessibilityParent { get; set; }
	public virtual string AccessibilityPlaceholderValue { get; set; }
	public virtual Foundation.NSObject[] AccessibilityPreviousContents { get; set; }
	public virtual bool AccessibilityProtectedContent { get; set; }
	public virtual Foundation.NSObject AccessibilityProxy { get; set; }
	public virtual bool AccessibilityRequired { get; set; }
	public virtual string AccessibilityRole { get; set; }
	public virtual string AccessibilityRoleDescription { get; set; }
	public virtual nint AccessibilityRowCount { get; set; }
	public virtual Foundation.NSObject[] AccessibilityRowHeaderUIElements { get; set; }
	public virtual Foundation.NSRange AccessibilityRowIndexRange { get; set; }
	public virtual Foundation.NSObject[] AccessibilityRows { get; set; }
	public virtual NSAccessibilityRulerMarkerType AccessibilityRulerMarkerType { get; set; }
	public virtual Foundation.NSObject AccessibilitySearchButton { get; set; }
	public virtual Foundation.NSObject AccessibilitySearchMenu { get; set; }
	public virtual bool AccessibilitySelected { get; set; }
	public virtual Foundation.NSObject[] AccessibilitySelectedCells { get; set; }
	public virtual Foundation.NSObject[] AccessibilitySelectedChildren { get; set; }
	public virtual Foundation.NSObject[] AccessibilitySelectedColumns { get; set; }
	public virtual Foundation.NSObject[] AccessibilitySelectedRows { get; set; }
	public virtual string AccessibilitySelectedText { get; set; }
	public virtual Foundation.NSRange AccessibilitySelectedTextRange { get; set; }
	public virtual Foundation.NSValue[] AccessibilitySelectedTextRanges { get; set; }
	public virtual Foundation.NSObject[] AccessibilityServesAsTitleForUIElements { get; set; }
	public virtual Foundation.NSRange AccessibilitySharedCharacterRange { get; set; }
	public virtual Foundation.NSObject[] AccessibilitySharedFocusElements { get; set; }
	public virtual Foundation.NSObject[] AccessibilitySharedTextUIElements { get; set; }
	public virtual Foundation.NSObject AccessibilityShownMenu { get; set; }
	public virtual NSAccessibilitySortDirection AccessibilitySortDirection { get; set; }
	public virtual Foundation.NSObject[] AccessibilitySplitters { get; set; }
	public virtual string AccessibilitySubrole { get; set; }
	public virtual Foundation.NSObject[] AccessibilityTabs { get; set; }
	public virtual string AccessibilityTitle { get; set; }
	public virtual Foundation.NSObject AccessibilityTitleUIElement { get; set; }
	public virtual Foundation.NSObject AccessibilityToolbarButton { get; set; }
	public virtual Foundation.NSObject AccessibilityTopLevelUIElement { get; set; }
	public virtual string AccessibilityUnitDescription { get; set; }
	public virtual NSAccessibilityUnits AccessibilityUnits { get; set; }
	public virtual Foundation.NSUrl AccessibilityUrl { get; set; }
	public virtual Foundation.NSObject AccessibilityValue { get; set; }
	public virtual string AccessibilityValueDescription { get; set; }
	public virtual Foundation.NSObject AccessibilityVerticalScrollBar { get; set; }
	public virtual string AccessibilityVerticalUnitDescription { get; set; }
	public virtual NSAccessibilityUnits AccessibilityVerticalUnits { get; set; }
	public virtual Foundation.NSObject[] AccessibilityVisibleCells { get; set; }
	public virtual Foundation.NSRange AccessibilityVisibleCharacterRange { get; set; }
	public virtual Foundation.NSObject[] AccessibilityVisibleChildren { get; set; }
	public virtual Foundation.NSObject[] AccessibilityVisibleColumns { get; set; }
	public virtual Foundation.NSObject[] AccessibilityVisibleRows { get; set; }
	public virtual Foundation.NSObject AccessibilityWarningValue { get; set; }
	public virtual Foundation.NSObject AccessibilityWindow { get; set; }
	public virtual Foundation.NSObject[] AccessibilityWindows { get; set; }
	public virtual Foundation.NSObject AccessibilityZoomButton { get; set; }
	public virtual NSSliderAccessoryBehavior Behavior { get; set; }
	public override IntPtr ClassHandle { get; }
	public static double DefaultWidth { get; }
	public virtual bool Enabled { get; set; }
	public static double WidthWide { get; }
	// methods
	public virtual bool AccessibilityPerformCancel ();
	public virtual bool AccessibilityPerformConfirm ();
	public virtual bool AccessibilityPerformDecrement ();
	public virtual bool AccessibilityPerformDelete ();
	public virtual bool AccessibilityPerformIncrement ();
	public virtual bool AccessibilityPerformPick ();
	public virtual bool AccessibilityPerformPress ();
	public virtual bool AccessibilityPerformRaise ();
	public virtual bool AccessibilityPerformShowAlternateUI ();
	public virtual bool AccessibilityPerformShowDefaultUI ();
	public virtual bool AccessibilityPerformShowMenu ();
	public static NSSliderAccessory CreateAccessory (NSImage image);
	protected override void Dispose (bool disposing);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public virtual Foundation.NSAttributedString GetAccessibilityAttributedString (Foundation.NSRange range);
	public virtual Foundation.NSObject GetAccessibilityCellForColumn (nint column, nint row);
	public virtual CoreGraphics.CGRect GetAccessibilityFrame (Foundation.NSRange range);
	public virtual CoreGraphics.CGPoint GetAccessibilityLayoutForScreen (CoreGraphics.CGPoint point);
	public virtual CoreGraphics.CGSize GetAccessibilityLayoutForScreen (CoreGraphics.CGSize size);
	public virtual nint GetAccessibilityLine (nint index);
	public virtual Foundation.NSRange GetAccessibilityRange (CoreGraphics.CGPoint point);
	public virtual Foundation.NSRange GetAccessibilityRange (nint index);
	public virtual Foundation.NSRange GetAccessibilityRangeForLine (nint line);
	public virtual Foundation.NSData GetAccessibilityRtf (Foundation.NSRange range);
	public virtual CoreGraphics.CGPoint GetAccessibilityScreenForLayout (CoreGraphics.CGPoint point);
	public virtual CoreGraphics.CGSize GetAccessibilityScreenForLayout (CoreGraphics.CGSize size);
	public virtual string GetAccessibilityString (Foundation.NSRange range);
	public virtual Foundation.NSRange GetAccessibilityStyleRange (nint index);
	public virtual bool IsAccessibilitySelectorAllowed (ObjCRuntime.Selector selector);
}

New Type AppKit.NSSliderAccessoryBehavior

public class NSSliderAccessoryBehavior : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSSliderAccessoryBehavior ();
	public NSSliderAccessoryBehavior (Foundation.NSCoder coder);
	protected NSSliderAccessoryBehavior (Foundation.NSObjectFlag t);
	protected NSSliderAccessoryBehavior (IntPtr handle);
	// properties
	public static NSSliderAccessoryBehavior AutomaticBehavior { get; }
	public override IntPtr ClassHandle { get; }
	public static NSSliderAccessoryBehavior ValueResetBehavior { get; }
	public static NSSliderAccessoryBehavior ValueStepBehavior { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static NSSliderAccessoryBehavior CreateBehavior (System.Action<NSSliderAccessory> handler);
	public static NSSliderAccessoryBehavior CreateBehavior (Foundation.NSObject target, ObjCRuntime.Selector action);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public virtual void HandleAction (NSSliderAccessory sender);
}

New Type AppKit.NSSliderTouchBarItem

public class NSSliderTouchBarItem : AppKit.NSTouchBarItem, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSSliderTouchBarItem (Foundation.NSCoder coder);
	protected NSSliderTouchBarItem (Foundation.NSObjectFlag t);
	protected NSSliderTouchBarItem (IntPtr handle);
	public NSSliderTouchBarItem (string identifier);
	// properties
	public virtual ObjCRuntime.Selector Action { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual string CustomizationLabel { get; set; }
	public virtual string Label { get; set; }
	public virtual NSSliderAccessory MaximumValueAccessory { get; set; }
	public virtual NSSliderAccessory MinimumValueAccessory { get; set; }
	public virtual NSSlider Slider { get; set; }
	public virtual Foundation.NSObject Target { get; set; }
	public virtual nfloat ValueAccessoryWidth { get; set; }
	// events
	public event System.EventHandler Activated;
	// methods
	protected override void Dispose (bool disposing);
}

New Type AppKit.NSSpellCheckerCanidates

public class NSSpellCheckerCanidates {
	// constructors
	public NSSpellCheckerCanidates (nint arg1, Foundation.NSTextCheckingResult[] arg2);
	// properties
	public nint Arg1 { get; set; }
	public Foundation.NSTextCheckingResult[] Arg2 { get; set; }
}

New Type AppKit.NSStatusItemBehavior

[Serializable]
public enum NSStatusItemBehavior {
	RemovalAllowed = 2,
	TerminationOnRemoval = 4,
}

New Type AppKit.NSTabPosition

[Serializable]
public enum NSTabPosition {
	Bottom = 3,
	Left = 2,
	None = 0,
	Right = 4,
	Top = 1,
}

New Type AppKit.NSTabViewBorderType

[Serializable]
public enum NSTabViewBorderType {
	Bezel = 2,
	Line = 1,
	None = 0,
}

New Type AppKit.NSTextFieldGetCandidates

public sealed delegate NSTextFieldGetCandidates : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public NSTextFieldGetCandidates (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (NSTextField textField, NSTextView textView, Foundation.NSRange selectedRange, System.AsyncCallback callback, object object);
	public virtual Foundation.NSObject[] EndInvoke (System.IAsyncResult result);
	public virtual Foundation.NSObject[] Invoke (NSTextField textField, NSTextView textView, Foundation.NSRange selectedRange);
}

New Type AppKit.NSTextFieldSelectCandidate

public sealed delegate NSTextFieldSelectCandidate : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public NSTextFieldSelectCandidate (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (NSTextField textField, NSTextView textView, uint index, System.AsyncCallback callback, object object);
	public virtual bool EndInvoke (System.IAsyncResult result);
	public virtual bool Invoke (NSTextField textField, NSTextView textView, uint index);
}

New Type AppKit.NSTextFieldTextCheckingResults

public sealed delegate NSTextFieldTextCheckingResults : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public NSTextFieldTextCheckingResults (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (NSTextField textField, NSTextView textView, Foundation.NSTextCheckingResult[] candidates, Foundation.NSRange selectedRange, System.AsyncCallback callback, object object);
	public virtual Foundation.NSTextCheckingResult[] EndInvoke (System.IAsyncResult result);
	public virtual Foundation.NSTextCheckingResult[] Invoke (NSTextField textField, NSTextView textView, Foundation.NSTextCheckingResult[] candidates, Foundation.NSRange selectedRange);
}

New Type AppKit.NSTextField_NSTouchBar

public static class NSTextField_NSTouchBar {
	// methods
	public static bool GetAllowsCharacterPickerTouchBarItem (NSTextField This);
	public static bool GetAutomaticTextCompletionEnabled (NSTextField This);
	public static void SetAllowsCharacterPickerTouchBarItem (NSTextField This, bool allows);
	public static void SetAutomaticTextCompletionEnabled (NSTextField This, bool enabled);
}

New Type AppKit.NSTextViewGetCandidates

public sealed delegate NSTextViewGetCandidates : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public NSTextViewGetCandidates (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (NSTextView textView, Foundation.NSRange selectedRange, System.AsyncCallback callback, object object);
	public virtual Foundation.NSObject[] EndInvoke (System.IAsyncResult result);
	public virtual Foundation.NSObject[] Invoke (NSTextView textView, Foundation.NSRange selectedRange);
}

New Type AppKit.NSTextViewSelectCandidate

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

New Type AppKit.NSTextViewTextCheckingResults

public sealed delegate NSTextViewTextCheckingResults : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public NSTextViewTextCheckingResults (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (NSTextView textView, Foundation.NSTextCheckingResult[] candidates, Foundation.NSRange selectedRange, System.AsyncCallback callback, object object);
	public virtual Foundation.NSTextCheckingResult[] EndInvoke (System.IAsyncResult result);
	public virtual Foundation.NSTextCheckingResult[] Invoke (NSTextView textView, Foundation.NSTextCheckingResult[] candidates, Foundation.NSRange selectedRange);
}

New Type AppKit.NSTextViewUpdateTouchBarItemIdentifiers

public sealed delegate NSTextViewUpdateTouchBarItemIdentifiers : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public NSTextViewUpdateTouchBarItemIdentifiers (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (NSTextView textView, string[] identifiers, System.AsyncCallback callback, object object);
	public virtual string[] EndInvoke (System.IAsyncResult result);
	public virtual string[] Invoke (NSTextView textView, string[] identifiers);
}

New Type AppKit.NSTouchBar

public class NSTouchBar : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSTouchBar ();
	public NSTouchBar (Foundation.NSCoder coder);
	protected NSTouchBar (Foundation.NSObjectFlag t);
	protected NSTouchBar (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string[] CustomizationAllowedItemIdentifiers { get; set; }
	public virtual string CustomizationIdentifier { get; set; }
	public virtual string[] CustomizationRequiredItemIdentifiers { get; set; }
	public virtual string[] DefaultItemIdentifiers { get; set; }
	public virtual INSTouchBarDelegate Delegate { get; set; }
	public NSTouchBarMakeItem MakeItem { get; set; }
	public virtual string PrincipalItemIdentifier { get; set; }
	public virtual Foundation.NSSet<NSTouchBarItem> TemplateItems { get; set; }
	public virtual bool Visible { get; }
	// methods
	protected override void Dispose (bool disposing);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public virtual NSTouchBarItem GetItemForIdentifier (string identifier);
}

New Type AppKit.NSTouchBarDelegate

public class NSTouchBarDelegate : Foundation.NSObject, INSTouchBarDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSTouchBarDelegate ();
	protected NSTouchBarDelegate (Foundation.NSObjectFlag t);
	protected NSTouchBarDelegate (IntPtr handle);
	// methods
	public virtual NSTouchBarItem MakeItem (NSTouchBar touchBar, string identifier);
}

New Type AppKit.NSTouchBarDelegate_Extensions

public static class NSTouchBarDelegate_Extensions {
	// methods
	public static NSTouchBarItem MakeItem (INSTouchBarDelegate This, NSTouchBar touchBar, string identifier);
}

New Type AppKit.NSTouchBarItem

public class NSTouchBarItem : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSTouchBarItem (NSTouchBarItemIdentifier identifier);
	public NSTouchBarItem (Foundation.NSCoder coder);
	protected NSTouchBarItem (Foundation.NSObjectFlag t);
	protected NSTouchBarItem (IntPtr handle);
	public NSTouchBarItem (string identifier);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string CustomizationLabel { get; }
	public virtual string Identifier { get; }
	public virtual NSView View { get; }
	public virtual NSViewController ViewController { get; }
	public virtual float VisibilityPriority { get; set; }
	public virtual bool Visible { get; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type AppKit.NSTouchBarItemIdentifier

[Serializable]
public enum NSTouchBarItemIdentifier {
	CharacterPicker = 4,
	FixedSpaceLarge = 1,
	FixedSpaceSmall = 0,
	FlexibleSpace = 2,
	OtherItemsProxy = 3,
	TextAlignment = 7,
	TextColorPicker = 5,
	TextFormat = 9,
	TextList = 8,
	TextStyle = 6,
}

New Type AppKit.NSTouchBarItemIdentifierExtensions

public static class NSTouchBarItemIdentifierExtensions {
	// methods
	public static Foundation.NSString GetConstant (NSTouchBarItemIdentifier self);
	public static NSTouchBarItemIdentifier GetValue (Foundation.NSString constant);
}

New Type AppKit.NSTouchBarMakeItem

public sealed delegate NSTouchBarMakeItem : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public NSTouchBarMakeItem (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (NSTouchBar touchBar, string identifier, System.AsyncCallback callback, object object);
	public virtual NSTouchBarItem EndInvoke (System.IAsyncResult result);
	public virtual NSTouchBarItem Invoke (NSTouchBar touchBar, string identifier);
}

New Type AppKit.NSTouchEvent

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

New Type AppKit.NSTouchType

[Serializable]
public enum NSTouchType {
	Direct = 0,
	Indirect = 1,
}

New Type AppKit.NSTouchTypeMask

[Serializable]
[Flags]
public enum NSTouchTypeMask {
	Direct = 1,
	Indirect = 2,
}

New Type AppKit.NSTouch_NSTouchBar

public static class NSTouch_NSTouchBar {
	// methods
	public static CoreGraphics.CGPoint GetLocation (NSTouch This, NSView view);
	public static CoreGraphics.CGPoint GetPreviousLocation (NSTouch This, NSView view);
	public static NSTouchType GetTouchType (NSTouch This);
}

New Type AppKit.NSView_NSCandidateListTouchBarItem

public static class NSView_NSCandidateListTouchBarItem {
	// methods
	public static NSCandidateListTouchBarItem GetCandidateListTouchBarItem (NSView This);
}

New Type AppKit.NSView_NSTouchBar

public static class NSView_NSTouchBar {
	// methods
	public static NSTouchTypeMask GetAllowedTouchTypes (NSView This);
	public static void SetAllowedTouchTypes (NSView This, NSTouchTypeMask touchTypes);
}

New Type AppKit.NSWindowListOptions

[Serializable]
public enum NSWindowListOptions {
	OrderedFrontToBack = 1,
}

New Type AppKit.NSWindowTabbingMode

[Serializable]
public enum NSWindowTabbingMode {
	Automatic = 0,
	Disallowed = 2,
	Preferred = 1,
}

New Type AppKit.NSWindowUserTabbingPreference

[Serializable]
public enum NSWindowUserTabbingPreference {
	Always = 1,
	InFullScreen = 2,
	Manual = 0,
}

Namespace AudioToolbox

Type Changed: AudioToolbox.AudioQueueStatus

Added value:

	CannotStartYet = -66665,

Type Changed: AudioToolbox.AudioServicesError

Added value:

	SystemSoundExceededMaximumDurationError = -1502,

Namespace AudioUnit

Type Changed: AudioUnit.AUAudioUnit

Added properties:

	public virtual Foundation.NSNumber[] ChannelMap { get; set; }
	public virtual bool SupportsMpe { get; }

Type Changed: AudioUnit.AUParameter

Added method:

	public void SetValue (float value, AUParameterObserverToken originator, ulong hostTime, AUParameterAutomationEventType eventType);

Type Changed: AudioUnit.AUParameterNode

Added method:

	public AUParameterObserverToken GetToken (AUParameterAutomationObserver observer);

Type Changed: AudioUnit.AUParameterObserverToken

Added constructor:

	public AUParameterObserverToken (IntPtr observerToken);

Type Changed: AudioUnit.AudioComponentStatus

Added value:

	RenderTimeout = -66745,

Type Changed: AudioUnit.AudioUnitPropertyIDType

Added values:

	InputAnchorTimeStamp = 3016,
	SupportsMpe = 58,

New Type AudioUnit.AUParameterAutomationEvent

public struct AUParameterAutomationEvent {
	// fields
	public ulong Address;
	public AUParameterAutomationEventType EventType;
	public ulong HostTime;
	public float Value;
}

New Type AudioUnit.AUParameterAutomationEventType

[Serializable]
public enum AUParameterAutomationEventType {
	Release = 2,
	Touch = 1,
	Value = 0,
}

New Type AudioUnit.AUParameterAutomationObserver

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

Namespace CloudKit

Type Changed: CloudKit.CKContainer

Added properties:

	public static Foundation.NSString CurrentUserDefaultName { get; }
	public virtual CKDatabase SharedCloudDatabase { get; }

Added methods:

	public virtual void AcceptShareMetadata (CKShareMetadata metadata, System.Action<CKShare,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<CKShare> AcceptShareMetadataAsync (CKShareMetadata metadata);
	public virtual void DiscoverAllIdentities (System.Action<CKUserIdentity[],Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<CKUserIdentity[]> DiscoverAllIdentitiesAsync ();
	public virtual void DiscoverUserIdentity (CKRecordID userRecordID, System.Action<CKUserIdentity,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<CKUserIdentity> DiscoverUserIdentityAsync (CKRecordID userRecordID);
	public virtual void DiscoverUserIdentityWithEmailAddress (string email, System.Action<CKUserIdentity,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<CKUserIdentity> DiscoverUserIdentityWithEmailAddressAsync (string email);
	public virtual void DiscoverUserIdentityWithPhoneNumber (string phoneNumber, System.Action<CKUserIdentity,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<CKUserIdentity> DiscoverUserIdentityWithPhoneNumberAsync (string phoneNumber);
	public virtual void FetchShareMetadata (Foundation.NSUrl url, System.Action<CKShareMetadata,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<CKShareMetadata> FetchShareMetadataAsync (Foundation.NSUrl url);
	public virtual void FetchShareParticipant (CKRecordID userRecordID, System.Action<CKShareParticipant,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<CKShareParticipant> FetchShareParticipantAsync (CKRecordID userRecordID);
	public virtual void FetchShareParticipantWithEmailAddress (string emailAddress, System.Action<CKShareParticipant,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<CKShareParticipant> FetchShareParticipantWithEmailAddressAsync (string emailAddress);
	public virtual void FetchShareParticipantWithPhoneNumber (string phoneNumber, System.Action<CKShareParticipant,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<CKShareParticipant> FetchShareParticipantWithPhoneNumberAsync (string phoneNumber);
	public virtual CKDatabase GetDatabase (CKDatabaseScope databaseScope);

Type Changed: CloudKit.CKDatabase

Added property:

	public virtual CKDatabaseScope DatabaseScope { get; }

Type Changed: CloudKit.CKErrorCode

Added values:

	AlreadyShared = 30,
	ManagedAccountRestricted = 32,
	ParticipantMayNeedVerification = 33,
	ReferenceViolation = 31,
	TooManyParticipants = 29,

Type Changed: CloudKit.CKNotificationID

Obsoleted constructors:

[Obsolete ("This type is not meant to be created by user code")] public CKNotificationID ();

Type Changed: CloudKit.CKNotificationType

Added value:

	Database = 4,

Type Changed: CloudKit.CKOperation

Added properties:

	public virtual double TimeoutIntervalForRequest { get; set; }
	public virtual double TimeoutIntervalForResource { get; set; }

Type Changed: CloudKit.CKQueryNotification

Added property:

	public virtual CKDatabaseScope DatabaseScope { get; }

Type Changed: CloudKit.CKRecord

Added properties:

	public virtual CKReference Parent { get; set; }
	public static Foundation.NSString ParentKey { get; }
	public virtual CKReference Share { get; }
	public static Foundation.NSString ShareKey { get; }
	public static Foundation.NSString TypeShare { get; }

Added methods:

	public virtual void SetParent (CKRecord parentRecord);
	public virtual void SetParent (CKRecordID parentRecordID);

Type Changed: CloudKit.CKRecordZoneCapabilities

Added value:

	Sharing = 4,

Type Changed: CloudKit.CKRecordZoneNotification

Added property:

	public virtual CKDatabaseScope DatabaseScope { get; }

Type Changed: CloudKit.CKSubscriptionType

Added value:

	Database = 3,

New Type CloudKit.CKAcceptPerShareCompletionHandler

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

New Type CloudKit.CKAcceptSharesOperation

public class CKAcceptSharesOperation : CloudKit.CKOperation, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CKAcceptSharesOperation ();
	public CKAcceptSharesOperation (CKShareMetadata[] shareMetadatas);
	protected CKAcceptSharesOperation (Foundation.NSObjectFlag t);
	protected CKAcceptSharesOperation (IntPtr handle);
	// properties
	public virtual System.Action<Foundation.NSError> AcceptSharesCompleted { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual CKAcceptPerShareCompletionHandler PerShareCompleted { get; set; }
	public virtual CKShareMetadata[] ShareMetadatas { get; set; }
}

New Type CloudKit.CKDatabaseNotification

public class CKDatabaseNotification : CloudKit.CKNotification, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CKDatabaseNotification (Foundation.NSCoder coder);
	protected CKDatabaseNotification (Foundation.NSObjectFlag t);
	protected CKDatabaseNotification (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual CKDatabaseScope DatabaseScope { get; }
}

New Type CloudKit.CKDatabaseScope

[Serializable]
public enum CKDatabaseScope {
	Private = 2,
	Public = 1,
	Shared = 3,
}

New Type CloudKit.CKDatabaseSubscription

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

New Type CloudKit.CKDiscoverAllUserIdentitiesOperation

public class CKDiscoverAllUserIdentitiesOperation : CloudKit.CKOperation, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CKDiscoverAllUserIdentitiesOperation ();
	protected CKDiscoverAllUserIdentitiesOperation (Foundation.NSObjectFlag t);
	protected CKDiscoverAllUserIdentitiesOperation (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual System.Action<Foundation.NSError> Completed { get; set; }
	public virtual System.Action<CKUserIdentity> Discovered { get; set; }
}

New Type CloudKit.CKDiscoverUserIdentitiesOperation

public class CKDiscoverUserIdentitiesOperation : CloudKit.CKOperation, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CKDiscoverUserIdentitiesOperation ();
	public CKDiscoverUserIdentitiesOperation (CKUserIdentityLookupInfo[] userIdentityLookupInfos);
	protected CKDiscoverUserIdentitiesOperation (Foundation.NSObjectFlag t);
	protected CKDiscoverUserIdentitiesOperation (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual System.Action<Foundation.NSError> Completed { get; set; }
	public virtual System.Action<CKUserIdentity,CloudKit.CKUserIdentityLookupInfo> Discovered { get; set; }
	public virtual CKUserIdentityLookupInfo[] UserIdentityLookupInfos { get; set; }
}

New Type CloudKit.CKFetchDatabaseChangesCompletionHandler

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

New Type CloudKit.CKFetchDatabaseChangesOperation

public class CKFetchDatabaseChangesOperation : CloudKit.CKDatabaseOperation, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CKFetchDatabaseChangesOperation ();
	public CKFetchDatabaseChangesOperation (CKServerChangeToken previousServerChangeToken);
	protected CKFetchDatabaseChangesOperation (Foundation.NSObjectFlag t);
	protected CKFetchDatabaseChangesOperation (IntPtr handle);
	// properties
	public virtual System.Action<CKServerChangeToken> ChangeTokenUpdated { get; set; }
	public virtual System.Action<CKRecordZoneID> Changed { get; set; }
	public virtual CKFetchDatabaseChangesCompletionHandler ChangesCompleted { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual bool FetchAllChanges { get; set; }
	public virtual CKServerChangeToken PreviousServerChangeToken { get; set; }
	public virtual uint ResultsLimit { get; set; }
	public virtual System.Action<CKRecordZoneID> WasDeleted { get; set; }
}

New Type CloudKit.CKFetchPerShareMetadataHandler

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

New Type CloudKit.CKFetchRecordZoneChangesFetchCompletedHandler

public sealed delegate CKFetchRecordZoneChangesFetchCompletedHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public CKFetchRecordZoneChangesFetchCompletedHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (CKRecordZoneID recordZoneID, CKServerChangeToken serverChangeToken, Foundation.NSData clientChangeTokenData, bool moreComing, Foundation.NSError recordZoneError, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (CKRecordZoneID recordZoneID, CKServerChangeToken serverChangeToken, Foundation.NSData clientChangeTokenData, bool moreComing, Foundation.NSError recordZoneError);
}

New Type CloudKit.CKFetchRecordZoneChangesOperation

public class CKFetchRecordZoneChangesOperation : CloudKit.CKDatabaseOperation, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CKFetchRecordZoneChangesOperation ();
	protected CKFetchRecordZoneChangesOperation (Foundation.NSObjectFlag t);
	protected CKFetchRecordZoneChangesOperation (IntPtr handle);
	public CKFetchRecordZoneChangesOperation (CKRecordZoneID[] recordZoneIDs, Foundation.NSDictionary<CKRecordZoneID,CloudKit.CKFetchRecordZoneChangesOptions> optionsByRecordZoneID);
	// properties
	public virtual System.Action<Foundation.NSError> ChangesCompleted { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual bool FetchAllChanges { get; set; }
	public virtual CKFetchRecordZoneChangesFetchCompletedHandler FetchCompleted { get; set; }
	public virtual Foundation.NSDictionary<CKRecordZoneID,CloudKit.CKFetchRecordZoneChangesOptions> OptionsByRecordZoneID { get; set; }
	public virtual System.Action<CKRecord> RecordChanged { get; set; }
	public virtual CKFetchRecordZoneChangesWithIDWasDeletedHandler RecordWithIDWasDeleted { get; set; }
	public virtual CKFetchRecordZoneChangesTokensUpdatedHandler RecordZoneChangeTokensUpdated { get; set; }
	public virtual CKRecordZoneID[] RecordZoneIDs { get; set; }
}

New Type CloudKit.CKFetchRecordZoneChangesOptions

public class CKFetchRecordZoneChangesOptions : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CKFetchRecordZoneChangesOptions ();
	public CKFetchRecordZoneChangesOptions (Foundation.NSCoder coder);
	protected CKFetchRecordZoneChangesOptions (Foundation.NSObjectFlag t);
	protected CKFetchRecordZoneChangesOptions (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string[] DesiredKeys { get; set; }
	public virtual CKServerChangeToken PreviousServerChangeToken { get; set; }
	public virtual uint ResultsLimit { get; set; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type CloudKit.CKFetchRecordZoneChangesTokensUpdatedHandler

public sealed delegate CKFetchRecordZoneChangesTokensUpdatedHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public CKFetchRecordZoneChangesTokensUpdatedHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (CKRecordZoneID recordZoneID, CKServerChangeToken serverChangeToken, Foundation.NSData clientChangeTokenData, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (CKRecordZoneID recordZoneID, CKServerChangeToken serverChangeToken, Foundation.NSData clientChangeTokenData);
}

New Type CloudKit.CKFetchRecordZoneChangesWithIDWasDeletedHandler

public sealed delegate CKFetchRecordZoneChangesWithIDWasDeletedHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public CKFetchRecordZoneChangesWithIDWasDeletedHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (CKRecordID recordID, Foundation.NSString recordType, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (CKRecordID recordID, Foundation.NSString recordType);
}

New Type CloudKit.CKFetchShareMetadataOperation

public class CKFetchShareMetadataOperation : CloudKit.CKOperation, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CKFetchShareMetadataOperation ();
	protected CKFetchShareMetadataOperation (Foundation.NSObjectFlag t);
	public CKFetchShareMetadataOperation (Foundation.NSUrl[] shareUrls);
	protected CKFetchShareMetadataOperation (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual System.Action<Foundation.NSError> FetchShareMetadataCompleted { get; set; }
	public virtual CKFetchPerShareMetadataHandler PerShareMetadata { get; set; }
	public virtual string[] RootRecordDesiredKeys { get; set; }
	public virtual Foundation.NSUrl[] ShareUrls { get; set; }
	public virtual bool ShouldFetchRootRecord { get; set; }
}

New Type CloudKit.CKFetchShareParticipantsOperation

public class CKFetchShareParticipantsOperation : CloudKit.CKOperation, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CKFetchShareParticipantsOperation ();
	public CKFetchShareParticipantsOperation (CKUserIdentityLookupInfo[] userIdentityLookupInfos);
	protected CKFetchShareParticipantsOperation (Foundation.NSObjectFlag t);
	protected CKFetchShareParticipantsOperation (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual System.Action<Foundation.NSError> Completed { get; set; }
	public virtual System.Action<CKShareParticipant> Fetched { get; set; }
	public virtual CKUserIdentityLookupInfo[] UserIdentityLookupInfos { get; set; }
}

New Type CloudKit.CKFetchWebAuthTokenOperation

public class CKFetchWebAuthTokenOperation : CloudKit.CKDatabaseOperation, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CKFetchWebAuthTokenOperation ();
	protected CKFetchWebAuthTokenOperation (Foundation.NSObjectFlag t);
	protected CKFetchWebAuthTokenOperation (IntPtr handle);
	public CKFetchWebAuthTokenOperation (string token);
	// properties
	public virtual string ApiToken { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual CKFetchWebAuthTokenOperationHandler Completed { get; set; }
}

New Type CloudKit.CKFetchWebAuthTokenOperationHandler

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

New Type CloudKit.CKQuerySubscription

public class CKQuerySubscription : CloudKit.CKSubscription, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CKQuerySubscription (Foundation.NSCoder coder);
	protected CKQuerySubscription (Foundation.NSObjectFlag t);
	protected CKQuerySubscription (IntPtr handle);
	public CKQuerySubscription (string recordType, Foundation.NSPredicate predicate, CKQuerySubscriptionOptions querySubscriptionOptions);
	public CKQuerySubscription (string recordType, Foundation.NSPredicate predicate, string subscriptionID, CKQuerySubscriptionOptions querySubscriptionOptions);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSPredicate Predicate { get; }
	public virtual string RecordType { get; }
	public virtual CKQuerySubscriptionOptions SubscriptionOptions { get; }
	public virtual CKRecordZoneID ZoneID { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type CloudKit.CKQuerySubscriptionOptions

[Serializable]
public enum CKQuerySubscriptionOptions {
	FiresOnce = 8,
	RecordCreation = 1,
	RecordDeletion = 4,
	RecordUpdate = 2,
}

New Type CloudKit.CKRecordZoneSubscription

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

New Type CloudKit.CKShare

public class CKShare : CloudKit.CKRecord, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CKShare (CKRecord rootRecord);
	public CKShare (Foundation.NSCoder coder);
	protected CKShare (Foundation.NSObjectFlag t);
	protected CKShare (IntPtr handle);
	public CKShare (CKRecord rootRecord, CKRecordID shareID);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual CKShareParticipant CurrentUser { get; }
	public virtual CKShareParticipant Owner { get; }
	public virtual CKShareParticipant[] Participants { get; }
	public virtual CKShareParticipantPermission PublicPermission { get; set; }
	public virtual Foundation.NSUrl Url { get; }
	// methods
	public virtual void Add (CKShareParticipant participant);
	public virtual void Remove (CKShareParticipant participant);
}

New Type CloudKit.CKShareKeys

public static class CKShareKeys {
	// properties
	public static Foundation.NSString ThumbnailImageData { get; }
	public static Foundation.NSString Title { get; }
	public static Foundation.NSString Type { get; }
}

New Type CloudKit.CKShareMetadata

public class CKShareMetadata : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CKShareMetadata ();
	public CKShareMetadata (Foundation.NSCoder coder);
	protected CKShareMetadata (Foundation.NSObjectFlag t);
	protected CKShareMetadata (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string ContainerIdentifier { get; }
	public virtual CKUserIdentity OwnerIdentity { get; }
	public virtual CKShareParticipantPermission Permission { get; }
	public virtual CKRecord RootRecord { get; }
	public virtual CKRecordID RootRecordID { get; }
	public virtual CKShare Share { get; }
	public virtual CKShareParticipantAcceptanceStatus Status { get; }
	public virtual CKShareParticipantType Type { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type CloudKit.CKShareParticipant

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

New Type CloudKit.CKShareParticipantAcceptanceStatus

[Serializable]
public enum CKShareParticipantAcceptanceStatus {
	Accepted = 2,
	Pending = 1,
	Removed = 3,
	Unknown = 0,
}

New Type CloudKit.CKShareParticipantPermission

[Serializable]
public enum CKShareParticipantPermission {
	None = 1,
	ReadOnly = 2,
	ReadWrite = 3,
	Unknown = 0,
}

New Type CloudKit.CKShareParticipantType

[Serializable]
public enum CKShareParticipantType {
	Owner = 1,
	PrivateUser = 3,
	PublicUser = 4,
	Unknown = 0,
}

New Type CloudKit.CKUserIdentity

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

New Type CloudKit.CKUserIdentityLookupInfo

public class CKUserIdentityLookupInfo : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CKUserIdentityLookupInfo (CKRecordID userRecordID);
	public CKUserIdentityLookupInfo (Foundation.NSCoder coder);
	protected CKUserIdentityLookupInfo (Foundation.NSObjectFlag t);
	protected CKUserIdentityLookupInfo (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string EmailAddress { get; }
	public virtual string PhoneNumber { get; }
	public virtual CKRecordID UserRecordID { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public static CKUserIdentityLookupInfo FromEmail (string email);
	public static CKUserIdentityLookupInfo FromPhoneNumber (string phoneNumber);
	public static CKUserIdentityLookupInfo[] GetLookupInfos (CKRecordID[] recordIDs);
	public static CKUserIdentityLookupInfo[] GetLookupInfosWithEmails (string[] emails);
	public static CKUserIdentityLookupInfo[] GetLookupInfosWithPhoneNumbers (string[] phoneNumbers);
}

Namespace Contacts

Type Changed: Contacts.CNContact

Added properties:

	public virtual bool ImageDataAvailable { get; }
	public virtual string PhoneticOrganizationName { get; }

Type Changed: Contacts.CNContactFetchRequest

Added constructor:

	public CNContactFetchRequest (Foundation.NSCoder coder);

Added interfaces:

	Foundation.INSCoding
	Foundation.INSSecureCoding

Added method:

	public virtual void EncodeTo (Foundation.NSCoder encoder);

Type Changed: Contacts.CNContactKey

Added properties:

	public static Foundation.NSString ImageData { get; }
	public static Foundation.NSString ImageDataAvailable { get; }
	public static Foundation.NSString PhoneticOrganizationName { get; }

Type Changed: Contacts.CNMutableContact

Added property:

	public virtual string PhoneticOrganizationName { get; set; }

Namespace ContactsUI

Type Changed: ContactsUI.CNContactViewController

Added interface:

	AppKit.INSTouchBarProvider

Namespace CoreAnimation

Type Changed: CoreAnimation.CAAnimation

Added property:

	public static Foundation.NSString AnimationDiscrete { get; }

Type Changed: CoreAnimation.CAEmitterBehavior

Added property:

	public static Foundation.NSString SimpleAttractor { get; }

Type Changed: CoreAnimation.CALayer

Added property:

	public CAContentsFormat ContentsFormat { get; set; }

Type Changed: CoreAnimation.CALayerDelegate

Added method:

	public virtual void WillDrawLayer (CALayer layer);

Type Changed: CoreAnimation.CALayerDelegate_Extensions

Added method:

	public static void WillDrawLayer (ICALayerDelegate This, CALayer layer);

Type Changed: CoreAnimation.CATransform3D

Obsoleted methods:

[Obsolete ("Use Invert() as the argument to this method is unused.")] public CATransform3D Invert (CATransform3D t);

Added method:

	public CATransform3D Invert ();

New Type CoreAnimation.CAContentsFormat

[Serializable]
public enum CAContentsFormat {
	Gray8Uint = 0,
	Rgba16Float = 2,
	Rgba8Uint = 1,
}

New Type CoreAnimation.CAContentsFormatExtensions

public static class CAContentsFormatExtensions {
	// methods
	public static Foundation.NSString GetConstant (CAContentsFormat self);
	public static CAContentsFormat GetValue (Foundation.NSString constant);
}

Namespace CoreAudioKit

Type Changed: CoreAudioKit.AUViewController

Added interface:

	AppKit.INSTouchBarProvider

Namespace CoreBluetooth

Type Changed: CoreBluetooth.CBPeripheral

Added method:

	public virtual uint GetMaximumWriteValueLength (CBCharacteristicWriteType type);

Type Changed: CoreBluetooth.CBPeripheralManager

Added constructor:

	public CBPeripheralManager ();

Type Changed: CoreBluetooth.CBUUID

Added properties:

	public static Foundation.NSString CharacteristicValidRangeString { get; }
	public virtual string Uuid { get; }

New Type CoreBluetooth.CBManagerState

[Serializable]
public enum CBManagerState {
	PoweredOff = 4,
	PoweredOn = 5,
	Resetting = 1,
	Unauthorized = 3,
	Unknown = 0,
	Unsupported = 2,
}

Namespace CoreData

Type Changed: CoreData.NSEntityMappingType

Modified fields:

Copy = 5 4
Transform = 6 5

Type Changed: CoreData.NSFetchRequest

Added method:

	public virtual INSFetchRequestResult[] Execute (Foundation.NSError error);

Type Changed: CoreData.NSIncrementalStore

Modified methods:

public Foundation.NSObject IdentifierForNewStoreAtURL (Foundation.NSUrl storeURL storeUrl)

Type Changed: CoreData.NSManagedObject

Added constructor:

	public NSManagedObject (NSManagedObjectContext moc);

Added property:

	public static bool ContextShouldIgnoreUnModeledPropertyChanges { get; }

Added methods:

	public virtual void AwakeFromSnapshotEvents (NSSnapshotEventType flags);
	public static NSFetchRequest CreateFetchRequest ();
	public static NSEntityDescription GetEntityDescription ();

Type Changed: CoreData.NSManagedObjectContext

Added properties:

	public virtual bool AutomaticallyMergesChangesFromParent { get; set; }
	public virtual NSQueryGenerationToken QueryGenerationToken { get; }

Added method:

	public virtual bool SetQueryGenerationFromToken (NSQueryGenerationToken generation, Foundation.NSError error);

Type Changed: CoreData.NSManagedObjectID

Added method:

	protected override void Dispose (bool disposing);

Type Changed: CoreData.NSMergePolicy

Added properties:

	public static NSMergePolicy ErrorPolicy { get; }
	public static NSMergePolicy MergeByPropertyObjectTrumpPolicy { get; }
	public static NSMergePolicy MergeByPropertyStoreTrumpPolicy { get; }
	public static NSMergePolicy OverwritePolicy { get; }
	public static NSMergePolicy RollbackPolicy { get; }

Type Changed: CoreData.NSMigrationManager

Modified methods:

public virtual bool MigrateStoreFromUrl (Foundation.NSUrl sourceURL sourceUrl, string sStoreType, Foundation.NSDictionary sOptions, NSMappingModel mappings, Foundation.NSUrl dURL dUrl, string dStoreType, Foundation.NSDictionary dOptions, out Foundation.NSError error)

Type Changed: CoreData.NSPersistentStore

Added methods:

	protected override void Dispose (bool disposing);
	public virtual bool LoadMetadata (Foundation.NSError error);

Type Changed: CoreData.NSPersistentStoreCoordinator

Modified methods:

public virtual NSPersistentStore AddPersistentStoreWithType (Foundation.NSString storeType, string configuration, Foundation.NSUrl storeURL storeUrl, Foundation.NSDictionary options, out Foundation.NSError error)
public virtual NSPersistentStore MigratePersistentStore (NSPersistentStore store, Foundation.NSUrl URL url, Foundation.NSDictionary options, Foundation.NSString storeType, out Foundation.NSError error)
public virtual NSPersistentStore PersistentStoreForUrl (Foundation.NSUrl URL url)
public virtual bool ReplacePersistentStore (Foundation.NSUrl destinationURL destinationUrl, Foundation.NSDictionary destinationOptions, Foundation.NSUrl sourceURL sourceUrl, Foundation.NSDictionary sourceOptions, string storeType, out Foundation.NSError error)

Added methods:

	public virtual void AddPersistentStore (NSPersistentStoreDescription storeDescription, System.Action<NSPersistentStoreDescription,Foundation.NSError> block);
	public virtual System.Threading.Tasks.Task<NSPersistentStoreDescription> AddPersistentStoreAsync (NSPersistentStoreDescription storeDescription);
	public static Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> GetMetadata (string storeType, Foundation.NSUrl url, Foundation.NSDictionary options, Foundation.NSError error);
	public static bool SetMetadata (Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> metadata, string storeType, Foundation.NSUrl url, Foundation.NSDictionary options, Foundation.NSError error);

New Type CoreData.INSFetchRequestResult

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

New Type CoreData.MigrationErrorType

[Serializable]
public enum MigrationErrorType {
	EntityMigrationPolicy = 134170,
	ExternalRecordImport = 134200,
	InferredMappingModel = 134190,
	Migration = 134110,
	MigrationCancelled = 134120,
	MigrationManagerDestinationStore = 134160,
	MigrationManagerSourceStore = 134150,
	MigrationMissingMappingModel = 134140,
	MigrationMissingSourceModel = 134130,
}

New Type CoreData.NSPersistentContainer

public class NSPersistentContainer : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NSPersistentContainer (Foundation.NSObjectFlag t);
	protected NSPersistentContainer (IntPtr handle);
	public NSPersistentContainer (string name);
	public NSPersistentContainer (string name, NSManagedObjectModel model);
	// properties
	public override IntPtr ClassHandle { get; }
	public static Foundation.NSUrl DefaultDirectoryUrl { get; }
	public virtual NSManagedObjectModel ManagedObjectModel { get; }
	public virtual string Name { get; }
	public virtual NSManagedObjectContext NewBackgroundContext { get; }
	public virtual NSPersistentStoreCoordinator PersistentStoreCoordinator { get; }
	public virtual NSPersistentStoreDescription[] PersistentStoreDescriptions { get; set; }
	public virtual NSManagedObjectContext ViewContext { get; }
	// methods
	public static NSPersistentContainer GetPersistentContainer (string name);
	public static NSPersistentContainer GetPersistentContainer (string name, NSManagedObjectModel model);
	public virtual void LoadPersistentStores (System.Action<NSPersistentStoreDescription,Foundation.NSError> block);
	public virtual System.Threading.Tasks.Task<NSPersistentStoreDescription> LoadPersistentStoresAsync ();
	public virtual void Perform (System.Action<NSManagedObjectContext> block);
}

New Type CoreData.NSPersistentStoreDescription

public class NSPersistentStoreDescription : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NSPersistentStoreDescription (Foundation.NSObjectFlag t);
	public NSPersistentStoreDescription (Foundation.NSUrl url);
	protected NSPersistentStoreDescription (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string Configuration { get; set; }
	public virtual bool IsReadOnly { get; set; }
	public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> Options { get; }
	public virtual bool ShouldAddStoreAsynchronously { get; set; }
	public virtual bool ShouldInferMappingModelAutomatically { get; set; }
	public virtual bool ShouldMigrateStoreAutomatically { get; set; }
	public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> SqlitePragmas { get; }
	public virtual double Timeout { get; set; }
	public virtual string Type { get; set; }
	public virtual Foundation.NSUrl Url { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static NSPersistentStoreDescription GetPersistentStoreDescription (Foundation.NSUrl Url);
	public virtual void SetOption (Foundation.NSObject option, string key);
	public virtual void SetValue (Foundation.NSObject value, string name);
}

New Type CoreData.NSQueryGenerationToken

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

New Type CoreData.ObjectGraphManagementErrorType

[Serializable]
public enum ObjectGraphManagementErrorType {
	ManagedObjectContextLocking = 132000,
	ManagedObjectExternalRelationship = 133010,
	ManagedObjectMerge = 133020,
	ManagedObjectReferentialIntegrity = 133000,
	PersistentStoreCoordinatorLocking = 132010,
}

New Type CoreData.PersistentStoreErrorType

[Serializable]
public enum PersistentStoreErrorType {
	IncompatibleSchema = 134020,
	IncompatibleVersionHash = 134100,
	IncompleteSave = 134040,
	InvalidType = 134000,
	Open = 134080,
	Operation = 134070,
	Save = 134030,
	SaveConflicts = 134050,
	Timeout = 134090,
	TypeMismatch = 134010,
}

New Type CoreData.UserInfo

public class UserInfo : Foundation.DictionaryContainer {
	// constructors
	public UserInfo ();
	public UserInfo (Foundation.NSDictionary dictionary);
	// properties
	public NSPersistentStore[] AffectedStoresForError { get; set; }
	public Foundation.NSError[] DetailedErrors { get; set; }
	public Foundation.NSString KeyForValidationError { get; set; }
	public NSManagedObject ObjectForValidationError { get; set; }
	public NSMergeConflict[] PersistentStoreSaveConflicts { get; set; }
	public Foundation.NSPredicate PredicateForValidationError { get; set; }
	public Foundation.NSValue ValueForValidationError { get; set; }
}

New Type CoreData.UserInfoKeys

public static class UserInfoKeys {
	// properties
	public static Foundation.NSString AffectedStoresForErrorKey { get; }
	public static Foundation.NSString DetailedErrorsKey { get; }
	public static Foundation.NSString KeyForValidationErrorKey { get; }
	public static Foundation.NSString ObjectForValidationErrorKey { get; }
	public static Foundation.NSString PersistentStoreSaveConflictsKey { get; }
	public static Foundation.NSString PredicateForValidationErrorKey { get; }
	public static Foundation.NSString ValueForValidationErrorKey { get; }
}

New Type CoreData.ValidationErrorType

[Serializable]
public enum ValidationErrorType {
	DateTooLate = 1630,
	DateTooSoon = 1640,
	InvalidDate = 1650,
	ManagedObjectValidation = 1550,
	MissingMandatoryProperty = 1570,
	MultipleErrors = 1560,
	NumberTooLarge = 1610,
	NumberTooSmall = 1620,
	RelationshipDeniedDelete = 1600,
	RelationshipExceedsMaximumCount = 1590,
	RelationshipLacksMinimumCount = 1580,
	StringPatternMatching = 1680,
	StringTooLong = 1660,
	StringTooShort = 1670,
}

Namespace CoreGraphics

Type Changed: CoreGraphics.CGColorSpace

Added properties:

	public bool IsWideGamutRgb { get; }
	public string Name { get; }
	public bool SupportsOutput { get; }

Added method:

	public Foundation.NSData GetIccData ();

Type Changed: CoreGraphics.CGColorSpaceNames

Added properties:

	public static Foundation.NSString ExtendedGray { get; }
	public static Foundation.NSString ExtendedLinearGray { get; }
	public static Foundation.NSString ExtendedLinearSrgb { get; }
	public static Foundation.NSString ExtendedSrgb { get; }
	public static Foundation.NSString LinearGray { get; }
	public static Foundation.NSString LinearSrgb { get; }

New Type CoreGraphics.CGColorConversionInfo

public class CGColorConversionInfo : ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public CGColorConversionInfo (CGColorConversionOptions options, GColorConversionInfoTriple[] triples);
	public CGColorConversionInfo (CGColorSpace src, CGColorSpace dst);
	public CGColorConversionInfo (Foundation.NSDictionary options, GColorConversionInfoTriple[] triples);
	// properties
	public virtual IntPtr Handle { get; }
	// methods
	public virtual void Dispose ();
	protected virtual void Dispose (bool disposing);
	protected override void ~CGColorConversionInfo ();
}

New Type CoreGraphics.CGColorConversionInfoTransformType

[Serializable]
public enum CGColorConversionInfoTransformType {
	ApplySpace = 2,
	FromSpace = 0,
	ToSpace = 1,
}

New Type CoreGraphics.CGColorConversionOptions

public class CGColorConversionOptions : Foundation.DictionaryContainer {
	// constructors
	public CGColorConversionOptions ();
	public CGColorConversionOptions (Foundation.NSDictionary dictionary);
	// properties
	public bool? BlackPointCompensation { get; set; }
}

New Type CoreGraphics.GColorConversionInfoTriple

public struct GColorConversionInfoTriple {
	// fields
	public CGColorRenderingIntent Intent;
	public CGColorSpace Space;
	public CGColorConversionInfoTransformType Transform;
}

Namespace CoreImage

Type Changed: CoreImage.CIColor

Added constructors:

	public CIColor (nfloat red, nfloat green, nfloat blue, CoreGraphics.CGColorSpace colorSpace);
	public CIColor (nfloat red, nfloat green, nfloat blue, nfloat alpha, CoreGraphics.CGColorSpace colorSpace);

Added properties:

	public static CIColor BlackColor { get; }
	public static CIColor BlueColor { get; }
	public static CIColor ClearColor { get; }
	public static CIColor CyanColor { get; }
	public static CIColor GrayColor { get; }
	public static CIColor GreenColor { get; }
	public static CIColor MagentaColor { get; }
	public static CIColor RedColor { get; }
	public static CIColor WhiteColor { get; }
	public static CIColor YellowColor { get; }

Added methods:

	public static CIColor FromRgb (nfloat red, nfloat green, nfloat blue, CoreGraphics.CGColorSpace colorSpace);
	public static CIColor FromRgba (nfloat red, nfloat green, nfloat blue, nfloat alpha, CoreGraphics.CGColorSpace colorSpace);

Type Changed: CoreImage.CIContext

Added constructor:

	public CIContext (CIContextOptions options);

Added property:

	public virtual CIFormat WorkingFormat { get; }

Added methods:

	public virtual CoreGraphics.CGImage CreateCGImage (CIImage image, CoreGraphics.CGRect fromRect, CIFormat format, CoreGraphics.CGColorSpace colorSpace, bool deferred);
	public virtual void Render (CIImage image, CoreVideo.CVPixelBuffer buffer);
	public virtual void Render (CIImage image, CoreVideo.CVPixelBuffer buffer, CoreGraphics.CGRect rectangle, CoreGraphics.CGColorSpace cs);

Type Changed: CoreImage.CIContextOptions

Added properties:

	public bool? CacheIntermediates { get; set; }
	public bool? OutputPremultiplied { get; set; }

Type Changed: CoreImage.CIDetectorOptions

Added property:

	public int? MaxFeatureCount { get; set; }

Type Changed: CoreImage.CIFilter

Added methods:

	public static CIFilter CreateRawFilter (Foundation.NSData data, CIRawFilterOptions options);
	public static CIFilter CreateRawFilter (Foundation.NSData data, Foundation.NSDictionary options);
	public static CIFilter CreateRawFilter (Foundation.NSUrl url, CIRawFilterOptions options);
	public static CIFilter CreateRawFilter (Foundation.NSUrl url, Foundation.NSDictionary options);
	public static CIFilter CreateRawFilter (CoreVideo.CVPixelBuffer pixelBuffer, Foundation.NSDictionary properties, CIRawFilterOptions options);
	public static CIFilter CreateRawFilter (CoreVideo.CVPixelBuffer pixelBuffer, Foundation.NSDictionary properties, Foundation.NSDictionary options);

Type Changed: CoreImage.CIFilterGenerator

Added interface:

	ICIFilterConstructor

Added method:

	public virtual CIFilter FilterWithName (string name);

Type Changed: CoreImage.CIImage

Added constructors:

	public CIImage (CoreVideo.CVPixelBuffer buffer);
	public CIImage (CoreVideo.CVPixelBuffer buffer, CIImageInitializationOptions options);
	public CIImage (CoreVideo.CVPixelBuffer buffer, Foundation.NSDictionary dict);

Added properties:

	public virtual CoreGraphics.CGImage CGImage { get; }
	public virtual CoreGraphics.CGColorSpace ColorSpace { get; }
	public virtual CoreVideo.CVPixelBuffer PixelBuffer { get; }

Added methods:

	public virtual CIImage CreateByApplyingGaussianBlur (double sigma);
	public virtual CIImage CreateByClamping (CoreGraphics.CGRect rect);
	public virtual CIImage CreateByColorMatchingColorSpaceToWorkingSpace (CoreGraphics.CGColorSpace colorSpace);
	public virtual CIImage CreateByColorMatchingWorkingSpaceToColorSpace (CoreGraphics.CGColorSpace colorSpace);
	public virtual CIImage CreateByPremultiplyingAlpha ();
	public virtual CIImage CreateBySettingAlphaOne (CoreGraphics.CGRect extent);
	public virtual CIImage CreateBySettingProperties (Foundation.NSDictionary properties);
	public virtual CIImage CreateByUnpremultiplyingAlpha ();
	public virtual CoreGraphics.CGRect GetRegionOfInterest (CIImage im, CoreGraphics.CGRect r);

Type Changed: CoreImage.CIVector

Added properties:

	public virtual CoreGraphics.CGAffineTransform AffineTransform { get; }
	public virtual CoreGraphics.CGPoint Point { get; }
	public virtual CoreGraphics.CGRect Rectangle { get; }

New Type CoreImage.CIClamp

public class CIClamp : CoreImage.CIFilter, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CIClamp ();
	public CIClamp (Foundation.NSCoder coder);
	protected CIClamp (Foundation.NSObjectFlag t);
	public CIClamp (IntPtr handle);
	// properties
	public CIVector Extent { get; set; }
}

New Type CoreImage.CIContext_ImageRepresentation

public static class CIContext_ImageRepresentation {
	// methods
	public static Foundation.NSData GetJpegRepresentation (CIContext This, CIImage image, CoreGraphics.CGColorSpace colorSpace, Foundation.NSDictionary options);
	public static Foundation.NSData GetTiffRepresentation (CIContext This, CIImage image, CIFormat format, CoreGraphics.CGColorSpace colorSpace, Foundation.NSDictionary options);
	public static bool WriteJpegRepresentation (CIContext This, CIImage image, Foundation.NSUrl url, CoreGraphics.CGColorSpace colorSpace, Foundation.NSDictionary options, Foundation.NSError error);
	public static bool WriteTiffRepresentation (CIContext This, CIImage image, Foundation.NSUrl url, CIFormat format, CoreGraphics.CGColorSpace colorSpace, Foundation.NSDictionary options, Foundation.NSError error);
}

New Type CoreImage.CIHueSaturationValueGradient

public class CIHueSaturationValueGradient : CoreImage.CIFilter, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CIHueSaturationValueGradient ();
	public CIHueSaturationValueGradient (Foundation.NSCoder coder);
	protected CIHueSaturationValueGradient (Foundation.NSObjectFlag t);
	public CIHueSaturationValueGradient (IntPtr handle);
	// properties
	public CoreGraphics.CGColorSpace ColorSpace { get; set; }
	public float Dither { get; set; }
	public float Radius { get; set; }
	public float Softness { get; set; }
	public float Value { get; set; }
}

New Type CoreImage.CIImageProcessorKernel

public class CIImageProcessorKernel : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CIImageProcessorKernel ();
	protected CIImageProcessorKernel (Foundation.NSObjectFlag t);
	protected CIImageProcessorKernel (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static CIFormat OutputFormat { get; }
	public static bool SynchronizeInputs { get; }
	// methods
	public static CIImage Apply (CoreGraphics.CGRect extent, CIImage[] inputs, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> args, Foundation.NSError error);
	public static CIFormat GetFormat (int input);
	public static CoreGraphics.CGRect GetRegionOfInterest (int input, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> arguments, CoreGraphics.CGRect outputRect);
	public static bool Process (ICIImageProcessorInput[] inputs, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> arguments, ICIImageProcessorOutput output, Foundation.NSError error);
}

New Type CoreImage.CINinePartStretched

public class CINinePartStretched : CoreImage.CIFilter, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CINinePartStretched ();
	public CINinePartStretched (Foundation.NSCoder coder);
	protected CINinePartStretched (Foundation.NSObjectFlag t);
	public CINinePartStretched (IntPtr handle);
	// properties
	public CIVector Breakpoint0 { get; set; }
	public CIVector Breakpoint1 { get; set; }
	public CIVector GrowAmount { get; set; }
}

New Type CoreImage.CINinePartTiled

public class CINinePartTiled : CoreImage.CIFilter, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CINinePartTiled ();
	public CINinePartTiled (Foundation.NSCoder coder);
	protected CINinePartTiled (Foundation.NSObjectFlag t);
	public CINinePartTiled (IntPtr handle);
	// properties
	public CIVector Breakpoint0 { get; set; }
	public CIVector Breakpoint1 { get; set; }
	public bool FlipYTiles { get; set; }
	public CIVector GrowAmount { get; set; }
}

New Type CoreImage.CIQRCodeFeature

public class CIQRCodeFeature : CoreImage.CIFeature, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CIQRCodeFeature ();
	protected CIQRCodeFeature (Foundation.NSObjectFlag t);
	protected CIQRCodeFeature (IntPtr handle);
	// properties
	public virtual CoreGraphics.CGPoint BottomLeft { get; }
	public virtual CoreGraphics.CGPoint BottomRight { get; }
	public virtual CoreGraphics.CGRect Bounds { get; }
	public override IntPtr ClassHandle { get; }
	public virtual string MessageString { get; }
	public virtual CoreGraphics.CGPoint TopLeft { get; }
	public virtual CoreGraphics.CGPoint TopRight { get; }
}

New Type CoreImage.CIRawFilterOptions

public class CIRawFilterOptions : Foundation.DictionaryContainer {
	// constructors
	public CIRawFilterOptions ();
	public CIRawFilterOptions (Foundation.NSDictionary dictionary);
	// properties
	public Foundation.NSSet ActiveKeys { get; }
	public bool? AllowDraftMode { get; set; }
	public float? BaselineExposure { get; set; }
	public float? Boost { get; set; }
	public float? BoostShadowAmount { get; set; }
	public double? ColorNoiseReductionAmount { get; set; }
	public bool? DisableGamutMap { get; set; }
	public bool? EnableChromaticNoiseTracking { get; set; }
	public bool? EnableSharpening { get; set; }
	public bool? EnableVendorLensCorrection { get; set; }
	public bool? IgnoreImageOrientation { get; set; }
	public int? ImageOrientation { get; set; }
	public CIFilter LinearSpaceFilter { get; set; }
	public double? LuminanceNoiseReductionAmount { get; set; }
	public float? NeutralChromaticityX { get; set; }
	public float? NeutralChromaticityY { get; set; }
	public CIVector NeutralLocation { get; set; }
	public float? NeutralTemperature { get; set; }
	public float? NeutralTint { get; set; }
	public double? NoiseReductionAmount { get; set; }
	public double? NoiseReductionContrastAmount { get; set; }
	public double? NoiseReductionDetailAmount { get; set; }
	public double? NoiseReductionSharpnessAmount { get; set; }
	public CIVector OutputNativeSize { get; set; }
	public float? ScaleFactor { get; set; }
	public Foundation.NSDictionary[] SupportedDecoderVersions { get; set; }
	public string Version { get; set; }
}

New Type CoreImage.CITextFeature

public class CITextFeature : CoreImage.CIFeature, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CITextFeature ();
	protected CITextFeature (Foundation.NSObjectFlag t);
	protected CITextFeature (IntPtr handle);
	// properties
	public virtual CoreGraphics.CGPoint BottomLeft { get; }
	public virtual CoreGraphics.CGPoint BottomRight { get; }
	public virtual CoreGraphics.CGRect Bounds { get; }
	public override IntPtr ClassHandle { get; }
	public virtual CIFeature[] SubFeatures { get; }
	public virtual CoreGraphics.CGPoint TopLeft { get; }
	public virtual CoreGraphics.CGPoint TopRight { get; }
}

New Type CoreImage.CIThermal

public class CIThermal : CoreImage.CIFilter, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CIThermal ();
	public CIThermal (Foundation.NSCoder coder);
	protected CIThermal (Foundation.NSObjectFlag t);
	public CIThermal (IntPtr handle);
}

New Type CoreImage.CIXRay

public class CIXRay : CoreImage.CIFilter, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CIXRay ();
	public CIXRay (Foundation.NSCoder coder);
	protected CIXRay (Foundation.NSObjectFlag t);
	public CIXRay (IntPtr handle);
}

New Type CoreImage.ICIImageProcessorInput

public interface ICIImageProcessorInput : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual IntPtr BaseAddress { get; }
	public virtual uint BytesPerRow { get; }
	public virtual CIFormat Format { get; }
	public virtual Metal.IMTLTexture MetalTexture { get; }
	public virtual CoreVideo.CVPixelBuffer PixelBuffer { get; }
	public virtual CoreGraphics.CGRect Region { get; }
}

New Type CoreImage.ICIImageProcessorOutput

public interface ICIImageProcessorOutput : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual IntPtr BaseAddress { get; }
	public virtual uint BytesPerRow { get; }
	public virtual CIFormat Format { get; }
	public virtual Metal.IMTLCommandBuffer MetalCommandBuffer { get; }
	public virtual Metal.IMTLTexture MetalTexture { get; }
	public virtual CoreVideo.CVPixelBuffer PixelBuffer { get; }
	public virtual CoreGraphics.CGRect Region { get; }
}

Namespace CoreLocation

Type Changed: CoreLocation.CLHeading

Obsoleted methods:

[Obsolete ("Use the Description property from NSObject")] public virtual string Description ();

Type Changed: CoreLocation.CLLocation

Obsoleted methods:

[Obsolete ("Use the Description property from NSObject")] public virtual string Description ();

Type Changed: CoreLocation.CLLocationManager

Added properties:

	public static bool DeferredLocationUpdatesAvailable { get; }
	public static bool HeadingAvailable { get; }
	public virtual double MaximumRegionMonitoringDistance { get; }
	public virtual Foundation.NSSet MonitoredRegions { get; }
	public virtual string Purpose { get; set; }
	public static bool RegionMonitoringAvailable { get; }
	public static bool RegionMonitoringEnabled { get; }
	public static bool SignificantLocationChangeMonitoringAvailable { get; }
	public static CLAuthorizationStatus Status { get; }

Added events:

	public event System.EventHandler<CLRegionStateDeterminedEventArgs> DidDetermineState;
	public event System.EventHandler<CLRegionEventArgs> DidStartMonitoringForRegion;
	public event System.EventHandler<CLRegionErrorEventArgs> MonitoringFailed;
	public event System.EventHandler<CLRegionEventArgs> RegionEntered;
	public event System.EventHandler<CLRegionEventArgs> RegionLeft;

Added methods:

	public static bool IsMonitoringAvailable (ObjCRuntime.Class regionClass);
	public virtual void RequestState (CLRegion region);
	public virtual void StartMonitoring (CLRegion region);
	public virtual void StartMonitoringSignificantLocationChanges ();
	public virtual void StopMonitoring (CLRegion region);
	public virtual void StopMonitoringSignificantLocationChanges ();

Type Changed: CoreLocation.CLLocationManagerDelegate

Added methods:

	public virtual void DidDetermineState (CLLocationManager manager, CLRegionState state, CLRegion region);
	public virtual void DidStartMonitoringForRegion (CLLocationManager manager, CLRegion region);
	public virtual void MonitoringFailed (CLLocationManager manager, CLRegion region, Foundation.NSError error);
	public virtual void RegionEntered (CLLocationManager manager, CLRegion region);
	public virtual void RegionLeft (CLLocationManager manager, CLRegion region);

Type Changed: CoreLocation.CLLocationManagerDelegate_Extensions

Added methods:

	public static void DidDetermineState (ICLLocationManagerDelegate This, CLLocationManager manager, CLRegionState state, CLRegion region);
	public static void DidStartMonitoringForRegion (ICLLocationManagerDelegate This, CLLocationManager manager, CLRegion region);
	public static void MonitoringFailed (ICLLocationManagerDelegate This, CLLocationManager manager, CLRegion region, Foundation.NSError error);
	public static void RegionEntered (ICLLocationManagerDelegate This, CLLocationManager manager, CLRegion region);
	public static void RegionLeft (ICLLocationManagerDelegate This, CLLocationManager manager, CLRegion region);

New Type CoreLocation.CLCircularRegion

public class CLCircularRegion : CoreLocation.CLRegion, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CLCircularRegion (Foundation.NSCoder coder);
	protected CLCircularRegion (Foundation.NSObjectFlag t);
	protected CLCircularRegion (IntPtr handle);
	public CLCircularRegion (CLLocationCoordinate2D center, double radius, string identifier);
	// properties
	public virtual CLLocationCoordinate2D Center { get; }
	public override IntPtr ClassHandle { get; }
	public virtual double Radius { get; }
	// methods
	public virtual bool ContainsCoordinate (CLLocationCoordinate2D coordinate);
}

New Type CoreLocation.CLGeocodeCompletionHandler

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

New Type CoreLocation.CLGeocoder

public class CLGeocoder : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CLGeocoder ();
	protected CLGeocoder (Foundation.NSObjectFlag t);
	protected CLGeocoder (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool Geocoding { get; }
	// methods
	public virtual void CancelGeocode ();
	public virtual void GeocodeAddress (Foundation.NSDictionary addressDictionary, CLGeocodeCompletionHandler completionHandler);
	public virtual void GeocodeAddress (string addressString, CLGeocodeCompletionHandler completionHandler);
	public virtual void GeocodeAddress (string addressString, CLRegion region, CLGeocodeCompletionHandler completionHandler);
	public virtual System.Threading.Tasks.Task<CLPlacemark[]> GeocodeAddressAsync (Foundation.NSDictionary addressDictionary);
	public virtual System.Threading.Tasks.Task<CLPlacemark[]> GeocodeAddressAsync (string addressString);
	public virtual System.Threading.Tasks.Task<CLPlacemark[]> GeocodeAddressAsync (string addressString, CLRegion region);
	public virtual void ReverseGeocodeLocation (CLLocation location, CLGeocodeCompletionHandler completionHandler);
	public virtual System.Threading.Tasks.Task<CLPlacemark[]> ReverseGeocodeLocationAsync (CLLocation location);
}

New Type CoreLocation.CLRegionErrorEventArgs

public class CLRegionErrorEventArgs : System.EventArgs {
	// constructors
	public CLRegionErrorEventArgs (CLRegion region, Foundation.NSError error);
	// properties
	public Foundation.NSError Error { get; set; }
	public CLRegion Region { get; set; }
}

New Type CoreLocation.CLRegionEventArgs

public class CLRegionEventArgs : System.EventArgs {
	// constructors
	public CLRegionEventArgs (CLRegion region);
	// properties
	public CLRegion Region { get; set; }
}

New Type CoreLocation.CLRegionStateDeterminedEventArgs

public class CLRegionStateDeterminedEventArgs : System.EventArgs {
	// constructors
	public CLRegionStateDeterminedEventArgs (CLRegionState state, CLRegion region);
	// properties
	public CLRegion Region { get; set; }
	public CLRegionState State { get; set; }
}

Namespace CoreText

Type Changed: CoreText.CTStringAttributeKey

Added fields:

	public static Foundation.NSString BackgroundColor;
	public static Foundation.NSString HorizontalInVerticalForms;

Type Changed: CoreText.CTStringAttributes

Added properties:

	public CoreGraphics.CGColor BackgroundColor { get; set; }
	public int? HorizontalInVerticalForms { get; set; }

Namespace CoreVideo

Type Changed: CoreVideo.CVImageBuffer

Added property:

	public static Foundation.NSString TransferFunction_SMPTE_ST_428_1 { get; }

Type Changed: CoreVideo.CVPixelBufferPool

Added property:

	public static Foundation.NSString TransferFunction_SMPTE_ST_428_1 { get; }

Type Changed: CoreVideo.CVPixelFormatType

Added values:

	CV14BayerBggr = 1650943796,
	CV14BayerGbrg = 1734505012,
	CV14BayerGrbg = 1735549492,
	CV14BayerRggb = 1919379252,
	CV30RgbLePackedWideGamut = 1999843442,

Type Changed: CoreVideo.CVReturn

Added value:

	Retry = -6692,

New Type CoreVideo.CVPlanarPixelBufferInfo_YCbCrBiPlanar

public struct CVPlanarPixelBufferInfo_YCbCrBiPlanar {
	// fields
	public CVPlanarComponentInfo ComponentInfoCbCr;
	public CVPlanarComponentInfo ComponentInfoY;
}

Namespace CoreWlan

New Type CoreWlan.CWEventDelegate

public class CWEventDelegate : Foundation.NSObject, ICWEventDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CWEventDelegate ();
	protected CWEventDelegate (Foundation.NSObjectFlag t);
	protected CWEventDelegate (IntPtr handle);
	// methods
	public virtual void BssidDidChangeForWiFi (string interfaceName);
	public virtual void ClientConnectionInterrupted ();
	public virtual void ClientConnectionInvalidated ();
	public virtual void CountryCodeDidChangeForWiFi (string interfaceName);
	public virtual void LinkDidChangeForWiFi (string interfaceName);
	public virtual void LinkQualityDidChangeForWiFi (string interfaceName, int rssi, double transmitRate);
	public virtual void ModeDidChangeForWiFi (string interfaceName);
	public virtual void PowerStateDidChangeForWiFi (string interfaceName);
	public virtual void ScanCacheUpdatedForWiFi (string interfaceName);
	public virtual void SsidDidChangeForWiFi (string interfaceName);
}

New Type CoreWlan.CWEventDelegate_Extensions

public static class CWEventDelegate_Extensions {
	// methods
	public static void BssidDidChangeForWiFi (ICWEventDelegate This, string interfaceName);
	public static void ClientConnectionInterrupted (ICWEventDelegate This);
	public static void ClientConnectionInvalidated (ICWEventDelegate This);
	public static void CountryCodeDidChangeForWiFi (ICWEventDelegate This, string interfaceName);
	public static void LinkDidChangeForWiFi (ICWEventDelegate This, string interfaceName);
	public static void LinkQualityDidChangeForWiFi (ICWEventDelegate This, string interfaceName, int rssi, double transmitRate);
	public static void ModeDidChangeForWiFi (ICWEventDelegate This, string interfaceName);
	public static void PowerStateDidChangeForWiFi (ICWEventDelegate This, string interfaceName);
	public static void ScanCacheUpdatedForWiFi (ICWEventDelegate This, string interfaceName);
	public static void SsidDidChangeForWiFi (ICWEventDelegate This, string interfaceName);
}

New Type CoreWlan.CWEventType

[Serializable]
public enum CWEventType {
	BssidDidChange = 3,
	CountryCodeDidChange = 4,
	LinkDidChange = 5,
	LinkQualityDidChange = 6,
	ModeDidChange = 7,
	None = 0,
	PowerDidChange = 1,
	RangingReportEvent = 10,
	ScanCacheUpdated = 8,
	SsidDidChange = 2,
	Unknown = 9223372036854775807,
	VirtualInterfaceStateChanged = 9,
}

New Type CoreWlan.CWWiFiClient

public class CWWiFiClient : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CWWiFiClient ();
	protected CWWiFiClient (Foundation.NSObjectFlag t);
	protected CWWiFiClient (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual ICWEventDelegate Delegate { get; set; }
	public static string[] InterfaceNames { get; }
	public virtual CWInterface[] Interfaces { get; }
	public virtual CWInterface MainInterface { get; }
	public static CWWiFiClient SharedWiFiClient { get; }
	// methods
	protected override void Dispose (bool disposing);
	public virtual CWInterface FromName (string name);
	public virtual bool StartMonitoringEvent (CWEventType type, Foundation.NSError error);
	public virtual bool StopMonitoringAllEvents (Foundation.NSError error);
	public virtual bool StopMonitoringEvent (CWEventType type, Foundation.NSError error);
}

New Type CoreWlan.ICWEventDelegate

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

Namespace Foundation

Type Changed: Foundation.DictionaryContainer

Added methods:

	protected CoreGraphics.CGPoint? GetCGPointValue (NSString key);
	protected CoreGraphics.CGRect? GetCGRectValue (NSString key);
	protected CoreGraphics.CGSize? GetCGSizeValue (NSString key);
	protected CoreMedia.CMTime? GetCMTimeValue (NSString key);
	protected void SetCGPointValue (NSString key, CoreGraphics.CGPoint? value);
	protected void SetCGRectValue (NSString key, CoreGraphics.CGRect? value);
	protected void SetCGSizeValue (NSString key, CoreGraphics.CGSize? value);
	protected void SetCMTimeValue (NSString key, CoreMedia.CMTime? value);

Type Changed: Foundation.NSArray

Added method:

	public static T[] EnumsFromHandle<T> (IntPtr handle);

Type Changed: Foundation.NSCharacterSet

Added interface:

	INSSecureCoding

Type Changed: Foundation.NSCocoaError

Added values:

	CloudSharingConflictError = 5123,
	CloudSharingErrorMaximum = 5375,
	CloudSharingErrorMinimum = 5120,
	CloudSharingNetworkFailureError = 5120,
	CloudSharingNoPermissionError = 5124,
	CloudSharingOtherError = 5375,
	CloudSharingQuotaExceededError = 5121,
	CloudSharingTooManyParticipantsError = 5122,

Type Changed: Foundation.NSCoder

Added properties:

	public virtual NSDecodingFailurePolicy DecodingFailurePolicy { get; }
	public virtual NSError Error { get; }

Type Changed: Foundation.NSDateComponentsFormatterUnitsStyle

Added value:

	Brief = 5,

Type Changed: Foundation.NSDateIntervalFormatter

Added method:

	public virtual string ToString (NSDateInterval dateInterval);

Type Changed: Foundation.NSFileHandle

Added methods:

	public void AcceptConnectionInBackground (NSRunLoopMode[] notifyRunLoopModes);
	public void ReadInBackground (NSRunLoopMode[] notifyRunLoopModes);
	public void ReadToEndOfFileInBackground (NSRunLoopMode[] notifyRunLoopModes);
	public void WaitForDataInBackground (NSRunLoopMode[] notifyRunLoopModes);

Type Changed: Foundation.NSItemProvider

Added methods:

	public virtual void RegisterCloudKitShare (System.Action<CloudKitRegistrationPreparationHandler> preparationHandler);
	public virtual void RegisterCloudKitShare (CloudKit.CKShare share, CloudKit.CKContainer container);
	public virtual System.Threading.Tasks.Task<CloudKitRegistrationPreparationHandler> RegisterCloudKitShareAsync ();

Type Changed: Foundation.NSKeyedArchiver

Added constructor:

	public NSKeyedArchiver ();

Added property:

	public virtual NSData EncodedData { get; }

Type Changed: Foundation.NSLocale

Added property:

	public virtual string CalendarIdentifier { get; }

Added method:

	public virtual string GetLocalizedCalendarIdentifier (string calendarIdentifier);

Type Changed: Foundation.NSMetadataItem

Added constructor:

	public NSMetadataItem (NSUrl url);

Added properties:

	public NSString ContentType { get; }
	public NSString[] ContentTypeTree { get; }
	public NSString UbiquitousItemContainerDisplayName { get; }
	public bool UbiquitousItemDownloadRequested { get; }
	public bool UbiquitousItemIsExternalDocument { get; }
	public NSUrl UbiquitousItemUrlInLocalContainer { get; }

Type Changed: Foundation.NSMutableCharacterSet

Added interface:

	INSSecureCoding

Type Changed: Foundation.NSNetService

Added methods:

	public void Schedule (NSRunLoop aRunLoop, NSRunLoopMode forMode);
	public void Unschedule (NSRunLoop aRunLoop, NSRunLoopMode forMode);

Type Changed: Foundation.NSNetServiceBrowser

Added methods:

	public void Schedule (NSRunLoop aRunLoop, NSRunLoopMode forMode);
	public void Unschedule (NSRunLoop aRunLoop, NSRunLoopMode forMode);

Type Changed: Foundation.NSPersonNameComponentsFormatter

Added method:

	public virtual NSPersonNameComponents GetComponents (string string);

Type Changed: Foundation.NSPort

Added methods:

	public void RemoveFromRunLoop (NSRunLoop runLoop, NSRunLoopMode runLoopMode);
	public void ScheduleInRunLoop (NSRunLoop runLoop, NSRunLoopMode runLoopMode);

Type Changed: Foundation.NSRunLoop

Modified methods:

public bool RunUntil (NSRunLoopMode mode runLoopMode, NSDate limitDate)

Added methods:

	public virtual void Perform (System.Action block);
	public void Perform (NSRunLoopMode[] modes, System.Action block);
	public virtual void Perform (NSString[] modes, System.Action block);

Type Changed: Foundation.NSStream

Added property:

	public static NSString NetworkServiceTypeCallSignaling { get; }

Added methods:

	protected virtual NSObject GetProperty (NSString key);
	public void Schedule (NSRunLoop aRunLoop, NSRunLoopMode mode);
	protected virtual bool SetProperty (NSObject property, NSString key);
	public void Unschedule (NSRunLoop aRunLoop, NSRunLoopMode mode);

Type Changed: Foundation.NSTimer

Added constructor:

	public NSTimer (NSDate date, double seconds, bool repeats, System.Action<NSTimer> block);

Added methods:

	public static NSTimer CreateScheduledTimer (double interval, bool repeats, System.Action<NSTimer> block);
	public static NSTimer CreateTimer (double interval, bool repeats, System.Action<NSTimer> block);

Type Changed: Foundation.NSUrlConnection

Added methods:

	public void Schedule (NSRunLoop aRunLoop, NSRunLoopMode forMode);
	public void Unschedule (NSRunLoop aRunLoop, NSRunLoopMode forMode);

Type Changed: Foundation.NSUrlRequestNetworkServiceType

Added value:

	CallSignaling = 11,

Type Changed: Foundation.NSUrlSessionHandler

Added method:

	protected override void Dispose (bool disposing);

Type Changed: Foundation.NSUrlSessionTaskDelegate

Added method:

	public virtual void DidFinishCollectingMetrics (NSUrlSession session, NSUrlSessionTask task, NSUrlSessionTaskMetrics metrics);

Type Changed: Foundation.NSUrlSessionTaskDelegate_Extensions

Added method:

	public static void DidFinishCollectingMetrics (INSUrlSessionTaskDelegate This, NSUrlSession session, NSUrlSessionTask task, NSUrlSessionTaskMetrics metrics);

Type Changed: Foundation.NSUserActivity

Obsoleted constructors:

[Obsolete ("Use the constructor that allows you to set an activity type")] public NSUserActivity ();

Type Changed: Foundation.NSUserNotification

Added properties:

	public virtual NSUserNotificationAction[] AdditionalActions { get; set; }
	public virtual NSUserNotificationAction AdditionalActivationAction { get; }
	public virtual AppKit.NSImage ContentImage { get; set; }
	public virtual bool HasReplyButton { get; set; }
	public virtual string Identifier { get; set; }
	public virtual NSAttributedString Response { get; }
	public virtual string ResponsePlaceholder { get; set; }

New Type Foundation.CloudKitRegistrationPreparationHandler

public sealed delegate CloudKitRegistrationPreparationHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public CloudKitRegistrationPreparationHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (CloudKit.CKShare share, CloudKit.CKContainer container, NSError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (CloudKit.CKShare share, CloudKit.CKContainer container, NSError error);
}

New Type Foundation.NSDateInterval

public class NSDateInterval : Foundation.NSObject, INSCoding, INSCopying, INSObjectProtocol, INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSDateInterval ();
	public NSDateInterval (NSCoder coder);
	protected NSDateInterval (NSObjectFlag t);
	protected NSDateInterval (IntPtr handle);
	public NSDateInterval (NSDate startDate, NSDate endDate);
	public NSDateInterval (NSDate startDate, double duration);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual double Duration { get; }
	public virtual NSDate EndDate { get; }
	public virtual NSDate StartDate { get; }
	// methods
	public virtual NSComparisonResult Compare (NSDateInterval dateInterval);
	public virtual bool ContainsDate (NSDate date);
	public virtual NSObject Copy (NSZone zone);
	public virtual void EncodeTo (NSCoder encoder);
	public virtual NSDateInterval GetIntersection (NSDateInterval dateInterval);
	public virtual bool Intersects (NSDateInterval dateInterval);
	public virtual bool IsEqualTo (NSDateInterval dateInterval);
}

New Type Foundation.NSDecodingFailurePolicy

[Serializable]
public enum NSDecodingFailurePolicy {
	RaiseException = 0,
	SetErrorAndReturn = 1,
}

New Type Foundation.NSDimension

public abstract class NSDimension : Foundation.NSUnit, INSCoding, INSCopying, INSObjectProtocol, INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	protected NSDimension (NSCoder coder);
	protected NSDimension (NSObjectFlag t);
	protected NSDimension (IntPtr handle);
	public NSDimension (string symbol, NSUnitConverter converter);
	// properties
	public static NSDimension BaseUnit { get; }
	public override IntPtr ClassHandle { get; }
	public virtual NSUnitConverter Converter { get; }
	// methods
	public virtual void EncodeTo (NSCoder encoder);
}

New Type Foundation.NSFileManager_NSUserInformation

public static class NSFileManager_NSUserInformation {
	// methods
	public static NSUrl GetHomeDirectory (NSFileManager This, string userName);
	public static NSUrl GetHomeDirectoryForCurrentUser (NSFileManager This);
	public static NSUrl GetTemporaryDirectory (NSFileManager This);
}

New Type Foundation.NSIso8601DateFormatOptions

[Serializable]
[Flags]
public enum NSIso8601DateFormatOptions {
	ColonSeparatorInTime = 512,
	ColonSeparatorInTimeZone = 1024,
	DashSeparatorInDate = 256,
	Day = 16,
	FullDate = 275,
	FullTime = 1632,
	InternetDateTime = 1907,
	Month = 2,
	SpaceBetweenDateAndTime = 128,
	Time = 32,
	TimeZone = 64,
	WeekOfYear = 4,
	Year = 1,
}

New Type Foundation.NSIso8601DateFormatter

public class NSIso8601DateFormatter : Foundation.NSFormatter, INSCoding, INSCopying, INSObjectProtocol, INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSIso8601DateFormatter ();
	public NSIso8601DateFormatter (NSCoder coder);
	protected NSIso8601DateFormatter (NSObjectFlag t);
	protected NSIso8601DateFormatter (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual NSIso8601DateFormatOptions FormatOptions { get; set; }
	public virtual NSTimeZone TimeZone { get; set; }
	// methods
	public virtual void EncodeTo (NSCoder encoder);
	public static string Format (NSDate date, NSTimeZone timeZone, NSIso8601DateFormatOptions formatOptions);
	public virtual NSDate ToDate (string string);
	public virtual string ToString (NSDate date);
}

New Type Foundation.NSItemDownloadingStatusExtensions

public static class NSItemDownloadingStatusExtensions {
	// methods
	public static NSString GetConstant (NSItemDownloadingStatus self);
	public static NSItemDownloadingStatus GetValue (NSString constant);
}

New Type Foundation.NSMeasurementFormatter

public class NSMeasurementFormatter : Foundation.NSFormatter, INSCoding, INSCopying, INSObjectProtocol, INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSMeasurementFormatter ();
	public NSMeasurementFormatter (NSCoder coder);
	protected NSMeasurementFormatter (NSObjectFlag t);
	protected NSMeasurementFormatter (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual NSLocale Locale { get; set; }
	public virtual NSNumberFormatter NumberFormatter { get; set; }
	public virtual NSMeasurementFormatterUnitOptions UnitOptions { get; set; }
	public virtual NSFormattingUnitStyle UnitStyle { get; set; }
	// methods
	public virtual void EncodeTo (NSCoder encoder);
	public virtual string ToString (Foundation.NSMeasurement<NSUnit> measurement);
	public virtual string ToString (NSUnit unit);
}

New Type Foundation.NSMeasurementFormatterUnitOptions

[Serializable]
[Flags]
public enum NSMeasurementFormatterUnitOptions {
	NaturalScale = 2,
	ProvidedUnit = 1,
	TemperatureWithoutUnit = 4,
}

New Type Foundation.NSMeasurement`1

public class NSMeasurement`1 : Foundation.NSObject, INSCoding, INSCopying, INSObjectProtocol, INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSMeasurement`1 (NSCoder coder);
	protected NSMeasurement`1 (NSObjectFlag t);
	protected NSMeasurement`1 (IntPtr handle);
	public NSMeasurement`1 (double doubleValue, NSUnit unit);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual double DoubleValue { get; }
	public virtual NSUnit Unit { get; }
	// methods
	public virtual bool CanBeConvertedTo (NSUnit unit);
	public virtual NSObject Copy (NSZone zone);
	public virtual void EncodeTo (NSCoder encoder);
	public virtual Foundation.NSMeasurement<UnitType> GetMeasurementByAdding (Foundation.NSMeasurement<UnitType> measurement);
	public virtual Foundation.NSMeasurement<UnitType> GetMeasurementByConverting (NSUnit unit);
	public virtual Foundation.NSMeasurement<UnitType> GetMeasurementBySubtracting (Foundation.NSMeasurement<UnitType> measurement);
}

New Type Foundation.NSProcessInfo_NSUserInformation

public static class NSProcessInfo_NSUserInformation {
	// methods
	public static string GetFullUserName (NSProcessInfo This);
	public static string GetUserName (NSProcessInfo This);
}

New Type Foundation.NSRunLoopModeExtensions

public static class NSRunLoopModeExtensions {
	// methods
	public static NSString GetConstant (NSRunLoopMode self);
	public static NSString[] GetConstants (NSRunLoopMode[] self);
	public static NSRunLoopMode GetValue (NSString constant);
}

New Type Foundation.NSUnit

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

New Type Foundation.NSUnitAcceleration

public class NSUnitAcceleration : Foundation.NSDimension, INSCoding, INSCopying, INSObjectProtocol, INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSUnitAcceleration ();
	public NSUnitAcceleration (NSCoder coder);
	protected NSUnitAcceleration (NSObjectFlag t);
	protected NSUnitAcceleration (IntPtr handle);
	public NSUnitAcceleration (string symbol, NSUnitConverter converter);
	// properties
	public static NSDimension BaseUnit { get; }
	public override IntPtr ClassHandle { get; }
	public static NSUnitAcceleration Gravity { get; }
	public static NSUnitAcceleration MetersPerSecondSquared { get; }
	// methods
	public virtual void EncodeTo (NSCoder encoder);
}

New Type Foundation.NSUnitAngle

public class NSUnitAngle : Foundation.NSDimension, INSCoding, INSCopying, INSObjectProtocol, INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSUnitAngle ();
	public NSUnitAngle (NSCoder coder);
	protected NSUnitAngle (NSObjectFlag t);
	protected NSUnitAngle (IntPtr handle);
	public NSUnitAngle (string symbol, NSUnitConverter converter);
	// properties
	public static NSUnitAngle ArcMinutes { get; }
	public static NSUnitAngle ArcSeconds { get; }
	public static NSDimension BaseUnit { get; }
	public override IntPtr ClassHandle { get; }
	public static NSUnitAngle Degrees { get; }
	public static NSUnitAngle Gradians { get; }
	public static NSUnitAngle Radians { get; }
	public static NSUnitAngle Revolutions { get; }
	// methods
	public virtual void EncodeTo (NSCoder encoder);
}

New Type Foundation.NSUnitArea

public class NSUnitArea : Foundation.NSDimension, INSCoding, INSCopying, INSObjectProtocol, INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSUnitArea ();
	public NSUnitArea (NSCoder coder);
	protected NSUnitArea (NSObjectFlag t);
	protected NSUnitArea (IntPtr handle);
	public NSUnitArea (string symbol, NSUnitConverter converter);
	// properties
	public static NSUnitArea Acres { get; }
	public static NSUnitArea Ares { get; }
	public static NSDimension BaseUnit { get; }
	public override IntPtr ClassHandle { get; }
	public static NSUnitArea Hectares { get; }
	public static NSUnitArea SquareCentimeters { get; }
	public static NSUnitArea SquareFeet { get; }
	public static NSUnitArea SquareInches { get; }
	public static NSUnitArea SquareKilometers { get; }
	public static NSUnitArea SquareMegameters { get; }
	public static NSUnitArea SquareMeters { get; }
	public static NSUnitArea SquareMicrometers { get; }
	public static NSUnitArea SquareMiles { get; }
	public static NSUnitArea SquareMillimeters { get; }
	public static NSUnitArea SquareNanometers { get; }
	public static NSUnitArea SquareYards { get; }
	// methods
	public virtual void EncodeTo (NSCoder encoder);
}

New Type Foundation.NSUnitConcentrationMass

public class NSUnitConcentrationMass : Foundation.NSDimension, INSCoding, INSCopying, INSObjectProtocol, INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSUnitConcentrationMass ();
	public NSUnitConcentrationMass (NSCoder coder);
	protected NSUnitConcentrationMass (NSObjectFlag t);
	protected NSUnitConcentrationMass (IntPtr handle);
	public NSUnitConcentrationMass (string symbol, NSUnitConverter converter);
	// properties
	public static NSDimension BaseUnit { get; }
	public override IntPtr ClassHandle { get; }
	public static NSUnitConcentrationMass GramsPerLiter { get; }
	public static NSUnitConcentrationMass MilligramsPerDeciliter { get; }
	// methods
	public virtual void EncodeTo (NSCoder encoder);
	public static NSUnitConcentrationMass GetMillimolesPerLiter (double gramsPerMole);
}

New Type Foundation.NSUnitConverter

public class NSUnitConverter : Foundation.NSObject, INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSUnitConverter ();
	protected NSUnitConverter (NSObjectFlag t);
	protected NSUnitConverter (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual double GetBaseUnitValue (double value);
	public virtual double GetValue (double baseUnitValue);
}

New Type Foundation.NSUnitConverterLinear

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

New Type Foundation.NSUnitDispersion

public class NSUnitDispersion : Foundation.NSDimension, INSCoding, INSCopying, INSObjectProtocol, INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSUnitDispersion ();
	public NSUnitDispersion (NSCoder coder);
	protected NSUnitDispersion (NSObjectFlag t);
	protected NSUnitDispersion (IntPtr handle);
	public NSUnitDispersion (string symbol, NSUnitConverter converter);
	// properties
	public static NSDimension BaseUnit { get; }
	public override IntPtr ClassHandle { get; }
	public static NSUnitDispersion PartsPerMillion { get; }
	// methods
	public virtual void EncodeTo (NSCoder encoder);
}

New Type Foundation.NSUnitDuration

public class NSUnitDuration : Foundation.NSDimension, INSCoding, INSCopying, INSObjectProtocol, INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSUnitDuration ();
	public NSUnitDuration (NSCoder coder);
	protected NSUnitDuration (NSObjectFlag t);
	protected NSUnitDuration (IntPtr handle);
	public NSUnitDuration (string symbol, NSUnitConverter converter);
	// properties
	public static NSDimension BaseUnit { get; }
	public override IntPtr ClassHandle { get; }
	public static NSUnitDuration Hours { get; }
	public static NSUnitDuration Minutes { get; }
	public static NSUnitDuration Seconds { get; }
	// methods
	public virtual void EncodeTo (NSCoder encoder);
}

New Type Foundation.NSUnitElectricCharge

public class NSUnitElectricCharge : Foundation.NSDimension, INSCoding, INSCopying, INSObjectProtocol, INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSUnitElectricCharge ();
	public NSUnitElectricCharge (NSCoder coder);
	protected NSUnitElectricCharge (NSObjectFlag t);
	protected NSUnitElectricCharge (IntPtr handle);
	public NSUnitElectricCharge (string symbol, NSUnitConverter converter);
	// properties
	public static NSUnitElectricCharge AmpereHours { get; }
	public static NSDimension BaseUnit { get; }
	public override IntPtr ClassHandle { get; }
	public static NSUnitElectricCharge Coulombs { get; }
	public static NSUnitElectricCharge KiloampereHours { get; }
	public static NSUnitElectricCharge MegaampereHours { get; }
	public static NSUnitElectricCharge MicroampereHours { get; }
	public static NSUnitElectricCharge MilliampereHours { get; }
	// methods
	public virtual void EncodeTo (NSCoder encoder);
}

New Type Foundation.NSUnitElectricCurrent

public class NSUnitElectricCurrent : Foundation.NSDimension, INSCoding, INSCopying, INSObjectProtocol, INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSUnitElectricCurrent ();
	public NSUnitElectricCurrent (NSCoder coder);
	protected NSUnitElectricCurrent (NSObjectFlag t);
	protected NSUnitElectricCurrent (IntPtr handle);
	public NSUnitElectricCurrent (string symbol, NSUnitConverter converter);
	// properties
	public static NSUnitElectricCurrent Amperes { get; }
	public static NSDimension BaseUnit { get; }
	public override IntPtr ClassHandle { get; }
	public static NSUnitElectricCurrent Kiloamperes { get; }
	public static NSUnitElectricCurrent Megaamperes { get; }
	public static NSUnitElectricCurrent Microamperes { get; }
	public static NSUnitElectricCurrent Milliamperes { get; }
	// methods
	public virtual void EncodeTo (NSCoder encoder);
}

New Type Foundation.NSUnitElectricPotentialDifference

public class NSUnitElectricPotentialDifference : Foundation.NSDimension, INSCoding, INSCopying, INSObjectProtocol, INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSUnitElectricPotentialDifference ();
	public NSUnitElectricPotentialDifference (NSCoder coder);
	protected NSUnitElectricPotentialDifference (NSObjectFlag t);
	protected NSUnitElectricPotentialDifference (IntPtr handle);
	public NSUnitElectricPotentialDifference (string symbol, NSUnitConverter converter);
	// properties
	public static NSDimension BaseUnit { get; }
	public override IntPtr ClassHandle { get; }
	public static NSUnitElectricPotentialDifference Kilovolts { get; }
	public static NSUnitElectricPotentialDifference Megavolts { get; }
	public static NSUnitElectricPotentialDifference Microvolts { get; }
	public static NSUnitElectricPotentialDifference Millivolts { get; }
	public static NSUnitElectricPotentialDifference Volts { get; }
	// methods
	public virtual void EncodeTo (NSCoder encoder);
}

New Type Foundation.NSUnitElectricResistance

public class NSUnitElectricResistance : Foundation.NSDimension, INSCoding, INSCopying, INSObjectProtocol, INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSUnitElectricResistance ();
	public NSUnitElectricResistance (NSCoder coder);
	protected NSUnitElectricResistance (NSObjectFlag t);
	protected NSUnitElectricResistance (IntPtr handle);
	public NSUnitElectricResistance (string symbol, NSUnitConverter converter);
	// properties
	public static NSDimension BaseUnit { get; }
	public override IntPtr ClassHandle { get; }
	public static NSUnitElectricResistance Kiloohms { get; }
	public static NSUnitElectricResistance Megaohms { get; }
	public static NSUnitElectricResistance Microohms { get; }
	public static NSUnitElectricResistance Milliohms { get; }
	public static NSUnitElectricResistance Ohms { get; }
	// methods
	public virtual void EncodeTo (NSCoder encoder);
}

New Type Foundation.NSUnitEnergy

public class NSUnitEnergy : Foundation.NSDimension, INSCoding, INSCopying, INSObjectProtocol, INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSUnitEnergy ();
	public NSUnitEnergy (NSCoder coder);
	protected NSUnitEnergy (NSObjectFlag t);
	protected NSUnitEnergy (IntPtr handle);
	public NSUnitEnergy (string symbol, NSUnitConverter converter);
	// properties
	public static NSDimension BaseUnit { get; }
	public static NSUnitEnergy Calories { get; }
	public override IntPtr ClassHandle { get; }
	public static NSUnitEnergy Joules { get; }
	public static NSUnitEnergy Kilocalories { get; }
	public static NSUnitEnergy Kilojoules { get; }
	public static NSUnitEnergy KilowattHours { get; }
	// methods
	public virtual void EncodeTo (NSCoder encoder);
}

New Type Foundation.NSUnitFrequency

public class NSUnitFrequency : Foundation.NSDimension, INSCoding, INSCopying, INSObjectProtocol, INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSUnitFrequency ();
	public NSUnitFrequency (NSCoder coder);
	protected NSUnitFrequency (NSObjectFlag t);
	protected NSUnitFrequency (IntPtr handle);
	public NSUnitFrequency (string symbol, NSUnitConverter converter);
	// properties
	public static NSDimension BaseUnit { get; }
	public override IntPtr ClassHandle { get; }
	public static NSUnitFrequency Gigahertz { get; }
	public static NSUnitFrequency Hertz { get; }
	public static NSUnitFrequency Kilohertz { get; }
	public static NSUnitFrequency Megahertz { get; }
	public static NSUnitFrequency Microhertz { get; }
	public static NSUnitFrequency Millihertz { get; }
	public static NSUnitFrequency Nanohertz { get; }
	public static NSUnitFrequency Terahertz { get; }
	// methods
	public virtual void EncodeTo (NSCoder encoder);
}

New Type Foundation.NSUnitFuelEfficiency

public class NSUnitFuelEfficiency : Foundation.NSDimension, INSCoding, INSCopying, INSObjectProtocol, INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSUnitFuelEfficiency ();
	public NSUnitFuelEfficiency (NSCoder coder);
	protected NSUnitFuelEfficiency (NSObjectFlag t);
	protected NSUnitFuelEfficiency (IntPtr handle);
	public NSUnitFuelEfficiency (string symbol, NSUnitConverter converter);
	// properties
	public static NSDimension BaseUnit { get; }
	public override IntPtr ClassHandle { get; }
	public static NSUnitFuelEfficiency LitersPer100Kilometers { get; }
	public static NSUnitFuelEfficiency MilesPerGallon { get; }
	public static NSUnitFuelEfficiency MilesPerImperialGallon { get; }
	// methods
	public virtual void EncodeTo (NSCoder encoder);
}

New Type Foundation.NSUnitIlluminance

public class NSUnitIlluminance : Foundation.NSDimension, INSCoding, INSCopying, INSObjectProtocol, INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSUnitIlluminance ();
	public NSUnitIlluminance (NSCoder coder);
	protected NSUnitIlluminance (NSObjectFlag t);
	protected NSUnitIlluminance (IntPtr handle);
	public NSUnitIlluminance (string symbol, NSUnitConverter converter);
	// properties
	public static NSDimension BaseUnit { get; }
	public override IntPtr ClassHandle { get; }
	public static NSUnitIlluminance Lux { get; }
	// methods
	public virtual void EncodeTo (NSCoder encoder);
}

New Type Foundation.NSUnitLength

public class NSUnitLength : Foundation.NSDimension, INSCoding, INSCopying, INSObjectProtocol, INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSUnitLength ();
	public NSUnitLength (NSCoder coder);
	protected NSUnitLength (NSObjectFlag t);
	protected NSUnitLength (IntPtr handle);
	public NSUnitLength (string symbol, NSUnitConverter converter);
	// properties
	public static NSUnitLength AstronomicalUnits { get; }
	public static NSDimension BaseUnit { get; }
	public static NSUnitLength Centimeters { get; }
	public override IntPtr ClassHandle { get; }
	public static NSUnitLength Decameters { get; }
	public static NSUnitLength Decimeters { get; }
	public static NSUnitLength Fathoms { get; }
	public static NSUnitLength Feet { get; }
	public static NSUnitLength Furlongs { get; }
	public static NSUnitLength Hectometers { get; }
	public static NSUnitLength Inches { get; }
	public static NSUnitLength Kilometers { get; }
	public static NSUnitLength Lightyears { get; }
	public static NSUnitLength Megameters { get; }
	public static NSUnitLength Meters { get; }
	public static NSUnitLength Micrometers { get; }
	public static NSUnitLength Miles { get; }
	public static NSUnitLength Millimeters { get; }
	public static NSUnitLength Nanometers { get; }
	public static NSUnitLength NauticalMiles { get; }
	public static NSUnitLength Parsecs { get; }
	public static NSUnitLength Picometers { get; }
	public static NSUnitLength ScandinavianMiles { get; }
	public static NSUnitLength Yards { get; }
	// methods
	public virtual void EncodeTo (NSCoder encoder);
}

New Type Foundation.NSUnitMass

public class NSUnitMass : Foundation.NSDimension, INSCoding, INSCopying, INSObjectProtocol, INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSUnitMass ();
	public NSUnitMass (NSCoder coder);
	protected NSUnitMass (NSObjectFlag t);
	protected NSUnitMass (IntPtr handle);
	public NSUnitMass (string symbol, NSUnitConverter converter);
	// properties
	public static NSDimension BaseUnit { get; }
	public static NSUnitMass Carats { get; }
	public static NSUnitMass Centigrams { get; }
	public override IntPtr ClassHandle { get; }
	public static NSUnitMass Decigrams { get; }
	public static NSUnitMass Grams { get; }
	public static NSUnitMass Kilograms { get; }
	public static NSUnitMass MetricTons { get; }
	public static NSUnitMass Micrograms { get; }
	public static NSUnitMass Milligrams { get; }
	public static NSUnitMass Nanograms { get; }
	public static NSUnitMass Ounces { get; }
	public static NSUnitMass OuncesTroy { get; }
	public static NSUnitMass Picograms { get; }
	public static NSUnitMass Pounds { get; }
	public static NSUnitMass ShortTons { get; }
	public static NSUnitMass Slugs { get; }
	public static NSUnitMass Stones { get; }
	// methods
	public virtual void EncodeTo (NSCoder encoder);
}

New Type Foundation.NSUnitPower

public class NSUnitPower : Foundation.NSDimension, INSCoding, INSCopying, INSObjectProtocol, INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSUnitPower ();
	public NSUnitPower (NSCoder coder);
	protected NSUnitPower (NSObjectFlag t);
	protected NSUnitPower (IntPtr handle);
	public NSUnitPower (string symbol, NSUnitConverter converter);
	// properties
	public static NSDimension BaseUnit { get; }
	public override IntPtr ClassHandle { get; }
	public static NSUnitPower Femtowatts { get; }
	public static NSUnitPower Gigawatts { get; }
	public static NSUnitPower Horsepower { get; }
	public static NSUnitPower Kilowatts { get; }
	public static NSUnitPower Megawatts { get; }
	public static NSUnitPower Microwatts { get; }
	public static NSUnitPower Milliwatts { get; }
	public static NSUnitPower Nanowatts { get; }
	public static NSUnitPower Picowatts { get; }
	public static NSUnitPower Terawatts { get; }
	public static NSUnitPower Watts { get; }
	// methods
	public virtual void EncodeTo (NSCoder encoder);
}

New Type Foundation.NSUnitPressure

public class NSUnitPressure : Foundation.NSDimension, INSCoding, INSCopying, INSObjectProtocol, INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSUnitPressure ();
	public NSUnitPressure (NSCoder coder);
	protected NSUnitPressure (NSObjectFlag t);
	protected NSUnitPressure (IntPtr handle);
	public NSUnitPressure (string symbol, NSUnitConverter converter);
	// properties
	public static NSUnitPressure Bars { get; }
	public static NSDimension BaseUnit { get; }
	public override IntPtr ClassHandle { get; }
	public static NSUnitPressure Gigapascals { get; }
	public static NSUnitPressure Hectopascals { get; }
	public static NSUnitPressure InchesOfMercury { get; }
	public static NSUnitPressure Kilopascals { get; }
	public static NSUnitPressure Megapascals { get; }
	public static NSUnitPressure Millibars { get; }
	public static NSUnitPressure MillimetersOfMercury { get; }
	public static NSUnitPressure NewtonsPerMetersSquared { get; }
	public static NSUnitPressure PoundsForcePerSquareInch { get; }
	// methods
	public virtual void EncodeTo (NSCoder encoder);
}

New Type Foundation.NSUnitSpeed

public class NSUnitSpeed : Foundation.NSDimension, INSCoding, INSCopying, INSObjectProtocol, INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSUnitSpeed ();
	public NSUnitSpeed (NSCoder coder);
	protected NSUnitSpeed (NSObjectFlag t);
	protected NSUnitSpeed (IntPtr handle);
	public NSUnitSpeed (string symbol, NSUnitConverter converter);
	// properties
	public static NSDimension BaseUnit { get; }
	public override IntPtr ClassHandle { get; }
	public static NSUnitSpeed KilometersPerHour { get; }
	public static NSUnitSpeed Knots { get; }
	public static NSUnitSpeed MetersPerSecond { get; }
	public static NSUnitSpeed MilesPerHour { get; }
	// methods
	public virtual void EncodeTo (NSCoder encoder);
}

New Type Foundation.NSUnitTemperature

public class NSUnitTemperature : Foundation.NSDimension, INSCoding, INSCopying, INSObjectProtocol, INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSUnitTemperature (NSCoder coder);
	protected NSUnitTemperature (NSObjectFlag t);
	protected NSUnitTemperature (IntPtr handle);
	public NSUnitTemperature (string symbol, NSUnitConverter converter);
	// properties
	public static NSDimension BaseUnit { get; }
	public static NSUnitTemperature Celsius { get; }
	public override IntPtr ClassHandle { get; }
	public static NSUnitTemperature Fahrenheit { get; }
	public static NSUnitTemperature Kelvin { get; }
	// methods
	public virtual void EncodeTo (NSCoder encoder);
}

New Type Foundation.NSUnitVolume

public class NSUnitVolume : Foundation.NSDimension, INSCoding, INSCopying, INSObjectProtocol, INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSUnitVolume ();
	public NSUnitVolume (NSCoder coder);
	protected NSUnitVolume (NSObjectFlag t);
	protected NSUnitVolume (IntPtr handle);
	public NSUnitVolume (string symbol, NSUnitConverter converter);
	// properties
	public static NSUnitVolume AcreFeet { get; }
	public static NSDimension BaseUnit { get; }
	public static NSUnitVolume Bushels { get; }
	public static NSUnitVolume Centiliters { get; }
	public override IntPtr ClassHandle { get; }
	public static NSUnitVolume CubicCentimeters { get; }
	public static NSUnitVolume CubicDecimeters { get; }
	public static NSUnitVolume CubicFeet { get; }
	public static NSUnitVolume CubicInches { get; }
	public static NSUnitVolume CubicKilometers { get; }
	public static NSUnitVolume CubicMeters { get; }
	public static NSUnitVolume CubicMiles { get; }
	public static NSUnitVolume CubicMillimeters { get; }
	public static NSUnitVolume CubicYards { get; }
	public static NSUnitVolume Cups { get; }
	public static NSUnitVolume Deciliters { get; }
	public static NSUnitVolume FluidOunces { get; }
	public static NSUnitVolume Gallons { get; }
	public static NSUnitVolume ImperialFluidOunces { get; }
	public static NSUnitVolume ImperialGallons { get; }
	public static NSUnitVolume ImperialPints { get; }
	public static NSUnitVolume ImperialQuarts { get; }
	public static NSUnitVolume ImperialTablespoons { get; }
	public static NSUnitVolume ImperialTeaspoons { get; }
	public static NSUnitVolume Kiloliters { get; }
	public static NSUnitVolume Liters { get; }
	public static NSUnitVolume Megaliters { get; }
	public static NSUnitVolume MetricCups { get; }
	public static NSUnitVolume Milliliters { get; }
	public static NSUnitVolume Pints { get; }
	public static NSUnitVolume Quarts { get; }
	public static NSUnitVolume Tablespoons { get; }
	public static NSUnitVolume Teaspoons { get; }
	// methods
	public virtual void EncodeTo (NSCoder encoder);
}

New Type Foundation.NSUrlSessionTaskMetrics

public class NSUrlSessionTaskMetrics : Foundation.NSObject, INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSUrlSessionTaskMetrics ();
	protected NSUrlSessionTaskMetrics (NSObjectFlag t);
	protected NSUrlSessionTaskMetrics (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual uint RedirectCount { get; }
	public virtual NSDateInterval TaskInterval { get; }
	public virtual NSUrlSessionTaskTransactionMetrics[] TransactionMetrics { get; }
}

New Type Foundation.NSUrlSessionTaskMetricsResourceFetchType

[Serializable]
public enum NSUrlSessionTaskMetricsResourceFetchType {
	LocalCache = 3,
	NetworkLoad = 1,
	ServerPush = 2,
	Unknown = 0,
}

New Type Foundation.NSUrlSessionTaskTransactionMetrics

public class NSUrlSessionTaskTransactionMetrics : Foundation.NSObject, INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSUrlSessionTaskTransactionMetrics ();
	protected NSUrlSessionTaskTransactionMetrics (NSObjectFlag t);
	protected NSUrlSessionTaskTransactionMetrics (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual NSDate ConnectEndDate { get; }
	public virtual NSDate ConnectStartDate { get; }
	public virtual NSDate DomainLookupEndDate { get; }
	public virtual NSDate DomainLookupStartDate { get; }
	public virtual NSDate FetchStartDate { get; }
	public virtual string NetworkProtocolName { get; }
	public virtual bool ProxyConnection { get; }
	public virtual NSUrlRequest Request { get; }
	public virtual NSDate RequestEndDate { get; }
	public virtual NSDate RequestStartDate { get; }
	public virtual NSUrlSessionTaskMetricsResourceFetchType ResourceFetchType { get; }
	public virtual NSUrlResponse Response { get; }
	public virtual NSDate ResponseEndDate { get; }
	public virtual NSDate ResponseStartDate { get; }
	public virtual bool ReusedConnection { get; }
	public virtual NSDate SecureConnectionEndDate { get; }
	public virtual NSDate SecureConnectionStartDate { get; }
}

New Type Foundation.NSUserNotificationAction

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

Namespace GLKit

Type Changed: GLKit.GLKTextureInfo

Added properties:

	public virtual uint ArrayLength { get; }
	public virtual uint Depth { get; }
	public virtual uint MimapLevelCount { get; }

Type Changed: GLKit.GLKTextureLoader

Added methods:

	public virtual void BeginTextureLoad (string name, nfloat scaleFactor, Foundation.NSBundle bundle, Foundation.NSDictionary<Foundation.NSString,Foundation.NSNumber> options, CoreFoundation.DispatchQueue queue, GLKTextureLoaderCallback block);
	public virtual System.Threading.Tasks.Task<GLKTextureInfo> BeginTextureLoadAsync (string name, nfloat scaleFactor, Foundation.NSBundle bundle, Foundation.NSDictionary<Foundation.NSString,Foundation.NSNumber> options, CoreFoundation.DispatchQueue queue);
	public static GLKTextureInfo FromName (string name, nfloat scaleFactor, Foundation.NSBundle bundle, Foundation.NSDictionary<Foundation.NSString,Foundation.NSNumber> options, Foundation.NSError outError);

Type Changed: GLKit.GLKTextureLoaderError

Added value:

	UnsupportedTextureTarget = 19,

Namespace GameKit

Type Changed: GameKit.GKAchievementViewController

Added interface:

	AppKit.INSTouchBarProvider

Type Changed: GameKit.GKDialogController

Added interface:

	AppKit.INSTouchBarProvider

Type Changed: GameKit.GKError

Added values:

	GameSessionRequestInvalid = 29,
	MatchNotConnected = 28,

Type Changed: GameKit.GKFriendRequestComposeViewController

Added interface:

	AppKit.INSTouchBarProvider

Type Changed: GameKit.GKGameCenterViewController

Added interface:

	AppKit.INSTouchBarProvider

Type Changed: GameKit.GKLeaderboard

Added property:

	public virtual string Identifier { get; set; }

Added methods:

	public virtual void LoadImage (GKImageLoadedHandler completionHandler);
	public virtual System.Threading.Tasks.Task<AppKit.NSImage> LoadImageAsync ();

Type Changed: GameKit.GKLeaderboardViewController

Added interface:

	AppKit.INSTouchBarProvider

Type Changed: GameKit.GKLocalPlayer

Added methods:

	public virtual void LoadRecentPlayers (System.Action<GKPlayer[],Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<GKPlayer[]> LoadRecentPlayersAsync ();

Type Changed: GameKit.GKMatch

Added methods:

	public virtual void ChooseBestHostPlayer (System.Action<string> completionHandler);
	public virtual System.Threading.Tasks.Task<string> ChooseBestHostPlayerAsync ();
	public virtual void Rematch (System.Action<GKMatch,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<GKMatch> RematchAsync ();

Type Changed: GameKit.GKMatchRequest

Added properties:

	public virtual nint DefaultNumberOfPlayers { get; set; }
	public virtual string InviteMessage { get; set; }

Added method:

	public static nint GetMaxPlayersAllowed (GKMatchType matchType);

Type Changed: GameKit.GKMatchmaker

Added methods:

	public virtual void CancelInvite (string playerID);
	public virtual void FinishMatchmaking (GKMatch match);
	public virtual void Match (GKInvite invite, System.Action<GKMatch,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<GKMatch> MatchAsync (GKInvite invite);
	public virtual void StartBrowsingForNearbyPlayers (System.Action<System.String,System.Boolean> reachableHandler);
	public virtual void StopBrowsingForNearbyPlayers ();

Type Changed: GameKit.GKMatchmakerViewController

Added interface:

	AppKit.INSTouchBarProvider

Added property:

	public virtual string DefaultInvitationMessage { get; set; }

Type Changed: GameKit.GKNotificationBanner

Added methods:

	public static void Show (string title, string message, double durationSeconds, System.Action completionHandler);
	public static System.Threading.Tasks.Task ShowAsync (string title, string message, double durationSeconds);

Type Changed: GameKit.GKPlayer

Modified base type: Foundation.NSObject GameKit.GKBasePlayer

Added property:

	public virtual string DisplayName { get; }

Type Changed: GameKit.GKScore

Added constructor:

	public GKScore (string identifier, string playerID);

Added property:

	public virtual string LeaderboardIdentifier { get; set; }

Added methods:

	public static void ReportScores (GKScore[] scores, GKChallenge[] challenges, System.Action<Foundation.NSError> completionHandler);
	public static System.Threading.Tasks.Task ReportScoresAsync (GKScore[] scores, GKChallenge[] challenges);

Type Changed: GameKit.GKTurnBasedEventHandlerDelegate

Added method:

	public virtual void HandleTurnEvent (GKTurnBasedMatch match, bool activated);

Type Changed: GameKit.GKTurnBasedEventHandlerDelegate_Extensions

Added method:

	public static void HandleTurnEvent (IGKTurnBasedEventHandlerDelegate This, GKTurnBasedMatch match, bool activated);

Type Changed: GameKit.GKTurnBasedMatch

Added properties:

	public virtual GKTurnBasedExchange[] ActiveExchanges { get; }
	public virtual GKTurnBasedExchange[] CompletedExchanges { get; }
	public static double DefaultTimeout { get; }
	public virtual uint ExchangeMaxInitiatedExchangesPerPlayer { get; }
	public virtual GKTurnBasedExchange[] Exchanges { get; }
	public virtual uint ExhangeDataMaximumSize { get; }
	public virtual nint MatchDataMaximumSize { get; }
	public static double NoTimeout { get; }

Added methods:

	public virtual void AcceptInvite (System.Action<GKTurnBasedMatch,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<GKTurnBasedMatch> AcceptInviteAsync ();
	public virtual void DeclineInvite (System.Action<GKTurnBasedMatch,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<GKTurnBasedMatch> DeclineInviteAsync ();
	public virtual void EndMatchInTurn (Foundation.NSData matchData, GKScore[] scores, GKAchievement[] achievements, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task EndMatchInTurnAsync (Foundation.NSData matchData, GKScore[] scores, GKAchievement[] achievements);
	public virtual void EndTurn (GKTurnBasedParticipant[] nextParticipants, double timeoutSeconds, Foundation.NSData matchData, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task EndTurnAsync (GKTurnBasedParticipant[] nextParticipants, double timeoutSeconds, Foundation.NSData matchData);
	public static void LoadMatch (string matchId, System.Action<GKTurnBasedMatch,Foundation.NSError> completionHandler);
	public static System.Threading.Tasks.Task<GKTurnBasedMatch> LoadMatchAsync (string matchId);
	public virtual void ParticipantQuitInTurn (GKTurnBasedMatchOutcome matchOutcome, GKTurnBasedParticipant[] nextParticipants, double timeoutSeconds, Foundation.NSData matchData, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task ParticipantQuitInTurnAsync (GKTurnBasedMatchOutcome matchOutcome, GKTurnBasedParticipant[] nextParticipants, double timeoutSeconds, Foundation.NSData matchData);
	public virtual void Rematch (System.Action<GKTurnBasedMatch,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<GKTurnBasedMatch> RematchAsync ();
	public virtual void SaveCurrentTurn (Foundation.NSData matchData, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task SaveCurrentTurnAsync (Foundation.NSData matchData);
	public virtual void SaveMergedMatchData (Foundation.NSData matchData, GKTurnBasedExchange[] exchanges, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task SaveMergedMatchDataAsync (Foundation.NSData matchData, GKTurnBasedExchange[] exchanges);
	public virtual void SendExchange (GKTurnBasedParticipant[] participants, Foundation.NSData data, string localizableMessage, Foundation.NSObject[] arguments, double timeout, System.Action<GKTurnBasedExchange,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<GKTurnBasedExchange> SendExchangeAsync (GKTurnBasedParticipant[] participants, Foundation.NSData data, string localizableMessage, Foundation.NSObject[] arguments, double timeout);
	public virtual void SendReminder (GKTurnBasedParticipant[] participants, string localizableMessage, Foundation.NSObject[] arguments, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task SendReminderAsync (GKTurnBasedParticipant[] participants, string localizableMessage, Foundation.NSObject[] arguments);
	public virtual void SetMessage (string localizableMessage, Foundation.NSObject[] arguments);

Type Changed: GameKit.GKTurnBasedMatchmakerViewController

Added interface:

	AppKit.INSTouchBarProvider

Type Changed: GameKit.GKTurnBasedParticipant

Added property:

	public virtual Foundation.NSDate TimeoutDate { get; }

New Type GameKit.GKBasePlayer

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

New Type GameKit.GKCloudPlayer

public class GKCloudPlayer : GameKit.GKBasePlayer, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GKCloudPlayer ();
	protected GKCloudPlayer (Foundation.NSObjectFlag t);
	protected GKCloudPlayer (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public static void GetCurrentSignedInPlayer (string containerName, System.Action<GKCloudPlayer,Foundation.NSError> handler);
}

New Type GameKit.GKConnectionState

[Serializable]
public enum GKConnectionState {
	Connected = 1,
	NotConnected = 0,
}

New Type GameKit.GKGameSession

public class GKGameSession : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GKGameSession ();
	protected GKGameSession (Foundation.NSObjectFlag t);
	protected GKGameSession (IntPtr handle);
	// properties
	public virtual GKCloudPlayer[] BadgedPlayers { get; }
	public override IntPtr ClassHandle { get; }
	public virtual string Identifier { get; }
	public virtual Foundation.NSDate LastModifiedDate { get; }
	public virtual GKCloudPlayer LastModifiedPlayer { get; }
	public virtual nint MaxNumberOfConnectedPlayers { get; }
	public virtual GKCloudPlayer Owner { get; }
	public virtual GKCloudPlayer[] Players { get; }
	public virtual string Title { get; }
	// methods
	public static void AddEventListener (IGKGameSessionEventListener listener);
	public virtual void ClearBadge (GKCloudPlayer[] players, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task ClearBadgeAsync (GKCloudPlayer[] players);
	public static void CreateSession (string containerName, string title, nint maxPlayers, System.Action<GKGameSession,Foundation.NSError> completionHandler);
	public static System.Threading.Tasks.Task<GKGameSession> CreateSessionAsync (string containerName, string title, nint maxPlayers);
	public virtual GKCloudPlayer[] GetPlayers (GKConnectionState state);
	public virtual void GetShareUrl (System.Action<Foundation.NSUrl,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<Foundation.NSUrl> GetShareUrlAsync ();
	public virtual void LoadData (System.Action<Foundation.NSData,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<Foundation.NSData> LoadDataAsync ();
	public static void LoadSession (string identifier, System.Action<GKGameSession,Foundation.NSError> completionHandler);
	public static System.Threading.Tasks.Task<GKGameSession> LoadSessionAsync (string identifier);
	public static void LoadSessions (string containerName, System.Action<GKGameSession[],Foundation.NSError> completionHandler);
	public static System.Threading.Tasks.Task<GKGameSession[]> LoadSessionsAsync (string containerName);
	public static void RemoveEventListener (IGKGameSessionEventListener listener);
	public static void RemoveSession (string identifier, System.Action<Foundation.NSError> completionHandler);
	public static System.Threading.Tasks.Task RemoveSessionAsync (string identifier);
	public virtual void SaveData (Foundation.NSData data, System.Action<Foundation.NSData,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<Foundation.NSData> SaveDataAsync (Foundation.NSData data);
	public virtual void SendData (Foundation.NSData data, GKTransportType transport, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task SendDataAsync (Foundation.NSData data, GKTransportType transport);
	public virtual void SendMessage (string key, string[] arguments, Foundation.NSData data, GKCloudPlayer[] players, bool badgePlayers, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task SendMessageAsync (string key, string[] arguments, Foundation.NSData data, GKCloudPlayer[] players, bool badgePlayers);
	public virtual void SetConnectionState (GKConnectionState state, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task SetConnectionStateAsync (GKConnectionState state);
}

New Type GameKit.GKGameSessionErrorCode

[Serializable]
public enum GKGameSessionErrorCode {
	BadContainer = 12,
	CloudDriveDisabled = 15,
	CloudQuotaExceeded = 13,
	ConnectionCancelledByUser = 5,
	ConnectionFailed = 6,
	InvalidSession = 16,
	NetworkFailure = 14,
	NotAuthenticated = 2,
	SendDataNoRecipients = 9,
	SendDataNotConnected = 8,
	SendDataNotReachable = 10,
	SendRateLimitReached = 11,
	SessionConflict = 3,
	SessionHasMaxConnectedPlayers = 7,
	SessionNotShared = 4,
	Unknown = 1,
}

New Type GameKit.GKGameSessionErrorCodeExtensions

public static class GKGameSessionErrorCodeExtensions {
	// methods
	public static Foundation.NSString GetDomain (GKGameSessionErrorCode self);
}

New Type GameKit.GKGameSessionEventListener_Extensions

public static class GKGameSessionEventListener_Extensions {
	// methods
	public static void DidAddPlayer (IGKGameSessionEventListener This, GKGameSession session, GKCloudPlayer player);
	public static void DidChangeConnectionState (IGKGameSessionEventListener This, GKGameSession session, GKCloudPlayer player, GKConnectionState newState);
	public static void DidReceiveData (IGKGameSessionEventListener This, GKGameSession session, Foundation.NSData data, GKCloudPlayer player);
	public static void DidReceiveMessage (IGKGameSessionEventListener This, GKGameSession session, string message, Foundation.NSData data, GKCloudPlayer player);
	public static void DidRemovePlayer (IGKGameSessionEventListener This, GKGameSession session, GKCloudPlayer player);
	public static void DidSaveData (IGKGameSessionEventListener This, GKGameSession session, GKCloudPlayer player, Foundation.NSData data);
}

New Type GameKit.GKLeaderboardSet

public class GKLeaderboardSet : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GKLeaderboardSet ();
	public GKLeaderboardSet (Foundation.NSCoder coder);
	protected GKLeaderboardSet (Foundation.NSObjectFlag t);
	protected GKLeaderboardSet (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string GroupIdentifier { get; set; }
	public virtual string Identifier { get; set; }
	public virtual string Title { get; set; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public static void LoadLeaderboardSets (GKLeaderboardSetsHandler completionHandler);
	public static System.Threading.Tasks.Task<GKLeaderboardSet[]> LoadLeaderboardSetsAsync ();
	public virtual void LoadLeaderboards (GKLeaderboardsHandler completionHandler);
	public virtual System.Threading.Tasks.Task<GKLeaderboard[]> LoadLeaderboardsAsync ();
}

New Type GameKit.GKLeaderboardSetsHandler

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

New Type GameKit.GKLeaderboardsHandler

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

New Type GameKit.GKPeerConnectionState

[Serializable]
public enum GKPeerConnectionState {
	Available = 0,
	Connected = 2,
	Connecting = 4,
	Disconnected = 3,
	Unavailable = 1,
}

New Type GameKit.GKSendDataMode

[Serializable]
public enum GKSendDataMode {
	Reliable = 0,
	Unreliable = 1,
}

New Type GameKit.GKSessionMode

[Serializable]
public enum GKSessionMode {
	Client = 1,
	Peer = 2,
	Server = 0,
}

New Type GameKit.GKTransportType

[Serializable]
public enum GKTransportType {
	Reliable = 1,
	Unreliable = 0,
}

New Type GameKit.IGKGameSessionEventListener

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

Namespace GameplayKit

Type Changed: GameplayKit.GKAgent

Added constructor:

	public GKAgent (Foundation.NSCoder coder);

Added interface:

	Foundation.INSCoding

Modified properties:

public virtual float Speed { get; set; }

Added method:

	public virtual void EncodeTo (Foundation.NSCoder encoder);

Type Changed: GameplayKit.GKAgent2D

Added constructor:

	public GKAgent2D (Foundation.NSCoder coder);

Added interface:

	Foundation.INSCoding

Modified methods:

public virtual void Update (double seconds deltaTimeInSeconds)

Added method:

	public virtual void EncodeTo (Foundation.NSCoder encoder);

Type Changed: GameplayKit.GKBehavior

Added interface:

	Foundation.INSCopying

Added method:

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

Type Changed: GameplayKit.GKComponent

Added constructor:

	protected GKComponent (Foundation.NSCoder coder);

Added interface:

	Foundation.INSCoding

Modified methods:

public virtual void Update (double seconds deltaTimeInSeconds)

Added methods:

	public virtual void DidAddToEntity ();
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public virtual void WillRemoveFromEntity ();

Type Changed: GameplayKit.GKComponentSystem`1

Modified methods:

public virtual void Update (double seconds deltaTimeInSeconds)

Added methods:

	public virtual ObjCRuntime.Class GetClassForGenericArgument (uint index);
	public System.Type GetTypeForGenericArgument (uint index);

Type Changed: GameplayKit.GKEntity

Added constructor:

	public GKEntity (Foundation.NSCoder coder);

Added interface:

	Foundation.INSCoding

Modified methods:

public virtual void Update (double seconds deltaTimeInSeconds)

Added method:

	public virtual void EncodeTo (Foundation.NSCoder encoder);

Type Changed: GameplayKit.GKGraph

Added constructor:

	public GKGraph (Foundation.NSCoder coder);

Added interfaces:

	Foundation.INSCoding
	Foundation.INSCopying

Added methods:

	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);

Type Changed: GameplayKit.GKGraphNode

Added constructor:

	public GKGraphNode (Foundation.NSCoder coder);

Added interface:

	Foundation.INSCoding

Added method:

	public virtual void EncodeTo (Foundation.NSCoder encoder);

Type Changed: GameplayKit.GKGraphNode2D

Added constructor:

	public GKGraphNode2D (Foundation.NSCoder coder);

Added interface:

	Foundation.INSCoding

Type Changed: GameplayKit.GKGridGraph

Added constructors:

	public GKGridGraph (Foundation.NSCoder coder);
	public GKGridGraph (OpenTK.Vector2i position, int width, int height, bool diagonalsAllowed, ObjCRuntime.Class aClass);
	public GKGridGraph (OpenTK.Vector2i position, int width, int height, bool diagonalsAllowed, System.Type nodeType);

Added interfaces:

	Foundation.INSCoding
	Foundation.INSCopying

Added methods:

	public static GKGridGraph FromGridStartingAt (OpenTK.Vector2i position, int width, int height, bool diagonalsAllowed, ObjCRuntime.Class aClass);
	public static GKGridGraph FromGridStartingAt (OpenTK.Vector2i position, int width, int height, bool diagonalsAllowed, System.Type type);
	public virtual ObjCRuntime.Class GetClassForGenericArgument (uint index);
	public NodeType GetNodeAt<NodeType> (OpenTK.Vector2i position);
	public System.Type GetTypeForGenericArgument (uint index);

Type Changed: GameplayKit.GKGridGraphNode

Added constructor:

	public GKGridGraphNode (Foundation.NSCoder coder);

Added interface:

	Foundation.INSCoding

Type Changed: GameplayKit.GKMinMaxStrategist

Added interface:

	IGKStrategist

Added method:

	public virtual IGKGameModelUpdate GetBestMoveForActivePlayer ();

Type Changed: GameplayKit.GKObstacleGraph

Added constructor:

	public GKObstacleGraph (Foundation.NSCoder coder);

Added interfaces:

	Foundation.INSCoding
	Foundation.INSCopying

Added methods:

	public virtual ObjCRuntime.Class GetClassForGenericArgument (uint index);
	public System.Type GetTypeForGenericArgument (uint index);

Type Changed: GameplayKit.GKPath

Added constructors:

	public GKPath (GKGraphNode[] nodes, float radius);
	public GKPath (OpenTK.Vector3[] points, float radius, bool cyclical);

Added methods:

	public static GKPath FromGraphNodes (GKGraphNode[] nodes, float radius);
	public static GKPath FromPoints (OpenTK.Vector3[] points, float radius, bool cyclical);
	public virtual OpenTK.Vector2 GetVector2Point (uint index);
	public virtual OpenTK.Vector3 GetVector3Point (uint index);

Type Changed: GameplayKit.GKPolygonObstacle

Added constructor:

	public GKPolygonObstacle (Foundation.NSCoder coder);

Added interface:

	Foundation.INSCoding

Added method:

	public virtual void EncodeTo (Foundation.NSCoder encoder);

Type Changed: GameplayKit.GKState

Modified methods:

public virtual void Update (double seconds deltaTimeInSeconds)

Type Changed: GameplayKit.GKStateMachine

Modified methods:

public virtual void Update (double seconds deltaTimeInSeconds)

New Type GameplayKit.GKAgent3D

public class GKAgent3D : GameplayKit.GKAgent, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GKAgent3D ();
	public GKAgent3D (Foundation.NSCoder coder);
	protected GKAgent3D (Foundation.NSObjectFlag t);
	protected GKAgent3D (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual OpenTK.Vector3 Position { get; set; }
	public virtual bool RightHanded { get; set; }
	public virtual OpenTK.Matrix3 Rotation { get; set; }
	public virtual OpenTK.Vector3 Velocity { get; }
	// methods
	public virtual void Update (double deltaTimeInSeconds);
}

New Type GameplayKit.GKBillowNoiseSource

public class GKBillowNoiseSource : GameplayKit.GKCoherentNoiseSource, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected GKBillowNoiseSource (Foundation.NSObjectFlag t);
	protected GKBillowNoiseSource (IntPtr handle);
	public GKBillowNoiseSource (double frequency, nint octaveCount, double persistence, double lacunarity, int seed);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual double Persistence { get; set; }
	// methods
	public static GKBillowNoiseSource Create (double frequency, nint octaveCount, double persistence, double lacunarity, int seed);
}

New Type GameplayKit.GKBox

public struct GKBox {
	// fields
	public OpenTK.Vector3 Max;
	public OpenTK.Vector3 Min;
}

New Type GameplayKit.GKCheckerboardNoiseSource

public class GKCheckerboardNoiseSource : GameplayKit.GKNoiseSource, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected GKCheckerboardNoiseSource (Foundation.NSObjectFlag t);
	public GKCheckerboardNoiseSource (double squareSize);
	protected GKCheckerboardNoiseSource (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual double SquareSize { get; set; }
	// methods
	public static GKCheckerboardNoiseSource Create (double squareSize);
}

New Type GameplayKit.GKCoherentNoiseSource

public abstract class GKCoherentNoiseSource : GameplayKit.GKNoiseSource, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected GKCoherentNoiseSource ();
	protected GKCoherentNoiseSource (Foundation.NSObjectFlag t);
	protected GKCoherentNoiseSource (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual double Frequency { get; set; }
	public virtual double Lacunarity { get; set; }
	public virtual nint OctaveCount { get; set; }
	public virtual int Seed { get; set; }
}

New Type GameplayKit.GKCompositeBehavior

public class GKCompositeBehavior : GameplayKit.GKBehavior, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GKCompositeBehavior ();
	protected GKCompositeBehavior (Foundation.NSObjectFlag t);
	protected GKCompositeBehavior (IntPtr handle);
	// properties
	public virtual nint BehaviorCount { get; }
	public override IntPtr ClassHandle { get; }
	public Foundation.NSNumber Item { get; set; }
	public GKBehavior Item { get; }
	// methods
	public static GKCompositeBehavior FromBehaviors (GKBehavior[] behaviors);
	public static GKCompositeBehavior FromBehaviors (GKBehavior[] behaviors, Foundation.NSNumber[] weights);
	public virtual float GetWeight (GKBehavior behavior);
	public virtual void RemoveAllBehaviors ();
	public virtual void RemoveBehavior (GKBehavior behavior);
	public virtual void SetWeight (float weight, GKBehavior behavior);
}

New Type GameplayKit.GKConstantNoiseSource

public class GKConstantNoiseSource : GameplayKit.GKNoiseSource, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected GKConstantNoiseSource (Foundation.NSObjectFlag t);
	public GKConstantNoiseSource (double value);
	protected GKConstantNoiseSource (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual double Value { get; set; }
	// methods
	public static GKConstantNoiseSource Create (double value);
}

New Type GameplayKit.GKCylindersNoiseSource

public class GKCylindersNoiseSource : GameplayKit.GKNoiseSource, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected GKCylindersNoiseSource (Foundation.NSObjectFlag t);
	public GKCylindersNoiseSource (double frequency);
	protected GKCylindersNoiseSource (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual double Frequency { get; set; }
	// methods
	public static GKCylindersNoiseSource Create (double frequency);
}

New Type GameplayKit.GKDecisionNode

public class GKDecisionNode : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected GKDecisionNode (Foundation.NSObjectFlag t);
	protected GKDecisionNode (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual GKDecisionNode CreateBranch (Foundation.NSNumber value, Foundation.NSObject attribute);
	public virtual GKDecisionNode CreateBranch (Foundation.NSPredicate predicate, Foundation.NSObject attribute);
	public virtual GKDecisionNode CreateBranch (nint weight, Foundation.NSObject attribute);
}

New Type GameplayKit.GKDecisionTree

public class GKDecisionTree : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GKDecisionTree (Foundation.NSCoder coder);
	public GKDecisionTree (Foundation.NSObject attribute);
	protected GKDecisionTree (Foundation.NSObjectFlag t);
	protected GKDecisionTree (IntPtr handle);
	public GKDecisionTree (Foundation.NSArray<Foundation.NSObject>[] examples, Foundation.NSObject[] actions, Foundation.NSObject[] attributes);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual GKRandomSource RandomSource { get; set; }
	public virtual GKDecisionNode RootNode { get; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public virtual Foundation.NSObject FindAction (Foundation.NSDictionary<Foundation.NSObject,Foundation.NSObject> answers);
}

New Type GameplayKit.GKGraphNode3D

public class GKGraphNode3D : GameplayKit.GKGraphNode, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GKGraphNode3D (Foundation.NSCoder coder);
	protected GKGraphNode3D (Foundation.NSObjectFlag t);
	public GKGraphNode3D (OpenTK.Vector3 point);
	protected GKGraphNode3D (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual OpenTK.Vector3 Position { get; set; }
	// methods
	public static GKGraphNode3D FromPoint (OpenTK.Vector3 point);
}

New Type GameplayKit.GKMeshGraphTriangulationMode

[Serializable]
[Flags]
public enum GKMeshGraphTriangulationMode {
	Centers = 2,
	EdgeMidpoints = 4,
	Vertices = 1,
}

New Type GameplayKit.GKMeshGraph`1

public class GKMeshGraph`1 : GameplayKit.GKGraph, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GKMeshGraph`1 ();
	public GKMeshGraph`1 (Foundation.NSCoder coder);
	protected GKMeshGraph`1 (Foundation.NSObjectFlag t);
	protected GKMeshGraph`1 (IntPtr handle);
	public GKMeshGraph`1 (float bufferRadius, OpenTK.Vector2 min, OpenTK.Vector2 max);
	public GKMeshGraph`1 (float bufferRadius, OpenTK.Vector2 min, OpenTK.Vector2 max, ObjCRuntime.Class nodeClass);
	public GKMeshGraph`1 (float bufferRadius, OpenTK.Vector2 min, OpenTK.Vector2 max, System.Type nodeType);
	// properties
	public virtual float BufferRadius { get; }
	public override IntPtr ClassHandle { get; }
	public virtual GKPolygonObstacle[] Obstacles { get; }
	public virtual uint TriangleCount { get; }
	public virtual GKMeshGraphTriangulationMode TriangulationMode { get; set; }
	// methods
	public virtual void AddObstacles (GKPolygonObstacle[] obstacles);
	public virtual void ConnectNodeUsingObstacles (NodeType node);
	public static GameplayKit.GKMeshGraph<NodeType> FromBufferRadius (float bufferRadius, OpenTK.Vector2 min, OpenTK.Vector2 max);
	public static GameplayKit.GKMeshGraph<NodeType> FromBufferRadius (float bufferRadius, OpenTK.Vector2 min, OpenTK.Vector2 max, ObjCRuntime.Class nodeClass);
	public static GameplayKit.GKMeshGraph<NodeType> FromBufferRadius (float bufferRadius, OpenTK.Vector2 min, OpenTK.Vector2 max, System.Type nodeType);
	public virtual ObjCRuntime.Class GetClassForGenericArgument (uint index);
	public virtual GKTriangle GetTriangle (uint index);
	public System.Type GetTypeForGenericArgument (uint index);
	public virtual void RemoveObstacles (GKPolygonObstacle[] obstacles);
	public virtual void Triangulate ();
}

New Type GameplayKit.GKMonteCarloStrategist

public class GKMonteCarloStrategist : Foundation.NSObject, Foundation.INSObjectProtocol, IGKStrategist, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GKMonteCarloStrategist ();
	protected GKMonteCarloStrategist (Foundation.NSObjectFlag t);
	protected GKMonteCarloStrategist (IntPtr handle);
	// properties
	public virtual uint Budget { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual uint ExplorationParameter { get; set; }
	public virtual IGKGameModel GameModel { get; set; }
	public virtual IGKRandom RandomSource { get; set; }
	// methods
	public virtual IGKGameModelUpdate GetBestMoveForActivePlayer ();
}

New Type GameplayKit.GKNoise

public class GKNoise : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GKNoise ();
	protected GKNoise (Foundation.NSObjectFlag t);
	public GKNoise (GKNoiseSource noiseSource);
	protected GKNoise (IntPtr handle);
	public GKNoise (GKNoiseSource noiseSource, Foundation.NSDictionary<Foundation.NSNumber,AppKit.NSColor> gradientColors);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSDictionary<Foundation.NSNumber,AppKit.NSColor> GradientColors { get; set; }
	// methods
	public virtual void Add (GKNoise noise);
	public virtual void ApplyAbsoluteValue ();
	public virtual void ApplyTurbulence (double frequency, double power, int roughness, int seed);
	public virtual void Clamp (double lowerBound, double upperBound);
	public virtual void DisplaceX (GKNoise xDisplacementNoise, GKNoise yDisplacementNoise, GKNoise zDisplacementNoise);
	public static GKNoise FromComponentNoises (GKNoise[] noises, GKNoise selectionNoise);
	public static GKNoise FromComponentNoises (GKNoise[] noises, GKNoise selectionNoise, Foundation.NSNumber[] componentBoundaries, Foundation.NSNumber[] blendDistances);
	public static GKNoise FromNoiseSource (GKNoiseSource noiseSource);
	public static GKNoise FromNoiseSource (GKNoiseSource noiseSource, Foundation.NSDictionary<Foundation.NSNumber,AppKit.NSColor> gradientColors);
	public virtual void GetMaximum (GKNoise noise);
	public virtual void GetMinimum (GKNoise noise);
	public virtual float GetValue (OpenTK.Vector2 position);
	public virtual void Invert ();
	public virtual void Move (OpenTK.Vector3d delta);
	public virtual void Multiply (GKNoise noise);
	public virtual void RaiseToPower (GKNoise noise);
	public virtual void RaiseToPower (double power);
	public virtual void RemapValuesToCurve (Foundation.NSDictionary<Foundation.NSNumber,Foundation.NSNumber> controlPoints);
	public virtual void RemapValuesToTerraces (Foundation.NSNumber[] peakInputValues, bool inverted);
	public virtual void Rotate (OpenTK.Vector3d radians);
	public virtual void Scale (OpenTK.Vector3d factor);
}

New Type GameplayKit.GKNoiseMap

public class GKNoiseMap : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GKNoiseMap ();
	protected GKNoiseMap (Foundation.NSObjectFlag t);
	public GKNoiseMap (GKNoise noise);
	protected GKNoiseMap (IntPtr handle);
	public GKNoiseMap (GKNoise noise, OpenTK.Vector2d size, OpenTK.Vector2d origin, OpenTK.Vector2i sampleCount, bool seamless);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual OpenTK.Vector2d Origin { get; }
	public virtual OpenTK.Vector2i SampleCount { get; }
	public virtual bool Seamless { get; }
	public virtual OpenTK.Vector2d Size { get; }
	// methods
	public static GKNoiseMap FromNoise (GKNoise noise);
	public static GKNoiseMap FromNoise (GKNoise noise, OpenTK.Vector2d size, OpenTK.Vector2d origin, OpenTK.Vector2i sampleCount, bool seamless);
	public virtual float GetInterpolatedValue (OpenTK.Vector2 position);
	public virtual float GetValue (OpenTK.Vector2i position);
	public virtual void SetValue (float value, OpenTK.Vector2i position);
}

New Type GameplayKit.GKNoiseSource

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

New Type GameplayKit.GKObstacleGraph`1

public class GKObstacleGraph`1 : GameplayKit.GKObstacleGraph, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GKObstacleGraph`1 (Foundation.NSCoder coder);
	public GKObstacleGraph`1 (GKPolygonObstacle[] obstacles, float bufferRadius);
	// methods
	public static GameplayKit.GKObstacleGraph<NodeType> FromObstacles (GKPolygonObstacle[] obstacles, float bufferRadius);
	public NodeType[] GetNodes (GKPolygonObstacle obstacle);
}

New Type GameplayKit.GKOctreeNode

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

New Type GameplayKit.GKOctree`1

public class GKOctree`1 : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GKOctree`1 ();
	protected GKOctree`1 (Foundation.NSObjectFlag t);
	protected GKOctree`1 (IntPtr handle);
	public GKOctree`1 (GKBox box, float minCellSize);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual GKOctreeNode AddElement (ElementType element, GKBox box);
	public virtual GKOctreeNode AddElement (ElementType element, OpenTK.Vector3 point);
	public static GameplayKit.GKOctree<ElementType> FromBoundingBox (GKBox box, float minCellSize);
	public virtual ElementType[] GetElements (GKBox box);
	public virtual ElementType[] GetElements (OpenTK.Vector3 point);
	public virtual bool RemoveElement (ElementType element);
	public virtual bool RemoveElement (ElementType element, GKOctreeNode node);
}

New Type GameplayKit.GKPerlinNoiseSource

public class GKPerlinNoiseSource : GameplayKit.GKCoherentNoiseSource, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected GKPerlinNoiseSource (Foundation.NSObjectFlag t);
	protected GKPerlinNoiseSource (IntPtr handle);
	public GKPerlinNoiseSource (double frequency, nint octaveCount, double persistence, double lacunarity, int seed);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual double Persistence { get; set; }
	// methods
	public static GKPerlinNoiseSource Create (double frequency, nint octaveCount, double persistence, double lacunarity, int seed);
}

New Type GameplayKit.GKQuad

public struct GKQuad {
	// fields
	public OpenTK.Vector2 Max;
	public OpenTK.Vector2 Min;
}

New Type GameplayKit.GKQuadTree

public class GKQuadTree : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected GKQuadTree (Foundation.NSObjectFlag t);
	protected GKQuadTree (IntPtr handle);
	public GKQuadTree (GKQuad quad, float minCellSize);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual GKQuadTreeNode AddElement (Foundation.NSObject element, GKQuad quad);
	public virtual GKQuadTreeNode AddElement (Foundation.NSObject element, OpenTK.Vector2 point);
	public static GKQuadTree FromBoundingQuad (GKQuad quad, float minCellSize);
	public virtual Foundation.NSObject[] GetElements (GKQuad quad);
	public virtual Foundation.NSObject[] GetElements (OpenTK.Vector2 point);
	public virtual bool RemoveElement (Foundation.NSObject element);
	public virtual bool RemoveElement (Foundation.NSObject data, GKQuadTreeNode node);
}

New Type GameplayKit.GKQuadTreeNode

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

New Type GameplayKit.GKRTreeSplitStrategy

[Serializable]
public enum GKRTreeSplitStrategy {
	Halve = 0,
	Linear = 1,
	Quadratic = 2,
	ReduceOverlap = 3,
}

New Type GameplayKit.GKRTree`1

public class GKRTree`1 : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected GKRTree`1 (Foundation.NSObjectFlag t);
	protected GKRTree`1 (IntPtr handle);
	public GKRTree`1 (uint maxNumberOfChildren);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual uint QueryReserve { get; set; }
	// methods
	public virtual void AddElement (ElementType element, OpenTK.Vector2 boundingRectMin, OpenTK.Vector2 boundingRectMax, GKRTreeSplitStrategy splitStrategy);
	public static GameplayKit.GKRTree<ElementType> FromMaxNumberOfChildren (uint maxNumberOfChildren);
	public virtual ElementType[] GetElements (OpenTK.Vector2 rectMin, OpenTK.Vector2 rectMax);
	public virtual void RemoveElement (ElementType element, OpenTK.Vector2 boundingRectMin, OpenTK.Vector2 boundingRectMax);
}

New Type GameplayKit.GKRidgedNoiseSource

public class GKRidgedNoiseSource : GameplayKit.GKCoherentNoiseSource, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected GKRidgedNoiseSource (Foundation.NSObjectFlag t);
	protected GKRidgedNoiseSource (IntPtr handle);
	public GKRidgedNoiseSource (double frequency, nint octaveCount, double lacunarity, int seed);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public static GKRidgedNoiseSource Create (double frequency, nint octaveCount, double lacunarity, int seed);
}

New Type GameplayKit.GKSKNodeComponent

public class GKSKNodeComponent : GameplayKit.GKComponent, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, IGKAgentDelegate, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GKSKNodeComponent ();
	public GKSKNodeComponent (Foundation.NSCoder coder);
	protected GKSKNodeComponent (Foundation.NSObjectFlag t);
	public GKSKNodeComponent (SpriteKit.SKNode node);
	protected GKSKNodeComponent (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual SpriteKit.SKNode Node { get; set; }
	// methods
	public virtual void AgentDidUpdate (GKAgent agent);
	public virtual void AgentWillUpdate (GKAgent agent);
	public static GKSKNodeComponent FromNode (SpriteKit.SKNode node);
}

New Type GameplayKit.GKScene

public class GKScene : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GKScene ();
	public GKScene (Foundation.NSCoder coder);
	protected GKScene (Foundation.NSObjectFlag t);
	protected GKScene (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual GKEntity[] Entities { get; }
	public virtual Foundation.NSDictionary<Foundation.NSString,GameplayKit.GKGraph> Graphs { get; }
	public virtual IGKSceneRootNodeType RootNode { get; set; }
	// methods
	public virtual void AddEntity (GKEntity entity);
	public virtual void AddGraph (GKGraph graph, string name);
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	protected override void Dispose (bool disposing);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public static GKScene FromFile (string filename);
	public virtual void RemoveEntity (GKEntity entity);
	public virtual void RemoveGraph (string name);
}

New Type GameplayKit.GKSphereObstacle

public class GKSphereObstacle : GameplayKit.GKObstacle, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected GKSphereObstacle (Foundation.NSObjectFlag t);
	protected GKSphereObstacle (IntPtr handle);
	public GKSphereObstacle (float radius);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual OpenTK.Vector3 Position { get; set; }
	public virtual float Radius { get; set; }
	// methods
	public static GKSphereObstacle FromRadius (float radius);
}

New Type GameplayKit.GKSpheresNoiseSource

public class GKSpheresNoiseSource : GameplayKit.GKNoiseSource, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected GKSpheresNoiseSource (Foundation.NSObjectFlag t);
	public GKSpheresNoiseSource (double frequency);
	protected GKSpheresNoiseSource (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual double Frequency { get; set; }
	// methods
	public static GKSpheresNoiseSource Create (double frequency);
}

New Type GameplayKit.GKTriangle

public struct GKTriangle {
	// properties
	public OpenTK.Vector3[] Points { get; set; }
}

New Type GameplayKit.GKVoronoiNoiseSource

public class GKVoronoiNoiseSource : GameplayKit.GKNoiseSource, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected GKVoronoiNoiseSource (Foundation.NSObjectFlag t);
	protected GKVoronoiNoiseSource (IntPtr handle);
	public GKVoronoiNoiseSource (double frequency, double displacement, bool distanceEnabled, int seed);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual double Displacement { get; set; }
	public virtual bool DistanceEnabled { get; set; }
	public virtual double Frequency { get; set; }
	public virtual int Seed { get; set; }
	// methods
	public static GKVoronoiNoiseSource Create (double frequency, double displacement, bool distanceEnabled, int seed);
}

New Type GameplayKit.IGKSceneRootNodeType

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

New Type GameplayKit.NSArray_GameplayKit

public static class NSArray_GameplayKit {
	// methods
	public static T[] GetShuffledArray<T> (Foundation.NSArray This);
	public static T[] GetShuffledArray<T> (Foundation.NSArray This, GKRandomSource randomSource);
}

New Type GameplayKit.SKNode_GameplayKit

public static class SKNode_GameplayKit {
	// methods
	public static GKEntity GetEntity (SpriteKit.SKNode This);
	public static void SetEntity (SpriteKit.SKNode This, GKEntity entity);
}

Namespace ImageIO

Type Changed: ImageIO.CGImageDestinationOptions

Added property:

	public bool? OptimizeColorForSharing { get; set; }

Type Changed: ImageIO.CGImageDestinationOptionsKeys

Added property:

	public static Foundation.NSString OptimizeColorForSharing { get; }

Type Changed: ImageIO.CGImageProperties

Added properties:

	public static Foundation.NSString DNGAsShotNeutral { get; }
	public static Foundation.NSString DNGAsShotWhiteXY { get; }
	public static Foundation.NSString DNGBaselineExposure { get; }
	public static Foundation.NSString DNGBaselineNoise { get; }
	public static Foundation.NSString DNGBaselineSharpness { get; }
	public static Foundation.NSString DNGBlackLevel { get; }
	public static Foundation.NSString DNGCalibrationIlluminant1 { get; }
	public static Foundation.NSString DNGCalibrationIlluminant2 { get; }
	public static Foundation.NSString DNGCameraCalibration1 { get; }
	public static Foundation.NSString DNGCameraCalibration2 { get; }
	public static Foundation.NSString DNGCameraCalibrationSignature { get; }
	public static Foundation.NSString DNGColorMatrix1 { get; }
	public static Foundation.NSString DNGColorMatrix2 { get; }
	public static Foundation.NSString DNGFixVignetteRadial { get; }
	public static Foundation.NSString DNGNoiseProfile { get; }
	public static Foundation.NSString DNGPrivateData { get; }
	public static Foundation.NSString DNGProfileCalibrationSignature { get; }
	public static Foundation.NSString DNGWarpFisheye { get; }
	public static Foundation.NSString DNGWarpRectilinear { get; }
	public static Foundation.NSString DNGWhiteLevel { get; }

Namespace ImageKit

Type Changed: ImageKit.IKCameraDeviceView

Added interface:

	AppKit.INSTouchBarProvider

Type Changed: ImageKit.IKDeviceBrowserView

Added interface:

	AppKit.INSTouchBarProvider

Type Changed: ImageKit.IKFilterBrowserPanel

Added interface:

	AppKit.INSTouchBarProvider

Type Changed: ImageKit.IKFilterBrowserView

Added interface:

	AppKit.INSTouchBarProvider

Type Changed: ImageKit.IKFilterUIView

Added interface:

	AppKit.INSTouchBarProvider

Type Changed: ImageKit.IKImageBrowserView

Added interface:

	AppKit.INSTouchBarProvider

Type Changed: ImageKit.IKImageEditPanel

Added interface:

	AppKit.INSTouchBarProvider

Type Changed: ImageKit.IKImageView

Added interface:

	AppKit.INSTouchBarProvider

Type Changed: ImageKit.IKPictureTaker

Added interface:

	AppKit.INSTouchBarProvider

Type Changed: ImageKit.IKScannerDeviceView

Added interface:

	AppKit.INSTouchBarProvider

Namespace LocalAuthentication

Type Changed: LocalAuthentication.LAAccessControlOperation

Added values:

	UseKeyDecrypt = 4,
	UseKeyKeyExchange = 5,

Type Changed: LocalAuthentication.LAContext

Added property:

	public virtual string LocalizedCancelTitle { get; set; }

New Type LocalAuthentication.LAStatusExtensions

public static class LAStatusExtensions {
	// methods
	public static Foundation.NSString GetDomain (LAStatus self);
}

Namespace MapKit

Type Changed: MapKit.MKAnnotationView

Added interface:

	AppKit.INSTouchBarProvider

Type Changed: MapKit.MKDirectionsMode

Added value:

	Default = 3,

Type Changed: MapKit.MKMapView

Added interface:

	AppKit.INSTouchBarProvider

Type Changed: MapKit.MKPinAnnotationView

Added interface:

	AppKit.INSTouchBarProvider

New Type MapKit.NSUserActivity_MKMapItem

public static class NSUserActivity_MKMapItem {
	// methods
	public static MKMapItem GetMapItem (Foundation.NSUserActivity This);
	public static void SetMapItem (Foundation.NSUserActivity This, MKMapItem item);
}

Namespace Metal

Type Changed: Metal.MTLArgument

Added property:

	public virtual bool IsDepthTexture { get; }

Type Changed: Metal.MTLCommandBufferError

Added value:

	Memoryless = 10,

Type Changed: Metal.MTLComputeCommandEncoder_Extensions

Added method:

	public static void SetStage (IMTLComputeCommandEncoder This, MTLRegion region);

Type Changed: Metal.MTLComputePipelineDescriptor

Added property:

	public virtual MTLStageInputOutputDescriptor StageInputDescriptor { get; set; }

Type Changed: Metal.MTLDevice_Extensions

Added methods:

	public static IMTLLibrary CreateLibrary (IMTLDevice This, Foundation.NSBundle bundle, Foundation.NSError error);
	public static ulong GetRecommendedMaxWorkingSetSize (IMTLDevice This);

Type Changed: Metal.MTLFeatureSet

Added values:

	OSX_GPUFamily1_v2 = 10001,
	OSX_ReadWriteTextureTier2 = 10002,
	iOS_GPUFamily1_v3 = 5,
	iOS_GPUFamily2_v3 = 6,
	iOS_GPUFamily3_v2 = 7,
	tvOS_GPUFamily1_v2 = 30001,

Type Changed: Metal.MTLLanguageVersion

Added value:

	v1_2 = 65538,

Type Changed: Metal.MTLLibraryError

Added values:

	FileNotFound = 6,
	FunctionNotFound = 5,

Type Changed: Metal.MTLPixelFormat

Added values:

	X24_Stencil8 = 262,
	X32_Stencil8 = 261,

Type Changed: Metal.MTLRenderCommandEncoder_Extensions

Added methods:

	public static void DrawIndexedPatches (IMTLRenderCommandEncoder This, uint numberOfPatchControlPoints, IMTLBuffer patchIndexBuffer, uint patchIndexBufferOffset, IMTLBuffer controlPointIndexBuffer, uint controlPointIndexBufferOffset, IMTLBuffer indirectBuffer, uint indirectBufferOffset);
	public static void DrawIndexedPatches (IMTLRenderCommandEncoder This, uint numberOfPatchControlPoints, uint patchStart, uint patchCount, IMTLBuffer patchIndexBuffer, uint patchIndexBufferOffset, IMTLBuffer controlPointIndexBuffer, uint controlPointIndexBufferOffset, uint instanceCount, uint baseInstance);
	public static void DrawPatches (IMTLRenderCommandEncoder This, uint numberOfPatchControlPoints, IMTLBuffer patchIndexBuffer, uint patchIndexBufferOffset, IMTLBuffer indirectBuffer, uint indirectBufferOffset);
	public static void DrawPatches (IMTLRenderCommandEncoder This, uint numberOfPatchControlPoints, uint patchStart, uint patchCount, IMTLBuffer patchIndexBuffer, uint patchIndexBufferOffset, uint instanceCount, uint baseInstance);
	public static void SetColorStoreAction (IMTLRenderCommandEncoder This, MTLStoreAction storeAction, uint colorAttachmentIndex);
	public static void SetDepthStoreAction (IMTLRenderCommandEncoder This, MTLStoreAction storeAction);
	public static void SetStencilStoreAction (IMTLRenderCommandEncoder This, MTLStoreAction storeAction);
	public static void SetTessellationFactorBuffer (IMTLRenderCommandEncoder This, IMTLBuffer buffer, uint offset, uint instanceStride);
	public static void SetTessellationFactorScale (IMTLRenderCommandEncoder This, float scale);
	public static void TextureBarrier (IMTLRenderCommandEncoder This);

Type Changed: Metal.MTLRenderPassDescriptor

Added property:

	public virtual uint RenderTargetArrayLength { get; set; }

Type Changed: Metal.MTLRenderPipelineDescriptor

Added properties:

	public virtual MTLPrimitiveTopologyClass InputPrimitiveTopology { get; set; }
	public virtual bool IsTessellationFactorScaleEnabled { get; set; }
	public virtual uint MaxTessellationFactor { get; set; }
	public virtual MTLTessellationControlPointIndexType TessellationControlPointIndexType { get; set; }
	public virtual MTLTessellationFactorFormat TessellationFactorFormat { get; set; }
	public virtual MTLTessellationFactorStepFunction TessellationFactorStepFunction { get; set; }
	public virtual MTLWinding TessellationOutputWindingOrder { get; set; }
	public virtual MTLTessellationPartitionMode TessellationPartitionMode { get; set; }

Type Changed: Metal.MTLResourceOptions

Added values:

	HazardTrackingModeUntracked = 256,
	StorageModeMemoryless = 48,

Type Changed: Metal.MTLSamplerAddressMode

Added value:

	ClampToBorderColor = 5,

Type Changed: Metal.MTLSamplerDescriptor

Added property:

	public virtual MTLSamplerBorderColor BorderColor { get; set; }

Type Changed: Metal.MTLStorageMode

Added value:

	Memoryless = 3,

Type Changed: Metal.MTLStoreAction

Added values:

	StoreAndMultisampleResolve = 3,
	Unknown = 4,

Type Changed: Metal.MTLVertexAttribute

Added properties:

	public virtual bool PatchControlPointData { get; }
	public virtual bool PatchData { get; }

Type Changed: Metal.MTLVertexDescriptor

Added method:

	public static MTLVertexDescriptor FromModelIO (ModelIO.MDLVertexDescriptor descriptor, Foundation.NSError error);

Type Changed: Metal.MTLVertexStepFunction

Added values:

	PerPatch = 3,
	PerPatchControlPoint = 4,

New Type Metal.MTLAttribute

public class MTLAttribute : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MTLAttribute ();
	protected MTLAttribute (Foundation.NSObjectFlag t);
	protected MTLAttribute (IntPtr handle);
	// properties
	public virtual bool Active { get; }
	public virtual uint AttributeIndex { get; }
	public virtual MTLDataType AttributeType { get; }
	public override IntPtr ClassHandle { get; }
	public virtual bool IsPatchControlPointData { get; }
	public virtual bool IsPatchData { get; }
	public virtual string Name { get; }
}

New Type Metal.MTLAttributeDescriptor

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

New Type Metal.MTLAttributeDescriptorArray

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

New Type Metal.MTLAttributeFormat

[Serializable]
public enum MTLAttributeFormat {
	Char2 = 4,
	Char2Normalized = 10,
	Char3 = 5,
	Char3Normalized = 11,
	Char4 = 6,
	Char4Normalized = 12,
	Float = 28,
	Float2 = 29,
	Float3 = 30,
	Float4 = 31,
	Half2 = 25,
	Half3 = 26,
	Half4 = 27,
	Int = 32,
	Int1010102Normalized = 40,
	Int2 = 33,
	Int3 = 34,
	Int4 = 35,
	Invalid = 0,
	Short2 = 16,
	Short2Normalized = 22,
	Short3 = 17,
	Short3Normalized = 23,
	Short4 = 18,
	Short4Normalized = 24,
	UChar2 = 1,
	UChar2Normalized = 7,
	UChar3 = 2,
	UChar3Normalized = 8,
	UChar4 = 3,
	UChar4Normalized = 9,
	UInt = 36,
	UInt1010102Normalized = 41,
	UInt2 = 37,
	UInt3 = 38,
	UInt4 = 39,
	UShort2 = 13,
	UShort2Normalized = 19,
	UShort3 = 14,
	UShort3Normalized = 20,
	UShort4 = 15,
	UShort4Normalized = 21,
}

New Type Metal.MTLBufferLayoutDescriptor

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

New Type Metal.MTLBufferLayoutDescriptorArray

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

New Type Metal.MTLBuffer_Extensions

public static class MTLBuffer_Extensions {
	// methods
	public static void AddDebugMarker (IMTLBuffer This, string marker, Foundation.NSRange range);
	public static void RemoveAllDebugMarkers (IMTLBuffer This);
}

New Type Metal.MTLDrawPatchIndirectArguments

public struct MTLDrawPatchIndirectArguments {
	// constructors
	public MTLDrawPatchIndirectArguments (uint pathCount, uint instanceCount, uint patchStart, uint baseInstance);
	// fields
	public uint BaseInstance;
	public uint InstanceCount;
	public uint PatchCount;
	public uint PatchStart;
}

New Type Metal.MTLFunctionConstant

public class MTLFunctionConstant : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MTLFunctionConstant ();
	protected MTLFunctionConstant (Foundation.NSObjectFlag t);
	protected MTLFunctionConstant (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual uint Index { get; }
	public virtual bool IsRequired { get; }
	public virtual string Name { get; }
	public virtual MTLDataType Type { get; }
}

New Type Metal.MTLFunctionConstantValues

public class MTLFunctionConstantValues : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MTLFunctionConstantValues (Foundation.NSObjectFlag t);
	protected MTLFunctionConstantValues (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void Reset ();
	public virtual void SetConstantValue (IntPtr value, MTLDataType type, string name);
	public virtual void SetConstantValue (IntPtr value, MTLDataType type, uint index);
	public virtual void SetConstantValues (IntPtr values, MTLDataType type, Foundation.NSRange range);
}

New Type Metal.MTLFunction_Extensions

public static class MTLFunction_Extensions {
	// methods
	public static Foundation.NSDictionary<Foundation.NSString,Metal.MTLFunctionConstant> GetFunctionConstants (IMTLFunction This);
	public static string GetLabel (IMTLFunction This);
	public static nint GetPatchControlPointCount (IMTLFunction This);
	public static MTLPatchType GetPatchType (IMTLFunction This);
	public static MTLAttribute[] GetStageInputAttributes (IMTLFunction This);
	public static void SetLabel (IMTLFunction This, string value);
}

New Type Metal.MTLLibrary_Extensions

public static class MTLLibrary_Extensions {
	// methods
	public static void CreateFunction (IMTLLibrary This, string name, MTLFunctionConstantValues constantValues, System.Action<IMTLFunction,Foundation.NSError> completionHandler);
	public static IMTLFunction CreateFunction (IMTLLibrary This, string name, MTLFunctionConstantValues constantValues, Foundation.NSError error);
}

New Type Metal.MTLParallelRenderCommandEncoder_Extensions

public static class MTLParallelRenderCommandEncoder_Extensions {
	// methods
	public static void SetColorStoreAction (IMTLParallelRenderCommandEncoder This, MTLStoreAction storeAction, uint colorAttachmentIndex);
	public static void SetDepthStoreAction (IMTLParallelRenderCommandEncoder This, MTLStoreAction storeAction);
	public static void SetStencilStoreAction (IMTLParallelRenderCommandEncoder This, MTLStoreAction storeAction);
}

New Type Metal.MTLPatchType

[Serializable]
public enum MTLPatchType {
	None = 0,
	Quad = 2,
	Triangle = 1,
}

New Type Metal.MTLPrimitiveTopologyClass

[Serializable]
public enum MTLPrimitiveTopologyClass {
	Line = 2,
	Point = 1,
	Triangle = 3,
	Unspecified = 0,
}

New Type Metal.MTLQuadTessellationFactorsHalf

public struct MTLQuadTessellationFactorsHalf {
	// constructors
	public MTLQuadTessellationFactorsHalf (ushort[] edgeTessellationFactor, ushort[] insideTessellationFactor);
	// fields
	public ushort[] EdgeTessellationFactor;
	public ushort[] InsideTessellationFactor;
}

New Type Metal.MTLRenderStages

[Serializable]
public enum MTLRenderStages {
	Fragment = 2,
	Vertex = 1,
}

New Type Metal.MTLSamplerBorderColor

[Serializable]
public enum MTLSamplerBorderColor {
	OpaqueBlack = 1,
	OpaqueWhite = 2,
	TransparentBlack = 0,
}

New Type Metal.MTLSizeAndAlign

public struct MTLSizeAndAlign {
	// constructors
	public MTLSizeAndAlign (uint size, uint align);
	// fields
	public uint Align;
	public uint Size;
}

New Type Metal.MTLStageInputOutputDescriptor

public class MTLStageInputOutputDescriptor : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MTLStageInputOutputDescriptor ();
	protected MTLStageInputOutputDescriptor (Foundation.NSObjectFlag t);
	protected MTLStageInputOutputDescriptor (IntPtr handle);
	// properties
	public virtual MTLAttributeDescriptorArray Attributes { get; }
	public override IntPtr ClassHandle { get; }
	public virtual uint IndexBufferIndex { get; set; }
	public virtual MTLIndexType IndexType { get; set; }
	public virtual MTLBufferLayoutDescriptorArray Layouts { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static MTLStageInputOutputDescriptor Create ();
	public virtual void Reset ();
}

New Type Metal.MTLStepFunction

[Serializable]
public enum MTLStepFunction {
	Constant = 0,
	PerInstance = 2,
	PerPatch = 3,
	PerPatchControlPoint = 4,
	PerVertex = 1,
	ThreadPositionInGridX = 5,
	ThreadPositionInGridXIndexed = 7,
	ThreadPositionInGridY = 6,
	ThreadPositionInGridYIndexed = 8,
}

New Type Metal.MTLTessellationControlPointIndexType

[Serializable]
public enum MTLTessellationControlPointIndexType {
	None = 0,
	UInt16 = 1,
	UInt32 = 2,
}

New Type Metal.MTLTessellationFactorFormat

[Serializable]
public enum MTLTessellationFactorFormat {
	Half = 0,
}

New Type Metal.MTLTessellationFactorStepFunction

[Serializable]
public enum MTLTessellationFactorStepFunction {
	Constant = 0,
	PerInstance = 2,
	PerPatch = 1,
	PerPatchAndPerInstance = 3,
}

New Type Metal.MTLTessellationPartitionMode

[Serializable]
public enum MTLTessellationPartitionMode {
	FractionalEven = 3,
	FractionalOdd = 2,
	Integer = 1,
	Pow2 = 0,
}

New Type Metal.MTLTriangleTessellationFactorsHalf

public struct MTLTriangleTessellationFactorsHalf {
	// constructors
	public MTLTriangleTessellationFactorsHalf (ushort[] edgeTessellationFactor, ushort insideTessellationFactor);
	// fields
	public ushort[] EdgeTessellationFactor;
	public ushort InsideTessellationFactor;
}

Namespace MetalKit

Type Changed: MetalKit.MTKMeshBuffer

Added interface:

	ModelIO.IMDLNamed

Added property:

	public virtual string Name { get; set; }

Type Changed: MetalKit.MTKTextureLoader

Added methods:

	public virtual void FromName (string name, nfloat scaleFactor, Foundation.NSBundle bundle, Foundation.NSDictionary options, MTKTextureLoaderCallback completionHandler);
	public virtual Metal.IMTLTexture FromName (string name, nfloat scaleFactor, Foundation.NSBundle bundle, Foundation.NSDictionary options, Foundation.NSError error);
	public void FromName (string name, nfloat scaleFactor, Foundation.NSBundle bundle, MTKTextureLoaderOptions options, MTKTextureLoaderCallback completionHandler);
	public Metal.IMTLTexture FromName (string name, nfloat scaleFactor, Foundation.NSBundle bundle, MTKTextureLoaderOptions options, Foundation.NSError error);
	public virtual void FromNames (string[] names, nfloat scaleFactor, Foundation.NSBundle bundle, Foundation.NSDictionary options, MTKTextureLoaderArrayCallback completionHandler);
	public void FromNames (string[] names, nfloat scaleFactor, Foundation.NSBundle bundle, MTKTextureLoaderOptions options, MTKTextureLoaderArrayCallback completionHandler);
	public virtual void FromTexture (ModelIO.MDLTexture texture, Foundation.NSDictionary options, MTKTextureLoaderCallback completionHandler);
	public virtual Metal.IMTLTexture FromTexture (ModelIO.MDLTexture texture, Foundation.NSDictionary options, Foundation.NSError error);
	public void FromTexture (ModelIO.MDLTexture texture, MTKTextureLoaderOptions options, MTKTextureLoaderCallback completionHandler);
	public Metal.IMTLTexture FromTexture (ModelIO.MDLTexture texture, MTKTextureLoaderOptions options, Foundation.NSError error);
	public virtual void FromUrls (Foundation.NSUrl[] urls, Foundation.NSDictionary options, MTKTextureLoaderArrayCallback completionHandler);
	public virtual Metal.IMTLTexture[] FromUrls (Foundation.NSUrl[] urls, Foundation.NSDictionary options, Foundation.NSError error);
	public void FromUrls (Foundation.NSUrl[] urls, MTKTextureLoaderOptions options, MTKTextureLoaderArrayCallback completionHandler);
	public Metal.IMTLTexture[] FromUrls (Foundation.NSUrl[] urls, MTKTextureLoaderOptions options, Foundation.NSError error);

Type Changed: MetalKit.MTKTextureLoaderOptions

Modified properties:

public bool? AllocateMipmaps { get; set; }
public bool? Srgb { get; set; }

Added properties:

	public MTKTextureLoaderCubeLayout? CubeLayout { get; set; }
	public bool? GenerateMipmaps { get; }
	public MTKTextureLoaderOrigin? Origin { get; set; }
	public Metal.MTLStorageMode? TextureStorageMode { get; set; }

Type Changed: MetalKit.MTKView

Added interfaces:

	AppKit.INSTouchBarProvider
	CoreAnimation.ICALayerDelegate

Added property:

	public virtual CoreGraphics.CGColorSpace ColorSpace { get; set; }

Added methods:

	public virtual Foundation.NSObject ActionForLayer (CoreAnimation.CALayer layer, string eventKey);
	public virtual void DisplayLayer (CoreAnimation.CALayer layer);
	public virtual void DrawLayer (CoreAnimation.CALayer layer, CoreGraphics.CGContext context);
	public virtual void LayoutSublayersOfLayer (CoreAnimation.CALayer layer);
	public virtual void WillDrawLayer (CoreAnimation.CALayer layer);

New Type MetalKit.MTKTextureLoaderArrayCallback

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

New Type MetalKit.MTKTextureLoaderCubeLayout

[Serializable]
public enum MTKTextureLoaderCubeLayout {
	Vertical = 0,
}

New Type MetalKit.MTKTextureLoaderCubeLayoutExtensions

public static class MTKTextureLoaderCubeLayoutExtensions {
	// methods
	public static Foundation.NSString GetConstant (MTKTextureLoaderCubeLayout self);
	public static MTKTextureLoaderCubeLayout GetValue (Foundation.NSString constant);
}

New Type MetalKit.MTKTextureLoaderOrigin

[Serializable]
public enum MTKTextureLoaderOrigin {
	BottomLeft = 1,
	FlippedVertically = 2,
	TopLeft = 0,
}

New Type MetalKit.MTKTextureLoaderOriginExtensions

public static class MTKTextureLoaderOriginExtensions {
	// methods
	public static Foundation.NSString GetConstant (MTKTextureLoaderOrigin self);
	public static MTKTextureLoaderOrigin GetValue (Foundation.NSString constant);
}

Namespace MobileCoreServices

Type Changed: MobileCoreServices.UTType

Added property:

	public static Foundation.NSString UniversalSceneDescription { get; }

Namespace ModelIO

Type Changed: ModelIO.MDLAsset

Added property:

	public virtual IMDLObjectContainerComponent Masters { get; set; }

Added methods:

	public static MDLAsset FromScene (SceneKit.SCNScene scene, IMDLMeshBufferAllocator bufferAllocator);
	public virtual MDLObject[] GetChildObjects (ObjCRuntime.Class objectClass);

Type Changed: ModelIO.MDLCamera

Added property:

	public virtual MDLCameraProjection Projection { get; set; }

Type Changed: ModelIO.MDLLight

Added property:

	public virtual Foundation.NSString ColorSpace { get; set; }

Type Changed: ModelIO.MDLMaterial

Added property:

	public virtual MDLMaterialFace MaterialFace { get; set; }

Added method:

	public virtual MDLMaterialProperty[] GetProperties (MDLMaterialSemantic semantic);

Type Changed: ModelIO.MDLMaterialProperty

Added interface:

	Foundation.INSCopying

Added property:

	public virtual float Luminance { get; set; }

Added method:

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

Type Changed: ModelIO.MDLMesh

Added constructor:

	public MDLMesh (IMDLMeshBufferAllocator bufferAllocator);

Modified properties:

public virtual Foundation.NSMutableArray<MDLSubmesh> Submeshes { get; set; }
public virtual IMDLMeshBuffer[] VertexBuffers { get; set; }
public virtual uint VertexCount { get; set; }

Added property:

	public virtual IMDLMeshBufferAllocator Allocator { get; }

Added methods:

	public virtual void AddAttribute (string name, MDLVertexFormat format, string type, Foundation.NSData data, nint stride);
	public virtual void AddAttribute (string name, MDLVertexFormat format, string type, Foundation.NSData data, nint stride, double time);
	public virtual void AddUnwrappedTextureCoordinates (string textureCoordinateAttributeName);
	public static MDLMesh CreateCapsule (OpenTK.Vector3 dimensions, OpenTK.Vector2i segments, MDLGeometryType geometryType, bool inwardNormals, int hemisphereSegments, IMDLMeshBufferAllocator allocator);
	public static MDLMesh CreateCapsule (float height, OpenTK.Vector2 radii, uint radialSegments, uint verticalSegments, uint hemisphereSegments, MDLGeometryType geometryType, bool inwardNormals, IMDLMeshBufferAllocator allocator);
	public static MDLMesh CreateCone (OpenTK.Vector3 dimensions, OpenTK.Vector2i segments, MDLGeometryType geometryType, bool inwardNormals, bool cap, IMDLMeshBufferAllocator allocator);
	public static MDLMesh CreateHemisphere (OpenTK.Vector3 dimensions, OpenTK.Vector2i segments, MDLGeometryType geometryType, bool inwardNormals, bool cap, IMDLMeshBufferAllocator allocator);
	public static MDLMesh CreateIcosahedron (float radius, bool inwardNormals, MDLGeometryType geometryType, IMDLMeshBufferAllocator allocator);
	public static MDLMesh CreateSphere (OpenTK.Vector3 dimensions, OpenTK.Vector2i segments, MDLGeometryType geometryType, bool inwardNormals, IMDLMeshBufferAllocator allocator);
	public static MDLMesh CreateSubdividedMesh (MDLMesh mesh, int submeshIndex, uint subdivisionLevels, IMDLMeshBufferAllocator allocator);
	public static MDLMesh FromGeometry (SceneKit.SCNGeometry geometry, IMDLMeshBufferAllocator bufferAllocator);
	public virtual MDLVertexAttributeData GetVertexAttributeData (string attributeName, MDLVertexFormat format);
	public virtual void RemoveAttribute (string name);
	public virtual void ReplaceAttribute (string name, MDLVertexAttributeData newData);
	public virtual void UpdateAttribute (string name, MDLVertexAttributeData newData);

Type Changed: ModelIO.MDLNoiseTexture

Modified constructors:

public MDLNoiseTexture (float smoothness input, string name, OpenTK.Vector2i textureDimensions, MDLTextureChannelEncoding channelEncoding)

Added constructor:

	public MDLNoiseTexture (float input, string name, OpenTK.Vector2i textureDimensions, MDLTextureChannelEncoding channelEncoding, MDLNoiseTextureType type);

Type Changed: ModelIO.MDLObject

Added properties:

	public virtual bool Hidden { get; set; }
	public virtual MDLObject Instance { get; set; }
	public virtual string Path { get; }

Added methods:

	public virtual void EnumerateChildObjects (ObjCRuntime.Class objectClass, MDLObject root, MDLObjectHandler handler, bool stop);
	public static MDLObject FromNode (SceneKit.SCNNode node, IMDLMeshBufferAllocator bufferAllocator);
	public virtual MDLObject GetObject (string path);

Type Changed: ModelIO.MDLSubmesh

Modified properties:

public virtual MDLSubmeshTopology Topology { get; set; }

Added methods:

	public static MDLSubmesh FromGeometryElement (SceneKit.SCNGeometryElement element, IMDLMeshBufferAllocator bufferAllocator);
	public virtual IMDLMeshBuffer GetIndexBuffer (MDLIndexBitDepth indexType);

Type Changed: ModelIO.MDLSubmeshTopology

Added constructor:

	public MDLSubmeshTopology (MDLSubmesh submesh);

Type Changed: ModelIO.MDLTexture

Added property:

	public virtual bool HasAlphaValues { get; set; }

Type Changed: ModelIO.MDLTransform

Added constructors:

	public MDLTransform (IMDLTransformComponent component, bool resetsTransform);
	public MDLTransform (OpenTK.Matrix4 matrix, bool resetsTransform);

Added interface:

	Foundation.INSCopying

Added properties:

	public virtual Foundation.NSNumber[] KeyTimes { get; }
	public virtual bool ResetsTransform { get; set; }

Added method:

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

Type Changed: ModelIO.MDLTransformComponent_Extensions

Added methods:

	public static Foundation.NSNumber[] GetKeyTimes (IMDLTransformComponent This);
	public static bool GetResetsTransform (IMDLTransformComponent This);
	public static void SetResetsTransform (IMDLTransformComponent This, bool value);

Type Changed: ModelIO.MDLVertexAttribute

Added property:

	public virtual double Time { get; set; }

Type Changed: ModelIO.MDLVertexBufferLayout

Added constructor:

	public MDLVertexBufferLayout (uint stride);

Type Changed: ModelIO.MDLVertexDescriptor

Added methods:

	public static MDLVertexDescriptor FromMetal (Metal.MTLVertexDescriptor descriptor, Foundation.NSError error);
	public virtual void RemoveAttribute (string name);

Type Changed: ModelIO.MDLVoxelArray

Added constructor:

	public MDLVoxelArray (MDLAsset asset, int divisions, float patchRadius);

Added properties:

	public virtual bool IsValidSignedShellField { get; }
	public virtual float ShellFieldExteriorThickness { get; set; }
	public virtual float ShellFieldInteriorThickness { get; set; }

Added methods:

	public virtual void ConvertToSignedShellField ();
	public virtual MDLMesh GetCoarseMesh ();
	public virtual MDLMesh GetCoarseMeshUsingAllocator (IMDLMeshBufferAllocator allocator);
	public virtual void SetVoxels (MDLMesh mesh, int divisions, float patchRadius);

New Type ModelIO.IMDLLightProbeIrradianceDataSource

public interface IMDLLightProbeIrradianceDataSource : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual MDLAxisAlignedBoundingBox BoundingBox { get; set; }
}

New Type ModelIO.MDLCameraProjection

[Serializable]
public enum MDLCameraProjection {
	Orthographic = 1,
	Perspective = 0,
}

New Type ModelIO.MDLLightProbeIrradianceDataSource

public abstract class MDLLightProbeIrradianceDataSource : Foundation.NSObject, Foundation.INSObjectProtocol, IMDLLightProbeIrradianceDataSource, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MDLLightProbeIrradianceDataSource ();
	protected MDLLightProbeIrradianceDataSource (Foundation.NSObjectFlag t);
	protected MDLLightProbeIrradianceDataSource (IntPtr handle);
	// properties
	public virtual MDLAxisAlignedBoundingBox BoundingBox { get; set; }
	public virtual uint SphericalHarmonicsLevel { get; set; }
	// methods
	public virtual Foundation.NSData GetSphericalHarmonicsCoefficients (OpenTK.Vector3 position);
}

New Type ModelIO.MDLLightProbeIrradianceDataSource_Extensions

public static class MDLLightProbeIrradianceDataSource_Extensions {
	// methods
	public static Foundation.NSData GetSphericalHarmonicsCoefficients (IMDLLightProbeIrradianceDataSource This, OpenTK.Vector3 position);
	public static uint GetSphericalHarmonicsLevel (IMDLLightProbeIrradianceDataSource This);
	public static void SetSphericalHarmonicsLevel (IMDLLightProbeIrradianceDataSource This, uint value);
}

New Type ModelIO.MDLMaterialFace

[Serializable]
public enum MDLMaterialFace {
	Back = 1,
	DoubleSided = 2,
	Front = 0,
}

New Type ModelIO.MDLMaterialPropertyConnection

public class MDLMaterialPropertyConnection : Foundation.NSObject, Foundation.INSObjectProtocol, IMDLNamed, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MDLMaterialPropertyConnection (Foundation.NSObjectFlag t);
	protected MDLMaterialPropertyConnection (IntPtr handle);
	public MDLMaterialPropertyConnection (MDLMaterialProperty output, MDLMaterialProperty input);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual MDLMaterialProperty Input { get; }
	public virtual string Name { get; set; }
	public virtual MDLMaterialProperty Output { get; }
	// methods
	protected override void Dispose (bool disposing);
}

New Type ModelIO.MDLMaterialPropertyGraph

public class MDLMaterialPropertyGraph : ModelIO.MDLMaterialPropertyNode, Foundation.INSObjectProtocol, IMDLNamed, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MDLMaterialPropertyGraph (Foundation.NSObjectFlag t);
	protected MDLMaterialPropertyGraph (IntPtr handle);
	public MDLMaterialPropertyGraph (MDLMaterialPropertyNode[] nodes, MDLMaterialPropertyConnection[] connections);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual MDLMaterialPropertyConnection[] Connections { get; }
	public virtual MDLMaterialPropertyNode[] Nodes { get; }
	// methods
	public virtual void Evaluate ();
}

New Type ModelIO.MDLMaterialPropertyNode

public class MDLMaterialPropertyNode : Foundation.NSObject, Foundation.INSObjectProtocol, IMDLNamed, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MDLMaterialPropertyNode (Foundation.NSObjectFlag t);
	protected MDLMaterialPropertyNode (IntPtr handle);
	public MDLMaterialPropertyNode (MDLMaterialProperty[] inputs, MDLMaterialProperty[] outputs, System.Action<MDLMaterialPropertyNode> function);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual System.Action<MDLMaterialPropertyNode> EvaluationFunction { get; set; }
	public virtual MDLMaterialProperty[] Inputs { get; }
	public virtual string Name { get; set; }
	public virtual MDLMaterialProperty[] Outputs { get; }
}

New Type ModelIO.MDLNoiseTextureType

[Serializable]
public enum MDLNoiseTextureType {
	Cellular = 1,
	Vector = 0,
}

New Type ModelIO.MDLObjectHandler

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

New Type ModelIO.MDLProbePlacement

[Serializable]
public enum MDLProbePlacement {
	IrradianceDistribution = 1,
	UniformGrid = 0,
}

Namespace MultipeerConnectivity

Type Changed: MultipeerConnectivity.MCBrowserViewController

Added interface:

	AppKit.INSTouchBarProvider

Type Changed: MultipeerConnectivity.MCSession

Added methods:

	public virtual System.Threading.Tasks.Task<Foundation.NSData> NearbyConnectionDataForPeerAsync (MCPeerID peerID);
	public virtual System.Threading.Tasks.Task SendResourceAsync (Foundation.NSUrl resourceUrl, string resourceName, MCPeerID peerID);
	public virtual System.Threading.Tasks.Task SendResourceAsync (Foundation.NSUrl resourceUrl, string resourceName, MCPeerID peerID, Foundation.NSProgress result);

Namespace NetworkExtension

Type Changed: NetworkExtension.NEFlowMetaData

Added constructor:

	public NEFlowMetaData (Foundation.NSCoder coder);

Added interfaces:

	Foundation.INSCoding
	Foundation.INSCopying
	Foundation.INSSecureCoding

Added methods:

	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);

Type Changed: NetworkExtension.NEPacketTunnelFlow

Added methods:

	public virtual void ReadPacketObjects (System.Action<NEPacket[]> completionHandler);
	public virtual System.Threading.Tasks.Task<NEPacket[]> ReadPacketObjectsAsync ();
	public virtual bool WritePacketObjects (NEPacket[] packets);

Type Changed: NetworkExtension.NEPacketTunnelNetworkSettings

Obsoleted constructors:

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

Added constructor:

	public NEPacketTunnelNetworkSettings (string address);

Type Changed: NetworkExtension.NEPacketTunnelProvider

Added constructor:

	public NEPacketTunnelProvider ();

Type Changed: NetworkExtension.NEProvider

Added method:

	public virtual void DisplayMessage (string message, System.Action<bool> completionHandler);

Type Changed: NetworkExtension.NETunnelProviderManager

Added constructor:

	public NETunnelProviderManager ();

Type Changed: NetworkExtension.NEVpnConnection

Added property:

	public virtual NEVpnManager Manager { get; }

Type Changed: NetworkExtension.NEVpnIke2DiffieHellman

Added value:

	Invalid = 0,

Type Changed: NetworkExtension.NWBonjourServiceEndpoint

Added constructor:

	public NWBonjourServiceEndpoint (Foundation.NSCoder coder);

Added interfaces:

	Foundation.INSCoding
	Foundation.INSCopying
	Foundation.INSSecureCoding

Type Changed: NetworkExtension.NWEndpoint

Added constructor:

	protected NWEndpoint (Foundation.NSCoder coder);

Added interfaces:

	Foundation.INSCoding
	Foundation.INSCopying
	Foundation.INSSecureCoding

Added methods:

	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);

Type Changed: NetworkExtension.NWHostEndpoint

Added constructor:

	public NWHostEndpoint (Foundation.NSCoder coder);

Added interfaces:

	Foundation.INSCoding
	Foundation.INSCopying
	Foundation.INSSecureCoding

New Type NetworkExtension.NEAppProxyFlowErrorExtensions

public static class NEAppProxyFlowErrorExtensions {
	// methods
	public static Foundation.NSString GetDomain (NEAppProxyFlowError self);
}

New Type NetworkExtension.NEFilterManagerErrorExtensions

public static class NEFilterManagerErrorExtensions {
	// methods
	public static Foundation.NSString GetDomain (NEFilterManagerError self);
}

New Type NetworkExtension.NEPacket

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

New Type NetworkExtension.NETunnelProviderErrorExtensions

public static class NETunnelProviderErrorExtensions {
	// methods
	public static Foundation.NSString GetDomain (NETunnelProviderError self);
}

New Type NetworkExtension.NEVpnErrorExtensions

public static class NEVpnErrorExtensions {
	// methods
	public static Foundation.NSString GetDomain (NEVpnError self);
}

Namespace NotificationCenter

Type Changed: NotificationCenter.NCWidgetListViewController

Added interface:

	AppKit.INSTouchBarProvider

Type Changed: NotificationCenter.NCWidgetSearchViewController

Added interface:

	AppKit.INSTouchBarProvider

Namespace ObjCRuntime

Type Changed: ObjCRuntime.Constants

Modified fields:

public const string SdkVersion = "10.11" "10.12";
public const string Version = "2.10.0" "3.0.0";

Added fields:

	public static const string IntentsLibrary = "/System/Library/Frameworks/Intents.framework/Intents";
	public static const string MediaPlayerLibrary = "/System/Library/Frameworks/MediaPlayer.framework/MediaPlayer";
	public static const string PhotosLibrary = "/System/Library/Frameworks/Photos.framework/Photos";
	public static const string SafariServicesLibrary = "/System/Library/Frameworks/SafariServices.framework/SafariServices";

Type Changed: ObjCRuntime.LinkWithAttribute

Added constructor:

	public LinkWithAttribute ();

Added property:

	public DlsymOption Dlsym { get; set; }

Type Changed: ObjCRuntime.Platform

Added value:

	Mac_10_12 = 2827943906639872,

New Type ObjCRuntime.DlsymOption

[Serializable]
public enum DlsymOption {
	Default = 0,
	Disabled = 2,
	Required = 1,
}

New Type ObjCRuntime.UserDelegateTypeAttribute

public sealed class UserDelegateTypeAttribute : System.Attribute {
	// constructors
	public UserDelegateTypeAttribute (System.Type userDelegateType);
	// properties
	public System.Type UserDelegateType { get; }
}

Namespace PdfKit

Type Changed: PdfKit.PdfThumbnailView

Added interface:

	AppKit.INSTouchBarProvider

Type Changed: PdfKit.PdfView

Added interface:

	AppKit.INSTouchBarProvider

Namespace QTKit

Type Changed: QTKit.QTCaptureView

Added interface:

	AppKit.INSTouchBarProvider

Type Changed: QTKit.QTMovieView

Added interface:

	AppKit.INSTouchBarProvider

Namespace QuickLookUI

Type Changed: QuickLookUI.QLPreviewPanel

Added interface:

	AppKit.INSTouchBarProvider

Namespace SceneKit

Type Changed: SceneKit.SCNAnimatable

Added method:

	public virtual void SetSpeed (nfloat speed, Foundation.NSString key);

Type Changed: SceneKit.SCNCamera

Added properties:

	public virtual nfloat AverageGray { get; set; }
	public virtual nfloat BloomBlurRadius { get; set; }
	public virtual nfloat BloomIntensity { get; set; }
	public virtual nfloat BloomThreshold { get; set; }
	public virtual nfloat ColorFringeIntensity { get; set; }
	public virtual nfloat ColorFringeStrength { get; set; }
	public virtual SCNMaterialProperty ColorGrading { get; }
	public virtual nfloat Contrast { get; set; }
	public virtual nfloat ExposureAdaptationBrighteningSpeedFactor { get; set; }
	public virtual nfloat ExposureAdaptationDarkeningSpeedFactor { get; set; }
	public virtual nfloat ExposureOffset { get; set; }
	public virtual nfloat MaximumExposure { get; set; }
	public virtual nfloat MinimumExposure { get; set; }
	public virtual nfloat MotionBlurIntensity { get; set; }
	public virtual nfloat Saturation { get; set; }
	public virtual nfloat VignettingIntensity { get; set; }
	public virtual nfloat VignettingPower { get; set; }
	public virtual bool WantsExposureAdaptation { get; set; }
	public virtual bool WantsHdr { get; set; }
	public virtual nfloat WhitePoint { get; set; }

Added method:

	public virtual void SetSpeed (nfloat speed, Foundation.NSString key);

Type Changed: SceneKit.SCNConstraint

Added method:

	public virtual void SetSpeed (nfloat speed, Foundation.NSString key);

Type Changed: SceneKit.SCNFloor

Added properties:

	public virtual nfloat Length { get; set; }
	public virtual uint ReflectionCategoryBitMask { get; set; }
	public virtual nfloat Width { get; set; }

Type Changed: SceneKit.SCNGeometry

Added method:

	public virtual void SetSpeed (nfloat speed, Foundation.NSString key);

Type Changed: SceneKit.SCNGeometryPrimitiveType

Added value:

	Polygon = 4,

Type Changed: SceneKit.SCNGeometrySourceSemantic

Added property:

	public static Foundation.NSString Tangent { get; }

Type Changed: SceneKit.SCNHitTest

Added property:

	public static Foundation.NSString OptionCategoryBitMaskKey { get; }

Type Changed: SceneKit.SCNHitTestResult

Added property:

	public virtual SCNNode BoneNode { get; }

Type Changed: SceneKit.SCNLight

Added properties:

	public virtual Foundation.NSUrl IesProfileUrl { get; set; }
	public virtual nfloat Intensity { get; set; }
	public virtual nfloat Temperature { get; set; }

Added method:

	public virtual void SetSpeed (nfloat speed, Foundation.NSString key);

Type Changed: SceneKit.SCNLightType

Added properties:

	public static Foundation.NSString Ies { get; }
	public static Foundation.NSString Probe { get; }

Type Changed: SceneKit.SCNLightingModel

Added property:

	public static Foundation.NSString PhysicallyBased { get; }

Type Changed: SceneKit.SCNLookAtConstraint

Modified properties:

public virtual SCNNode Target { get; set; }

Type Changed: SceneKit.SCNMaterial

Added properties:

	public virtual SCNMaterialProperty Metalness { get; }
	public virtual SCNMaterialProperty Roughness { get; }

Added method:

	public virtual void SetSpeed (nfloat speed, Foundation.NSString key);

Type Changed: SceneKit.SCNMaterialProperty

Added method:

	public virtual void SetSpeed (nfloat speed, Foundation.NSString key);

Type Changed: SceneKit.SCNMorpher

Added method:

	public virtual void SetSpeed (nfloat speed, Foundation.NSString key);

Type Changed: SceneKit.SCNNode

Added property:

	public virtual SCNMovabilityHint MovabilityHint { get; set; }

Obsoleted methods:

[Obsolete ("Use the overload that takes a SCNNodeHandler instead")] public virtual void EnumerateChildNodes (SCNNodePredicate predicate);

Added methods:

	public virtual void EnumerateChildNodes (SCNNodeHandler handler);
	public virtual void EnumerateHierarchy (SCNNodeHandler handler);
	public virtual void SetSpeed (nfloat speed, Foundation.NSString key);

Type Changed: SceneKit.SCNParticleProperty

Added properties:

	public static Foundation.NSString ContactNormal { get; }
	public static Foundation.NSString ContactPoint { get; }

Type Changed: SceneKit.SCNParticleSystem

Added method:

	public virtual void SetSpeed (nfloat speed, Foundation.NSString key);

Type Changed: SceneKit.SCNPhysicsShapeOptionsKeys

Added property:

	public static Foundation.NSString CollisionMargin { get; }

Type Changed: SceneKit.SCNProgramDelegate

Added methods:

	public virtual bool BindValue (SCNProgram program, string symbol, uint location, uint programID, SCNRenderer renderer);
	public virtual bool IsProgramOpaque (SCNProgram program);
	public virtual void UnbindValue (SCNProgram program, string symbol, uint location, uint programID, SCNRenderer renderer);

Type Changed: SceneKit.SCNProgramDelegate_Extensions

Added methods:

	public static bool BindValue (ISCNProgramDelegate This, SCNProgram program, string symbol, uint location, uint programID, SCNRenderer renderer);
	public static bool IsProgramOpaque (ISCNProgramDelegate This, SCNProgram program);
	public static void UnbindValue (ISCNProgramDelegate This, SCNProgram program, string symbol, uint location, uint programID, SCNRenderer renderer);

Type Changed: SceneKit.SCNRenderer

Added methods:

	public static SCNRenderer FromContext (OpenGL.CGLContext context, Foundation.NSDictionary options);
	public virtual AppKit.NSImage GetSnapshot (double time, CoreGraphics.CGSize size, SCNAntialiasingMode antialiasingMode);
	public virtual void Update (SCNNode[] lightProbes, double time);

Type Changed: SceneKit.SCNScene

Added property:

	public virtual SCNMaterialProperty LightingEnvironment { get; }

Obsoleted methods:

[Obsolete ("Use the ISCNSceneExportDelegate overload instead")] public virtual bool WriteToUrl (Foundation.NSUrl url, Foundation.NSDictionary options, SCNSceneExportDelegate handler, SCNSceneExportProgressHandler exportProgressHandler);
[Obsolete ("Use the ISCNSceneExportDelegate overload instead")] public virtual bool WriteToUrl (Foundation.NSUrl url, SCNSceneLoadingOptions options, SCNSceneExportDelegate handler, SCNSceneExportProgressHandler exportProgressHandler);

Modified methods:

public virtual bool WriteToUrl (Foundation.NSUrl url, SCNSceneLoadingOptions options, SCNSceneExportDelegate handler, SCNSceneExportProgressHandler exportProgressHandler)

Added methods:

	public virtual bool WriteToUrl (Foundation.NSUrl url, Foundation.NSDictionary options, ISCNSceneExportDelegate aDelegate, SCNSceneExportProgressHandler exportProgressHandler);
	public bool WriteToUrl (Foundation.NSUrl url, SCNSceneLoadingOptions options, ISCNSceneExportDelegate handler, SCNSceneExportProgressHandler exportProgressHandler);

Type Changed: SceneKit.SCNSceneExportDelegate

Modified methods:

public virtual Foundation.NSUrl WriteImage (AppKit.NSImage image, Foundation.NSUrl documentURL documentUrl, Foundation.NSUrl originalImageURL originalImageUrl)

Type Changed: SceneKit.SCNSceneExportDelegate_Extensions

Modified methods:

public Foundation.NSUrl WriteImage (this ISCNSceneExportDelegate This, AppKit.NSImage image, Foundation.NSUrl documentURL documentUrl, Foundation.NSUrl originalImageURL originalImageUrl)

Type Changed: SceneKit.SCNSceneLoadingOptions

Added property:

	public bool? PreserveOriginalTopology { get; set; }

Type Changed: SceneKit.SCNSceneSourceLoading

Added property:

	public static Foundation.NSString OptionPreserveOriginalTopology { get; }

Type Changed: SceneKit.SCNSceneSourceProperties

Added properties:

	public static Foundation.NSString AssetAuthorKey { get; }
	public static Foundation.NSString AssetAuthoringToolKey { get; }
	public static Foundation.NSString AssetUnitMeterKey { get; }
	public static Foundation.NSString AssetUnitNameKey { get; }

Type Changed: SceneKit.SCNTechnique

Added method:

	public virtual void SetSpeed (nfloat speed, Foundation.NSString key);

Type Changed: SceneKit.SCNView

Added interface:

	AppKit.INSTouchBarProvider

Added property:

	public virtual nint PreferredFramesPerSecond { get; set; }

New Type SceneKit.SCNAnimatable_Extensions

public static class SCNAnimatable_Extensions {
	// methods
	public static void SetSpeed (ISCNAnimatable This, nfloat speed, Foundation.NSString key);
}

New Type SceneKit.SCNMovabilityHint

[Serializable]
public enum SCNMovabilityHint {
	Fixed = 0,
	Movable = 1,
}

New Type SceneKit.SCNNodeHandler

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

Namespace Security

Type Changed: Security.SecKey

Added methods:

	public static SecKey Create (Foundation.NSData keyData, Foundation.NSDictionary parameters, Foundation.NSError error);
	public static SecKey Create (Foundation.NSData keyData, SecKeyType keyType, SecKeyClass keyClass, int keySizeInBits, Foundation.NSDictionary parameters, Foundation.NSError error);
	public Foundation.NSData CreateDecryptedData (SecKeyAlgorithm algorithm, Foundation.NSData ciphertext, Foundation.NSError error);
	public Foundation.NSData CreateEncryptedData (SecKeyAlgorithm algorithm, Foundation.NSData plaintext, Foundation.NSError error);
	public static SecKey CreateRandomKey (Foundation.NSDictionary parameters, Foundation.NSError error);
	public static SecKey CreateRandomKey (SecKeyType keyType, int keySizeInBits, Foundation.NSDictionary parameters, Foundation.NSError error);
	public Foundation.NSData CreateSignature (SecKeyAlgorithm algorithm, Foundation.NSData dataToSign, Foundation.NSError error);
	public Foundation.NSDictionary GetAttributes ();
	public Foundation.NSData GetExternalRepresentation ();
	public Foundation.NSData GetExternalRepresentation (Foundation.NSError error);
	public Foundation.NSData GetKeyExchangeResult (SecKeyAlgorithm algorithm, SecKey publicKey, Foundation.NSDictionary parameters, Foundation.NSError error);
	public Foundation.NSData GetKeyExchangeResult (SecKeyAlgorithm algorithm, SecKey publicKey, SecKeyKeyExchangeParameter parameters, Foundation.NSError error);
	public SecKey GetPublicKey ();
	public bool IsAlgorithmSupported (SecKeyOperationType operation, SecKeyAlgorithm algorithm);
	public bool VerifySignature (SecKeyAlgorithm algorithm, Foundation.NSData signedData, Foundation.NSData signature, Foundation.NSError error);

Type Changed: Security.SecKeyType

Added value:

	ECSecPrimeRandom = 2,

Type Changed: Security.SecPolicyIdentifier

Added property:

	public static Foundation.NSString ApplePassbookSigning { get; }

Type Changed: Security.SecPolicyPropertyKey

Added property:

	public static Foundation.NSString TeamIdentifier { get; }

Type Changed: Security.SecRecord

Added constructors:

	public SecRecord (SecCertificate certificate);
	public SecRecord (SecIdentity identity);
	public SecRecord (SecKey key);

Added property:

	public LocalAuthentication.LAContext AuthenticationContext { get; set; }

Added methods:

	public SecCertificate GetCertificate ();
	public SecIdentity GetIdentity ();
	public SecKey GetKey ();
	public void SetCertificate (SecCertificate cert);
	public void SetIdentity (SecIdentity identity);
	public void SetKey (SecKey key);

Type Changed: Security.SecTrustResultKey

Added properties:

	public static Foundation.NSString CertificateTransparency { get; }
	public static Foundation.NSString CertificateTransparencyWhiteList { get; }

Type Changed: Security.SslContext

Obsoleted methods:

[Obsolete ("SetSessionStrengthPolicy is not available anymore.")] public SslStatus SetSessionStrengthPolicy (SslSessionStrengthPolicy policyStrength);

Added methods:

	public string GetRequestedPeerName ();
	public int ReHandshake ();
	public int SetSessionConfig (Foundation.NSString config);
	public int SetSessionConfig (SslSessionConfig config);

Type Changed: Security.SslSessionOption

Added value:

	AllowRenegotiation = 8,

New Type Security.SecKeyAlgorithm

[Serializable]
public enum SecKeyAlgorithm {
	EcdhKeyExchangeCofactor = 52,
	EcdhKeyExchangeCofactorX963Sha1 = 53,
	EcdhKeyExchangeCofactorX963Sha224 = 54,
	EcdhKeyExchangeCofactorX963Sha256 = 55,
	EcdhKeyExchangeCofactorX963Sha384 = 56,
	EcdhKeyExchangeCofactorX963Sha512 = 57,
	EcdhKeyExchangeStandard = 46,
	EcdhKeyExchangeStandardX963Sha1 = 47,
	EcdhKeyExchangeStandardX963Sha224 = 48,
	EcdhKeyExchangeStandardX963Sha256 = 49,
	EcdhKeyExchangeStandardX963Sha384 = 50,
	EcdhKeyExchangeStandardX963Sha512 = 51,
	EcdsaSignatureDigestX962 = 13,
	EcdsaSignatureDigestX962Sha1 = 14,
	EcdsaSignatureDigestX962Sha224 = 15,
	EcdsaSignatureDigestX962Sha256 = 16,
	EcdsaSignatureDigestX962Sha384 = 17,
	EcdsaSignatureDigestX962Sha512 = 18,
	EcdsaSignatureMessageX962Sha1 = 19,
	EcdsaSignatureMessageX962Sha224 = 20,
	EcdsaSignatureMessageX962Sha256 = 21,
	EcdsaSignatureMessageX962Sha384 = 22,
	EcdsaSignatureMessageX962Sha512 = 23,
	EcdsaSignatureRfc4754 = 12,
	EciesEncryptionCofactorX963Sha1AesGcm = 41,
	EciesEncryptionCofactorX963Sha224AesGcm = 42,
	EciesEncryptionCofactorX963Sha256AesGcm = 43,
	EciesEncryptionCofactorX963Sha384AesGcm = 44,
	EciesEncryptionCofactorX963Sha512AesGcm = 45,
	EciesEncryptionStandardX963Sha1AesGcm = 36,
	EciesEncryptionStandardX963Sha224AesGcm = 37,
	EciesEncryptionStandardX963Sha256AesGcm = 38,
	EciesEncryptionStandardX963Sha384AesGcm = 39,
	EciesEncryptionStandardX963Sha512AesGcm = 40,
	RsaEncryptionOaepSha1 = 26,
	RsaEncryptionOaepSha1AesCgm = 31,
	RsaEncryptionOaepSha224 = 27,
	RsaEncryptionOaepSha224AesGcm = 32,
	RsaEncryptionOaepSha256 = 28,
	RsaEncryptionOaepSha256AesGcm = 33,
	RsaEncryptionOaepSha384 = 29,
	RsaEncryptionOaepSha384AesGcm = 34,
	RsaEncryptionOaepSha512 = 30,
	RsaEncryptionOaepSha512AesGcm = 35,
	RsaEncryptionPkcs1 = 25,
	RsaEncryptionRaw = 24,
	RsaSignatureDigestPkcs1v15Raw = 1,
	RsaSignatureDigestPkcs1v15Sha1 = 2,
	RsaSignatureDigestPkcs1v15Sha224 = 3,
	RsaSignatureDigestPkcs1v15Sha256 = 4,
	RsaSignatureDigestPkcs1v15Sha384 = 5,
	RsaSignatureDigestPkcs1v15Sha512 = 6,
	RsaSignatureMessagePkcs1v15Sha1 = 7,
	RsaSignatureMessagePkcs1v15Sha224 = 8,
	RsaSignatureMessagePkcs1v15Sha256 = 9,
	RsaSignatureMessagePkcs1v15Sha384 = 10,
	RsaSignatureMessagePkcs1v15Sha512 = 11,
	RsaSignatureRaw = 0,
}

New Type Security.SecKeyAlgorithmExtensions

public static class SecKeyAlgorithmExtensions {
	// methods
	public static Foundation.NSString GetConstant (SecKeyAlgorithm self);
	public static SecKeyAlgorithm GetValue (Foundation.NSString constant);
}

New Type Security.SecKeyClassExtensions

public static class SecKeyClassExtensions {
	// methods
	public static Foundation.NSString GetConstant (SecKeyClass self);
	public static SecKeyClass GetValue (Foundation.NSString constant);
}

New Type Security.SecKeyKeyExchangeParameter

public class SecKeyKeyExchangeParameter : Foundation.DictionaryContainer {
	// constructors
	public SecKeyKeyExchangeParameter ();
	public SecKeyKeyExchangeParameter (Foundation.NSDictionary dictionary);
	// properties
	public int? RequestedSize { get; set; }
	public Foundation.NSData SharedInfo { get; set; }
}

New Type Security.SecKeyOperationType

[Serializable]
public enum SecKeyOperationType {
	Decrypt = 3,
	Encrypt = 2,
	KeyExchange = 4,
	Sign = 0,
	Verify = 1,
}

New Type Security.SecKeyTypeExtensions

public static class SecKeyTypeExtensions {
	// methods
	public static Foundation.NSString GetConstant (SecKeyType self);
	public static SecKeyType GetValue (Foundation.NSString constant);
}

New Type Security.SslSessionConfig

[Serializable]
public enum SslSessionConfig {
	Anonymous = 9,
	Ats1 = 1,
	Ats1NoPfs = 2,
	Default = 0,
	Legacy = 7,
	LegacyDhe = 8,
	RC4Fallback = 4,
	Standard = 3,
	ThreeDesFallback = 10,
	Tls1Fallback = 5,
	Tls1RC4Fallback = 6,
	Tls1ThreeDesFallback = 11,
}

New Type Security.SslSessionConfigExtensions

public static class SslSessionConfigExtensions {
	// methods
	public static Foundation.NSString GetConstant (SslSessionConfig self);
	public static SslSessionConfig GetValue (Foundation.NSString constant);
}

Namespace SpriteKit

Type Changed: SpriteKit.SK3DNode

Added interface:

	AppKit.INSTouchBarProvider

Type Changed: SpriteKit.SKAction

Added methods:

	public static SKAction Animate (SKWarpGeometry[] warps, Foundation.NSNumber[] times);
	public static SKAction Animate (SKWarpGeometry[] warps, Foundation.NSNumber[] times, bool restore);
	public static SKAction ScaleTo (CoreGraphics.CGSize size, double sec);
	public static SKAction WarpTo (SKWarpGeometry warp, double duration);

Type Changed: SpriteKit.SKAudioNode

Added interface:

	AppKit.INSTouchBarProvider

Type Changed: SpriteKit.SKCameraNode

Added interface:

	AppKit.INSTouchBarProvider

Type Changed: SpriteKit.SKCropNode

Added interface:

	AppKit.INSTouchBarProvider

Type Changed: SpriteKit.SKEffectNode

Added interfaces:

	AppKit.INSTouchBarProvider
	ISKWarpable

Added properties:

	public virtual nint SubdivisionLevels { get; set; }
	public virtual SKWarpGeometry WarpGeometry { get; set; }

Added method:

	protected override void Dispose (bool disposing);

Type Changed: SpriteKit.SKEmitterNode

Added interface:

	AppKit.INSTouchBarProvider

Type Changed: SpriteKit.SKFieldNode

Added interface:

	AppKit.INSTouchBarProvider

Type Changed: SpriteKit.SKLabelNode

Added interface:

	AppKit.INSTouchBarProvider

Type Changed: SpriteKit.SKLightNode

Added interface:

	AppKit.INSTouchBarProvider

Type Changed: SpriteKit.SKNode

Added interface:

	AppKit.INSTouchBarProvider

Added property:

	public virtual Foundation.NSDictionary<Foundation.NSString,SpriteKit.SKAttributeValue> AttributeValues { get; set; }

Added methods:

	public static GameplayKit.GKPolygonObstacle[] GetObstaclesFromNodeBounds (SKNode[] nodes);
	public static GameplayKit.GKPolygonObstacle[] GetObstaclesFromNodePhysicsBodies (SKNode[] nodes);
	public static GameplayKit.GKPolygonObstacle[] GetObstaclesFromSpriteTextures (SKNode[] sprites, float accuracy);
	public virtual SKAttributeValue GetValue (string key);
	public virtual void SetValue (SKAttributeValue value, string key);

Type Changed: SpriteKit.SKReferenceNode

Added interface:

	AppKit.INSTouchBarProvider

Type Changed: SpriteKit.SKScene

Added interfaces:

	AppKit.INSTouchBarProvider
	ISKWarpable

Added method:

	public virtual void SceneDidLoad ();

Type Changed: SpriteKit.SKShader

Added property:

	public virtual SKAttribute[] Attributes { get; set; }

Type Changed: SpriteKit.SKShapeNode

Added interface:

	AppKit.INSTouchBarProvider

Type Changed: SpriteKit.SKSpriteNode

Added interfaces:

	AppKit.INSTouchBarProvider
	ISKWarpable

Added properties:

	public virtual nint SubdivisionLevels { get; set; }
	public virtual SKWarpGeometry WarpGeometry { get; set; }

Added methods:

	protected override void Dispose (bool disposing);
	public virtual void ScaleTo (CoreGraphics.CGSize size);

Type Changed: SpriteKit.SKTexture

Added method:

	public static SKTexture FromNoiseMap (GameplayKit.GKNoiseMap noiseMap);

Type Changed: SpriteKit.SKVideoNode

Added interface:

	AppKit.INSTouchBarProvider

Type Changed: SpriteKit.SKView

Added interface:

	AppKit.INSTouchBarProvider

Added properties:

	public virtual ISKViewDelegate Delegate { get; set; }
	public virtual nint PreferredFramesPerSecond { get; set; }

Added method:

	protected override void Dispose (bool disposing);

New Type SpriteKit.ISKViewDelegate

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

New Type SpriteKit.ISKWarpable

public interface ISKWarpable : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual nint SubdivisionLevels { get; set; }
	public virtual SKWarpGeometry WarpGeometry { get; set; }
}

New Type SpriteKit.SKAttribute

public class SKAttribute : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public SKAttribute (Foundation.NSCoder coder);
	protected SKAttribute (Foundation.NSObjectFlag t);
	protected SKAttribute (IntPtr handle);
	public SKAttribute (string name, SKAttributeType type);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string Name { get; }
	public virtual SKAttributeType Type { get; }
	// methods
	public static SKAttribute Create (string name, SKAttributeType type);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type SpriteKit.SKAttributeType

[Serializable]
public enum SKAttributeType {
	Float = 1,
	HalfFloat = 5,
	None = 0,
	VectorFloat2 = 2,
	VectorFloat3 = 3,
	VectorFloat4 = 4,
	VectorHalfFloat2 = 6,
	VectorHalfFloat3 = 7,
	VectorHalfFloat4 = 8,
}

New Type SpriteKit.SKAttributeValue

public class SKAttributeValue : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public SKAttributeValue ();
	public SKAttributeValue (Foundation.NSCoder coder);
	protected SKAttributeValue (Foundation.NSObjectFlag t);
	protected SKAttributeValue (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual float FloatValue { get; set; }
	public virtual OpenTK.Vector2 VectorFloat2Value { get; set; }
	public virtual OpenTK.Vector3 VectorFloat3Value { get; set; }
	public virtual OpenTK.Vector4 VectorFloat4Value { get; set; }
	// methods
	public static SKAttributeValue Create (OpenTK.Vector2 value);
	public static SKAttributeValue Create (OpenTK.Vector3 value);
	public static SKAttributeValue Create (OpenTK.Vector4 value);
	public static SKAttributeValue Create (float value);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type SpriteKit.SKTileAdjacencyMask

[Serializable]
public enum SKTileAdjacencyMask {
	All = 255,
	Down = 16,
	DownEdge = 199,
	HexFlatAll = 63,
	HexFlatDown = 8,
	HexFlatLowerLeft = 16,
	HexFlatLowerRight = 4,
	HexFlatUp = 1,
	HexFlatUpperLeft = 32,
	HexFlatUpperRight = 2,
	HexPointyAll = 63,
	HexPointyLeft = 32,
	HexPointyLowerLeft = 16,
	HexPointyLowerRight = 8,
	HexPointyRight = 4,
	HexPointyUpperLeft = 1,
	HexPointyUpperRight = 2,
	Left = 64,
	LeftEdge = 31,
	LowerLeft = 32,
	LowerLeftCorner = 253,
	LowerLeftEdge = 7,
	LowerRight = 8,
	LowerRightCorner = 127,
	LowerRightEdge = 193,
	Right = 4,
	RightEdge = 241,
	Up = 1,
	UpEdge = 124,
	UpperLeft = 128,
	UpperLeftCorner = 247,
	UpperLeftEdge = 28,
	UpperRight = 2,
	UpperRightCorner = 223,
	UpperRightEdge = 112,
}

New Type SpriteKit.SKTileDefinition

public class SKTileDefinition : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public SKTileDefinition (Foundation.NSCoder coder);
	protected SKTileDefinition (Foundation.NSObjectFlag t);
	public SKTileDefinition (SKTexture texture);
	protected SKTileDefinition (IntPtr handle);
	public SKTileDefinition (SKTexture texture, CoreGraphics.CGSize size);
	public SKTileDefinition (SKTexture texture, SKTexture normalTexture, CoreGraphics.CGSize size);
	public SKTileDefinition (SKTexture[] textures, CoreGraphics.CGSize size, nfloat timePerFrame);
	public SKTileDefinition (SKTexture[] textures, SKTexture[] normalTextures, CoreGraphics.CGSize size, nfloat timePerFrame);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool FlipHorizontally { get; set; }
	public virtual bool FlipVertically { get; set; }
	public virtual string Name { get; set; }
	public virtual SKTexture[] NormalTextures { get; set; }
	public virtual uint PlacementWeight { get; set; }
	public virtual SKTileDefinitionRotation Rotation { get; set; }
	public virtual CoreGraphics.CGSize Size { get; set; }
	public virtual SKTexture[] Textures { get; set; }
	public virtual nfloat TimePerFrame { get; set; }
	public virtual Foundation.NSMutableDictionary UserData { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static SKTileDefinition Create (SKTexture texture);
	public static SKTileDefinition Create (SKTexture texture, CoreGraphics.CGSize size);
	public static SKTileDefinition Create (SKTexture texture, SKTexture normalTexture, CoreGraphics.CGSize size);
	public static SKTileDefinition Create (SKTexture[] textures, CoreGraphics.CGSize size, nfloat timePerFrame);
	public static SKTileDefinition Create (SKTexture[] textures, SKTexture[] normalTextures, CoreGraphics.CGSize size, nfloat timePerFrame);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type SpriteKit.SKTileDefinitionRotation

[Serializable]
public enum SKTileDefinitionRotation {
	Angle0 = 0,
	Angle180 = 2,
	Angle270 = 3,
	Angle90 = 1,
}

New Type SpriteKit.SKTileGroup

public class SKTileGroup : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public SKTileGroup ();
	public SKTileGroup (Foundation.NSCoder coder);
	protected SKTileGroup (Foundation.NSObjectFlag t);
	public SKTileGroup (SKTileDefinition tileDefinition);
	public SKTileGroup (SKTileGroupRule[] rules);
	protected SKTileGroup (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string Name { get; set; }
	public virtual SKTileGroupRule[] Rules { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static SKTileGroup Create (SKTileDefinition tileDefinition);
	public static SKTileGroup Create (SKTileGroupRule[] rules);
	public static SKTileGroup CreateEmpty ();
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type SpriteKit.SKTileGroupRule

public class SKTileGroupRule : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public SKTileGroupRule ();
	public SKTileGroupRule (Foundation.NSCoder coder);
	protected SKTileGroupRule (Foundation.NSObjectFlag t);
	protected SKTileGroupRule (IntPtr handle);
	public SKTileGroupRule (SKTileAdjacencyMask adjacency, SKTileDefinition[] tileDefinitions);
	// properties
	public virtual SKTileAdjacencyMask Adjacency { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual string Name { get; set; }
	public virtual SKTileDefinition[] TileDefinitions { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static SKTileGroupRule Create (SKTileAdjacencyMask adjacency, SKTileDefinition[] tileDefinitions);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type SpriteKit.SKTileMapNode

public class SKTileMapNode : SpriteKit.SKNode, AppKit.INSTouchBarProvider, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.Generic.IEnumerable<SKNode>, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public SKTileMapNode ();
	public SKTileMapNode (Foundation.NSCoder coder);
	protected SKTileMapNode (Foundation.NSObjectFlag t);
	protected SKTileMapNode (IntPtr handle);
	public SKTileMapNode (SKTileSet tileSet, uint columns, uint rows, CoreGraphics.CGSize tileSize);
	public SKTileMapNode (SKTileSet tileSet, uint columns, uint rows, CoreGraphics.CGSize tileSize, SKTileGroup tileGroup);
	public SKTileMapNode (SKTileSet tileSet, uint columns, uint rows, CoreGraphics.CGSize tileSize, SKTileGroup[] tileGroupLayout);
	// properties
	public virtual CoreGraphics.CGPoint AnchorPoint { get; set; }
	public virtual SKBlendMode BlendMode { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual AppKit.NSColor Color { get; set; }
	public virtual nfloat ColorBlendFactor { get; set; }
	public virtual bool EnableAutomapping { get; set; }
	public virtual uint LightingBitMask { get; set; }
	public virtual CoreGraphics.CGSize MapSize { get; }
	public virtual uint NumberOfColumns { get; set; }
	public virtual uint NumberOfRows { get; set; }
	public virtual SKShader Shader { get; set; }
	public virtual SKTileSet TileSet { get; set; }
	public virtual CoreGraphics.CGSize TileSize { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static SKTileMapNode Create (SKTileSet tileSet, uint columns, uint rows, CoreGraphics.CGSize tileSize);
	public static SKTileMapNode Create (SKTileSet tileSet, uint columns, uint rows, CoreGraphics.CGSize tileSize, SKTileGroup tileGroup);
	public static SKTileMapNode Create (SKTileSet tileSet, uint columns, uint rows, CoreGraphics.CGSize tileSize, SKTileGroup[] tileGroupLayout);
	protected override void Dispose (bool disposing);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public virtual void Fill (SKTileGroup tileGroup);
	public static SKTileMapNode[] FromTileSet (SKTileSet tileSet, uint columns, uint rows, CoreGraphics.CGSize tileSize, GameplayKit.GKNoiseMap noiseMap, Foundation.NSNumber[] thresholds);
	public virtual CoreGraphics.CGPoint GetCenterOfTile (uint column, uint row);
	public virtual uint GetTileColumnIndex (CoreGraphics.CGPoint position);
	public virtual SKTileDefinition GetTileDefinition (uint column, uint row);
	public virtual SKTileGroup GetTileGroup (uint column, uint row);
	public virtual uint GetTileRowIndex (CoreGraphics.CGPoint position);
	public virtual void SetTileGroup (SKTileGroup tileGroup, uint column, uint row);
	public virtual void SetTileGroup (SKTileGroup tileGroup, SKTileDefinition tileDefinition, uint column, uint row);
}

New Type SpriteKit.SKTileSet

public class SKTileSet : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public SKTileSet ();
	public SKTileSet (Foundation.NSCoder coder);
	protected SKTileSet (Foundation.NSObjectFlag t);
	public SKTileSet (SKTileGroup[] tileGroups);
	protected SKTileSet (IntPtr handle);
	public SKTileSet (SKTileGroup[] tileGroups, SKTileSetType tileSetType);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual SKTileGroup DefaultTileGroup { get; set; }
	public virtual CoreGraphics.CGSize DefaultTileSize { get; set; }
	public virtual string Name { get; set; }
	public virtual SKTileGroup[] TileGroups { get; set; }
	public virtual SKTileSetType Type { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static SKTileSet Create (SKTileGroup[] tileGroups);
	public static SKTileSet Create (SKTileGroup[] tileGroups, SKTileSetType tileSetType);
	protected override void Dispose (bool disposing);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public static SKTileSet FromName (string name);
	public static SKTileSet FromUrl (Foundation.NSUrl url);
}

New Type SpriteKit.SKTileSetType

[Serializable]
public enum SKTileSetType {
	Grid = 0,
	HexagonalFlat = 2,
	HexagonalPointy = 3,
	Isometric = 1,
}

New Type SpriteKit.SKViewDelegate

public class SKViewDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, ISKViewDelegate, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public SKViewDelegate ();
	protected SKViewDelegate (Foundation.NSObjectFlag t);
	protected SKViewDelegate (IntPtr handle);
	// methods
	public virtual bool ShouldRender (SKView view, double time);
}

New Type SpriteKit.SKViewDelegate_Extensions

public static class SKViewDelegate_Extensions {
	// methods
	public static bool ShouldRender (ISKViewDelegate This, SKView view, double time);
}

New Type SpriteKit.SKWarpGeometry

public class SKWarpGeometry : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public SKWarpGeometry ();
	public SKWarpGeometry (Foundation.NSCoder coder);
	protected SKWarpGeometry (Foundation.NSObjectFlag t);
	protected SKWarpGeometry (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 SpriteKit.SKWarpGeometryGrid

public class SKWarpGeometryGrid : SpriteKit.SKWarpGeometry, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public SKWarpGeometryGrid (Foundation.NSCoder coder);
	protected SKWarpGeometryGrid (Foundation.NSObjectFlag t);
	protected SKWarpGeometryGrid (IntPtr handle);
	public SKWarpGeometryGrid (nint cols, nint rows, OpenTK.Vector2[] sourcePositions, OpenTK.Vector2[] destPositions);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nint NumberOfColumns { get; }
	public virtual nint NumberOfRows { get; }
	public virtual nint VertexCount { get; }
	// methods
	public static SKWarpGeometryGrid Create (nint cols, nint rows);
	public static SKWarpGeometryGrid Create (nint cols, nint rows, OpenTK.Vector2[] sourcePositions, OpenTK.Vector2[] destPositions);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public virtual OpenTK.Vector2 GetDestPosition (nint index);
	public static SKWarpGeometryGrid GetGrid ();
	public SKWarpGeometryGrid GetGridByReplacingDestPositions (OpenTK.Vector2[] destPositions);
	public SKWarpGeometryGrid GetGridByReplacingSourcePositions (OpenTK.Vector2[] sourcePositions);
	public virtual OpenTK.Vector2 GetSourcePosition (nint index);
}

Namespace StoreKit

Type Changed: StoreKit.SKCloudServiceCapability

Added value:

	MusicCatalogSubscriptionEligible = 2,

Namespace VideoToolbox

Type Changed: VideoToolbox.VTStatus

Added value:

	ColorCorrectionImageRotationFailed = -12219,

Namespace WebKit

Type Changed: WebKit.WKPreferences

Added constructor:

	public WKPreferences (Foundation.NSCoder coder);

Added interface:

	Foundation.INSCoding

Added method:

	public virtual void EncodeTo (Foundation.NSCoder encoder);

Type Changed: WebKit.WKProcessPool

Added constructor:

	public WKProcessPool (Foundation.NSCoder coder);

Added interface:

	Foundation.INSCoding

Added method:

	public virtual void EncodeTo (Foundation.NSCoder encoder);

Type Changed: WebKit.WKUserContentController

Added constructor:

	public WKUserContentController (Foundation.NSCoder coder);

Added interface:

	Foundation.INSCoding

Added method:

	public virtual void EncodeTo (Foundation.NSCoder encoder);

Type Changed: WebKit.WKWebView

Added interface:

	AppKit.INSTouchBarProvider

Added property:

	public virtual Security.SecTrust ServerTrust { get; }

Type Changed: WebKit.WKWebViewConfiguration

Added constructor:

	public WKWebViewConfiguration (Foundation.NSCoder coder);

Added interface:

	Foundation.INSCoding

Added property:

	public virtual WKAudiovisualMediaTypes MediaTypesRequiringUserActionForPlayback { get; set; }

Added method:

	public virtual void EncodeTo (Foundation.NSCoder encoder);

Type Changed: WebKit.WKWebsiteDataStore

Added constructor:

	public WKWebsiteDataStore (Foundation.NSCoder coder);

Added interface:

	Foundation.INSCoding

Added method:

	public virtual void EncodeTo (Foundation.NSCoder encoder);

Type Changed: WebKit.WebFrame

Added property:

	public virtual JavaScriptCore.JSContext JavaScriptContext { get; }

Type Changed: WebKit.WebFrameLoadDelegate

Added method:

	public virtual void DidCreateJavaScriptContext (WebView webView, JavaScriptCore.JSContext context, WebFrame frame);

Type Changed: WebKit.WebFrameLoadDelegate_Extensions

Added method:

	public static void DidCreateJavaScriptContext (IWebFrameLoadDelegate This, WebView webView, JavaScriptCore.JSContext context, WebFrame frame);

Type Changed: WebKit.WebFrameView

Added interface:

	AppKit.INSTouchBarProvider

Type Changed: WebKit.WebScriptObject

Added property:

	public virtual JavaScriptCore.JSValue JSValue { get; }

Type Changed: WebKit.WebView

Added interface:

	AppKit.INSTouchBarProvider

Added event:

	public event System.EventHandler<WebFrameJavaScriptContextEventArgs> DidCreateJavaScriptContext;

New Type WebKit.WKAudiovisualMediaTypes

[Serializable]
[Flags]
public enum WKAudiovisualMediaTypes {
	All = 18446744073709551615,
	Audio = 1,
	None = 0,
	Video = 2,
}

New Type WebKit.WebFrameJavaScriptContextEventArgs

public class WebFrameJavaScriptContextEventArgs : System.EventArgs {
	// constructors
	public WebFrameJavaScriptContextEventArgs (JavaScriptCore.JSContext context, WebFrame frame);
	// properties
	public JavaScriptCore.JSContext Context { get; set; }
	public WebFrame Frame { get; set; }
}

New Namespace Intents

New Type In