Xamarin.Mac SDK API diff: 5.14.0 vs 6.0.0

System.Core.dll

Namespace System.Security.Cryptography.X509Certificates

Type Changed: System.Security.Cryptography.X509Certificates.RSACertificateExtensions

Added method:

public static X509Certificate2 CopyWithPrivateKey (this X509Certificate2 certificate, System.Security.Cryptography.RSA privateKey);

System.dll

Namespace System.IO.Compression

Type Changed: System.IO.Compression.DeflateStream

Added method:

protected override void ~DeflateStream ();

Xamarin.Mac.dll

Namespace AVFoundation

Type Changed: AVFoundation.AVAsset

Added property:

public virtual CoreMedia.CMTime MinimumTimeOffsetFromLive { get; }

Type Changed: AVFoundation.AVAssetExportSession

Added properties:

public static Foundation.NSString PresetAppleProRes4444Lpcm { get; }
public static Foundation.NSString PresetHevc1920x1080WithAlpha { get; }
public static Foundation.NSString PresetHevc3840x2160WithAlpha { get; }
public static Foundation.NSString PresetHevcHighestQualityWithAlpha { get; }

Added methods:

public virtual void EstimateMaximumDuration (System.Action<CoreMedia.CMTime,Foundation.NSError> handler);
public virtual System.Threading.Tasks.Task<CoreMedia.CMTime> EstimateMaximumDurationAsync ();
public virtual void EstimateOutputFileLength (System.Action<System.Int64,Foundation.NSError> handler);
public virtual System.Threading.Tasks.Task<long> EstimateOutputFileLengthAsync ();

Type Changed: AVFoundation.AVAssetExportSessionPreset

Obsoleted fields:

 [Obsolete ("Use 'AVOutputSettingsPreset.PresetHevc1920x1080' instead.")]
 PresetHevc1920x1080 = 11,
 [Obsolete ("Use 'AVOutputSettingsPreset.PresetHevc3840x2160' instead.")]
 PresetHevc3840x2160 = 12,

Type Changed: AVFoundation.AVAssetResourceLoadingRequest

Added method:

public virtual Foundation.NSData GetPersistentContentKey (Foundation.NSData keyVendorResponse, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> options, out Foundation.NSError error);

Type Changed: AVFoundation.AVAssetTrack

Added property:

public virtual bool HasAudioSampleDependencies { get; }

Type Changed: AVFoundation.AVAudio3DMixing

Added methods:

public virtual AVAudio3DMixingPointSourceInHeadMode GetPointSourceInHeadMode ();
public virtual AVAudio3DMixingSourceMode GetSourceMode ();
public virtual void SetPointSourceInHeadMode (AVAudio3DMixingPointSourceInHeadMode pointSourceInHeadMode);
public virtual void SetSourceMode (AVAudio3DMixingSourceMode sourceMode);

Type Changed: AVFoundation.AVAudioEngine

Added property:

public virtual Foundation.NSSet<AVAudioNode> AttachedNodes { get; }

Type Changed: AVFoundation.AVAudioEnvironmentNode

Added property:

public virtual AVAudioEnvironmentOutputType OutputType { get; set; }

Added methods:

public virtual AVAudio3DMixingPointSourceInHeadMode GetPointSourceInHeadMode ();
public virtual AVAudio3DMixingSourceMode GetSourceMode ();
public virtual void SetPointSourceInHeadMode (AVAudio3DMixingPointSourceInHeadMode pointSourceInHeadMode);
public virtual void SetSourceMode (AVAudio3DMixingSourceMode sourceMode);

Type Changed: AVFoundation.AVAudioIONode

Added property:

public virtual bool VoiceProcessingEnabled { get; }

Added method:

public virtual bool SetVoiceProcessingEnabled (bool enabled, out Foundation.NSError outError);

Type Changed: AVFoundation.AVAudioInputNode

Added properties:

public virtual bool VoiceProcessingAgcEnabled { get; set; }
public virtual bool VoiceProcessingBypassed { get; set; }
public virtual bool VoiceProcessingInputMuted { get; set; }

Added methods:

public virtual AVAudio3DMixingPointSourceInHeadMode GetPointSourceInHeadMode ();
public virtual AVAudio3DMixingSourceMode GetSourceMode ();
public virtual void SetPointSourceInHeadMode (AVAudio3DMixingPointSourceInHeadMode pointSourceInHeadMode);
public virtual void SetSourceMode (AVAudio3DMixingSourceMode sourceMode);

Type Changed: AVFoundation.AVAudioMixerNode

Added methods:

public virtual AVAudio3DMixingPointSourceInHeadMode GetPointSourceInHeadMode ();
public virtual AVAudio3DMixingSourceMode GetSourceMode ();
public virtual void SetPointSourceInHeadMode (AVAudio3DMixingPointSourceInHeadMode pointSourceInHeadMode);
public virtual void SetSourceMode (AVAudio3DMixingSourceMode sourceMode);

Type Changed: AVFoundation.AVAudioMixingDestination

Added methods:

public virtual AVAudio3DMixingPointSourceInHeadMode GetPointSourceInHeadMode ();
public virtual AVAudio3DMixingSourceMode GetSourceMode ();
public virtual void SetPointSourceInHeadMode (AVAudio3DMixingPointSourceInHeadMode pointSourceInHeadMode);
public virtual void SetSourceMode (AVAudio3DMixingSourceMode sourceMode);

Type Changed: AVFoundation.AVAudioPlayerNode

Added methods:

public virtual AVAudio3DMixingPointSourceInHeadMode GetPointSourceInHeadMode ();
public virtual AVAudio3DMixingSourceMode GetSourceMode ();
public virtual void SetPointSourceInHeadMode (AVAudio3DMixingPointSourceInHeadMode pointSourceInHeadMode);
public virtual void SetSourceMode (AVAudio3DMixingSourceMode sourceMode);

Type Changed: AVFoundation.AVAudioSessionErrorCode

Obsoleted fields:

 [Obsolete ("Use 'ResourceNotAvailable' instead.")]
 CodeResourceNotAvailable = 561145203,

Added values:

ExpiredSession = 561210739,
ResourceNotAvailable = 561145203,
SessionNotActive = 1768841571,

Type Changed: AVFoundation.AVAudioUnitComponentManager

Added property:

public static Foundation.NSString RegistrationsChangedNotification { get; }

Type Changed: AVFoundation.AVAudioUnitGenerator

Added methods:

public virtual AVAudio3DMixingPointSourceInHeadMode GetPointSourceInHeadMode ();
public virtual AVAudio3DMixingSourceMode GetSourceMode ();
public virtual void SetPointSourceInHeadMode (AVAudio3DMixingPointSourceInHeadMode pointSourceInHeadMode);
public virtual void SetSourceMode (AVAudio3DMixingSourceMode sourceMode);

Type Changed: AVFoundation.AVAudioUnitMidiInstrument

Added methods:

public virtual AVAudio3DMixingPointSourceInHeadMode GetPointSourceInHeadMode ();
public virtual AVAudio3DMixingSourceMode GetSourceMode ();
public virtual void SetPointSourceInHeadMode (AVAudio3DMixingPointSourceInHeadMode pointSourceInHeadMode);
public virtual void SetSourceMode (AVAudio3DMixingSourceMode sourceMode);

Type Changed: AVFoundation.AVCaptureAudioDataOutput

Added method:

public virtual Foundation.NSDictionary GetRecommendedAudioSettingsForAssetWriter (string outputFileType);

Type Changed: AVFoundation.AVCaptureDevice

Added properties:

public virtual AVCaptureColorSpace ActiveColorSpace { get; set; }
public AVCaptureDeviceType DeviceType { get; }
public virtual bool FlashAvailable { get; }
public static float MaxAvailableTorchLevel { get; }
public virtual bool TorchActive { get; }
public virtual bool TorchAvailable { get; }
public virtual float TorchLevel { get; }

Added methods:

public static AVCaptureDevice GetDefaultDevice (AVCaptureDeviceType deviceType, AVMediaTypes mediaType, AVCaptureDevicePosition position);
public static AVCaptureDevice GetDefaultDevice (AVCaptureDeviceType deviceType, string mediaType, AVCaptureDevicePosition position);
public static void RequestAccessForMediaType (AVAuthorizationMediaType mediaType, AVRequestAccessStatus completion);
public static System.Threading.Tasks.Task<bool> RequestAccessForMediaTypeAsync (AVAuthorizationMediaType mediaType);
public virtual bool SetTorchModeLevel (float torchLevel, out Foundation.NSError outError);

Type Changed: AVFoundation.AVCaptureDeviceFormat

Added properties:

public virtual AVCaptureAutoFocusSystem AutoFocusSystem { get; }
public virtual Foundation.NSNumber[] SupportedColorSpaces { get; }

Type Changed: AVFoundation.AVCaptureOutput

Added methods:

public virtual CoreGraphics.CGRect GetMetadataOutputRectOfInterestForRect (CoreGraphics.CGRect rectInOutputCoordinates);
public virtual CoreGraphics.CGRect GetRectForMetadataOutputRectOfInterest (CoreGraphics.CGRect rectInMetadataOutputCoordinates);
public virtual AVMetadataObject GetTransformedMetadataObject (AVMetadataObject metadataObject, AVCaptureConnection connection);

Type Changed: AVFoundation.AVCaptureSession

Added properties:

public virtual AVCaptureConnection[] Connections { get; }
public static Foundation.NSString Preset1920x1080 { get; }
public static Foundation.NSString Preset3840x2160 { get; }

Type Changed: AVFoundation.AVCaptureVideoDataOutput

Added methods:

public virtual string[] GetAvailableVideoCodecTypes (string outputFileType);
public AVPlayerItemVideoOutputSettings GetRecommendedVideoSettings (string videoCodecType, string outputFileType);
public virtual Foundation.NSDictionary GetRecommendedVideoSettingsForAssetWriter (string outputFileType);

Type Changed: AVFoundation.AVCaptureVideoPreviewLayer

Added methods:

public virtual CoreGraphics.CGPoint CaptureDevicePointOfInterestForPoint (CoreGraphics.CGPoint pointInLayer);
public virtual AVMetadataObject GetTransformedMetadataObject (AVMetadataObject metadataObject);
public virtual CoreGraphics.CGRect MapToLayerCoordinates (CoreGraphics.CGRect rectInMetadataOutputCoordinates);
public virtual CoreGraphics.CGRect MapToMetadataOutputCoordinates (CoreGraphics.CGRect rectInLayerCoordinates);
public virtual CoreGraphics.CGPoint PointForCaptureDevicePointOfInterest (CoreGraphics.CGPoint captureDevicePointOfInterest);

Type Changed: AVFoundation.AVCompositionTrack

Added property:

public virtual AVCompositionTrackFormatDescriptionReplacement[] FormatDescriptionReplacements { get; }

Type Changed: AVFoundation.AVContentKeyRequest

Added property:

public static Foundation.NSString RequiresValidationDataInSecureTokenKey { get; }

Added method:

public virtual bool RespondByRequestingPersistableContentKeyRequest (out Foundation.NSError error);

Type Changed: AVFoundation.AVContentKeyResponse

Added method:

public static AVContentKeyResponse Create (Foundation.NSData data, AVContentKeyResponseDataType dataType);

Type Changed: AVFoundation.AVContentKeySession

Added methods:

public virtual void InvalidateAllPersistableContentKeys (Foundation.NSData appIdentifier, Foundation.NSDictionary options, System.Action<Foundation.NSData,Foundation.NSError> handler);
public virtual System.Threading.Tasks.Task<Foundation.NSData> InvalidateAllPersistableContentKeysAsync (Foundation.NSData appIdentifier, Foundation.NSDictionary options);
public virtual void InvalidatePersistableContentKey (Foundation.NSData persistableContentKeyData, Foundation.NSDictionary options, System.Action<Foundation.NSData,Foundation.NSError> handler);
public virtual System.Threading.Tasks.Task<Foundation.NSData> InvalidatePersistableContentKeyAsync (Foundation.NSData persistableContentKeyData, Foundation.NSDictionary options);
public virtual void MakeSecureToken (Foundation.NSData persistableContentKeyData, System.Action<Foundation.NSData,Foundation.NSError> handler);
public virtual System.Threading.Tasks.Task<Foundation.NSData> MakeSecureTokenAsync (Foundation.NSData persistableContentKeyData);

Type Changed: AVFoundation.AVContentKeySessionDelegate

Added method:

public virtual void DidUpdate (AVContentKeySession session, Foundation.NSData persistableContentKey, Foundation.NSObject keyIdentifier);

Type Changed: AVFoundation.AVContentKeySessionDelegate_Extensions

Added method:

public static void DidUpdate (this IAVContentKeySessionDelegate This, AVContentKeySession session, Foundation.NSData persistableContentKey, Foundation.NSObject keyIdentifier);

Type Changed: AVFoundation.AVContentKeySystem

Obsoleted fields:

 [Obsolete ("Use 'AVContentKeySystem.SystemClearKey' instead.")]
 AVContentKeySystemClearKey = 1,

Added values:

AuthorizationToken = 2,
ClearKey = 1,

Type Changed: AVFoundation.AVMediaCharacteristic

Added properties:

public static Foundation.NSString ContainsAlphaChannel { get; }
public static Foundation.NSString IsOriginalContent { get; }

Type Changed: AVFoundation.AVMediaCharacteristics

Added value:

IsOriginalContent = 15,

Type Changed: AVFoundation.AVMetadataIdentifiers

Type Changed: AVFoundation.AVMetadataIdentifiers.QuickTimeMetadata

Added properties:

public static Foundation.NSString AutoLivePhoto { get; }
public static Foundation.NSString DetectedCatBody { get; }
public static Foundation.NSString DetectedDogBody { get; }
public static Foundation.NSString DetectedHumanBody { get; }
public static Foundation.NSString DetectedSalientObject { get; }
public static Foundation.NSString LivePhotoVitalityScore { get; }
public static Foundation.NSString LivePhotoVitalityScoringVersion { get; }
public static Foundation.NSString SpatialOverCaptureQualityScore { get; }
public static Foundation.NSString SpatialOverCaptureQualityScoringVersion { get; }

Type Changed: AVFoundation.AVMetadataObject

Added properties:

public static Foundation.NSString TypeAztecCode { get; }
public static Foundation.NSString TypeCatBody { get; }
public static Foundation.NSString TypeCode128Code { get; }
public static Foundation.NSString TypeCode39Code { get; }
public static Foundation.NSString TypeCode39Mod43Code { get; }
public static Foundation.NSString TypeCode93Code { get; }
public static Foundation.NSString TypeDataMatrixCode { get; }
public static Foundation.NSString TypeDogBody { get; }
public static Foundation.NSString TypeEAN13Code { get; }
public static Foundation.NSString TypeEAN8Code { get; }
public static Foundation.NSString TypeHumanBody { get; }
public static Foundation.NSString TypeITF14Code { get; }
public static Foundation.NSString TypeInterleaved2of5Code { get; }
public static Foundation.NSString TypePDF417Code { get; }
public static Foundation.NSString TypeQRCode { get; }
public static Foundation.NSString TypeSalientObject { get; }
public static Foundation.NSString TypeUPCECode { get; }

Type Changed: AVFoundation.AVMutableCompositionTrack

Added property:

public virtual bool Enabled { get; set; }

Added method:

public virtual void ReplaceFormatDescription (CoreMedia.CMFormatDescription originalFormatDescription, CoreMedia.CMFormatDescription replacementFormatDescription);

Type Changed: AVFoundation.AVMutableVideoComposition

Added method:

public static AVMutableVideoComposition Create (AVAsset asset, AVVideoCompositionInstruction prototypeInstruction);

Type Changed: AVFoundation.AVPlayer

Added properties:

public static bool EligibleForHdrPlayback { get; }
public static Foundation.NSString EligibleForHdrPlaybackDidChangeNotification { get; }

Type Changed: AVFoundation.AVPlayerItem

Added properties:

public virtual bool AudioSpatializationAllowed { get; set; }
public virtual bool AutomaticallyPreservesTimeOffsetFromLive { get; set; }
public virtual CoreMedia.CMTime ConfiguredTimeOffsetFromLive { get; set; }
public static Foundation.NSString MediaSelectionDidChangeNotification { get; }
public virtual CoreMedia.CMTime RecommendedTimeOffsetFromLive { get; }
public static Foundation.NSString RecommendedTimeOffsetFromLiveDidChangeNotification { get; }

Type Changed: AVFoundation.AVPlayerItem.Notifications

Added methods:

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

Type Changed: AVFoundation.AVPlayerMediaSelectionCriteria

Added constructor:

public AVPlayerMediaSelectionCriteria (AVMediaCharacteristics[] principalMediaCharacteristics, AVMediaCharacteristics[] preferredLanguages, string[] preferredMediaCharacteristics);

Added property:

public virtual AVMediaCharacteristics[] PrincipalMediaCharacteristics { get; }

Type Changed: AVFoundation.AVSampleBufferDisplayLayer

Added property:

public virtual bool PreventsDisplaySleepDuringVideoPlayback { get; set; }

Type Changed: AVFoundation.AVSampleCursor

Added property:

public virtual AVSampleCursorAudioDependencyInfo CurrentSampleAudioDependencyInfo { get; }

Type Changed: AVFoundation.AVUrlAsset

Added properties:

public static Foundation.NSString AllowsCellularAccessKey { get; }
public static Foundation.NSString AllowsConstrainedNetworkAccessKey { get; }
public static Foundation.NSString AllowsExpensiveNetworkAccessKey { get; }
public static Foundation.NSString HttpCookiesKey { get; }

Type Changed: AVFoundation.AVVideoCodecType

Added values:

AppleProRes422HQ = 6,
AppleProRes422LT = 7,
AppleProRes422Proxy = 8,
HevcWithAlpha = 9,

Type Changed: AVFoundation.AVVideoCompositing

Added methods:

public virtual void AnticipateRendering (AVVideoCompositionRenderHint renderHint);
public virtual void PrerollForRendering (AVVideoCompositionRenderHint renderHint);

Type Changed: AVFoundation.AVVideoCompositing_Extensions

Added methods:

public static void AnticipateRendering (this IAVVideoCompositing This, AVVideoCompositionRenderHint renderHint);
public static void PrerollForRendering (this IAVVideoCompositing This, AVVideoCompositionRenderHint renderHint);

New Type: AVFoundation.AVAudio3DMixingPointSourceInHeadMode

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

New Type: AVFoundation.AVAudio3DMixingSourceMode

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

New Type: AVFoundation.AVAudio3DMixing_Extensions

public static class AVAudio3DMixing_Extensions {
	// methods
	public static AVAudio3DMixingPointSourceInHeadMode GetPointSourceInHeadMode (this IAVAudio3DMixing This);
	public static AVAudio3DMixingSourceMode GetSourceMode (this IAVAudio3DMixing This);
	public static void SetPointSourceInHeadMode (this IAVAudio3DMixing This, AVAudio3DMixingPointSourceInHeadMode pointSourceInHeadMode);
	public static void SetSourceMode (this IAVAudio3DMixing This, AVAudio3DMixingSourceMode sourceMode);
}

New Type: AVFoundation.AVAudioEnvironmentOutputType

[Serializable]
public enum AVAudioEnvironmentOutputType {
	Auto = 0,
	BuiltInSpeakers = 2,
	ExternalSpeakers = 3,
	Headphones = 1,
}

New Type: AVFoundation.AVAudioSessionActivationOptions

[Serializable]
[Flags]
public enum AVAudioSessionActivationOptions {
	None = 0,
}

New Type: AVFoundation.AVAudioSessionIOType

[Serializable]
public enum AVAudioSessionIOType {
	Aggregated = 1,
	NotSpecified = 0,
}

New Type: AVFoundation.AVAudioSinkNode

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

New Type: AVFoundation.AVAudioSinkNodeReceiverHandler

public sealed delegate AVAudioSinkNodeReceiverHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public AVAudioSinkNodeReceiverHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (AudioToolbox.AudioTimeStamp timestamp, uint frameCount, ref AudioToolbox.AudioBuffers inputData, System.AsyncCallback callback, object object);
	public virtual int EndInvoke (ref AudioToolbox.AudioBuffers inputData, System.IAsyncResult result);
	public virtual int Invoke (AudioToolbox.AudioTimeStamp timestamp, uint frameCount, ref AudioToolbox.AudioBuffers inputData);
}

New Type: AVFoundation.AVAudioSourceNode

public class AVAudioSourceNode : AVFoundation.AVAudioNode, IAVAudio3DMixing, IAVAudioMixing, IAVAudioStereoMixing, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public AVAudioSourceNode (AVAudioSourceNodeRenderHandler renderHandler);
	protected AVAudioSourceNode (Foundation.NSObjectFlag t);
	protected AVAudioSourceNode (IntPtr handle);
	public AVAudioSourceNode (AVAudioFormat format, AVAudioSourceNodeRenderHandler renderHandler);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual float Obstruction { get; set; }
	public virtual float Occlusion { get; set; }
	public virtual float Pan { get; set; }
	public virtual OpenTK.Vector3 Position { get; set; }
	public virtual float Rate { get; set; }
	public virtual AVAudio3DMixingRenderingAlgorithm RenderingAlgorithm { get; set; }
	public virtual float ReverbBlend { get; set; }
	public virtual float Volume { get; set; }
	// methods
	public virtual AVAudioMixingDestination DestinationForMixer (AVAudioNode mixer, nuint bus);
	public virtual AVAudio3DMixingPointSourceInHeadMode GetPointSourceInHeadMode ();
	public virtual AVAudio3DMixingSourceMode GetSourceMode ();
	public virtual void SetPointSourceInHeadMode (AVAudio3DMixingPointSourceInHeadMode pointSourceInHeadMode);
	public virtual void SetSourceMode (AVAudio3DMixingSourceMode sourceMode);
}

New Type: AVFoundation.AVAudioSourceNodeRenderHandler

public sealed delegate AVAudioSourceNodeRenderHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public AVAudioSourceNodeRenderHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (bool isSilence, AudioToolbox.AudioTimeStamp timestamp, uint frameCunt, ref AudioToolbox.AudioBuffers outputData, System.AsyncCallback callback, object object);
	public virtual int EndInvoke (ref AudioToolbox.AudioBuffers outputData, System.IAsyncResult result);
	public virtual int Invoke (bool isSilence, AudioToolbox.AudioTimeStamp timestamp, uint frameCunt, ref AudioToolbox.AudioBuffers outputData);
}

New Type: AVFoundation.AVCaptureColorSpace

[Serializable]
public enum AVCaptureColorSpace {
	P3D65 = 1,
	Srgb = 0,
}

New Type: AVFoundation.AVCaptureDeviceDiscoverySession

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

New Type: AVFoundation.AVCaptureDeviceType

[Serializable]
public enum AVCaptureDeviceType {
	BuiltInDualCamera = 4,
	BuiltInDualWideCamera = 8,
	BuiltInDuoCamera = 3,
	BuiltInMicrophone = 0,
	BuiltInTelephotoCamera = 2,
	BuiltInTripleCamera = 7,
	BuiltInTrueDepthCamera = 5,
	BuiltInUltraWideCamera = 6,
	BuiltInWideAngleCamera = 1,
	ExternalUnknown = 9,
}

New Type: AVFoundation.AVCaptureDeviceTypeExtensions

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

New Type: AVFoundation.AVCapturePhoto

public class AVCapturePhoto : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected AVCapturePhoto (Foundation.NSObjectFlag t);
	protected AVCapturePhoto (IntPtr handle);
	// properties
	public virtual CoreGraphics.CGImage CGImageRepresentation { get; }
	public virtual AVCameraCalibrationData CameraCalibrationData { get; }
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSData FileDataRepresentation { get; }
	public virtual nint PhotoCount { get; }
	public virtual CoreVideo.CVPixelBuffer PixelBuffer { get; }
	public virtual CoreGraphics.CGImage PreviewCGImageRepresentation { get; }
	public virtual AVCaptureResolvedPhotoSettings ResolvedSettings { get; }
	public AVCaptureDeviceType SourceDeviceType { get; }
	public virtual CoreMedia.CMTime Timestamp { get; }
	public virtual Foundation.NSString WeakSourceDeviceType { get; }
}

New Type: AVFoundation.AVCapturePhotoCaptureDelegate

public class AVCapturePhotoCaptureDelegate : Foundation.NSObject, IAVCapturePhotoCaptureDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public AVCapturePhotoCaptureDelegate ();
	protected AVCapturePhotoCaptureDelegate (Foundation.NSObjectFlag t);
	protected AVCapturePhotoCaptureDelegate (IntPtr handle);
	// methods
	public virtual void DidCapturePhoto (AVCapturePhotoOutput captureOutput, AVCaptureResolvedPhotoSettings resolvedSettings);
	public virtual void DidFinishCapture (AVCapturePhotoOutput captureOutput, AVCaptureResolvedPhotoSettings resolvedSettings, Foundation.NSError error);
	public virtual void DidFinishProcessingPhoto (AVCapturePhotoOutput output, AVCapturePhoto photo, Foundation.NSError error);
	public virtual void WillBeginCapture (AVCapturePhotoOutput captureOutput, AVCaptureResolvedPhotoSettings resolvedSettings);
	public virtual void WillCapturePhoto (AVCapturePhotoOutput captureOutput, AVCaptureResolvedPhotoSettings resolvedSettings);
}

New Type: AVFoundation.AVCapturePhotoCaptureDelegate_Extensions

public static class AVCapturePhotoCaptureDelegate_Extensions {
	// methods
	public static void DidCapturePhoto (this IAVCapturePhotoCaptureDelegate This, AVCapturePhotoOutput captureOutput, AVCaptureResolvedPhotoSettings resolvedSettings);
	public static void DidFinishCapture (this IAVCapturePhotoCaptureDelegate This, AVCapturePhotoOutput captureOutput, AVCaptureResolvedPhotoSettings resolvedSettings, Foundation.NSError error);
	public static void DidFinishProcessingPhoto (this IAVCapturePhotoCaptureDelegate This, AVCapturePhotoOutput output, AVCapturePhoto photo, Foundation.NSError error);
	public static void WillBeginCapture (this IAVCapturePhotoCaptureDelegate This, AVCapturePhotoOutput captureOutput, AVCaptureResolvedPhotoSettings resolvedSettings);
	public static void WillCapturePhoto (this IAVCapturePhotoCaptureDelegate This, AVCapturePhotoOutput captureOutput, AVCaptureResolvedPhotoSettings resolvedSettings);
}

New Type: AVFoundation.AVCapturePhotoOutput

public class AVCapturePhotoOutput : AVFoundation.AVCaptureOutput, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public AVCapturePhotoOutput ();
	protected AVCapturePhotoOutput (Foundation.NSObjectFlag t);
	protected AVCapturePhotoOutput (IntPtr handle);
	// properties
	public virtual string[] AvailablePhotoCodecTypes { get; }
	public virtual Foundation.NSNumber[] AvailablePhotoPixelFormatTypes { get; }
	public override IntPtr ClassHandle { get; }
	public AVFileTypes[] GetAvailablePhotoFileTypes { get; }
	// methods
	public virtual void CapturePhoto (AVCapturePhotoSettings settings, IAVCapturePhotoCaptureDelegate cb);
	public virtual Foundation.NSNumber[] GetSupportedPhotoPixelFormatTypesForFileType (string fileType);
}

New Type: AVFoundation.AVCapturePhotoSettings

public class AVCapturePhotoSettings : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected AVCapturePhotoSettings (Foundation.NSObjectFlag t);
	protected AVCapturePhotoSettings (IntPtr handle);
	// properties
	public virtual bool AutoDualCameraFusionEnabled { get; set; }
	public virtual AVVideoCodecType[] AvailableEmbeddedThumbnailPhotoCodecTypes { get; }
	public virtual Foundation.NSNumber[] AvailablePreviewPhotoPixelFormatTypes { get; }
	public virtual bool CameraCalibrationDataDeliveryEnabled { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual bool DepthDataDeliveryEnabled { get; set; }
	public virtual bool DepthDataFiltered { get; set; }
	public virtual bool DualCameraDualPhotoDeliveryEnabled { get; set; }
	public virtual Foundation.NSDictionary EmbeddedThumbnailPhotoFormat { get; set; }
	public virtual bool EmbedsDepthDataInPhoto { get; set; }
	public virtual AVCaptureFlashMode FlashMode { get; set; }
	public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> Format { get; }

	[Obsolete ("Use 'AvailableEmbeddedThumbnailPhotoCodecTypes' instead.")]
public AVVideoCodecType[] GetAvailableEmbeddedThumbnailPhotoCodecTypes { get; }
	public virtual bool IsHighResolutionPhotoEnabled { get; set; }
	public virtual Foundation.NSUrl LivePhotoMovieFileUrl { get; set; }
	public virtual AVMetadataItem[] LivePhotoMovieMetadata { get; set; }
	public virtual string LivePhotoVideoCodecType { get; set; }
	public virtual Foundation.NSDictionary Metadata { get; set; }
	public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> PreviewPhotoFormat { get; set; }
	public virtual string ProcessedFileType { get; }
	public virtual string RawFileType { get; }
	public virtual uint RawPhotoPixelFormatType { get; }
	public virtual long UniqueID { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static AVCapturePhotoSettings Create ();
	public static AVCapturePhotoSettings FromFormat (Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> format);
	public static AVCapturePhotoSettings FromPhotoSettings (AVCapturePhotoSettings photoSettings);
	public static AVCapturePhotoSettings FromRawPixelFormatType (uint rawPixelFormatType);
	public static AVCapturePhotoSettings FromRawPixelFormatType (uint rawPixelFormatType, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> processedFormat);
	public static AVCapturePhotoSettings FromRawPixelFormatType (uint rawPixelFormatType, string rawFileType, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> processedFormat, string processedFileType);
}

New Type: AVFoundation.AVCapturePhotoSettingsThumbnailFormat

public class AVCapturePhotoSettingsThumbnailFormat : Foundation.DictionaryContainer {
	// constructors
	public AVCapturePhotoSettingsThumbnailFormat ();
	public AVCapturePhotoSettingsThumbnailFormat (Foundation.NSDictionary dictionary);
	// properties
	public Foundation.NSString Codec { get; set; }
	public Foundation.NSNumber Height { get; set; }
	public Foundation.NSNumber Width { get; set; }
}

New Type: AVFoundation.AVCaptureResolvedPhotoSettings

public class AVCaptureResolvedPhotoSettings : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected AVCaptureResolvedPhotoSettings (Foundation.NSObjectFlag t);
	protected AVCaptureResolvedPhotoSettings (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool DualCameraFusionEnabled { get; }
	public virtual CoreMedia.CMVideoDimensions EmbeddedThumbnailDimensions { get; }
	public virtual nuint ExpectedPhotoCount { get; }
	public virtual bool IsFlashEnabled { get; }
	public virtual CoreMedia.CMVideoDimensions LivePhotoMovieDimensions { get; }
	public virtual CoreMedia.CMVideoDimensions PhotoDimensions { get; }
	public virtual CoreMedia.CMVideoDimensions PreviewDimensions { get; }
	public virtual CoreMedia.CMVideoDimensions RawPhotoDimensions { get; }
	public virtual long UniqueID { get; }
}

New Type: AVFoundation.AVCompositionTrackFormatDescriptionReplacement

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

New Type: AVFoundation.AVContentKeyResponseDataType

[Serializable]
public enum AVContentKeyResponseDataType {
	AuthorizationTokenData = 1,
	FairPlayStreamingKeyResponseData = 0,
}

New Type: AVFoundation.AVMetadataBodyObject

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

New Type: AVFoundation.AVMetadataCatBodyObject

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

New Type: AVFoundation.AVMetadataDogBodyObject

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

New Type: AVFoundation.AVMetadataHumanBodyObject

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

New Type: AVFoundation.AVMetadataMachineReadableCodeObject

public class AVMetadataMachineReadableCodeObject : AVFoundation.AVMetadataObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public AVMetadataMachineReadableCodeObject ();
	protected AVMetadataMachineReadableCodeObject (Foundation.NSObjectFlag t);
	protected AVMetadataMachineReadableCodeObject (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual CoreImage.CIBarcodeDescriptor Descriptor { get; }
	public virtual string StringValue { get; }
	public virtual Foundation.NSDictionary[] WeakCorners { get; }
}

New Type: AVFoundation.AVMetadataSalientObject

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

New Type: AVFoundation.AVOutputSettingsPreset

[Serializable]
public enum AVOutputSettingsPreset {
	Preset1280x720 = 2,
	Preset1920x1080 = 3,
	Preset3840x2160 = 4,
	Preset640x480 = 0,
	Preset960x540 = 1,
	PresetHevc1920x1080 = 11,
	PresetHevc1920x1080WithAlpha = 13,
	PresetHevc3840x2160 = 12,
	PresetHevc3840x2160WithAlpha = 14,
}

New Type: AVFoundation.AVOutputSettingsPresetExtensions

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

New Type: AVFoundation.AVSampleCursorAudioDependencyInfo

public struct AVSampleCursorAudioDependencyInfo {
	// fields
	public bool IsIndependentlyDecodable;
	public nint PacketRefreshCount;
}

New Type: AVFoundation.AVSemanticSegmentationMatte

public class AVSemanticSegmentationMatte : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected AVSemanticSegmentationMatte (Foundation.NSObjectFlag t);
	protected AVSemanticSegmentationMatte (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual AVSemanticSegmentationMatteType MatteType { get; }
	public virtual CoreVideo.CVPixelBuffer MattingImage { get; }
	public virtual CoreVideo.CVPixelFormatType PixelFormatType { get; }
	// methods
	public virtual AVSemanticSegmentationMatte ApplyExifOrientation (ImageIO.CGImagePropertyOrientation exifOrientation);
	public static AVSemanticSegmentationMatte Create (Foundation.NSString imageSourceAuxiliaryDataType, Foundation.NSDictionary imageSourceAuxiliaryDataInfoDictionary, out Foundation.NSError outError);
	public virtual Foundation.NSDictionary GetDictionaryRepresentation (out string outAuxDataType);
	public virtual AVSemanticSegmentationMatte ReplaceSemanticSegmentationMatte (CoreVideo.CVPixelBuffer pixelBuffer, out Foundation.NSError outError);
}

New Type: AVFoundation.AVSemanticSegmentationMatteType

[Serializable]
public enum AVSemanticSegmentationMatteType {
	Hair = 2,
	None = 0,
	Skin = 1,
	Teeth = 3,
}

New Type: AVFoundation.AVSemanticSegmentationMatteTypeExtensions

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

New Type: AVFoundation.AVSpeechSynthesisVoice

public class AVSpeechSynthesisVoice : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public AVSpeechSynthesisVoice ();
	public AVSpeechSynthesisVoice (Foundation.NSCoder coder);
	protected AVSpeechSynthesisVoice (Foundation.NSObjectFlag t);
	protected AVSpeechSynthesisVoice (IntPtr handle);
	// properties
	public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> AudioFileSettings { get; }
	public override IntPtr ClassHandle { get; }
	public static string CurrentLanguageCode { get; }
	public virtual AVSpeechSynthesisVoiceGender Gender { get; }
	public virtual string Identifier { get; }
	public static Foundation.NSString IdentifierAlex { get; }
	public static Foundation.NSString IpaNotationAttribute { get; }
	public virtual string Language { get; }
	public virtual string Name { get; }
	public virtual AVSpeechSynthesisVoiceQuality Quality { get; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public static AVSpeechSynthesisVoice FromIdentifier (string identifier);
	public static AVSpeechSynthesisVoice FromLanguage (string language);
	public static AVSpeechSynthesisVoice[] GetSpeechVoices ();
}

New Type: AVFoundation.AVSpeechSynthesisVoiceGender

[Serializable]
public enum AVSpeechSynthesisVoiceGender {
	Female = 2,
	Male = 1,
	Unspecified = 0,
}

New Type: AVFoundation.AVSpeechSynthesisVoiceQuality

[Serializable]
public enum AVSpeechSynthesisVoiceQuality {
	Default = 1,
	Enhanced = 2,
}

New Type: AVFoundation.AVSpeechSynthesizer

public class AVSpeechSynthesizer : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public AVSpeechSynthesizer ();
	protected AVSpeechSynthesizer (Foundation.NSObjectFlag t);
	protected AVSpeechSynthesizer (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public IAVSpeechSynthesizerDelegate Delegate { get; set; }
	public virtual bool Paused { get; }
	public virtual bool Speaking { get; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// events
	public event System.EventHandler<AVSpeechSynthesizerUteranceEventArgs> DidCancelSpeechUtterance;
	public event System.EventHandler<AVSpeechSynthesizerUteranceEventArgs> DidContinueSpeechUtterance;
	public event System.EventHandler<AVSpeechSynthesizerUteranceEventArgs> DidFinishSpeechUtterance;
	public event System.EventHandler<AVSpeechSynthesizerUteranceEventArgs> DidPauseSpeechUtterance;
	public event System.EventHandler<AVSpeechSynthesizerUteranceEventArgs> DidStartSpeechUtterance;
	public event System.EventHandler<AVSpeechSynthesizerWillSpeakEventArgs> WillSpeakRangeOfSpeechString;
	// methods
	public virtual bool ContinueSpeaking ();
	protected override void Dispose (bool disposing);
	public virtual bool PauseSpeaking (AVSpeechBoundary boundary);
	public virtual void SpeakUtterance (AVSpeechUtterance utterance);
	public virtual bool StopSpeaking (AVSpeechBoundary boundary);
	public virtual void WriteUtterance (AVSpeechUtterance utterance, System.Action<AVAudioBuffer> bufferCallback);
	public virtual System.Threading.Tasks.Task<AVAudioBuffer> WriteUtteranceAsync (AVSpeechUtterance utterance);
}

New Type: AVFoundation.AVSpeechSynthesizerDelegate

public class AVSpeechSynthesizerDelegate : Foundation.NSObject, IAVSpeechSynthesizerDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public AVSpeechSynthesizerDelegate ();
	protected AVSpeechSynthesizerDelegate (Foundation.NSObjectFlag t);
	protected AVSpeechSynthesizerDelegate (IntPtr handle);
	// methods
	public virtual void DidCancelSpeechUtterance (AVSpeechSynthesizer synthesizer, AVSpeechUtterance utterance);
	public virtual void DidContinueSpeechUtterance (AVSpeechSynthesizer synthesizer, AVSpeechUtterance utterance);
	public virtual void DidFinishSpeechUtterance (AVSpeechSynthesizer synthesizer, AVSpeechUtterance utterance);
	public virtual void DidPauseSpeechUtterance (AVSpeechSynthesizer synthesizer, AVSpeechUtterance utterance);
	public virtual void DidStartSpeechUtterance (AVSpeechSynthesizer synthesizer, AVSpeechUtterance utterance);
	public virtual void WillSpeakRangeOfSpeechString (AVSpeechSynthesizer synthesizer, Foundation.NSRange characterRange, AVSpeechUtterance utterance);
}

New Type: AVFoundation.AVSpeechSynthesizerDelegate_Extensions

public static class AVSpeechSynthesizerDelegate_Extensions {
	// methods
	public static void DidCancelSpeechUtterance (this IAVSpeechSynthesizerDelegate This, AVSpeechSynthesizer synthesizer, AVSpeechUtterance utterance);
	public static void DidContinueSpeechUtterance (this IAVSpeechSynthesizerDelegate This, AVSpeechSynthesizer synthesizer, AVSpeechUtterance utterance);
	public static void DidFinishSpeechUtterance (this IAVSpeechSynthesizerDelegate This, AVSpeechSynthesizer synthesizer, AVSpeechUtterance utterance);
	public static void DidPauseSpeechUtterance (this IAVSpeechSynthesizerDelegate This, AVSpeechSynthesizer synthesizer, AVSpeechUtterance utterance);
	public static void DidStartSpeechUtterance (this IAVSpeechSynthesizerDelegate This, AVSpeechSynthesizer synthesizer, AVSpeechUtterance utterance);
	public static void WillSpeakRangeOfSpeechString (this IAVSpeechSynthesizerDelegate This, AVSpeechSynthesizer synthesizer, Foundation.NSRange characterRange, AVSpeechUtterance utterance);
}

New Type: AVFoundation.AVSpeechSynthesizerUteranceEventArgs

public class AVSpeechSynthesizerUteranceEventArgs : System.EventArgs {
	// constructors
	public AVSpeechSynthesizerUteranceEventArgs (AVSpeechUtterance utterance);
	// properties
	public AVSpeechUtterance Utterance { get; set; }
}

New Type: AVFoundation.AVSpeechSynthesizerWillSpeakEventArgs

public class AVSpeechSynthesizerWillSpeakEventArgs : System.EventArgs {
	// constructors
	public AVSpeechSynthesizerWillSpeakEventArgs (Foundation.NSRange characterRange, AVSpeechUtterance utterance);
	// properties
	public Foundation.NSRange CharacterRange { get; set; }
	public AVSpeechUtterance Utterance { get; set; }
}

New Type: AVFoundation.AVSpeechUtterance

public class AVSpeechUtterance : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public AVSpeechUtterance ();
	public AVSpeechUtterance (Foundation.NSAttributedString speechString);
	public AVSpeechUtterance (Foundation.NSCoder coder);
	protected AVSpeechUtterance (Foundation.NSObjectFlag t);
	protected AVSpeechUtterance (IntPtr handle);
	public AVSpeechUtterance (string speechString);
	// properties
	public virtual Foundation.NSAttributedString AttributedSpeechString { get; }
	public override IntPtr ClassHandle { get; }
	public static float DefaultSpeechRate { get; }
	public static float MaximumSpeechRate { get; }
	public static float MinimumSpeechRate { get; }
	public virtual float PitchMultiplier { get; set; }
	public virtual double PostUtteranceDelay { get; set; }
	public virtual double PreUtteranceDelay { get; set; }
	public virtual float Rate { get; set; }
	public virtual string SpeechString { get; }
	public virtual AVSpeechSynthesisVoice Voice { get; set; }
	public virtual float Volume { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public static AVSpeechUtterance FromString (Foundation.NSAttributedString speechString);
	public static AVSpeechUtterance FromString (string speechString);
}

New Type: AVFoundation.AVVideoCompositionRenderHint

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

New Type: AVFoundation.IAVCapturePhotoCaptureDelegate

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

New Type: AVFoundation.IAVSpeechSynthesizerDelegate

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

Namespace AVKit

Type Changed: AVKit.AVKitError

Added values:

ContentDisallowedByPasscode = -1101,
ContentDisallowedByProfile = -1102,
ContentRatingUnknown = -1100,

Type Changed: AVKit.AVPlayerView

Added properties:

public virtual bool AllowsPictureInPicturePlayback { get; set; }
public IAVPlayerViewPictureInPictureDelegate PictureInPictureDelegate { get; set; }
public virtual bool ShowsTimecodes { get; set; }
public virtual Foundation.NSObject WeakPictureInPictureDelegate { get; set; }

Added method:

protected override void Dispose (bool disposing);

New Type: AVKit.AVPictureInPictureController

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

New Type: AVKit.AVPictureInPictureControllerDelegate

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

New Type: AVKit.AVPictureInPictureControllerDelegate_Extensions

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

New Type: AVKit.AVPlayerViewPictureInPictureDelegate

public class AVPlayerViewPictureInPictureDelegate : Foundation.NSObject, IAVPlayerViewPictureInPictureDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public AVPlayerViewPictureInPictureDelegate ();
	protected AVPlayerViewPictureInPictureDelegate (Foundation.NSObjectFlag t);
	protected AVPlayerViewPictureInPictureDelegate (IntPtr handle);
	// methods
	public virtual void DidStart (AVPlayerView playerView);
	public virtual void DidStop (AVPlayerView playerView);
	public virtual void FailedToStart (AVPlayerView playerView, Foundation.NSError error);
	public virtual void RestoreUserInterface (AVPlayerView playerView, System.Action<bool> completionHandler);
	public virtual bool ShouldAutomaticallyDismiss (AVPlayerView playerView);
	public virtual void WillStart (AVPlayerView playerView);
	public virtual void WillStop (AVPlayerView playerView);
}

New Type: AVKit.AVPlayerViewPictureInPictureDelegate_Extensions

public static class AVPlayerViewPictureInPictureDelegate_Extensions {
	// methods
	public static void DidStart (this IAVPlayerViewPictureInPictureDelegate This, AVPlayerView playerView);
	public static void DidStop (this IAVPlayerViewPictureInPictureDelegate This, AVPlayerView playerView);
	public static void FailedToStart (this IAVPlayerViewPictureInPictureDelegate This, AVPlayerView playerView, Foundation.NSError error);
	public static void RestoreUserInterface (this IAVPlayerViewPictureInPictureDelegate This, AVPlayerView playerView, System.Action<bool> completionHandler);
	public static bool ShouldAutomaticallyDismiss (this IAVPlayerViewPictureInPictureDelegate This, AVPlayerView playerView);
	public static void WillStart (this IAVPlayerViewPictureInPictureDelegate This, AVPlayerView playerView);
	public static void WillStop (this IAVPlayerViewPictureInPictureDelegate This, AVPlayerView playerView);
}

New Type: AVKit.AVRoutePickerView

public class AVRoutePickerView : AppKit.NSView, AppKit.INSAccessibility, AppKit.INSAccessibilityElementProtocol, AppKit.INSAppearanceCustomization, AppKit.INSDraggingDestination, AppKit.INSTouchBarProvider, AppKit.INSUserInterfaceItemIdentification, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public AVRoutePickerView ();
	public AVRoutePickerView (CoreGraphics.CGRect frame);
	public AVRoutePickerView (Foundation.NSCoder coder);
	protected AVRoutePickerView (Foundation.NSObjectFlag t);
	protected AVRoutePickerView (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual IAVRoutePickerViewDelegate Delegate { get; set; }
	public virtual AVFoundation.AVPlayer Player { get; set; }
	public virtual bool RoutePickerButtonBordered { get; set; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	protected override void Dispose (bool disposing);
	public virtual AppKit.NSColor GetRoutePickerButtonColor (AVRoutePickerViewButtonState state);
	public virtual void SetRoutePickerButtonColor (AppKit.NSColor color, AVRoutePickerViewButtonState state);
}

New Type: AVKit.AVRoutePickerViewButtonState

[Serializable]
public enum AVRoutePickerViewButtonState {
	Active = 2,
	ActiveHighlighted = 3,
	Normal = 0,
	NormalHighlighted = 1,
}

New Type: AVKit.AVRoutePickerViewDelegate

public class AVRoutePickerViewDelegate : Foundation.NSObject, IAVRoutePickerViewDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public AVRoutePickerViewDelegate ();
	protected AVRoutePickerViewDelegate (Foundation.NSObjectFlag t);
	protected AVRoutePickerViewDelegate (IntPtr handle);
	// methods
	public virtual void DidEndPresentingRoutes (AVRoutePickerView routePickerView);
	public virtual void WillBeginPresentingRoutes (AVRoutePickerView routePickerView);
}

New Type: AVKit.AVRoutePickerViewDelegate_Extensions

public static class AVRoutePickerViewDelegate_Extensions {
	// methods
	public static void DidEndPresentingRoutes (this IAVRoutePickerViewDelegate This, AVRoutePickerView routePickerView);
	public static void WillBeginPresentingRoutes (this IAVRoutePickerViewDelegate This, AVRoutePickerView routePickerView);
}

New Type: AVKit.IAVPictureInPictureControllerDelegate

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

New Type: AVKit.IAVPlayerViewPictureInPictureDelegate

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

New Type: AVKit.IAVRoutePickerViewDelegate

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

Namespace AppKit

Type Changed: AppKit.NSLayoutManager

Added interface:

Foundation.INSSecureCoding

Added property:

public virtual bool UsesDefaultHyphenation { get; set; }

Added methods:

public void ShowGlyphs (short[] glyphs, CoreGraphics.CGPoint[] positions, nint glyphCount, NSFont font, CoreGraphics.CGAffineTransform textMatrix, Foundation.NSDictionary attributes, CoreGraphics.CGContext graphicsContext);
protected virtual void ShowGlyphs (IntPtr glyphs, IntPtr positions, nint glyphCount, NSFont font, CoreGraphics.CGAffineTransform textMatrix, Foundation.NSDictionary attributes, CoreGraphics.CGContext graphicsContext);

Type Changed: AppKit.NSScreen

Added property:

public virtual nfloat MaximumExtendedDynamicRangeColorComponentValue { get; }

Type Changed: AppKit.NSTextContainer

Added interface:

Foundation.INSSecureCoding

Namespace AudioToolbox

Type Changed: AudioToolbox.AudioChannelBit

Added values:

CenterTopRear = 33554432,
LeftTopRear = 16777216,
RightTopMiddle = 8388608,
RightTopRear = 67108864,

Type Changed: AudioToolbox.AudioChannelLabel

Added values:

CenterTopRear = 53,
LeftTopRear = 52,
RightTopMiddle = 51,
RightTopRear = 54,

Type Changed: AudioToolbox.AudioChannelLayoutTag

Added values:

Atmos_5_1_2 = 12713992,
Atmos_7_1_4 = 12582924,
Atmos_9_1_6 = 12648464,
Wave_2_1 = 8716291,
Wave_3_0 = 7405571,
Wave_4_0_A = 8650756,
Wave_4_0_B = 12124164,
Wave_5_0_A = 7667717,
Wave_5_0_B = 12189701,
Wave_5_1_A = 7929862,
Wave_5_1_B = 12255238,
Wave_6_1 = 12320775,
Wave_7_1 = 12386312,

Type Changed: AudioToolbox.AudioFileType

Added value:

LatmInLoas = 1819238771,

Type Changed: AudioToolbox.AudioFormatType

Added values:

LatmInLoas = 1819238771,
MpegD_Usac = 1970495843,

New Type: AudioToolbox.AudioIndependentPacketTranslation

public struct AudioIndependentPacketTranslation {
	// fields
	public long IndependentlyDecodablePacket;
	public long Packet;
}

New Type: AudioToolbox.AudioPacketDependencyInfoTranslation

public struct AudioPacketDependencyInfoTranslation {
	// fields
	public uint NumberPrerollPackets;
	public long Packet;
	// properties
	public bool IsIndependentlyDecodable { get; set; }
}

New Type: AudioToolbox.AudioPacketRangeByteCountTranslation

public struct AudioPacketRangeByteCountTranslation {
	// fields
	public long ByteCountUpperBound;
	public long Packet;
	public long PacketCount;
}

New Type: AudioToolbox.AudioPacketRollDistanceTranslation

public struct AudioPacketRollDistanceTranslation {
	// fields
	public long Packet;
	public long RollDistance;
}

New Type: AudioToolbox.AudioSettingsFlags

[Serializable]
[Flags]
public enum AudioSettingsFlags {
	ExpertParameter = 1,
	InvisibleParameter = 2,
	MetaParameter = 4,
	UserInterfaceParameter = 8,
}

Namespace AudioUnit

Type Changed: AudioUnit.AUAudioUnit

Added properties:

public virtual bool IsLoadedInProcess { get; }
public virtual bool SupportsUserPresets { get; }
public virtual AUAudioUnitPreset[] UserPresets { get; }

Added methods:

public virtual bool DeleteUserPreset (AUAudioUnitPreset userPreset, out Foundation.NSError outError);
public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> GetPresetState (AUAudioUnitPreset userPreset, out Foundation.NSError outError);
public virtual bool SaveUserPreset (AUAudioUnitPreset userPreset, out Foundation.NSError outError);

Type Changed: AudioUnit.AudioTypeEffect

Added value:

Reverb2 = 1920361010,

Type Changed: AudioUnit.AudioTypeOutput

Added value:

Remote = 1919512419,

Namespace Contacts

Type Changed: Contacts.CNContactFetchRequest

Modified base type:

-Foundation.NSObject
+Contacts.CNFetchRequest

Type Changed: Contacts.CNContactStore

Added property:

public virtual Foundation.NSData CurrentHistoryToken { get; }

Added methods:

public virtual Contacts.CNFetchResult<Foundation.NSEnumerator<CNChangeHistoryEvent>> GetEnumeratorForChangeHistory (CNChangeHistoryFetchRequest request, out Foundation.NSError error);
public virtual Contacts.CNFetchResult<Foundation.NSEnumerator<CNContact>> GetEnumeratorForContact (CNContactFetchRequest request, out Foundation.NSError error);

Type Changed: Contacts.CNErrorCode

Added values:

FeatureDisabledByUser = 103,
ParentContainerNotWritable = 207,
RecordNotWritable = 206,
UnauthorizedKeys = 102,

Type Changed: Contacts.CNLabelContactRelationKey

Added properties:

public static Foundation.NSString Aunt { get; }
public static Foundation.NSString AuntFathersBrothersWife { get; }
public static Foundation.NSString AuntFathersElderBrothersWife { get; }
public static Foundation.NSString AuntFathersElderSister { get; }
public static Foundation.NSString AuntFathersSister { get; }
public static Foundation.NSString AuntFathersYoungerBrothersWife { get; }
public static Foundation.NSString AuntFathersYoungerSister { get; }
public static Foundation.NSString AuntMothersBrothersWife { get; }
public static Foundation.NSString AuntMothersElderSister { get; }
public static Foundation.NSString AuntMothersSister { get; }
public static Foundation.NSString AuntMothersYoungerSister { get; }
public static Foundation.NSString AuntParentsElderSister { get; }
public static Foundation.NSString AuntParentsSister { get; }
public static Foundation.NSString AuntParentsYoungerSister { get; }
public static Foundation.NSString Boyfriend { get; }
public static Foundation.NSString BrotherInLaw { get; }
public static Foundation.NSString BrotherInLawElderSistersHusband { get; }
public static Foundation.NSString BrotherInLawHusbandsBrother { get; }
public static Foundation.NSString BrotherInLawHusbandsSistersHusband { get; }
public static Foundation.NSString BrotherInLawSistersHusband { get; }
public static Foundation.NSString BrotherInLawSpousesBrother { get; }
public static Foundation.NSString BrotherInLawWifesBrother { get; }
public static Foundation.NSString BrotherInLawWifesSistersHusband { get; }
public static Foundation.NSString BrotherInLawYoungerSistersHusband { get; }
public static Foundation.NSString ChildInLaw { get; }
public static Foundation.NSString CoBrotherInLaw { get; }
public static Foundation.NSString CoFatherInLaw { get; }
public static Foundation.NSString CoMotherInLaw { get; }
public static Foundation.NSString CoParentInLaw { get; }
public static Foundation.NSString CoSiblingInLaw { get; }
public static Foundation.NSString CoSisterInLaw { get; }
public static Foundation.NSString Colleague { get; }
public static Foundation.NSString Cousin { get; }
public static Foundation.NSString CousinFathersBrothersDaughter { get; }
public static Foundation.NSString CousinFathersBrothersSon { get; }
public static Foundation.NSString CousinFathersSistersDaughter { get; }
public static Foundation.NSString CousinFathersSistersSon { get; }
public static Foundation.NSString CousinGrandparentsSiblingsChild { get; }
public static Foundation.NSString CousinGrandparentsSiblingsDaughter { get; }
public static Foundation.NSString CousinGrandparentsSiblingsSon { get; }
public static Foundation.NSString CousinMothersBrothersDaughter { get; }
public static Foundation.NSString CousinMothersBrothersSon { get; }
public static Foundation.NSString CousinMothersSistersDaughter { get; }
public static Foundation.NSString CousinMothersSistersSon { get; }
public static Foundation.NSString CousinOrSiblingsChild { get; }
public static Foundation.NSString CousinParentsSiblingsChild { get; }
public static Foundation.NSString CousinParentsSiblingsDaughter { get; }
public static Foundation.NSString CousinParentsSiblingsSon { get; }
public static Foundation.NSString DaughterInLaw { get; }
public static Foundation.NSString DaughterInLawOrSisterInLaw { get; }
public static Foundation.NSString DaughterInLawOrStepdaughter { get; }
public static Foundation.NSString ElderBrother { get; }
public static Foundation.NSString ElderBrotherInLaw { get; }
public static Foundation.NSString ElderCousin { get; }
public static Foundation.NSString ElderCousinFathersBrothersDaughter { get; }
public static Foundation.NSString ElderCousinFathersBrothersSon { get; }
public static Foundation.NSString ElderCousinFathersSistersDaughter { get; }
public static Foundation.NSString ElderCousinFathersSistersSon { get; }
public static Foundation.NSString ElderCousinMothersBrothersDaughter { get; }
public static Foundation.NSString ElderCousinMothersBrothersSon { get; }
public static Foundation.NSString ElderCousinMothersSiblingsDaughterOrFathersSistersDaughter { get; }
public static Foundation.NSString ElderCousinMothersSiblingsSonOrFathersSistersSon { get; }
public static Foundation.NSString ElderCousinMothersSistersDaughter { get; }
public static Foundation.NSString ElderCousinMothersSistersSon { get; }
public static Foundation.NSString ElderCousinParentsSiblingsDaughter { get; }
public static Foundation.NSString ElderCousinParentsSiblingsSon { get; }
public static Foundation.NSString ElderSibling { get; }
public static Foundation.NSString ElderSiblingInLaw { get; }
public static Foundation.NSString ElderSister { get; }
public static Foundation.NSString ElderSisterInLaw { get; }
public static Foundation.NSString EldestBrother { get; }
public static Foundation.NSString EldestSister { get; }
public static Foundation.NSString FatherInLaw { get; }
public static Foundation.NSString FatherInLawHusbandsFather { get; }
public static Foundation.NSString FatherInLawOrStepfather { get; }
public static Foundation.NSString FatherInLawWifesFather { get; }
public static Foundation.NSString FemaleCousin { get; }
public static Foundation.NSString FemaleFriend { get; }
public static Foundation.NSString FemalePartner { get; }
public static Foundation.NSString Girlfriend { get; }
public static Foundation.NSString GirlfriendOrBoyfriend { get; }
public static Foundation.NSString Grandaunt { get; }
public static Foundation.NSString Grandchild { get; }
public static Foundation.NSString GrandchildOrSiblingsChild { get; }
public static Foundation.NSString Granddaughter { get; }
public static Foundation.NSString GranddaughterDaughtersDaughter { get; }
public static Foundation.NSString GranddaughterSonsDaughter { get; }
public static Foundation.NSString Grandfather { get; }
public static Foundation.NSString GrandfatherFathersFather { get; }
public static Foundation.NSString GrandfatherMothersFather { get; }
public static Foundation.NSString Grandmother { get; }
public static Foundation.NSString GrandmotherFathersMother { get; }
public static Foundation.NSString GrandmotherMothersMother { get; }
public static Foundation.NSString Grandnephew { get; }
public static Foundation.NSString GrandnephewBrothersGrandson { get; }
public static Foundation.NSString GrandnephewSistersGrandson { get; }
public static Foundation.NSString Grandniece { get; }
public static Foundation.NSString GrandnieceBrothersGranddaughter { get; }
public static Foundation.NSString GrandnieceSistersGranddaughter { get; }
public static Foundation.NSString Grandparent { get; }
public static Foundation.NSString Grandson { get; }
public static Foundation.NSString GrandsonDaughtersSon { get; }
public static Foundation.NSString GrandsonSonsSon { get; }
public static Foundation.NSString Granduncle { get; }
public static Foundation.NSString GreatGrandchild { get; }
public static Foundation.NSString GreatGrandchildOrSiblingsGrandchild { get; }
public static Foundation.NSString GreatGranddaughter { get; }
public static Foundation.NSString GreatGrandfather { get; }
public static Foundation.NSString GreatGrandmother { get; }
public static Foundation.NSString GreatGrandparent { get; }
public static Foundation.NSString GreatGrandson { get; }
public static Foundation.NSString Husband { get; }
public static Foundation.NSString MaleCousin { get; }
public static Foundation.NSString MaleFriend { get; }
public static Foundation.NSString MalePartner { get; }
public static Foundation.NSString MotherInLaw { get; }
public static Foundation.NSString MotherInLawHusbandsMother { get; }
public static Foundation.NSString MotherInLawOrStepmother { get; }
public static Foundation.NSString MotherInLawWifesMother { get; }
public static Foundation.NSString Nephew { get; }
public static Foundation.NSString NephewBrothersSon { get; }
public static Foundation.NSString NephewBrothersSonOrHusbandsSiblingsSon { get; }
public static Foundation.NSString NephewOrCousin { get; }
public static Foundation.NSString NephewSistersSon { get; }
public static Foundation.NSString NephewSistersSonOrWifesSiblingsSon { get; }
public static Foundation.NSString Niece { get; }
public static Foundation.NSString NieceBrothersDaughter { get; }
public static Foundation.NSString NieceBrothersDaughterOrHusbandsSiblingsDaughter { get; }
public static Foundation.NSString NieceOrCousin { get; }
public static Foundation.NSString NieceSistersDaughter { get; }
public static Foundation.NSString NieceSistersDaughterOrWifesSiblingsDaughter { get; }
public static Foundation.NSString ParentInLaw { get; }
public static Foundation.NSString ParentsElderSibling { get; }
public static Foundation.NSString ParentsSibling { get; }
public static Foundation.NSString ParentsSiblingFathersElderSibling { get; }
public static Foundation.NSString ParentsSiblingFathersSibling { get; }
public static Foundation.NSString ParentsSiblingFathersYoungerSibling { get; }
public static Foundation.NSString ParentsSiblingMothersElderSibling { get; }
public static Foundation.NSString ParentsSiblingMothersSibling { get; }
public static Foundation.NSString ParentsSiblingMothersYoungerSibling { get; }
public static Foundation.NSString ParentsYoungerSibling { get; }
public static Foundation.NSString Sibling { get; }
public static Foundation.NSString SiblingInLaw { get; }
public static Foundation.NSString SiblingsChild { get; }
public static Foundation.NSString SisterInLaw { get; }
public static Foundation.NSString SisterInLawBrothersWife { get; }
public static Foundation.NSString SisterInLawElderBrothersWife { get; }
public static Foundation.NSString SisterInLawHusbandsBrothersWife { get; }
public static Foundation.NSString SisterInLawHusbandsSister { get; }
public static Foundation.NSString SisterInLawSpousesSister { get; }
public static Foundation.NSString SisterInLawWifesBrothersWife { get; }
public static Foundation.NSString SisterInLawWifesSister { get; }
public static Foundation.NSString SisterInLawYoungerBrothersWife { get; }
public static Foundation.NSString SonInLaw { get; }
public static Foundation.NSString SonInLawOrBrotherInLaw { get; }
public static Foundation.NSString SonInLawOrStepson { get; }
public static Foundation.NSString Stepbrother { get; }
public static Foundation.NSString Stepchild { get; }
public static Foundation.NSString Stepdaughter { get; }
public static Foundation.NSString Stepfather { get; }
public static Foundation.NSString Stepmother { get; }
public static Foundation.NSString Stepparent { get; }
public static Foundation.NSString Stepsister { get; }
public static Foundation.NSString Stepson { get; }
public static Foundation.NSString Teacher { get; }
public static Foundation.NSString Uncle { get; }
public static Foundation.NSString UncleFathersBrother { get; }
public static Foundation.NSString UncleFathersElderBrother { get; }
public static Foundation.NSString UncleFathersElderSistersHusband { get; }
public static Foundation.NSString UncleFathersSistersHusband { get; }
public static Foundation.NSString UncleFathersYoungerBrother { get; }
public static Foundation.NSString UncleFathersYoungerSistersHusband { get; }
public static Foundation.NSString UncleMothersBrother { get; }
public static Foundation.NSString UncleMothersElderBrother { get; }
public static Foundation.NSString UncleMothersSistersHusband { get; }
public static Foundation.NSString UncleMothersYoungerBrother { get; }
public static Foundation.NSString UncleParentsBrother { get; }
public static Foundation.NSString UncleParentsElderBrother { get; }
public static Foundation.NSString UncleParentsYoungerBrother { get; }
public static Foundation.NSString Wife { get; }
public static Foundation.NSString YoungerBrother { get; }
public static Foundation.NSString YoungerBrotherInLaw { get; }
public static Foundation.NSString YoungerCousin { get; }
public static Foundation.NSString YoungerCousinFathersBrothersDaughter { get; }
public static Foundation.NSString YoungerCousinFathersBrothersSon { get; }
public static Foundation.NSString YoungerCousinFathersSistersDaughter { get; }
public static Foundation.NSString YoungerCousinFathersSistersSon { get; }
public static Foundation.NSString YoungerCousinMothersBrothersDaughter { get; }
public static Foundation.NSString YoungerCousinMothersBrothersSon { get; }
public static Foundation.NSString YoungerCousinMothersSiblingsDaughterOrFathersSistersDaughter { get; }
public static Foundation.NSString YoungerCousinMothersSiblingsSonOrFathersSistersSon { get; }
public static Foundation.NSString YoungerCousinMothersSistersDaughter { get; }
public static Foundation.NSString YoungerCousinMothersSistersSon { get; }
public static Foundation.NSString YoungerCousinParentsSiblingsDaughter { get; }
public static Foundation.NSString YoungerCousinParentsSiblingsSon { get; }
public static Foundation.NSString YoungerSibling { get; }
public static Foundation.NSString YoungerSiblingInLaw { get; }
public static Foundation.NSString YoungerSister { get; }
public static Foundation.NSString YoungerSisterInLaw { get; }
public static Foundation.NSString YoungestBrother { get; }
public static Foundation.NSString YoungestSister { get; }

Type Changed: Contacts.CNLabelKey

Added property:

public static Foundation.NSString School { get; }

New Type: Contacts.CNChangeHistoryAddContactEvent

public class CNChangeHistoryAddContactEvent : Contacts.CNChangeHistoryEvent, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CNChangeHistoryAddContactEvent (Foundation.NSCoder coder);
	protected CNChangeHistoryAddContactEvent (Foundation.NSObjectFlag t);
	protected CNChangeHistoryAddContactEvent (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual CNContact Contact { get; }
	public virtual string ContainerIdentifier { get; }
}

New Type: Contacts.CNChangeHistoryAddGroupEvent

public class CNChangeHistoryAddGroupEvent : Contacts.CNChangeHistoryEvent, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CNChangeHistoryAddGroupEvent (Foundation.NSCoder coder);
	protected CNChangeHistoryAddGroupEvent (Foundation.NSObjectFlag t);
	protected CNChangeHistoryAddGroupEvent (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string ContainerIdentifier { get; }
	public virtual CNGroup Group { get; }
}

New Type: Contacts.CNChangeHistoryAddMemberToGroupEvent

public class CNChangeHistoryAddMemberToGroupEvent : Contacts.CNChangeHistoryEvent, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CNChangeHistoryAddMemberToGroupEvent (Foundation.NSCoder coder);
	protected CNChangeHistoryAddMemberToGroupEvent (Foundation.NSObjectFlag t);
	protected CNChangeHistoryAddMemberToGroupEvent (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual CNGroup Group { get; }
	public virtual CNContact Member { get; }
}

New Type: Contacts.CNChangeHistoryAddSubgroupToGroupEvent

public class CNChangeHistoryAddSubgroupToGroupEvent : Contacts.CNChangeHistoryEvent, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CNChangeHistoryAddSubgroupToGroupEvent (Foundation.NSCoder coder);
	protected CNChangeHistoryAddSubgroupToGroupEvent (Foundation.NSObjectFlag t);
	protected CNChangeHistoryAddSubgroupToGroupEvent (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual CNGroup Group { get; }
	public virtual CNGroup Subgroup { get; }
}

New Type: Contacts.CNChangeHistoryDeleteContactEvent

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

New Type: Contacts.CNChangeHistoryDeleteGroupEvent

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

New Type: Contacts.CNChangeHistoryDropEverythingEvent

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

New Type: Contacts.CNChangeHistoryEvent

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

New Type: Contacts.CNChangeHistoryEventVisitor_Extensions

public static class CNChangeHistoryEventVisitor_Extensions {
	// methods
	public static void AddGroup (this ICNChangeHistoryEventVisitor This, CNChangeHistoryAddGroupEvent event);
	public static void AddMemberToGroup (this ICNChangeHistoryEventVisitor This, CNChangeHistoryAddMemberToGroupEvent event);
	public static void AddSubgroupToGroup (this ICNChangeHistoryEventVisitor This, CNChangeHistoryAddSubgroupToGroupEvent event);
	public static void DeleteGroup (this ICNChangeHistoryEventVisitor This, CNChangeHistoryDeleteGroupEvent event);
	public static void RemoveMemberFromGroup (this ICNChangeHistoryEventVisitor This, CNChangeHistoryRemoveMemberFromGroupEvent event);
	public static void RemoveSubgroupFromGroup (this ICNChangeHistoryEventVisitor This, CNChangeHistoryRemoveSubgroupFromGroupEvent event);
	public static void UpdateGroup (this ICNChangeHistoryEventVisitor This, CNChangeHistoryUpdateGroupEvent event);
}

New Type: Contacts.CNChangeHistoryFetchRequest

public class CNChangeHistoryFetchRequest : Contacts.CNFetchRequest, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CNChangeHistoryFetchRequest ();
	public CNChangeHistoryFetchRequest (Foundation.NSCoder coder);
	protected CNChangeHistoryFetchRequest (Foundation.NSObjectFlag t);
	protected CNChangeHistoryFetchRequest (IntPtr handle);
	// properties
	public virtual ICNKeyDescriptor[] AdditionalContactKeyDescriptors { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual string[] ExcludedTransactionAuthors { get; set; }
	public virtual bool IncludeGroupChanges { get; set; }
	public virtual bool MutableObjects { get; set; }
	public virtual bool ShouldUnifyResults { get; set; }
	public virtual Foundation.NSData StartingToken { get; set; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Contacts.CNChangeHistoryRemoveMemberFromGroupEvent

public class CNChangeHistoryRemoveMemberFromGroupEvent : Contacts.CNChangeHistoryEvent, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CNChangeHistoryRemoveMemberFromGroupEvent (Foundation.NSCoder coder);
	protected CNChangeHistoryRemoveMemberFromGroupEvent (Foundation.NSObjectFlag t);
	protected CNChangeHistoryRemoveMemberFromGroupEvent (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual CNGroup Group { get; }
	public virtual CNContact Member { get; }
}

New Type: Contacts.CNChangeHistoryRemoveSubgroupFromGroupEvent

public class CNChangeHistoryRemoveSubgroupFromGroupEvent : Contacts.CNChangeHistoryEvent, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CNChangeHistoryRemoveSubgroupFromGroupEvent (Foundation.NSCoder coder);
	protected CNChangeHistoryRemoveSubgroupFromGroupEvent (Foundation.NSObjectFlag t);
	protected CNChangeHistoryRemoveSubgroupFromGroupEvent (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual CNGroup Group { get; }
	public virtual CNGroup Subgroup { get; }
}

New Type: Contacts.CNChangeHistoryUpdateContactEvent

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

New Type: Contacts.CNChangeHistoryUpdateGroupEvent

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

New Type: Contacts.CNFetchRequest

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

New Type: Contacts.CNFetchResult`1

public class CNFetchResult`1 : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected CNFetchResult`1 (Foundation.NSObjectFlag t);
	protected CNFetchResult`1 (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSData CurrentHistoryToken { get; }
	public virtual Foundation.NSObject Value { get; }
}

New Type: Contacts.ICNChangeHistoryEventVisitor

public interface ICNChangeHistoryEventVisitor : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void AddContact (CNChangeHistoryAddContactEvent event);
	public virtual void DeleteContact (CNChangeHistoryDeleteContactEvent event);
	public virtual void DropEverything (CNChangeHistoryDropEverythingEvent event);
	public virtual void UpdateContact (CNChangeHistoryUpdateContactEvent event);
}

Namespace CoreAnimation

Type Changed: CoreAnimation.CALayer

Added property:

public virtual CACornerCurve CornerCurve { get; set; }

Added method:

public static nfloat GetCornerCurveExpansionFactor (CACornerCurve curve);

Type Changed: CoreAnimation.CAMetalLayer

Added properties:

public virtual CoreGraphics.CGColorSpace ColorSpace { get; set; }
public virtual CAEdrMetadata EdrMetadata { get; set; }
public virtual Metal.IMTLDevice PreferredDevice { get; }

New Type: CoreAnimation.CACornerCurve

[Serializable]
public enum CACornerCurve {
	Circular = 0,
	Continuous = 1,
}

New Type: CoreAnimation.CACornerCurveExtensions

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

New Type: CoreAnimation.CAEdrMetadata

public class CAEdrMetadata : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected CAEdrMetadata (Foundation.NSObjectFlag t);
	protected CAEdrMetadata (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static CAEdrMetadata HlgMetadata { get; }
	// methods
	public static CAEdrMetadata GetHdr10Metadata (Foundation.NSData displayData, Foundation.NSData contentData, float scale);
	public static CAEdrMetadata GetHdr10Metadata (float minNits, float maxNits, float scale);
}

Namespace CoreBluetooth

Type Changed: CoreBluetooth.CBCentralManager

Added method:

public void ConnectPeripheral (CBPeripheral peripheral, CBConnectPeripheralOptions options);

Type Changed: CoreBluetooth.CBManager

Added property:

public static CBManagerAuthorization Authorization { get; }

New Type: CoreBluetooth.CBConnectPeripheralOptions

public class CBConnectPeripheralOptions : Foundation.DictionaryContainer {
	// constructors
	public CBConnectPeripheralOptions ();
	public CBConnectPeripheralOptions (Foundation.NSDictionary dictionary);
	// properties
	public bool? NotifyOnConnection { get; set; }
	public bool? NotifyOnDisconnection { get; set; }
	public bool? NotifyOnNotification { get; set; }
}

New Type: CoreBluetooth.CBConnectionEvent

[Serializable]
public enum CBConnectionEvent {
	Connected = 1,
	Disconnected = 0,
}

New Type: CoreBluetooth.CBManagerAuthorization

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

Namespace CoreData

Type Changed: CoreData.NSAttributeDescription

Added property:

public virtual bool PreservesValueInHistoryOnDeletion { get; set; }

Type Changed: CoreData.NSPersistentHistoryChange

Added properties:

public static NSEntityDescription EntityDescription { get; }
public static NSFetchRequest FetchRequest { get; }

Added method:

public static NSEntityDescription GetEntityDescription (NSManagedObjectContext context);

Type Changed: CoreData.NSPersistentHistoryChangeRequest

Added property:

public virtual NSFetchRequest FetchRequest { get; set; }

Added method:

public static NSPersistentHistoryChangeRequest FetchHistory (NSFetchRequest fetchRequest);

Type Changed: CoreData.NSPersistentHistoryTransaction

Added properties:

public static NSEntityDescription EntityDescription { get; }
public static NSFetchRequest FetchRequest { get; }

Added method:

public static NSEntityDescription GetEntityDescription (NSManagedObjectContext context);

Type Changed: CoreData.NSPersistentStore

Added properties:

public static Foundation.NSString RemoteChangeNotificationPostOptionKey { get; }
public static Foundation.NSString StoreRemoteChangeNotification { get; }

Type Changed: CoreData.NSPersistentStoreCoordinator

Added method:

public virtual NSPersistentHistoryToken GetCurrentPersistentHistoryToken (Foundation.NSObject[] stores);

Type Changed: CoreData.NSPersistentStoreDescription

Added property:

public virtual NSPersistentCloudKitContainerOptions CloudKitContainerOptions { get; set; }

New Type: CoreData.NSBatchInsertRequest

public class NSBatchInsertRequest : CoreData.NSPersistentStoreRequest, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSBatchInsertRequest ();
	protected NSBatchInsertRequest (Foundation.NSObjectFlag t);
	protected NSBatchInsertRequest (IntPtr handle);
	public NSBatchInsertRequest (NSEntityDescription entity, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject>[] dictionaries);
	public NSBatchInsertRequest (string entityName, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject>[] dictionaries);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual NSEntityDescription Entity { get; }
	public virtual string EntityName { get; }
	public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject>[] ObjectsToInsert { get; set; }
	public virtual NSBatchInsertRequestResultType ResultType { get; set; }
	// methods
	public static NSBatchInsertRequest BatchInsertRequest (string entityName, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject>[] dictionaries);
}

New Type: CoreData.NSBatchInsertRequestResultType

[Serializable]
public enum NSBatchInsertRequestResultType {
	Count = 2,
	ObjectIds = 1,
	StatusOnly = 0,
}

New Type: CoreData.NSBatchInsertResult

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

New Type: CoreData.NSDerivedAttributeDescription

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

New Type: CoreData.NSPersistentCloudKitContainer

public class NSPersistentCloudKitContainer : CoreData.NSPersistentContainer, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NSPersistentCloudKitContainer (Foundation.NSObjectFlag t);
	protected NSPersistentCloudKitContainer (IntPtr handle);
	public NSPersistentCloudKitContainer (string name, NSManagedObjectModel model);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual CloudKit.CKRecord GetRecord (NSManagedObjectID managedObjectId);
	public virtual CloudKit.CKRecordID GetRecordId (NSManagedObjectID managedObjectId);
	public virtual Foundation.NSDictionary<NSManagedObjectID,CloudKit.CKRecordID> GetRecordIds (NSManagedObjectID[] managedObjectIds);
	public virtual Foundation.NSDictionary<NSManagedObjectID,CloudKit.CKRecord> GetRecords (NSManagedObjectID[] managedObjectIds);
	public virtual bool Initialize (NSPersistentCloudKitContainerSchemaInitializationOptions options, out Foundation.NSError error);
}

New Type: CoreData.NSPersistentCloudKitContainerOptions

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

New Type: CoreData.NSPersistentCloudKitContainerSchemaInitializationOptions

[Serializable]
[Flags]
public enum NSPersistentCloudKitContainerSchemaInitializationOptions {
	DryRun = 2,
	None = 0,
	PrintSchema = 4,
}

New Type: CoreData.NSPersistentStoreRemoteChangeEventArgs

public class NSPersistentStoreRemoteChangeEventArgs : Foundation.NSNotificationEventArgs {
	// constructors
	public NSPersistentStoreRemoteChangeEventArgs (Foundation.NSNotification notification);
	// properties
	public NSPersistentHistoryToken PersistentHistoryTracking { get; }
	public string Url { get; }
	public Foundation.NSUuid Uuid { get; }
}

Namespace CoreGraphics

Type Changed: CoreGraphics.CGColor

Added methods:

public static CGColor CreateGenericGrayGamma2_2 (nfloat gray, nfloat alpha);
public static CGColor CreateSrgb (nfloat red, nfloat green, nfloat blue, nfloat alpha);

Type Changed: CoreGraphics.CGColorConversionInfo

Modified constructors:

-public CGColorConversionInfo (CGColorSpace src, CGColorSpace dst---destination---)
+public CGColorConversionInfo (CGColorSpace source, CGColorSpace +++dst+++destination)

Added constructors:

public CGColorConversionInfo (CGColorSpace source, CGColorSpace destination, CGColorConversionOptions options);
public CGColorConversionInfo (CGColorSpace source, CGColorSpace destination, Foundation.NSDictionary options);

Type Changed: CoreGraphics.CGColorSpace

Added property:

public bool IsHdr { get; }

Type Changed: CoreGraphics.CGColorSpaceNames

Added properties:

public static Foundation.NSString DisplayP3_Hlg { get; }
public static Foundation.NSString DisplayP3_PQ_Eotf { get; }
public static Foundation.NSString ExtendedLinearDisplayP3 { get; }
public static Foundation.NSString ExtendedLinearItur_2020 { get; }
public static Foundation.NSString Itur_2020_Hlg { get; }
public static Foundation.NSString Itur_2020_PQ_Eotf { get; }

Type Changed: CoreGraphics.CGContextPDF

Added methods:

public void BeginTag (CGPdfTagType tagType, CGPdfTagProperties tagProperties);
public void BeginTag (CGPdfTagType tagType, Foundation.NSDictionary tagProperties);
public void EndTag ();

New Type: CoreGraphics.CGPdfTagProperties

public class CGPdfTagProperties : Foundation.DictionaryContainer {
	// constructors
	public CGPdfTagProperties ();
	public CGPdfTagProperties (Foundation.NSDictionary dictionary);
	// properties
	public string ActualText { get; set; }
	public string AlternativeText { get; set; }
	public string LanguageText { get; set; }
	public string TitleText { get; set; }
}

New Type: CoreGraphics.CGPdfTagType

[Serializable]
public enum CGPdfTagType {
	Annotation = 507,
	Art = 102,
	Bibliography = 504,
	BlockQuote = 105,
	Caption = 106,
	Code = 505,
	Div = 104,
	Document = 100,
	Figure = 700,
	Form = 702,
	Formula = 701,
	Header = 201,
	Header1 = 202,
	Header2 = 203,
	Header3 = 204,
	Header4 = 205,
	Header5 = 206,
	Header6 = 207,
	Index = 109,
	Label = 302,
	Link = 506,
	List = 300,
	ListBody = 303,
	ListItem = 301,
	NonStructure = 110,
	Note = 502,
	Paragraph = 200,
	Part = 101,
	Private = 111,
	Quote = 501,
	Reference = 503,
	Ruby = 600,
	RubyAnnotationText = 602,
	RubyBaseText = 601,
	RubyPunctuation = 603,
	Section = 103,
	Span = 500,
	Table = 400,
	TableBody = 405,
	TableDataCell = 403,
	TableFooter = 406,
	TableHeader = 404,
	TableHeaderCell = 402,
	TableRow = 401,
	Toc = 107,
	Toci = 108,
	Warichu = 604,
	WarichuPunctiation = 606,
	WarichuText = 605,
}

New Type: CoreGraphics.CGPdfTagType_Extensions

public static class CGPdfTagType_Extensions {
	// methods
	public static string GetName (this CGPdfTagType self);
}

Namespace CoreImage

Type Changed: CoreImage.CIAreaAverage

Modified base type:

-CoreImage.CIFilter
+CoreImage.CIReductionFilter

Removed property:

public CIVector Extent { get; set; }

New Type: CoreImage.CIDocumentEnhancer

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

New Type: CoreImage.CIGaborGradients

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

New Type: CoreImage.CIKMeans

public class CIKMeans : CoreImage.CIReductionFilter, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CIKMeans ();
	public CIKMeans (Foundation.NSCoder coder);
	protected CIKMeans (Foundation.NSObjectFlag t);
	public CIKMeans (IntPtr handle);
	// properties
	public float Count { get; set; }
	public CIImage Means { get; set; }
	public int Passes { get; set; }
	public bool Perceptual { get; set; }
}

New Type: CoreImage.CIKeystoneCorrection

public abstract class CIKeystoneCorrection : CoreImage.CIFilter, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CIKeystoneCorrection (Foundation.NSCoder coder);
	protected CIKeystoneCorrection (Foundation.NSObjectFlag t);
	public CIKeystoneCorrection (IntPtr handle);
	protected CIKeystoneCorrection (string name);
	// properties
	public CIVector BottomLeft { get; set; }
	public CIVector BottomRight { get; set; }
	public float FocalLength { get; set; }
	public CIVector TopLeft { get; set; }
	public CIVector TopRight { get; set; }
}

New Type: CoreImage.CIKeystoneCorrectionCombined

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

New Type: CoreImage.CIKeystoneCorrectionHorizontal

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

New Type: CoreImage.CIKeystoneCorrectionVertical

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

New Type: CoreImage.CIMorphologyRectangle

public abstract class CIMorphologyRectangle : CoreImage.CIFilter, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CIMorphologyRectangle (Foundation.NSCoder coder);
	protected CIMorphologyRectangle (Foundation.NSObjectFlag t);
	public CIMorphologyRectangle (IntPtr handle);
	protected CIMorphologyRectangle (string name);
	// properties
	public int Height { get; set; }
	public int Width { get; set; }
}

New Type: CoreImage.CIMorphologyRectangleMaximum

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

New Type: CoreImage.CIMorphologyRectangleMinimum

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

New Type: CoreImage.CIPaletteCentroid

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

New Type: CoreImage.CIPalettize

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

New Type: CoreImage.CIPerspectiveRotate

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

New Type: CoreImage.CIRoundedRectangleGenerator

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

Namespace CoreLocation

Type Changed: CoreLocation.CLLocation

Added property:

public virtual CLFloor Floor { get; }

Type Changed: CoreLocation.CLLocationManager

Added method:

public virtual void RequestAlwaysAuthorization ();

New Type: CoreLocation.CLFloor

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

Namespace CoreML

Type Changed: CoreML.MLDictionaryConstraint

Added constructor:

public MLDictionaryConstraint (Foundation.NSCoder coder);

Added interfaces:

Foundation.INSCoding
Foundation.INSSecureCoding

Added method:

public virtual void EncodeTo (Foundation.NSCoder encoder);

Type Changed: CoreML.MLFeatureDescription

Added constructor:

public MLFeatureDescription (Foundation.NSCoder coder);

Added interfaces:

Foundation.INSCoding
Foundation.INSSecureCoding

Added method:

public virtual void EncodeTo (Foundation.NSCoder encoder);

Type Changed: CoreML.MLFeatureValue

Added methods:

public static MLFeatureValue Create (CoreGraphics.CGImage image, MLImageConstraint constraint, MLFeatureValueImageOption imageOptions, out Foundation.NSError error);
public static MLFeatureValue Create (CoreGraphics.CGImage image, MLImageConstraint constraint, Foundation.NSDictionary options, out Foundation.NSError error);
public static MLFeatureValue Create (Foundation.NSUrl url, MLImageConstraint constraint, MLFeatureValueImageOption imageOptions, out Foundation.NSError error);
public static MLFeatureValue Create (Foundation.NSUrl url, MLImageConstraint constraint, Foundation.NSDictionary options, out Foundation.NSError error);
public static MLFeatureValue Create (CoreGraphics.CGImage image, ImageIO.CGImagePropertyOrientation orientation, MLImageConstraint constraint, MLFeatureValueImageOption imageOptions, out Foundation.NSError error);
public static MLFeatureValue Create (CoreGraphics.CGImage image, ImageIO.CGImagePropertyOrientation orientation, MLImageConstraint constraint, Foundation.NSDictionary options, out Foundation.NSError error);
public static MLFeatureValue Create (Foundation.NSUrl url, ImageIO.CGImagePropertyOrientation orientation, MLImageConstraint constraint, MLFeatureValueImageOption imageOptions, out Foundation.NSError error);
public static MLFeatureValue Create (Foundation.NSUrl url, ImageIO.CGImagePropertyOrientation orientation, MLImageConstraint constraint, Foundation.NSDictionary options, out Foundation.NSError error);
public static MLFeatureValue Create (CoreGraphics.CGImage image, nint pixelsWide, nint pixelsHigh, CoreVideo.CVPixelFormatType pixelFormatType, MLFeatureValueImageOption imageOptions, out Foundation.NSError error);
public static MLFeatureValue Create (CoreGraphics.CGImage image, nint pixelsWide, nint pixelsHigh, CoreVideo.CVPixelFormatType pixelFormatType, Foundation.NSDictionary options, out Foundation.NSError error);
public static MLFeatureValue Create (Foundation.NSUrl url, nint pixelsWide, nint pixelsHigh, CoreVideo.CVPixelFormatType pixelFormatType, MLFeatureValueImageOption imageOptions, out Foundation.NSError error);
public static MLFeatureValue Create (Foundation.NSUrl url, nint pixelsWide, nint pixelsHigh, CoreVideo.CVPixelFormatType pixelFormatType, Foundation.NSDictionary options, out Foundation.NSError error);
public static MLFeatureValue Create (CoreGraphics.CGImage image, ImageIO.CGImagePropertyOrientation orientation, nint pixelsWide, nint pixelsHigh, CoreVideo.CVPixelFormatType pixelFormatType, MLFeatureValueImageOption imageOptions, out Foundation.NSError error);
public static MLFeatureValue Create (CoreGraphics.CGImage image, ImageIO.CGImagePropertyOrientation orientation, nint pixelsWide, nint pixelsHigh, CoreVideo.CVPixelFormatType pixelFormatType, Foundation.NSDictionary options, out Foundation.NSError error);
public static MLFeatureValue Create (Foundation.NSUrl url, ImageIO.CGImagePropertyOrientation orientation, nint pixelsWide, nint pixelsHigh, CoreVideo.CVPixelFormatType pixelFormatType, MLFeatureValueImageOption imageOptions, out Foundation.NSError error);
public static MLFeatureValue Create (Foundation.NSUrl url, ImageIO.CGImagePropertyOrientation orientation, nint pixelsWide, nint pixelsHigh, CoreVideo.CVPixelFormatType pixelFormatType, Foundation.NSDictionary options, out Foundation.NSError error);

Type Changed: CoreML.MLImageConstraint

Added constructor:

public MLImageConstraint (Foundation.NSCoder coder);

Added interfaces:

Foundation.INSCoding
Foundation.INSSecureCoding

Added method:

public virtual void EncodeTo (Foundation.NSCoder encoder);

Type Changed: CoreML.MLImageSize

Added constructor:

public MLImageSize (Foundation.NSCoder coder);

Added interfaces:

Foundation.INSCoding
Foundation.INSSecureCoding

Added method:

public virtual void EncodeTo (Foundation.NSCoder encoder);

Type Changed: CoreML.MLImageSizeConstraint

Added constructor:

public MLImageSizeConstraint (Foundation.NSCoder coder);

Added interfaces:

Foundation.INSCoding
Foundation.INSSecureCoding

Added method:

public virtual void EncodeTo (Foundation.NSCoder encoder);

Type Changed: CoreML.MLModel

Added methods:

public virtual Foundation.NSObject GetParameterValue (MLParameterKey key, out Foundation.NSError error);
public virtual IMLBatchProvider GetPredictions (IMLBatchProvider inputBatch, out Foundation.NSError error);

Type Changed: CoreML.MLModelConfiguration

Added constructor:

public MLModelConfiguration (Foundation.NSCoder coder);

Added interfaces:

Foundation.INSCoding
Foundation.INSSecureCoding

Added properties:

public virtual bool AllowLowPrecisionAccumulationOnGpu { get; set; }
public virtual Foundation.NSDictionary<MLParameterKey,Foundation.NSObject> Parameters { get; set; }
public virtual Metal.IMTLDevice PreferredMetalDevice { get; set; }

Added methods:

protected override void Dispose (bool disposing);
public virtual void EncodeTo (Foundation.NSCoder encoder);

Type Changed: CoreML.MLModelDescription

Added constructor:

public MLModelDescription (Foundation.NSCoder coder);

Added interfaces:

Foundation.INSCoding
Foundation.INSSecureCoding

Added properties:

public virtual bool IsUpdatable { get; }
public virtual Foundation.NSDictionary<MLParameterKey,CoreML.MLParameterDescription> ParameterDescriptionsByKey { get; }
public virtual Foundation.NSDictionary<Foundation.NSString,CoreML.MLFeatureDescription> TrainingInputDescriptionsByName { get; }

Added method:

public virtual void EncodeTo (Foundation.NSCoder encoder);

Type Changed: CoreML.MLModelError

Added values:

Parameters = 7,
Update = 6,

Type Changed: CoreML.MLMultiArrayConstraint

Added constructor:

public MLMultiArrayConstraint (Foundation.NSCoder coder);

Added interfaces:

Foundation.INSCoding
Foundation.INSSecureCoding

Added method:

public virtual void EncodeTo (Foundation.NSCoder encoder);

Type Changed: CoreML.MLMultiArrayShapeConstraint

Added constructor:

public MLMultiArrayShapeConstraint (Foundation.NSCoder coder);

Added interfaces:

Foundation.INSCoding
Foundation.INSSecureCoding

Added method:

public virtual void EncodeTo (Foundation.NSCoder encoder);

Type Changed: CoreML.MLSequenceConstraint

Added constructor:

public MLSequenceConstraint (Foundation.NSCoder coder);

Added interfaces:

Foundation.INSCoding
Foundation.INSSecureCoding

Added method:

public virtual void EncodeTo (Foundation.NSCoder encoder);

New Type: CoreML.IMLWritable

public interface IMLWritable : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual bool Write (Foundation.NSUrl url, out Foundation.NSError error);
}

New Type: CoreML.MLFeatureValueImageOption

public class MLFeatureValueImageOption : Foundation.DictionaryContainer {
	// constructors
	public MLFeatureValueImageOption ();
	public MLFeatureValueImageOption (Foundation.NSDictionary dictionary);
	// properties
	public Vision.VNImageCropAndScaleOption? CropAndScale { get; set; }
	public CoreGraphics.CGRect? CropRect { get; set; }
}

New Type: CoreML.MLKey

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

New Type: CoreML.MLMetricKey

public class MLMetricKey : CoreML.MLKey, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MLMetricKey (Foundation.NSCoder coder);
	protected MLMetricKey (Foundation.NSObjectFlag t);
	protected MLMetricKey (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static MLMetricKey EpochIndex { get; }
	public static MLMetricKey LossValue { get; }
	public static MLMetricKey MiniBatchIndex { get; }
}

New Type: CoreML.MLNumericConstraint

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

New Type: CoreML.MLParameterDescription

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

New Type: CoreML.MLParameterKey

public class MLParameterKey : CoreML.MLKey, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MLParameterKey (Foundation.NSCoder coder);
	protected MLParameterKey (Foundation.NSObjectFlag t);
	protected MLParameterKey (IntPtr handle);
	// properties
	public static MLParameterKey Beta1 { get; }
	public static MLParameterKey Beta2 { get; }
	public static MLParameterKey Biases { get; }
	public override IntPtr ClassHandle { get; }
	public static MLParameterKey Epochs { get; }
	public static MLParameterKey Eps { get; }
	public static MLParameterKey LearningRate { get; }
	public static MLParameterKey LinkedModelFileName { get; }
	public static MLParameterKey LinkedModelSearchPath { get; }
	public static MLParameterKey MiniBatchSize { get; }
	public static MLParameterKey Momentum { get; }
	public static MLParameterKey NumberOfNeighbors { get; }
	public static MLParameterKey Seed { get; }
	public static MLParameterKey Shuffle { get; }
	public static MLParameterKey Weights { get; }
	// methods
	public virtual MLParameterKey GetScopedParameter (string scope);
}

New Type: CoreML.MLTask

public class MLTask : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLTask (Foundation.NSObjectFlag t);
	protected MLTask (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSError Error { get; }
	public virtual MLTaskState State { get; }
	public virtual string TaskIdentifier { get; }
	// methods
	public virtual void Cancel ();
	public virtual void Resume ();
}

New Type: CoreML.MLTaskState

[Serializable]
public enum MLTaskState {
	Cancelling = 3,
	Completed = 4,
	Failed = 5,
	Running = 2,
	Suspended = 1,
}

New Type: CoreML.MLUpdateContext

public class MLUpdateContext : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLUpdateContext (Foundation.NSObjectFlag t);
	protected MLUpdateContext (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual MLUpdateProgressEvent Event { get; }
	public virtual Foundation.NSDictionary<MLMetricKey,Foundation.NSObject> Metrics { get; }
	public virtual IMLWritable Model { get; }
	public virtual Foundation.NSDictionary<MLParameterKey,Foundation.NSObject> Parameters { get; }
	public virtual MLUpdateTask Task { get; }
}

New Type: CoreML.MLUpdateProgressEvent

[Serializable]
[Flags]
public enum MLUpdateProgressEvent {
	EpochEnd = 2,
	MiniBatchEnd = 4,
	TrainingBegin = 1,
}

New Type: CoreML.MLUpdateProgressHandlers

public class MLUpdateProgressHandlers : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLUpdateProgressHandlers (Foundation.NSObjectFlag t);
	protected MLUpdateProgressHandlers (IntPtr handle);
	public MLUpdateProgressHandlers (MLUpdateProgressEvent interestedEvents, System.Action<MLUpdateContext> progressHandler, System.Action<MLUpdateContext> completionHandler);
	// properties
	public override IntPtr ClassHandle { get; }
}

New Type: CoreML.MLUpdateTask

public class MLUpdateTask : CoreML.MLTask, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLUpdateTask (Foundation.NSObjectFlag t);
	protected MLUpdateTask (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public static MLUpdateTask Create (Foundation.NSUrl modelUrl, IMLBatchProvider trainingData, MLModelConfiguration configuration, MLUpdateProgressHandlers progressHandlers, out Foundation.NSError error);
	public static MLUpdateTask Create (Foundation.NSUrl modelUrl, IMLBatchProvider trainingData, MLModelConfiguration configuration, System.Action<MLUpdateContext> completionHandler, out Foundation.NSError error);
	public virtual void Resume (Foundation.NSDictionary<MLParameterKey,Foundation.NSObject> updateParameters);
}

Namespace CoreMedia

Type Changed: CoreMedia.CMSampleBufferAttachmentSettings

Added properties:

public nint? AudioIndependentSampleDecoderRefreshCount { get; set; }
public bool? ForceKeyFrame { get; set; }

Type Changed: CoreMedia.CMTimebase

Added methods:

public CMTimebaseError SetMasterClock (CMClock newMasterClock);
public CMTimebaseError SetMasterTimebase (CMTimebase newMasterTimebase);

Namespace CoreMidi

Type Changed: CoreMidi.MidiDevice

Added property:

public string NameConfigurationDictionary { get; set; }

Namespace CoreText

Type Changed: CoreText.CTFont

Added method:

public CTFont ForString (string value, Foundation.NSRange range, string language);

Type Changed: CoreText.CTFontFeatureSelectorKey

Added properties:

public static Foundation.NSString SampleText { get; }
public static Foundation.NSString TooltipText { get; }

Type Changed: CoreText.CTFontManager

Obsoleted fields:

 [Obsolete ("Use the 'CTFontManagerErrorKeys.FontUrlsKey' property instead.")]
 public static Foundation.NSString ErrorFontUrlsKey;

Added methods:

public static CTFontDescriptor CreateFontDescriptor (Foundation.NSData data);
public static CTFontDescriptor[] CreateFontDescriptors (Foundation.NSData data);
public static void RegisterFontDescriptors (CTFontDescriptor[] fontDescriptors, CTFontManagerScope scope, bool enabled, CTFontManager.CTFontRegistrationHandler registrationHandler);
public static void RegisterFonts (Foundation.NSUrl[] fontUrls, CTFontManagerScope scope, bool enabled, CTFontManager.CTFontRegistrationHandler registrationHandler);
public static void UnregisterFontDescriptors (CTFontDescriptor[] fontDescriptors, CTFontManagerScope scope, CTFontManager.CTFontRegistrationHandler registrationHandler);
public static void UnregisterFonts (Foundation.NSUrl[] fontUrls, CTFontManagerScope scope, CTFontManager.CTFontRegistrationHandler registrationHandler);

New Type: CoreText.CTFontManager.CTFontRegistrationHandler

public sealed delegate CTFontRegistrationHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public CTFontManager.CTFontRegistrationHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (Foundation.NSError[] errors, bool done, System.AsyncCallback callback, object object);
	public virtual bool EndInvoke (System.IAsyncResult result);
	public virtual bool Invoke (Foundation.NSError[] errors, bool done);
}

Type Changed: CoreText.CTFontManagerError

Modified fields:

-SystemRequired = 202
+SystemRequired = 203

Added values:

CancelledByUser = 304,
DuplicatedName = 305,
ExceededResourceLimit = 106,
InsufficientInfo = 303,
InvalidFilePath = 306,
MissingEntitlement = 302,
RegistrationFailed = 301,

Type Changed: CoreText.CTFontManagerScope

Added value:

Persistent = 2,

Type Changed: CoreText.CTGlyphInfo

Added method:

public ushort GetGlyph ();

Type Changed: CoreText.CTRun

Added method:

public void GetBaseAdvancesAndOrigins (Foundation.NSRange range, out CoreGraphics.CGSize[] advancesBuffer, out CoreGraphics.CGPoint[] originsBuffer);

Type Changed: CoreText.CTStringAttributeKey

Added property:

public static Foundation.NSString TrackingAttributeName { get; }

Type Changed: CoreText.CTStringAttributes

Added property:

public float? TrackingAdjustment { get; set; }

New Type: CoreText.CTFontManagerErrorKeys

public static class CTFontManagerErrorKeys {
	// properties
	public static Foundation.NSString FontUrlsKey { get; }
}

Namespace CoreVideo

Type Changed: CoreVideo.CVImageBuffer

Added property:

public static Foundation.NSString AlphaChannelModeKey { get; }

Type Changed: CoreVideo.CVPixelBufferPool

Added property:

public static Foundation.NSString AlphaChannelModeKey { get; }

New Type: CoreVideo.CVImageBufferAlphaChannelMode

[Serializable]
public enum CVImageBufferAlphaChannelMode {
	Premultiplied = 1,
	Straight = 0,
}

New Type: CoreVideo.CVMetalTextureCache

public class CVMetalTextureCache {
	// constructors
	public CVMetalTextureCache ();
	// properties
	public static Foundation.NSString StorageMode { get; }
}

Namespace CoreWlan

Type Changed: CoreWlan.CWSecurity

Added values:

Wpa3Enterprise = 12,
Wpa3Personal = 11,
Wpa3Transition = 13,

New Type: CoreWlan.CWStatusExtensions

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

Namespace EventKit

Type Changed: EventKit.EKCalendar

Added property:

public virtual CoreGraphics.CGColor CGColor { get; set; }

Type Changed: EventKit.EKErrorCode

Added values:

InvalidInviteReplyCalendar = 31,
NotificationCollectionMismatch = 34,
NotificationSavedWithoutCollection = 35,
NotificationsCollectionFlagNotSet = 32,
SourceMismatch = 33,

Type Changed: EventKit.EKEventStore

Added methods:

public virtual bool RemoveEvents (EKEvent theEvent, EKSpan span, out Foundation.NSError error);
public virtual bool SaveEvent (EKEvent theEvent, EKSpan span, out Foundation.NSError error);

Type Changed: EventKit.EKReminder

Obsoleted constructors:

 [Obsolete ("Use 'Create' instead.")]
 public EKReminder ();

Namespace Foundation

Type Changed: Foundation.NSAttributedString

Added properties:

public static NSString CocoaVersionDocumentAttribute { get; }
public static NSString SourceTextScalingDocumentAttribute { get; }
public static NSString TextScalingDocumentAttribute { get; }

Added methods:

public static void LoadFromHtml (NSData data, NSAttributedStringDocumentAttributes options, NSAttributedStringCompletionHandler completionHandler);
public static void LoadFromHtml (NSData data, NSDictionary options, NSAttributedStringCompletionHandler completionHandler);
public static void LoadFromHtml (NSUrl fileUrl, NSAttributedStringDocumentAttributes options, NSAttributedStringCompletionHandler completionHandler);
public static void LoadFromHtml (NSUrl fileUrl, NSDictionary options, NSAttributedStringCompletionHandler completionHandler);
public static void LoadFromHtml (NSUrlRequest request, NSAttributedStringDocumentAttributes options, NSAttributedStringCompletionHandler completionHandler);
public static void LoadFromHtml (NSUrlRequest request, NSDictionary options, NSAttributedStringCompletionHandler completionHandler);
public static void LoadFromHtml (string string, NSAttributedStringDocumentAttributes options, NSAttributedStringCompletionHandler completionHandler);
public static void LoadFromHtml (string string, NSDictionary options, NSAttributedStringCompletionHandler completionHandler);
public static System.Threading.Tasks.Task<NSLoadFromHtmlResult> LoadFromHtmlAsync (NSData data, NSAttributedStringDocumentAttributes options);
public static System.Threading.Tasks.Task<NSLoadFromHtmlResult> LoadFromHtmlAsync (NSData data, NSDictionary options);
public static System.Threading.Tasks.Task<NSLoadFromHtmlResult> LoadFromHtmlAsync (NSUrl fileUrl, NSAttributedStringDocumentAttributes options);
public static System.Threading.Tasks.Task<NSLoadFromHtmlResult> LoadFromHtmlAsync (NSUrl fileUrl, NSDictionary options);
public static System.Threading.Tasks.Task<NSLoadFromHtmlResult> LoadFromHtmlAsync (NSUrlRequest request, NSAttributedStringDocumentAttributes options);
public static System.Threading.Tasks.Task<NSLoadFromHtmlResult> LoadFromHtmlAsync (NSUrlRequest request, NSDictionary options);
public static System.Threading.Tasks.Task<NSLoadFromHtmlResult> LoadFromHtmlAsync (string string, NSAttributedStringDocumentAttributes options);
public static System.Threading.Tasks.Task<NSLoadFromHtmlResult> LoadFromHtmlAsync (string string, NSDictionary options);

Type Changed: Foundation.NSAttributedStringDocumentAttributes

Added property:

public NSUrl ReadAccessUrl { get; set; }

Type Changed: Foundation.NSByteCountFormatter

Added method:

public virtual string GetString (NSObject obj);

Type Changed: Foundation.NSCocoaError

Added values:

CompressionErrorMaximum = 5503,
CompressionErrorMinimum = 5376,
CompressionFailedError = 5376,
DecompressionFailedError = 5377,

Type Changed: Foundation.NSData

Added methods:

public virtual NSData Compress (NSDataCompressionAlgorithm algorithm, out NSError error);
public virtual NSData Decompress (NSDataCompressionAlgorithm algorithm, out NSError error);

Type Changed: Foundation.NSDirectoryEnumerationOptions

Added values:

IncludesDirectoriesPostOrder = 8,
ProducesRelativePathUrls = 16,

Type Changed: Foundation.NSDirectoryEnumerator

Added property:

public virtual bool IsEnumeratingDirectoryPostOrder { get; }

Type Changed: Foundation.NSError

Added methods:

public static NSError GetFileProviderError (FileProvider.INSFileProviderItem existingItem);
public static NSError GetFileProviderError (string nonExistentItemIdentifier);
public static NSError GetFileProviderErrorForOutOfDateItem (FileProvider.INSFileProviderItem updatedVersion);

Type Changed: Foundation.NSException

Added interface:

INSSecureCoding

Type Changed: Foundation.NSFileHandle

Added methods:

public virtual bool Close (out NSError error);
public virtual bool GetOffset (out ulong offsetInFile, out NSError error);
public virtual NSData Read (nuint length, out NSError error);
public virtual NSData ReadToEnd (out NSError error);
public virtual bool Seek (ulong offset, out NSError error);
public virtual bool SeekToEnd (out ulong offsetInFile, out NSError error);
public virtual bool Synchronize (out NSError error);
public virtual bool Truncate (ulong offset, out NSError error);
public virtual bool Write (NSData data, out NSError error);

Type Changed: Foundation.NSHttpCookie

Added properties:

public static NSString KeySameSiteLax { get; }
public static NSString KeySameSitePolicy { get; }
public static NSString KeySameSiteStrict { get; }
public virtual NSString SameSitePolicy { get; }

Type Changed: Foundation.NSHttpUrlResponse

Added method:

public virtual string GetHttpHeaderValue (string headerField);

Type Changed: Foundation.NSJsonReadingOptions

Obsoleted fields:

 [Obsolete ("Use 'FragmentsAllowed. instead.")]
 AllowFragments = 4,

Added value:

FragmentsAllowed = 4,

Type Changed: Foundation.NSJsonWritingOptions

Added values:

FragmentsAllowed = 4,
WithoutEscapingSlashes = 8,

Type Changed: Foundation.NSMutableData

Added methods:

public virtual bool Compress (NSDataCompressionAlgorithm algorithm, out NSError error);
public virtual bool Decompress (NSDataCompressionAlgorithm algorithm, out NSError error);

Type Changed: Foundation.NSMutableUrlRequest

Added properties:

public virtual bool AllowsConstrainedNetworkAccess { get; set; }
public virtual bool AllowsExpensiveNetworkAccess { get; set; }

Type Changed: Foundation.NSNetService

Obsoleted constructors:

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

Type Changed: Foundation.NSOperationQueue

Added interface:

INSProgressReporting

Added property:

public virtual NSProgress Progress { get; }

Added method:

public virtual void AddBarrier (System.Action barrier);

Type Changed: Foundation.NSProcessInfo

Added property:

public virtual bool IsMacCatalystApplication { get; }

Type Changed: Foundation.NSUnitDuration

Added properties:

public static NSUnitDuration Microseconds { get; }
public static NSUnitDuration Milliseconds { get; }
public static NSUnitDuration Nanoseconds { get; }
public static NSUnitDuration Picoseconds { get; }

Type Changed: Foundation.NSUnitFrequency

Added property:

public static NSUnitFrequency FramesPerSecond { get; }

Type Changed: Foundation.NSUrlCache

Added constructor:

public NSUrlCache (nuint memoryCapacity, nuint diskCapacity, NSUrl directoryUrl);

Type Changed: Foundation.NSUrlRequest

Added properties:

public virtual bool AllowsConstrainedNetworkAccess { get; set; }
public virtual bool AllowsExpensiveNetworkAccess { get; set; }

Type Changed: Foundation.NSUrlRequestNetworkServiceType

Added values:

AVStreaming = 8,
ResponsiveAV = 9,

Type Changed: Foundation.NSUrlSession

Added methods:

public virtual NSUrlSessionWebSocketTask CreateWebSocketTask (NSUrl url);
public virtual NSUrlSessionWebSocketTask CreateWebSocketTask (NSUrlRequest request);
public virtual NSUrlSessionWebSocketTask CreateWebSocketTask (NSUrl url, string[] protocols);

Type Changed: Foundation.NSUrlSessionConfiguration

Added properties:

public virtual bool AllowsConstrainedNetworkAccess { get; set; }
public virtual bool AllowsExpensiveNetworkAccess { get; set; }
public virtual Security.TlsProtocolVersion TlsMaximumSupportedProtocolVersion { get; set; }
public virtual Security.TlsProtocolVersion TlsMinimumSupportedProtocolVersion { get; set; }

Type Changed: Foundation.NSUrlSessionHandler

Added property:

public bool AllowsCellularAccess { get; set; }

Type Changed: Foundation.NSUrlSessionTaskTransactionMetrics

Added properties:

public virtual bool Cellular { get; }
public virtual bool Constrained { get; }
public virtual long CountOfRequestBodyBytesBeforeEncoding { get; }
public virtual long CountOfRequestBodyBytesSent { get; }
public virtual long CountOfRequestHeaderBytesSent { get; }
public virtual long CountOfResponseBodyBytesAfterDecoding { get; }
public virtual long CountOfResponseBodyBytesReceived { get; }
public virtual long CountOfResponseHeaderBytesReceived { get; }
public virtual bool Expensive { get; }
public virtual string LocalAddress { get; }
public virtual ushort? LocalPort { get; }
public virtual bool Multipath { get; }
public virtual Security.SslCipherSuite? NegotiatedTlsCipherSuite { get; }
public virtual Security.SslProtocol? NegotiatedTlsProtocolVersion { get; }
public virtual string RemoteAddress { get; }
public virtual ushort? RemotePort { get; }

Type Changed: Foundation.NSUserActivity

Added property:

public virtual string PersistentIdentifier { get; set; }

Added methods:

public static void DeleteAllSavedUserActivities (System.Action handler);
public static System.Threading.Tasks.Task DeleteAllSavedUserActivitiesAsync ();
public static void DeleteSavedUserActivities (string[] persistentIdentifiers, System.Action handler);
public static System.Threading.Tasks.Task DeleteSavedUserActivitiesAsync (string[] persistentIdentifiers);

Type Changed: Foundation.NSValue

Added property:

public virtual CoreGraphics.CGAffineTransform CGAffineTransformValue { get; }

Added methods:

public static NSValue FromCGAffineTransform (CoreGraphics.CGAffineTransform tran);
public virtual void StoreValueAtAddress (IntPtr value, nuint size);

New Type: Foundation.INSUrlSessionWebSocketDelegate

public interface INSUrlSessionWebSocketDelegate : INSUrlSessionDelegate, INSUrlSessionTaskDelegate, ObjCRuntime.INativeObject, System.IDisposable {
}

New Type: Foundation.NSAttributedStringCompletionHandler

public sealed delegate NSAttributedStringCompletionHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public NSAttributedStringCompletionHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (NSAttributedString attributedString, Foundation.NSDictionary<NSString,Foundation.NSObject> attributes, NSError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (NSAttributedString attributedString, Foundation.NSDictionary<NSString,Foundation.NSObject> attributes, NSError error);
}

New Type: Foundation.NSCollectionChangeType

[Serializable]
public enum NSCollectionChangeType {
	Insert = 0,
	Remove = 1,
}

New Type: Foundation.NSDataCompressionAlgorithm

[Serializable]
public enum NSDataCompressionAlgorithm {
	Lz4 = 1,
	Lzfse = 0,
	Lzma = 2,
	Zlib = 3,
}

New Type: Foundation.NSEnumerator`1

public sealed class NSEnumerator`1 : Foundation.NSEnumerator, INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSEnumerator`1 ();
	// methods
	public TKey NextObject ();
}

New Type: Foundation.NSListFormatter

public class NSListFormatter : Foundation.NSFormatter, INSCoding, INSCopying, INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSListFormatter ();
	public NSListFormatter (NSCoder coder);
	protected NSListFormatter (NSObjectFlag t);
	protected NSListFormatter (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual NSFormatter ItemFormatter { get; set; }
	public virtual NSLocale Locale { get; set; }
	// methods
	public static string GetLocalizedString (NSString[] joinedStrings);
	public virtual string GetString (NSObject obj);
	public virtual string GetString (NSObject[] items);
}

New Type: Foundation.NSLoadFromHtmlResult

public class NSLoadFromHtmlResult {
	// constructors
	public NSLoadFromHtmlResult (NSAttributedString attributedString, Foundation.NSDictionary<NSString,Foundation.NSObject> attributes);
	// properties
	public NSAttributedString AttributedString { get; set; }
	public Foundation.NSDictionary<NSString,Foundation.NSObject> Attributes { get; set; }
}

New Type: Foundation.NSOrderedCollectionDifferenceCalculationOptions

[Serializable]
public enum NSOrderedCollectionDifferenceCalculationOptions {
	InferMoves = 4,
	OmitInsertedObjects = 1,
	OmitRemovedObjects = 2,
}

New Type: Foundation.NSRelativeDateTimeFormatter

public class NSRelativeDateTimeFormatter : Foundation.NSFormatter, INSCoding, INSCopying, INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSRelativeDateTimeFormatter ();
	public NSRelativeDateTimeFormatter (NSCoder coder);
	protected NSRelativeDateTimeFormatter (NSObjectFlag t);
	protected NSRelativeDateTimeFormatter (IntPtr handle);
	// properties
	public virtual NSCalendar Calendar { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual NSRelativeDateTimeFormatterStyle DateTimeStyle { get; set; }
	public virtual NSFormattingContext FormattingContext { get; set; }
	public virtual NSLocale Locale { get; set; }
	public virtual NSRelativeDateTimeFormatterUnitsStyle UnitsStyle { get; set; }
	// methods
	public virtual string GetLocalizedString (NSDateComponents dateComponents);
	public virtual string GetLocalizedString (double timeInterval);
	public virtual string GetLocalizedString (NSDate date, NSDate referenceDate);
	public virtual string GetString (NSObject obj);
}

New Type: Foundation.NSRelativeDateTimeFormatterStyle

[Serializable]
public enum NSRelativeDateTimeFormatterStyle {
	Named = 1,
	Numeric = 0,
}

New Type: Foundation.NSRelativeDateTimeFormatterUnitsStyle

[Serializable]
public enum NSRelativeDateTimeFormatterUnitsStyle {
	Abbreviated = 3,
	Full = 0,
	Short = 2,
	SpellOut = 1,
}

New Type: Foundation.NSUnitInformationStorage

public class NSUnitInformationStorage : Foundation.NSDimension, INSCoding, INSCopying, INSObjectProtocol, INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSUnitInformationStorage (NSCoder coder);
	protected NSUnitInformationStorage (NSObjectFlag t);
	protected NSUnitInformationStorage (IntPtr handle);
	public NSUnitInformationStorage (string symbol);
	public NSUnitInformationStorage (string symbol, NSUnitConverter converter);
	// properties
	public static NSUnitInformationStorage Bits { get; }
	public static NSUnitInformationStorage Bytes { get; }
	public override IntPtr ClassHandle { get; }
	public static NSUnitInformationStorage Exabits { get; }
	public static NSUnitInformationStorage Exabytes { get; }
	public static NSUnitInformationStorage Exbibits { get; }
	public static NSUnitInformationStorage Exbibytes { get; }
	public static NSUnitInformationStorage Gibibits { get; }
	public static NSUnitInformationStorage Gibibytes { get; }
	public static NSUnitInformationStorage Gigabits { get; }
	public static NSUnitInformationStorage Gigabytes { get; }
	public static NSUnitInformationStorage Kibibits { get; }
	public static NSUnitInformationStorage Kibibytes { get; }
	public static NSUnitInformationStorage Kilobits { get; }
	public static NSUnitInformationStorage Kilobytes { get; }
	public static NSUnitInformationStorage Mebibits { get; }
	public static NSUnitInformationStorage Mebibytes { get; }
	public static NSUnitInformationStorage Megabits { get; }
	public static NSUnitInformationStorage Megabytes { get; }
	public static NSUnitInformationStorage Nibbles { get; }
	public static NSUnitInformationStorage Pebibits { get; }
	public static NSUnitInformationStorage Pebibytes { get; }
	public static NSUnitInformationStorage Petabits { get; }
	public static NSUnitInformationStorage Petabytes { get; }
	public static NSUnitInformationStorage Tebibits { get; }
	public static NSUnitInformationStorage Tebibytes { get; }
	public static NSUnitInformationStorage Terabits { get; }
	public static NSUnitInformationStorage Terabytes { get; }
	public static NSUnitInformationStorage Yobibits { get; }
	public static NSUnitInformationStorage Yobibytes { get; }
	public static NSUnitInformationStorage Yottabits { get; }
	public static NSUnitInformationStorage Yottabytes { get; }
	public static NSUnitInformationStorage Zebibits { get; }
	public static NSUnitInformationStorage Zebibytes { get; }
	public static NSUnitInformationStorage Zettabits { get; }
	public static NSUnitInformationStorage Zettabytes { get; }
	// methods
	public virtual void EncodeTo (NSCoder encoder);
}

New Type: Foundation.NSUrlErrorNetworkUnavailableReason

[Serializable]
public enum NSUrlErrorNetworkUnavailableReason {
	Cellular = 0,
	Constrained = 2,
	Expensive = 1,
}

New Type: Foundation.NSUrlSessionWebSocketCloseCode

[Serializable]
public enum NSUrlSessionWebSocketCloseCode {
	AbnormalClosure = 1006,
	GoingAway = 1001,
	InternalServerError = 1011,
	Invalid = 0,
	InvalidFramePayloadData = 1007,
	MandatoryExtensionMissing = 1010,
	MessageTooBig = 1009,
	NoStatusReceived = 1005,
	NormalClosure = 1000,
	PolicyViolation = 1008,
	ProtocolError = 1002,
	TlsHandshakeFailure = 1015,
	UnsupportedData = 1003,
}

New Type: Foundation.NSUrlSessionWebSocketDelegate

public class NSUrlSessionWebSocketDelegate : Foundation.NSUrlSessionTaskDelegate, INSObjectProtocol, INSUrlSessionDelegate, INSUrlSessionTaskDelegate, INSUrlSessionWebSocketDelegate, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSUrlSessionWebSocketDelegate ();
	protected NSUrlSessionWebSocketDelegate (NSObjectFlag t);
	protected NSUrlSessionWebSocketDelegate (IntPtr handle);
	// methods
	public virtual void DidClose (NSUrlSession session, NSUrlSessionWebSocketTask webSocketTask, NSUrlSessionWebSocketCloseCode closeCode, NSData reason);
	public virtual void DidOpen (NSUrlSession session, NSUrlSessionWebSocketTask webSocketTask, string protocol);
}

New Type: Foundation.NSUrlSessionWebSocketDelegate_Extensions

public static class NSUrlSessionWebSocketDelegate_Extensions {
	// methods
	public static void DidClose (this INSUrlSessionWebSocketDelegate This, NSUrlSession session, NSUrlSessionWebSocketTask webSocketTask, NSUrlSessionWebSocketCloseCode closeCode, NSData reason);
	public static void DidOpen (this INSUrlSessionWebSocketDelegate This, NSUrlSession session, NSUrlSessionWebSocketTask webSocketTask, string protocol);
}

New Type: Foundation.NSUrlSessionWebSocketMessage

public class NSUrlSessionWebSocketMessage : Foundation.NSObject, INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSUrlSessionWebSocketMessage (NSData data);
	protected NSUrlSessionWebSocketMessage (NSObjectFlag t);
	protected NSUrlSessionWebSocketMessage (IntPtr handle);
	public NSUrlSessionWebSocketMessage (string string);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual NSData Data { get; }
	public virtual string String { get; }
	public virtual NSUrlSessionWebSocketMessageType Type { get; }
}

New Type: Foundation.NSUrlSessionWebSocketMessageType

[Serializable]
public enum NSUrlSessionWebSocketMessageType {
	Data = 0,
	String = 1,
}

New Type: Foundation.NSUrlSessionWebSocketTask

public class NSUrlSessionWebSocketTask : Foundation.NSUrlSessionTask, INSCopying, INSObjectProtocol, INSProgressReporting, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	protected NSUrlSessionWebSocketTask (NSObjectFlag t);
	protected NSUrlSessionWebSocketTask (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual NSUrlSessionWebSocketCloseCode CloseCode { get; }
	public virtual NSData CloseReason { get; }
	public virtual nint MaximumMessageSize { get; set; }
	// methods
	public virtual void Cancel (NSUrlSessionWebSocketCloseCode closeCode, NSData reason);
	public virtual void ReceiveMessage (System.Action<NSUrlSessionWebSocketMessage,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<NSUrlSessionWebSocketMessage> ReceiveMessageAsync ();
	public virtual void SendMessage (NSUrlSessionWebSocketMessage message, System.Action<NSError> completionHandler);
	public virtual System.Threading.Tasks.Task SendMessageAsync (NSUrlSessionWebSocketMessage message);
	public virtual void SendPing (System.Action<NSError> pongReceiveHandler);
	public virtual System.Threading.Tasks.Task SendPingAsync ();
}

Namespace GameController

Type Changed: GameController.GCController

Added properties:

public virtual string ProductCategory { get; }
public virtual bool Snapshot { get; }

Added methods:

public virtual GCController Capture ();
public static GCController GetExtendedGamepadController ();
public static GCController GetMicroGamepadController ();

Type Changed: GameController.GCControllerAxisInput

Modified properties:

-public virtual float Value { get; set; }
+public virtual float Value { get; }

Type Changed: GameController.GCControllerButtonInput

Modified properties:

-public virtual float Value { get; set; }
+public virtual float Value { get; }

Type Changed: GameController.GCControllerDirectionPad

Added method:

public virtual void SetValue (float xAxis, float yAxis);

Type Changed: GameController.GCExtendedGamepad

Added properties:

public virtual GCControllerButtonInput ButtonMenu { get; }
public virtual GCControllerButtonInput ButtonOptions { get; }

Added method:

public virtual void SetState (GCExtendedGamepad extendedGamepad);

Type Changed: GameController.GCExtendedGamepadSnapshotData

Added field:

public bool SupportsClickableThumbsticks;

Type Changed: GameController.GCMicroGamepad

Added property:

public virtual GCControllerButtonInput ButtonMenu { get; }

Added method:

public virtual void SetState (GCMicroGamepad microGamepad);

Type Changed: GameController.GCMotion

Added methods:

public virtual void SetAttitude (GCQuaternion attitude);
public virtual void SetGravity (GCAcceleration gravity);
public virtual void SetRotationRate (GCRotationRate rotationRate);
public virtual void SetState (GCMotion motion);
public virtual void SetUserAcceleration (GCAcceleration userAcceleration);

New Type: GameController.GCAcceleration

public struct GCAcceleration {
	// fields
	public double X;
	public double Y;
	public double Z;
}

New Type: GameController.GCQuaternion

public struct GCQuaternion {
	// fields
	public double W;
	public double X;
	public double Y;
	public double Z;
}

New Type: GameController.GCRotationRate

public struct GCRotationRate {
	// fields
	public double X;
	public double Y;
	public double Z;
}

Namespace GameKit

Type Changed: GameKit.GKError

Obsoleted fields:

 [Obsolete ("This value was re-used on macOS only and removed later.")]
 Offline = 25,

Added values:

ApiNotAvailable = 31,
InvitationsDisabled = 25,
PlayerPhotoFailure = 26,
PlayerStatusExceedsMaximumLength = 11,
PlayerStatusInvalid = 12,
RestrictedToAutomatch = 30,
UbiquityContainerUnavailable = 27,

Type Changed: GameKit.GKLocalPlayer

Added properties:

public static GKLocalPlayer Local { get; }
public virtual bool MultiplayerGamingRestricted { get; }

Added methods:

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

Type Changed: GameKit.GKMatchRequest

Added property:

public virtual bool RestrictToAutomatch { get; set; }

Type Changed: GameKit.GKPlayer

Added properties:

public virtual string GamePlayerId { get; }
public virtual bool ScopedIdsArePersistent { get; }
public virtual string TeamPlayerId { get; }

Namespace ImageIO

Type Changed: ImageIO.CGImageAuxiliaryDataType

Added values:

SemanticSegmentationHairMatte = 3,
SemanticSegmentationSkinMatte = 4,
SemanticSegmentationTeethMatte = 5,

Type Changed: ImageIO.CGImageProperties

Added properties:

public static Foundation.NSString ApngCanvasPixelHeight { get; }
public static Foundation.NSString ApngCanvasPixelWidth { get; }
public static Foundation.NSString ApngFrameInfoArray { get; }
public static Foundation.NSString ExifOffsetTime { get; }
public static Foundation.NSString ExifOffsetTimeDigitized { get; }
public static Foundation.NSString ExifOffsetTimeOriginal { get; }
public static Foundation.NSString GifCanvasPixelHeight { get; }
public static Foundation.NSString GifCanvasPixelWidth { get; }
public static Foundation.NSString GifFrameInfoArray { get; }
public static Foundation.NSString HeicsCanvasPixelHeight { get; }
public static Foundation.NSString HeicsCanvasPixelWidth { get; }
public static Foundation.NSString HeicsDelayTime { get; }
public static Foundation.NSString HeicsDictionary { get; }
public static Foundation.NSString HeicsFrameInfoArray { get; }
public static Foundation.NSString HeicsLoopCount { get; }
public static Foundation.NSString HeicsSUnclampedDelayTime { get; }

Namespace ImageKit

Type Changed: ImageKit.IKCameraDeviceViewDisplayMode

Added value:

None = -1,

Type Changed: ImageKit.IKScannerDeviceViewDisplayMode

Added value:

None = -1,

Namespace JavaScriptCore

Type Changed: JavaScriptCore.JSType

Added value:

Symbol = 6,

Type Changed: JavaScriptCore.JSValue

Added property:

public virtual bool IsSymbol { get; }

Added methods:

public static JSValue CreatePromise (JSContext context, JSPromiseCreationExecutor callback);
public static JSValue CreateRejectedPromise (Foundation.NSObject reason, JSContext context);
public static JSValue CreateResolvedPromise (Foundation.NSObject result, JSContext context);
public static JSValue CreateSymbol (string description, JSContext context);

New Type: JavaScriptCore.JSPromiseCreationExecutor

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

Namespace LocalAuthentication

Type Changed: LocalAuthentication.LAPolicy

Added values:

DeviceOwnerAuthenticationWithWatch = 3,
OwnerAuthenticationWithBiometricsOrWatch = 4,

Type Changed: LocalAuthentication.LAStatus

Added value:

WatchNotAvailable = -11,

Namespace MapKit

Type Changed: MapKit.MKGeodesicPolyline

Added interface:

IMKGeoJsonObject

Type Changed: MapKit.MKLocalSearchCompleter

Added properties:

public virtual MKPointOfInterestFilter PointOfInterestFilter { get; set; }
public virtual MKLocalSearchCompleterResultType ResultTypes { get; set; }

Type Changed: MapKit.MKLocalSearchRequest

Added constructors:

public MKLocalSearchRequest (string naturalLanguageQuery);
public MKLocalSearchRequest (string naturalLanguageQuery, MKCoordinateRegion region);

Added properties:

public virtual MKPointOfInterestFilter PointOfInterestFilter { get; set; }
public virtual MKLocalSearchResultType ResultTypes { get; set; }

Type Changed: MapKit.MKMapCamera

Added property:

public virtual double CenterCoordinateDistance { get; set; }

Type Changed: MapKit.MKMapItem

Added property:

public virtual string PointOfInterestCategory { get; set; }

Type Changed: MapKit.MKMapSnapshotOptions

Added property:

public virtual MKPointOfInterestFilter PointOfInterestFilter { get; set; }

Type Changed: MapKit.MKMapView

Added properties:

public virtual MKMapCameraBoundary CameraBoundary { get; set; }
public virtual MKMapCameraZoomRange CameraZoomRange { get; set; }
public virtual MKPointOfInterestFilter PointOfInterestFilter { get; set; }

Added methods:

public virtual void SetCameraBoundary (MKMapCameraBoundary cameraBoundary, bool animated);
public virtual void SetCameraZoomRange (MKMapCameraZoomRange cameraZoomRange, bool animated);

Type Changed: MapKit.MKMultiPoint

Added interface:

IMKGeoJsonObject

Type Changed: MapKit.MKOverlayPathRenderer

Added property:

public virtual bool ShouldRasterize { get; set; }

Type Changed: MapKit.MKPointAnnotation

Added constructors:

public MKPointAnnotation (CoreLocation.CLLocationCoordinate2D coordinate);
public MKPointAnnotation (CoreLocation.CLLocationCoordinate2D coordinate, string title, string subtitle);

Added interface:

IMKGeoJsonObject

Type Changed: MapKit.MKPolygon

Added interface:

IMKGeoJsonObject

Type Changed: MapKit.MKPolyline

Added interface:

IMKGeoJsonObject

New Type: MapKit.IMKGeoJsonObject

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

New Type: MapKit.MKGeoJsonDecoder

public class MKGeoJsonDecoder : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MKGeoJsonDecoder ();
	protected MKGeoJsonDecoder (Foundation.NSObjectFlag t);
	protected MKGeoJsonDecoder (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual IMKGeoJsonObject[] GeoJsonObjects (Foundation.NSData data, out Foundation.NSError error);
}

New Type: MapKit.MKGeoJsonFeature

public class MKGeoJsonFeature : Foundation.NSObject, Foundation.INSObjectProtocol, IMKGeoJsonObject, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MKGeoJsonFeature ();
	protected MKGeoJsonFeature (Foundation.NSObjectFlag t);
	protected MKGeoJsonFeature (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual IMKGeoJsonObject[] Geometry { get; }
	public virtual string Identifier { get; }
	public virtual Foundation.NSData Properties { get; }
}

New Type: MapKit.MKLocalSearchCompleterResultType

[Serializable]
[Flags]
public enum MKLocalSearchCompleterResultType {
	Address = 1,
	PointOfInterest = 2,
	Query = 4,
}

New Type: MapKit.MKLocalSearchResultType

[Serializable]
[Flags]
public enum MKLocalSearchResultType {
	Address = 1,
	PointOfInterest = 2,
}

New Type: MapKit.MKMapCameraBoundary

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

New Type: MapKit.MKMapCameraZoomRange

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

New Type: MapKit.MKMultiPolygon

public class MKMultiPolygon : MapKit.MKShape, Foundation.INSObjectProtocol, IMKAnnotation, IMKGeoJsonObject, IMKOverlay, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MKMultiPolygon ();
	protected MKMultiPolygon (Foundation.NSObjectFlag t);
	public MKMultiPolygon (MKPolygon[] polygons);
	protected MKMultiPolygon (IntPtr handle);
	// properties
	public virtual MKMapRect BoundingMapRect { get; }
	public virtual bool CanReplaceMapContent { get; }
	public override IntPtr ClassHandle { get; }
	public virtual MKPolygon[] Polygons { get; }
	// methods
	public virtual bool Intersects (MKMapRect rect);
}

New Type: MapKit.MKMultiPolygonRenderer

public class MKMultiPolygonRenderer : MapKit.MKOverlayPathRenderer, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MKMultiPolygonRenderer ();
	protected MKMultiPolygonRenderer (Foundation.NSObjectFlag t);
	public MKMultiPolygonRenderer (MKMultiPolygon multiPolygon);
	protected MKMultiPolygonRenderer (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual MKMultiPolygon MultiPolygon { get; }
}

New Type: MapKit.MKMultiPolyline

public class MKMultiPolyline : MapKit.MKShape, Foundation.INSObjectProtocol, IMKAnnotation, IMKGeoJsonObject, IMKOverlay, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MKMultiPolyline ();
	protected MKMultiPolyline (Foundation.NSObjectFlag t);
	public MKMultiPolyline (MKPolyline[] polylines);
	protected MKMultiPolyline (IntPtr handle);
	// properties
	public virtual MKMapRect BoundingMapRect { get; }
	public virtual bool CanReplaceMapContent { get; }
	public override IntPtr ClassHandle { get; }
	public virtual MKPolyline[] Polylines { get; }
	// methods
	public virtual bool Intersects (MKMapRect rect);
}

New Type: MapKit.MKMultiPolylineRenderer

public class MKMultiPolylineRenderer : MapKit.MKOverlayPathRenderer, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MKMultiPolylineRenderer ();
	protected MKMultiPolylineRenderer (Foundation.NSObjectFlag t);
	public MKMultiPolylineRenderer (MKMultiPolyline multiPolyline);
	protected MKMultiPolylineRenderer (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual MKMultiPolyline MultiPolyline { get; }
}

New Type: MapKit.MKPointOfInterestCategory

[Serializable]
public enum MKPointOfInterestCategory {
	Airport = 0,
	AmusementPark = 1,
	Aquarium = 2,
	Atm = 3,
	Bakery = 4,
	Bank = 5,
	Beach = 6,
	Brewery = 7,
	Cafe = 8,
	Campground = 9,
	CarRental = 10,
	EVCharger = 11,
	FireStation = 12,
	FitnessCenter = 13,
	FoodMarket = 14,
	GasStation = 15,
	Hospital = 16,
	Hotel = 17,
	Laundry = 18,
	Library = 19,
	Marina = 20,
	MovieTheater = 21,
	Museum = 22,
	NationalPark = 23,
	Nightlife = 24,
	Park = 25,
	Parking = 26,
	Pharmacy = 27,
	Police = 28,
	PostOffice = 29,
	PublicTransport = 30,
	Restaurant = 31,
	Restroom = 32,
	School = 33,
	Stadium = 34,
	Store = 35,
	Theater = 36,
	University = 37,
	Winery = 38,
	Zoo = 39,
}

New Type: MapKit.MKPointOfInterestCategoryExtensions

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

New Type: MapKit.MKPointOfInterestFilter

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

Namespace MediaAccessibility

Type Changed: MediaAccessibility.MACaptionAppearance

Added methods:

public static void DidDisplayCaptions (Foundation.NSAttributedString[] strings);
public static void DidDisplayCaptions (string[] strings);

New Type: MediaAccessibility.MAImageCaptioning

public static class MAImageCaptioning {
	// methods
	public static string GetCaption (Foundation.NSUrl url, out Foundation.NSError error);
	public static string GetMetadataTagPath ();
	public static bool SetCaption (Foundation.NSUrl url, string string, out Foundation.NSError error);
}

Namespace Metal

Type Changed: Metal.IMTLDevice

Obsoleted methods:

 [Obsolete ("Use the overload that take a 'DispatchData' instead.")]
 public virtual IMTLLibrary CreateLibrary (Foundation.NSObject data, out Foundation.NSError error);

Type Changed: Metal.MTLDevice_Extensions

Obsoleted methods:

 [Obsolete ("Use 'CreateDefaultLibrary' instead.")]
 public static IMTLLibrary CreateLibrary (this IMTLDevice This, Foundation.NSBundle bundle, out Foundation.NSError error);

Added methods:

public static IMTLLibrary CreateDefaultLibrary (this IMTLDevice This, Foundation.NSBundle bundle, out Foundation.NSError error);
public static IMTLLibrary CreateLibrary (this IMTLDevice This, CoreFoundation.DispatchData data, out Foundation.NSError error);
public static System.Threading.Tasks.Task<IMTLLibrary> CreateLibraryAsync (this IMTLDevice This, string source, MTLCompileOptions options);

Type Changed: Metal.MTLFeatureSet

Added values:

macOS_GPUFamily1_v4 = 10004,
macOS_GPUFamily2_v1 = 10005,
tvOS_GPUFamily1_v3 = 30002,

Type Changed: Metal.MTLFunctionConstantValues

Added constructor:

public MTLFunctionConstantValues ();

Type Changed: Metal.MTLLibrary_Extensions

Added method:

public static System.Threading.Tasks.Task<IMTLFunction> CreateFunctionAsync (this IMTLLibrary This, string name, MTLFunctionConstantValues constantValues);

Namespace MetalKit

Type Changed: MetalKit.MTKView

Added properties:

public virtual Metal.MTLTextureUsage DepthStencilAttachmentTextureUsage { get; set; }
public virtual Metal.MTLTextureUsage MultisampleColorAttachmentTextureUsage { get; set; }
public virtual Metal.IMTLDevice PreferredDevice { get; }
public virtual CoreGraphics.CGSize PreferredDrawableSize { get; }

Namespace MetalPerformanceShaders

Type Changed: MetalPerformanceShaders.MPSNNNeuronDescriptor

Added constructor:

public MPSNNNeuronDescriptor (Foundation.NSCoder coder);

Added interfaces:

Foundation.INSCoding
Foundation.INSSecureCoding

Added method:

public virtual void EncodeTo (Foundation.NSCoder encoder);

Namespace ModelIO

Type Changed: ModelIO.MDLTransformStack

Added method:

public virtual MDLTransformOrientOp AddOrientOp (string animatedValueName, bool inverse);

New Type: ModelIO.MDLAnimatedQuaternion

public class MDLAnimatedQuaternion : ModelIO.MDLAnimatedValue, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MDLAnimatedQuaternion ();
	protected MDLAnimatedQuaternion (Foundation.NSObjectFlag t);
	protected MDLAnimatedQuaternion (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual OpenTK.Quaterniond GetDoubleQuaternion (double atTime);
	public virtual OpenTK.Quaternion GetFloatQuaternion (double atTime);
	public virtual OpenTK.Quaternion[] GetQuaternionValues (nuint maxCount);
	public virtual OpenTK.Quaterniond[] GetQuaterniondValues (nuint maxCount);
	public virtual void Reset (OpenTK.Quaternion[] values, double[] times);
	public virtual void Reset (OpenTK.Quaterniond[] values, double[] times);
	public virtual void SetQuaternion (OpenTK.Quaternion value, double atTime);
	public virtual void SetQuaternion (OpenTK.Quaterniond value, double atTime);
}

New Type: ModelIO.MDLTransformOrientOp

public class MDLTransformOrientOp : Foundation.NSObject, Foundation.INSObjectProtocol, IMDLTransformOp, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MDLTransformOrientOp ();
	protected MDLTransformOrientOp (Foundation.NSObjectFlag t);
	protected MDLTransformOrientOp (IntPtr handle);
	// properties
	public virtual MDLAnimatedQuaternion AnimatedValue { get; }
	public override IntPtr ClassHandle { get; }
	public virtual bool IsInverseOp { get; }
	public virtual string Name { get; }
	// methods
	public virtual OpenTK.NMatrix4 GetNMatrix4 (double atTime);
	public virtual OpenTK.NMatrix4d GetNMatrix4d (double atTime);
}

Namespace NaturalLanguage

Type Changed: NaturalLanguage.NLTagScheme

Added value:

SentimentScore = 7,

Type Changed: NaturalLanguage.NLTagger

Added methods:

public virtual NLGazetteer[] GetGazetteers (Foundation.NSString tagScheme);
public NLGazetteer[] GetGazetteers (NLTagScheme tagScheme);
public static void RequestAssets (Foundation.NSString language, Foundation.NSString tagScheme, System.Action<NLTaggerAssetsResult,Foundation.NSError> completionHandler);
public static void RequestAssets (NLLanguage language, NLTagScheme tagScheme, System.Action<NLTaggerAssetsResult,Foundation.NSError> completionHandler);
public static System.Threading.Tasks.Task<NLTaggerAssetsResult> RequestAssetsAsync (Foundation.NSString language, Foundation.NSString tagScheme);
public static System.Threading.Tasks.Task<NLTaggerAssetsResult> RequestAssetsAsync (NLLanguage language, NLTagScheme tagScheme);
public virtual void SetGazetteers (NLGazetteer[] gazetteers, Foundation.NSString tagScheme);
public void SetGazetteers (NLGazetteer[] gazetteers, NLTagScheme tagScheme);

New Type: NaturalLanguage.NLDistanceType

[Serializable]
public enum NLDistanceType {
	Cosine = 0,
}

New Type: NaturalLanguage.NLEmbedding

public class NLEmbedding : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NLEmbedding (Foundation.NSObjectFlag t);
	protected NLEmbedding (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nuint Dimension { get; }
	public virtual NLLanguage? Language { get; }
	public virtual nuint Revision { get; }
	public virtual nuint VocabularySize { get; }
	// methods
	public virtual bool Contains (string string);
	public virtual void EnumerateNeighbors (float[] vector, nuint maxCount, NLDistanceType distanceType, NLEnumerateNeighborsHandler handler);
	public virtual void EnumerateNeighbors (string string, nuint maxCount, NLDistanceType distanceType, NLEnumerateNeighborsHandler handler);
	public virtual void EnumerateNeighbors (float[] vector, nuint maxCount, double maxDistance, NLDistanceType distanceType, NLEnumerateNeighborsHandler handler);
	public virtual void EnumerateNeighbors (string string, nuint maxCount, double maxDistance, NLDistanceType distanceType, NLEnumerateNeighborsHandler handler);
	public static nuint GetCurrentRevision (Foundation.NSString language);
	public static nuint GetCurrentRevision (NLLanguage language);
	public virtual double GetDistance (string firstString, string secondString, NLDistanceType distanceType);
	public static NLEmbedding GetEmbedding (Foundation.NSUrl url, out Foundation.NSError error);
	public virtual string[] GetNeighbors (float[] vector, nuint maxCount, NLDistanceType distanceType);
	public virtual string[] GetNeighbors (string string, nuint maxCount, NLDistanceType distanceType);
	public virtual string[] GetNeighbors (float[] vector, nuint maxCount, double maxDistance, NLDistanceType distanceType);
	public virtual string[] GetNeighbors (string string, nuint maxCount, double maxDistance, NLDistanceType distanceType);
	public static Foundation.NSIndexSet GetSupportedRevisions (Foundation.NSString language);
	public static Foundation.NSIndexSet GetSupportedRevisions (NLLanguage language);
	public virtual float[] GetVector (string string);
	public static NLEmbedding GetWordEmbedding (Foundation.NSString language);
	public static NLEmbedding GetWordEmbedding (NLLanguage language);
	public static NLEmbedding GetWordEmbedding (Foundation.NSString language, nuint revision);
	public static NLEmbedding GetWordEmbedding (NLLanguage language, nuint revision);
	public bool TryGetVector (string string, out float[] vector);
	public static bool Write (Foundation.NSDictionary dictionary, Foundation.NSString language, nuint revision, Foundation.NSUrl url, out Foundation.NSError error);
	public static bool Write (NLVectorDictionary dictionary, NLLanguage? language, nuint revision, Foundation.NSUrl url, out Foundation.NSError error);
}

New Type: NaturalLanguage.NLEnumerateNeighborsHandler

public sealed delegate NLEnumerateNeighborsHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public NLEnumerateNeighborsHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (string neighbor, double distance, ref bool stop, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (ref bool stop, System.IAsyncResult result);
	public virtual void Invoke (string neighbor, double distance, ref bool stop);
}

New Type: NaturalLanguage.NLGazetteer

public class NLGazetteer : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NLGazetteer (Foundation.NSObjectFlag t);
	protected NLGazetteer (IntPtr handle);
	public NLGazetteer (Foundation.NSData data, out Foundation.NSError error);
	public NLGazetteer (Foundation.NSUrl url, out Foundation.NSError error);
	public NLGazetteer (Foundation.NSDictionary dictionary, Foundation.NSString language, out Foundation.NSError error);
	public NLGazetteer (NLStrongDictionary dictionary, NLLanguage? language, out Foundation.NSError error);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSData Data { get; }
	public virtual NLLanguage? Language { get; }
	// methods
	public static NLGazetteer Create (Foundation.NSUrl url, out Foundation.NSError error);
	public virtual string GetLabel (string string);
	public static bool Write (Foundation.NSDictionary dictionary, Foundation.NSString language, Foundation.NSUrl url, out Foundation.NSError error);
	public static bool Write (NLStrongDictionary dictionary, NLLanguage? language, Foundation.NSUrl url, out Foundation.NSError error);
}

New Type: NaturalLanguage.NLStrongDictionary

public class NLStrongDictionary : Foundation.DictionaryContainer {
	// constructors
	public NLStrongDictionary ();
	public NLStrongDictionary (Foundation.NSDictionary dictionary);
	// properties
	public string[] Item { get; set; }
	public string[] Item { get; set; }
}

New Type: NaturalLanguage.NLTaggerAssetsResult

[Serializable]
public enum NLTaggerAssetsResult {
	Available = 0,
	Error = 2,
	NotAvailable = 1,
}

New Type: NaturalLanguage.NLVectorDictionary

public class NLVectorDictionary : Foundation.DictionaryContainer {
	// constructors
	public NLVectorDictionary ();
	public NLVectorDictionary (Foundation.NSDictionary dictionary);
	// properties
	public float[] Item { get; set; }
	public float[] Item { get; set; }
}

Namespace Network

Type Changed: Network.NWProtocolMetadata

Obsoleted properties:

 [Obsolete ("Use 'TlsSecProtocolMetadata' instead.")]
 public Security.SecProtocolMetadata SecProtocolMetadata { get; }
 [Obsolete ("Use 'IPServiceClass' instead.")]
 public NWServiceClass ServiceClass { get; set; }

Added properties:

public NWServiceClass IPServiceClass { get; set; }
public Security.SecProtocolMetadata TlsSecProtocolMetadata { get; }

Namespace NetworkExtension

Type Changed: NetworkExtension.NEAppProxyProvider

Added method:

public virtual bool HandleNewUdpFlow (NEAppProxyUdpFlow flow, NWEndpoint remoteEndpoint);

Type Changed: NetworkExtension.NEFilterManager

Added property:

public virtual NEFilterManagerGrade Grade { get; set; }

Type Changed: NetworkExtension.NEFilterManagerError

Added values:

ConfigurationInternalError = 6,
ConfigurationPermissionDenied = 5,

Type Changed: NetworkExtension.NEFilterProvider

Added method:

public virtual void HandleReport (NEFilterReport report);

Type Changed: NetworkExtension.NEFilterProviderConfiguration

Added properties:

public virtual string FilterDataProviderBundleIdentifier { get; set; }
public virtual string FilterPacketProviderBundleIdentifier { get; set; }
public virtual bool FilterPackets { get; set; }

Type Changed: NetworkExtension.NEFlowMetaData

Added property:

public virtual Foundation.NSData SourceAppAuditToken { get; }

Type Changed: NetworkExtension.NEPacket

Added property:

public virtual NETrafficDirection Direction { get; }

Type Changed: NetworkExtension.NEProvider

Added method:

public static void StartSystemExtensionMode ();

Type Changed: NetworkExtension.NETunnelProviderRoutingMethod

Added value:

NetworkRule = 3,

Type Changed: NetworkExtension.NEVpnIke2CertificateType

Added value:

Ed25519 = 5,

Type Changed: NetworkExtension.NEVpnIke2DiffieHellman

Added value:

Group31 = 31,

Type Changed: NetworkExtension.NEVpnIke2EncryptionAlgorithm

Added value:

ChaCha20Poly1305 = 7,

Type Changed: NetworkExtension.NEVpnProtocol

Added properties:

public virtual bool ExcludeLocalNetworks { get; set; }
public virtual bool IncludeAllNetworks { get; set; }

New Type: NetworkExtension.NEDnsProxyManager

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

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

New Type: NetworkExtension.NEDnsProxyManagerError

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

New Type: NetworkExtension.NEDnsProxyManagerErrorExtensions

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

New Type: NetworkExtension.NEDnsProxyProvider

public class NEDnsProxyProvider : NetworkExtension.NEProvider, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NEDnsProxyProvider (Foundation.NSObjectFlag t);
	protected NEDnsProxyProvider (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual NEDnsSettings[] SystemDnsSettings { get; }
	// methods
	public virtual void CancelProxy (Foundation.NSError error);
	public virtual bool HandleNewFlow (NEAppProxyFlow flow);
	public virtual bool HandleNewUdpFlow (NEAppProxyUdpFlow flow, NWEndpoint remoteEndpoint);
	public virtual void StartProxy (Foundation.NSDictionary options, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task StartProxyAsync (Foundation.NSDictionary options);
	public virtual void StopProxy (NEProviderStopReason reason, System.Action completionHandler);
	public virtual System.Threading.Tasks.Task StopProxyAsync (NEProviderStopReason reason);
}

New Type: NetworkExtension.NEFilterAction

[Serializable]
public enum NEFilterAction {
	Allow = 1,
	Drop = 2,
	FilterData = 4,
	Invalid = 0,
	Remediate = 3,
}

New Type: NetworkExtension.NEFilterDataProvider

public class NEFilterDataProvider : NetworkExtension.NEFilterProvider, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NEFilterDataProvider (Foundation.NSObjectFlag t);
	protected NEFilterDataProvider (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void ApplySettings (NEFilterSettings settings, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task ApplySettingsAsync (NEFilterSettings settings);
	public virtual NEFilterDataVerdict HandleInboundDataCompleteForFlow (NEFilterFlow flow);
	public virtual NEFilterDataVerdict HandleInboundDataFromFlow (NEFilterFlow flow, nuint offset, Foundation.NSData readBytes);
	public virtual NEFilterNewFlowVerdict HandleNewFlow (NEFilterFlow flow);
	public virtual NEFilterDataVerdict HandleOutboundDataCompleteForFlow (NEFilterFlow flow);
	public virtual NEFilterDataVerdict HandleOutboundDataFromFlow (NEFilterFlow flow, nuint offset, Foundation.NSData readBytes);
	public virtual void ResumeFlow (NEFilterFlow flow, NEFilterVerdict verdict);
}

New Type: NetworkExtension.NEFilterDataVerdict

public class NEFilterDataVerdict : NetworkExtension.NEFilterVerdict, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NEFilterDataVerdict ();
	public NEFilterDataVerdict (Foundation.NSCoder coder);
	protected NEFilterDataVerdict (Foundation.NSObjectFlag t);
	protected NEFilterDataVerdict (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public static NEFilterDataVerdict AllowVerdict ();
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static NEFilterDataVerdict DataVerdict (nuint passBytes, nuint peekBytes);
	public static NEFilterDataVerdict DropVerdict ();
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public static NEFilterDataVerdict NeedRulesVerdict ();
	public static NEFilterDataVerdict PauseVerdict ();
	public static NEFilterDataVerdict RemediateVerdict (string remediationUrlMapKey, string remediationButtonTextMapKey);
}

New Type: NetworkExtension.NEFilterFlow

public class NEFilterFlow : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NEFilterFlow ();
	public NEFilterFlow (Foundation.NSCoder coder);
	protected NEFilterFlow (Foundation.NSObjectFlag t);
	protected NEFilterFlow (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual NETrafficDirection Direction { get; }
	public virtual Foundation.NSData SourceAppAuditToken { get; }
	public virtual string SourceAppIdentifier { get; }
	public virtual Foundation.NSData SourceAppUniqueIdentifier { get; }
	public virtual string SourceAppVersion { get; }
	public virtual Foundation.NSUrl Url { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: NetworkExtension.NEFilterManagerGrade

[Serializable]
public enum NEFilterManagerGrade {
	Firewall = 1,
	Inspector = 2,
}

New Type: NetworkExtension.NEFilterNewFlowVerdict

public class NEFilterNewFlowVerdict : NetworkExtension.NEFilterVerdict, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NEFilterNewFlowVerdict ();
	public NEFilterNewFlowVerdict (Foundation.NSCoder coder);
	protected NEFilterNewFlowVerdict (Foundation.NSObjectFlag t);
	protected NEFilterNewFlowVerdict (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public static NEFilterNewFlowVerdict AllowVerdict ();
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static NEFilterNewFlowVerdict DropVerdict ();
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public static NEFilterNewFlowVerdict FilterDataVerdict (bool filterInbound, nuint peekInboundBytes, bool filterOutbound, nuint peekOutboundBytes);
	public static NEFilterNewFlowVerdict NeedRulesVerdict ();
	public static NEFilterDataVerdict PauseVerdict ();
	public static NEFilterNewFlowVerdict RemediateVerdict (string remediationUrlMapKey, string remediationButtonTextMapKey);
	public static NEFilterNewFlowVerdict UrlAppendStringVerdict (string urlAppendMapKey);
}

New Type: NetworkExtension.NEFilterPacketContext

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

New Type: NetworkExtension.NEFilterPacketHandler

public sealed delegate NEFilterPacketHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public NEFilterPacketHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (NEFilterPacketContext context, IntPtr interface, NETrafficDirection directiom, IntPtr packetBytes, nuint packetLength, System.AsyncCallback callback, object object);
	public virtual NEFilterPacketProviderVerdict EndInvoke (System.IAsyncResult result);
	public virtual NEFilterPacketProviderVerdict Invoke (NEFilterPacketContext context, IntPtr interface, NETrafficDirection directiom, IntPtr packetBytes, nuint packetLength);
}

New Type: NetworkExtension.NEFilterPacketProvider

public class NEFilterPacketProvider : NetworkExtension.NEFilterProvider, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NEFilterPacketProvider (Foundation.NSObjectFlag t);
	protected NEFilterPacketProvider (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual NEFilterPacketHandler PacketHandler { get; set; }
	// methods
	public virtual void AllowPacket (NEPacket packet);
	public virtual NEPacket DelayCurrentPacket (NEFilterPacketContext context);
}

New Type: NetworkExtension.NEFilterPacketProviderVerdict

[Serializable]
public enum NEFilterPacketProviderVerdict {
	Allow = 0,
	Delay = 2,
	Drop = 1,
}

New Type: NetworkExtension.NEFilterReport

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

New Type: NetworkExtension.NEFilterReportEvent

[Serializable]
public enum NEFilterReportEvent {
	DataDecision = 2,
	FlowClosed = 3,
	NewFlow = 1,
}

New Type: NetworkExtension.NEFilterRule

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

New Type: NetworkExtension.NEFilterSettings

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

New Type: NetworkExtension.NEFilterSocketFlow

public class NEFilterSocketFlow : NetworkExtension.NEFilterFlow, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NEFilterSocketFlow ();
	public NEFilterSocketFlow (Foundation.NSCoder coder);
	protected NEFilterSocketFlow (Foundation.NSObjectFlag t);
	protected NEFilterSocketFlow (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual NWEndpoint LocalEndpoint { get; }
	public virtual NWEndpoint RemoteEndpoint { get; }
	public virtual int SocketFamily { get; set; }
	public virtual int SocketProtocol { get; set; }
	public virtual int SocketType { get; set; }
}

New Type: NetworkExtension.NEFilterVerdict

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

New Type: NetworkExtension.NENetworkRule

public class NENetworkRule : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NENetworkRule (Foundation.NSCoder coder);
	protected NENetworkRule (Foundation.NSObjectFlag t);
	protected NENetworkRule (IntPtr handle);
	public NENetworkRule (NWHostEndpoint hostEndpoint, NENetworkRuleProtocol protocol);
	public NENetworkRule (NWHostEndpoint networkEndpoint, nuint destinationPrefix, NENetworkRuleProtocol protocol);
	public NENetworkRule (NWHostEndpoint remoteNetwork, nuint remotePrefix, NWHostEndpoint localNetwork, nuint localPrefix, NENetworkRuleProtocol protocol, NETrafficDirection direction);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual NETrafficDirection MatchDirection { get; }
	public virtual NWHostEndpoint MatchLocalNetwork { get; }
	public virtual nuint MatchLocalPrefix { get; }
	public virtual NENetworkRuleProtocol MatchProtocol { get; }
	public virtual NWHostEndpoint MatchRemoteEndpoint { get; }
	public virtual nuint MatchRemotePrefix { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: NetworkExtension.NENetworkRuleProtocol

[Serializable]
public enum NENetworkRuleProtocol {
	Any = 0,
	Tcp = 1,
	Udp = 2,
}

New Type: NetworkExtension.NETrafficDirection

[Serializable]
public enum NETrafficDirection {
	Any = 0,
	Inbound = 1,
	Outbound = 2,
}

New Type: NetworkExtension.NETransparentProxyManager

public class NETransparentProxyManager : NetworkExtension.NEVpnManager, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NETransparentProxyManager (Foundation.NSObjectFlag t);
	protected NETransparentProxyManager (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public static void LoadAllFromPreferences (System.Action<NETransparentProxyManager[],Foundation.NSError> completionHandler);
	public static System.Threading.Tasks.Task<NETransparentProxyManager[]> LoadAllFromPreferencesAsync ();
}

New Type: NetworkExtension.NETransparentProxyNetworkSettings

public class NETransparentProxyNetworkSettings : NetworkExtension.NETunnelNetworkSettings, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NETransparentProxyNetworkSettings ();
	public NETransparentProxyNetworkSettings (Foundation.NSCoder coder);
	protected NETransparentProxyNetworkSettings (Foundation.NSObjectFlag t);
	protected NETransparentProxyNetworkSettings (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual NENetworkRule[] ExcludedNetworkRules { get; set; }
	public virtual NENetworkRule[] IncludedNetworkRules { get; set; }
}

Namespace ObjCRuntime

Type Changed: ObjCRuntime.Constants

Modified fields:

-public const string SdkVersion = "10.14";
+public const string SdkVersion = "10.15";
-public const string Version = "5.14.0";
+public const string Version = "6.0.0";

Added fields:

public static const string AuthenticationServicesLibrary = "/System/Library/Frameworks/AuthenticationServices.framework/AuthenticationServices";
public static const string CoreMotionLibrary = "/System/Library/Frameworks/CoreMotion.framework/CoreMotion";
public static const string DeviceCheckLibrary = "/System/Library/Frameworks/DeviceCheck.framework/DeviceCheck";
public static const string ExecutionPolicyLibrary = "/System/Library/Frameworks/ExecutionPolicy.framework/ExecutionPolicy";
public static const string FileProviderLibrary = "/System/Library/Frameworks/FileProvider.framework/FileProvider";
public static const string FileProviderUILibrary = "/System/Library/Frameworks/FileProviderUI.framework/FileProviderUI";
public static const string LinkPresentationLibrary = "/System/Library/Frameworks/LinkPresentation.framework/LinkPresentation";
public static const string PencilKitLibrary = "/System/Library/Frameworks/PencilKit.framework/PencilKit";
public static const string PushKitLibrary = "/System/Library/Frameworks/PushKit.framework/PushKit";
public static const string QuickLookThumbnailingLibrary = "/System/Library/Frameworks/QuickLookThumbnailing.framework/QuickLookThumbnailing";
public static const string SoundAnalysisLibrary = "/System/Library/Frameworks/SoundAnalysis.framework/SoundAnalysis";
public static const string SpeechLibrary = "/System/Library/Frameworks/Speech.framework/Speech";

Type Changed: ObjCRuntime.MacAttribute

Obsoleted constructors:

 [Obsolete ("Use the overload that takes '(major, minor, subminor)', since macOS is always 64-bit.")]
 public MacAttribute (byte major, byte minor, bool onlyOn64);
 [Obsolete ("Use the overload that takes '(major, minor, subminor)', since macOS is always 64-bit.")]
 public MacAttribute (byte major, byte minor, byte subminor, PlatformArchitecture arch);
 [Obsolete ("Use the overload that takes '(major, minor, subminor)', since macOS is always 64-bit.")]
 public MacAttribute (byte major, byte minor, byte subminor, bool onlyOn64);

Type Changed: ObjCRuntime.PlatformName

Added values:

MacCatalyst = 5,
UIKitForMac = 5,

Type Changed: ObjCRuntime.TVAttribute

Obsoleted constructors:

 [Obsolete ("Use the overload that takes '(major, minor)', since tvOS is always 64-bit.")]
 public TVAttribute (byte major, byte minor, bool onlyOn64);
 [Obsolete ("Use the overload that takes '(major, minor, subminor)', since tvOS is always 64-bit.")]
 public TVAttribute (byte major, byte minor, byte subminor, bool onlyOn64);

Type Changed: ObjCRuntime.WatchAttribute

Obsoleted constructors:

 [Obsolete ("Use the overload that takes '(major, minor)', since watchOS is never 64-bit.")]
 public WatchAttribute (byte major, byte minor, bool onlyOn64);
 [Obsolete ("Use the overload that takes '(major, minor)', since watchOS is never 64-bit.")]
 public WatchAttribute (byte major, byte minor, byte subminor, bool onlyOn64);

Type Changed: ObjCRuntime.iOSAttribute

Obsoleted constructors:

 [Obsolete ("Use the overload that takes '(major, minor)', since iOS is always 64-bit.")]
 public iOSAttribute (byte major, byte minor, bool onlyOn64);
 [Obsolete ("Use the overload that takes '(major, minor, subminor)', since iOS is always 64-bit.")]
 public iOSAttribute (byte major, byte minor, byte subminor, bool onlyOn64);

Namespace PdfKit

Type Changed: PdfKit.PdfThumbnailView

Added method:

protected override void Dispose (bool disposing);

Namespace Photos

Type Changed: Photos.PHAsset

Added property:

public virtual PHAssetPlaybackStyle PlaybackStyle { get; }

Type Changed: Photos.PHAssetCollection

Obsoleted methods:

 [Obsolete ("Compatibility stub - This was marked as unavailable on macOS with Xcode 11.")]
 public static PHFetchResult FetchMoments (PHFetchOptions options);
 [Obsolete ("Compatibility stub - This was marked as unavailable on macOS with Xcode 11.")]
 public static PHFetchResult FetchMoments (PHCollectionList momentList, PHFetchOptions options);

Type Changed: Photos.PHAssetCollectionSubtype

Added value:

SmartAlbumUnableToUpload = 216,

Type Changed: Photos.PHAssetResourceType

Added values:

AdjustmentBasePairedVideo = 11,
AdjustmentBaseVideo = 12,
FullSizePairedVideo = 10,

Type Changed: Photos.PHCollectionList

Obsoleted methods:

 [Obsolete ("Compatibility stub - This was marked as unavailable on macOS with Xcode 11.")]
 public static PHFetchResult FetchMomentLists (PHCollectionListSubtype subType, PHFetchOptions options);
 [Obsolete ("Compatibility stub - This was marked as unavailable on macOS with Xcode 11.")]
 public static PHFetchResult FetchMomentLists (PHCollectionListSubtype subType, PHAssetCollection moment, PHFetchOptions options);

Type Changed: Photos.PHContentEditingInput

Obsoleted properties:

 [Obsolete ("Compatibility stub - This was marked as unavailable on macOS with Xcode 11.")]
 public virtual AVFoundation.AVAsset AvAsset { get; }

Type Changed: Photos.PHContentEditingOutput

Added constructor:

public PHContentEditingOutput (PHObjectPlaceholder placeholderForCreatedAsset);

Type Changed: Photos.PHImageManager

Obsoleted methods:

 [Obsolete ("Compatibility stub - This was marked as unavailable on macOS with Xcode 11.")]
 public virtual int RequestImageData (PHAsset asset, PHImageRequestOptions options, PHImageDataHandler handler);

Added methods:

public virtual int RequestAvAsset (PHAsset asset, PHVideoRequestOptions options, PHImageManagerRequestAvAssetHandler resultHandler);
public virtual int RequestExportSession (PHAsset asset, PHVideoRequestOptions options, string exportPreset, PHImageManagerRequestExportHandler resultHandler);
public virtual int RequestImageDataAndOrientation (PHAsset asset, PHImageRequestOptions options, PHImageManagerRequestImageDataHandler resultHandler);
public virtual int RequestLivePhoto (PHAsset asset, CoreGraphics.CGSize targetSize, PHImageContentMode contentMode, PHLivePhotoRequestOptions options, PHImageManagerRequestLivePhoto resultHandler);
public virtual int RequestPlayerItem (PHAsset asset, PHVideoRequestOptions options, PHImageManagerRequestPlayerHandler resultHandler);

Type Changed: Photos.PHLivePhoto

Added constructor:

public PHLivePhoto (Foundation.NSCoder coder);

Added interfaces:

Foundation.INSCoding
Foundation.INSCopying
Foundation.INSSecureCoding

Added methods:

public static void CancelLivePhotoRequest (int requestID);
public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
public virtual void EncodeTo (Foundation.NSCoder encoder);
public static int RequestLivePhoto (Foundation.NSUrl[] fileUrls, AppKit.NSImage image, CoreGraphics.CGSize targetSize, PHImageContentMode contentMode, System.Action<PHLivePhoto,Foundation.NSDictionary> resultHandler);

Type Changed: Photos.PHPhotoLibrary

Added property:

public virtual Foundation.NSError UnavailabilityReason { get; }

Added methods:

public virtual void Register (IPHPhotoLibraryAvailabilityObserver observer);
public virtual void Unregister (IPHPhotoLibraryAvailabilityObserver observer);

Type Changed: Photos.PHPhotoLibrary_CloudIdentifiers

Added property:

public static Foundation.NSString LocalIdentifierNotFound { get; }

Type Changed: Photos.PHProjectChangeRequest

Modified base type:

-Foundation.NSObject
+Photos.PHChangeRequest

New Type: Photos.IPHPhotoLibraryAvailabilityObserver

public interface IPHPhotoLibraryAvailabilityObserver : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void PhotoLibraryDidBecomeUnavailable (PHPhotoLibrary photoLibrary);
}

New Type: Photos.PHAssetChangeRequest

public class PHAssetChangeRequest : Photos.PHChangeRequest, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected PHAssetChangeRequest (Foundation.NSObjectFlag t);
	protected PHAssetChangeRequest (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual PHContentEditingOutput ContentEditingOutput { get; set; }
	public virtual Foundation.NSDate CreationDate { get; set; }
	public virtual bool Favorite { get; set; }
	public virtual bool Hidden { get; set; }
	public virtual CoreLocation.CLLocation Location { get; set; }
	public virtual PHObjectPlaceholder PlaceholderForCreatedAsset { get; }
	// methods
	public static PHAssetChangeRequest ChangeRequest (PHAsset asset);
	public static void DeleteAssets (PHAsset[] assets);
	public static PHAssetChangeRequest FromImage (AppKit.NSImage image);
	public static PHAssetChangeRequest FromImage (Foundation.NSUrl fileUrl);
	public static PHAssetChangeRequest FromVideo (Foundation.NSUrl fileUrl);
	public virtual void RevertAssetContentToOriginal ();
}

New Type: Photos.PHAssetCollectionChangeRequest

public class PHAssetCollectionChangeRequest : Photos.PHChangeRequest, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected PHAssetCollectionChangeRequest (Foundation.NSObjectFlag t);
	protected PHAssetCollectionChangeRequest (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual PHObjectPlaceholder PlaceholderForCreatedAssetCollection { get; }
	public virtual string Title { get; set; }
	// methods
	public virtual void AddAssets (PHObject[] assets);
	public static PHAssetCollectionChangeRequest ChangeRequest (PHAssetCollection assetCollection);
	public static PHAssetCollectionChangeRequest ChangeRequest (PHAssetCollection assetCollection, PHFetchResult assets);
	public static PHAssetCollectionChangeRequest CreateAssetCollection (string title);
	public static void DeleteAssetCollections (PHAssetCollection[] assetCollections);
	public virtual void InsertAssets (PHObject[] assets, Foundation.NSIndexSet indexes);
	public virtual void MoveAssets (Foundation.NSIndexSet fromIndexes, nuint toIndex);
	public virtual void RemoveAssets (Foundation.NSIndexSet indexes);
	public virtual void RemoveAssets (PHObject[] assets);
	public virtual void ReplaceAssets (Foundation.NSIndexSet indexes, PHObject[] assets);
}

New Type: Photos.PHAssetContentEditingInputExtensions

public static class PHAssetContentEditingInputExtensions {
	// methods
	public static void CancelContentEditingInputRequest (this PHAsset This, nuint requestID);
	public static nuint RequestContentEditingInput (this PHAsset This, PHContentEditingInputRequestOptions options, PHContentEditingHandler completionHandler);
}

New Type: Photos.PHAssetCreationRequest

public class PHAssetCreationRequest : Photos.PHAssetChangeRequest, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected PHAssetCreationRequest (Foundation.NSObjectFlag t);
	protected PHAssetCreationRequest (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void AddResource (PHAssetResourceType type, Foundation.NSData data, PHAssetResourceCreationOptions options);
	public virtual void AddResource (PHAssetResourceType type, Foundation.NSUrl fileURL, PHAssetResourceCreationOptions options);
	public static PHAssetCreationRequest CreationRequestForAsset ();
}

New Type: Photos.PHAssetResource

public class PHAssetResource : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected PHAssetResource (Foundation.NSObjectFlag t);
	protected PHAssetResource (IntPtr handle);
	// properties
	public virtual string AssetLocalIdentifier { get; }
	public override IntPtr ClassHandle { get; }
	public virtual string OriginalFilename { get; }
	public virtual PHAssetResourceType ResourceType { get; }
	public virtual string UniformTypeIdentifier { get; }
	// methods
	public static PHAssetResource[] GetAssetResources (PHAsset forAsset);
	public static PHAssetResource[] GetAssetResources (PHLivePhoto livePhoto);
}

New Type: Photos.PHAssetResourceCreationOptions

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

New Type: Photos.PHAssetResourceManager

public class PHAssetResourceManager : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected PHAssetResourceManager (Foundation.NSObjectFlag t);
	protected PHAssetResourceManager (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static PHAssetResourceManager DefaultManager { get; }
	// methods
	public virtual void CancelDataRequest (int requestID);
	public virtual int RequestData (PHAssetResource forResource, PHAssetResourceRequestOptions options, System.Action<Foundation.NSData> handler, System.Action<Foundation.NSError> completionHandler);
	public virtual void WriteData (PHAssetResource forResource, Foundation.NSUrl fileURL, PHAssetResourceRequestOptions options, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task WriteDataAsync (PHAssetResource forResource, Foundation.NSUrl fileURL, PHAssetResourceRequestOptions options);
}

New Type: Photos.PHAssetResourceRequestOptions

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

New Type: Photos.PHAssetVideoProgressHandler

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

New Type: Photos.PHCachingImageManager

public class PHCachingImageManager : Photos.PHImageManager, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public PHCachingImageManager ();
	protected PHCachingImageManager (Foundation.NSObjectFlag t);
	protected PHCachingImageManager (IntPtr handle);
	// properties
	public virtual bool AllowsCachingHighQualityImages { get; set; }
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void StartCaching (PHAsset[] assets, CoreGraphics.CGSize targetSize, PHImageContentMode contentMode, PHImageRequestOptions options);
	public virtual void StopCaching ();
	public virtual void StopCaching (PHAsset[] assets, CoreGraphics.CGSize targetSize, PHImageContentMode contentMode, PHImageRequestOptions options);
}

New Type: Photos.PHChangeRequest

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

New Type: Photos.PHCollectionListChangeRequest

public class PHCollectionListChangeRequest : Photos.PHChangeRequest, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected PHCollectionListChangeRequest (Foundation.NSObjectFlag t);
	protected PHCollectionListChangeRequest (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual PHObjectPlaceholder PlaceholderForCreatedCollectionList { get; }
	public virtual string Title { get; set; }
	// methods
	public virtual void AddChildCollections (PHCollection[] collections);
	public static PHCollectionListChangeRequest ChangeRequest (PHCollectionList collectionList);
	public static PHCollectionListChangeRequest ChangeRequest (PHCollectionList collectionList, PHFetchResult childCollections);
	public static PHCollectionListChangeRequest CreateAssetCollection (string title);
	public static void DeleteCollectionLists (PHCollectionList[] collectionLists);
	public virtual void InsertChildCollections (PHCollection[] collections, Foundation.NSIndexSet indexes);
	public virtual void MoveChildCollections (Foundation.NSIndexSet indexes, nuint toIndex);
	public virtual void RemoveChildCollections (Foundation.NSIndexSet indexes);
	public virtual void RemoveChildCollections (PHCollection[] collections);
	public virtual void ReplaceChildCollection (Foundation.NSIndexSet indexes, PHCollection[] collections);
}

New Type: Photos.PHContentEditingHandler

public sealed delegate PHContentEditingHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public PHContentEditingHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (PHContentEditingInput contentEditingInput, Foundation.NSDictionary requestStatusInfo, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (PHContentEditingInput contentEditingInput, Foundation.NSDictionary requestStatusInfo);
}

New Type: Photos.PHContentEditingInputRequestOptions

public class PHContentEditingInputRequestOptions : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public PHContentEditingInputRequestOptions ();
	protected PHContentEditingInputRequestOptions (Foundation.NSObjectFlag t);
	protected PHContentEditingInputRequestOptions (IntPtr handle);
	// properties
	public virtual System.Func<PHAdjustmentData,System.Boolean> CanHandleAdjustmentData { get; set; }
	public static Foundation.NSString CancelledKey { get; }
	public override IntPtr ClassHandle { get; }
	public static Foundation.NSString InputErrorKey { get; }
	public virtual bool NetworkAccessAllowed { get; set; }
	public virtual PHProgressHandler ProgressHandler { get; set; }
	public static Foundation.NSString ResultIsInCloudKey { get; }
}

New Type: Photos.PHImageManagerRequestAvAssetHandler

public sealed delegate PHImageManagerRequestAvAssetHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public PHImageManagerRequestAvAssetHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (AVFoundation.AVAsset asset, AVFoundation.AVAudioMix audioMix, Foundation.NSDictionary info, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (AVFoundation.AVAsset asset, AVFoundation.AVAudioMix audioMix, Foundation.NSDictionary info);
}

New Type: Photos.PHImageManagerRequestExportHandler

public sealed delegate PHImageManagerRequestExportHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public PHImageManagerRequestExportHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (AVFoundation.AVAssetExportSession exportSession, Foundation.NSDictionary info, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (AVFoundation.AVAssetExportSession exportSession, Foundation.NSDictionary info);
}

New Type: Photos.PHImageManagerRequestImageDataHandler

public sealed delegate PHImageManagerRequestImageDataHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public PHImageManagerRequestImageDataHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (Foundation.NSData imageData, string dataUti, ImageIO.CGImagePropertyOrientation orientation, Foundation.NSDictionary info, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (Foundation.NSData imageData, string dataUti, ImageIO.CGImagePropertyOrientation orientation, Foundation.NSDictionary info);
}

New Type: Photos.PHImageManagerRequestLivePhoto

public sealed delegate PHImageManagerRequestLivePhoto : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public PHImageManagerRequestLivePhoto (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (PHLivePhoto livePhoto, Foundation.NSDictionary info, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (PHLivePhoto livePhoto, Foundation.NSDictionary info);
}

New Type: Photos.PHImageManagerRequestPlayerHandler

public sealed delegate PHImageManagerRequestPlayerHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public PHImageManagerRequestPlayerHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (AVFoundation.AVPlayerItem playerItem, Foundation.NSDictionary info, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (AVFoundation.AVPlayerItem playerItem, Foundation.NSDictionary info);
}

New Type: Photos.PHLivePhotoInfo

public static class PHLivePhotoInfo {
	// properties
	public static Foundation.NSString CancelledKey { get; }
	public static Foundation.NSString ErrorKey { get; }
	public static Foundation.NSString IsDegradedKey { get; }
}

New Type: Photos.PHLivePhotoRequestOptions

public class PHLivePhotoRequestOptions : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public PHLivePhotoRequestOptions ();
	protected PHLivePhotoRequestOptions (Foundation.NSObjectFlag t);
	protected PHLivePhotoRequestOptions (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual PHImageRequestOptionsDeliveryMode DeliveryMode { get; set; }
	public virtual bool NetworkAccessAllowed { get; set; }
	public virtual PHAssetImageProgressHandler ProgressHandler { get; set; }
	public virtual PHImageRequestOptionsVersion Version { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: Photos.PHObjectPlaceholder

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

New Type: Photos.PHPhotosError

[Serializable]
public enum PHPhotosError {
	Invalid = -1,
	LibraryVolumeOffline = 3114,
	RelinquishingLibraryBundleToWriter = 3142,
	SwitchingSystemPhotoLibrary = 3143,
	UserCancelled = 3072,
}

New Type: Photos.PHPhotosErrorExtensions

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

New Type: Photos.PHProgressHandler

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

New Type: Photos.PHVideoRequestOptions

public class PHVideoRequestOptions : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public PHVideoRequestOptions ();
	protected PHVideoRequestOptions (Foundation.NSObjectFlag t);
	protected PHVideoRequestOptions (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual PHVideoRequestOptionsDeliveryMode DeliveryMode { get; set; }
	public virtual bool NetworkAccessAllowed { get; set; }
	public virtual PHAssetVideoProgressHandler ProgressHandler { get; set; }
	public virtual PHVideoRequestOptionsVersion Version { get; set; }
}

New Type: Photos.PHVideoRequestOptionsDeliveryMode

[Serializable]
public enum PHVideoRequestOptionsDeliveryMode {
	Automatic = 0,
	FastFormat = 3,
	HighQualityFormat = 1,
	MediumQualityFormat = 2,
}

New Type: Photos.PHVideoRequestOptionsVersion

[Serializable]
public enum PHVideoRequestOptionsVersion {
	Current = 0,
	Original = 1,
}

Namespace QuickLookUI

New Type: QuickLookUI.QLPreviewingController_Extensions

public static class QLPreviewingController_Extensions {
	// methods
	public static void PreparePreviewOfFile (this IQLPreviewingController This, Foundation.NSUrl url, System.Action<Foundation.NSError> completionHandler);
}

Namespace SafariServices

Type Changed: SafariServices.SFSafariExtensionHandler

Added methods:

public virtual void ContentBlocker (string contentBlockerIdentifier, Foundation.NSUrl[] urls, SFSafariPage page);
public virtual void WillNavigate (SFSafariPage page, Foundation.NSUrl url);

Type Changed: SafariServices.SFSafariExtensionHandling_Extensions

Added methods:

public static void ContentBlocker (this ISFSafariExtensionHandling This, string contentBlockerIdentifier, Foundation.NSUrl[] urls, SFSafariPage page);
public static void WillNavigate (this ISFSafariExtensionHandling This, SFSafariPage page, Foundation.NSUrl url);

Type Changed: SafariServices.SFSafariPage

Added interface:

Foundation.INSCopying

Added method:

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

Type Changed: SafariServices.SFSafariTab

Added interface:

Foundation.INSCopying

Added method:

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

Type Changed: SafariServices.SFSafariToolbarItem

Added interface:

Foundation.INSCopying

Added method:

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

Type Changed: SafariServices.SFSafariWindow

Added interface:

Foundation.INSCopying

Added method:

public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
public class SFUniversalLink : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected SFUniversalLink (Foundation.NSObjectFlag t);
	public SFUniversalLink (Foundation.NSUrl url);
	protected SFUniversalLink (IntPtr handle);
	// properties
	public virtual Foundation.NSUrl ApplicationUrl { get; }
	public override IntPtr ClassHandle { get; }
	public virtual bool Enabled { get; set; }
	public virtual Foundation.NSUrl WebpageUrl { get; }
}

Namespace Security

Type Changed: Security.SecAccessControlCreateFlags

Added value:

Watch = 32,

Type Changed: Security.SecIdentity2

Added method:

public bool AccessCertificates (System.Action<SecCertificate2> handler);

Type Changed: Security.SecProtocolMetadata

Added properties:

public TlsCipherSuite NegotiatedTlsCipherSuite { get; }
public TlsProtocolVersion NegotiatedTlsProtocolVersion { get; }
public string ServerName { get; }

Added methods:

public bool AccessPreSharedKeys (SecProtocolMetadata.SecAccessPreSharedKeysHandler handler);
public CoreFoundation.DispatchData CreateSecret (string label, nuint exporterLength);
public CoreFoundation.DispatchData CreateSecret (string label, byte[] context, nuint exporterLength);

Type Changed: Security.SecProtocolOptions

Added properties:

public static TlsProtocolVersion DefaultMaxDtlsProtocolVersion { get; }
public static TlsProtocolVersion DefaultMaxTlsProtocolVersion { get; }
public static TlsProtocolVersion DefaultMinDtlsProtocolVersion { get; }
public static TlsProtocolVersion DefaultMinTlsProtocolVersion { get; }

Added methods:

public void AddTlsCipherSuite (TlsCipherSuite cipherSuite);
public void AddTlsCipherSuiteGroup (TlsCipherSuiteGroup cipherSuiteGroup);
public bool IsEqual (SecProtocolOptions other);
public static bool IsEqual (SecProtocolOptions optionsA, SecProtocolOptions optionsB);
public void SetTlsMaxVersion (TlsProtocolVersion protocol);
public void SetTlsMinVersion (TlsProtocolVersion protocol);
public void SetTlsPreSharedKeyIdentityHint (CoreFoundation.DispatchData pskIdentityHint);

Type Changed: Security.SecStatusCode

Added values:

CertificateNameNotAllowed = -67900,
CertificatePolicyNotAllowed = -67899,
CertificateValidityPeriodTooLong = -67901,

Type Changed: Security.SecTrust

Added methods:

public SecStatusCode Evaluate (CoreFoundation.DispatchQueue queue, SecTrustCallback handler);
public SecStatusCode Evaluate (CoreFoundation.DispatchQueue queue, SecTrustWithErrorCallback handler);

Type Changed: Security.SslCipherSuite

Added values:

TLS_ECDHE_PSK_WITH_AES_128_CBC_SHA = 49205,
TLS_ECDHE_PSK_WITH_AES_256_CBC_SHA = 49206,
TLS_ECDH_anon_WITH_3DES_EDE_CBC_SHA = 49175,
TLS_ECDH_anon_WITH_AES_128_CBC_SHA = 49176,
TLS_ECDH_anon_WITH_AES_256_CBC_SHA = 49177,
TLS_ECDH_anon_WITH_NULL_SHA = 49173,
TLS_ECDH_anon_WITH_RC4_128_SHA = 49174,
TLS_PSK_WITH_CHACHA20_POLY1305_SHA256 = 52395,

Type Changed: Security.SslStatus

Added values:

SslAtsCertificateHashAlgorithmViolation = -9885,
SslAtsCertificateTrustViolation = -9886,
SslAtsCiphersuiteViolation = -9882,
SslAtsLeafCertificateHashAlgorithmViolation = -9884,
SslAtsMinimumKeySizeViolation = -9883,
SslAtsMinimumVersionViolation = -9881,
SslAtsViolation = -9880,

New Type: Security.SecTrustCallback

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

New Type: Security.SecTrustWithErrorCallback

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

New Type: Security.TlsCipherSuite

[Serializable]
public enum TlsCipherSuite {
	Aes128GcmSha256 = 4865,
	Aes256GcmSha384 = 4866,
	Chacha20Poly1305Sha256 = 4867,
	EcdheEcdsaWith3desEdeCbcSha = 49160,
	EcdheEcdsaWithAes128CbcSha = 49161,
	EcdheEcdsaWithAes128CbcSha256 = 49187,
	EcdheEcdsaWithAes128GcmSha256 = 49195,
	EcdheEcdsaWithAes256CbcSha = 49162,
	EcdheEcdsaWithAes256CbcSha384 = 49188,
	EcdheEcdsaWithAes256GcmSha384 = 49196,
	EcdheEcdsaWithChacha20Poly1305Sha256 = 52393,
	EcdheRsaWith3desEdeCbcSha = 49170,
	EcdheRsaWithAes128CbcSha = 49171,
	EcdheRsaWithAes128CbcSha256 = 49191,
	EcdheRsaWithAes128GcmSha256 = 49199,
	EcdheRsaWithAes256CbcSha = 49172,
	EcdheRsaWithAes256CbcSha384 = 49192,
	EcdheRsaWithAes256GcmSha384 = 49200,
	EcdheRsaWithChacha20Poly1305Sha256 = 52392,
	RsaWith3desEdeCbcSha = 10,
	RsaWithAes128CbcSha = 47,
	RsaWithAes128CbcSha256 = 60,
	RsaWithAes128GcmSha256 = 156,
	RsaWithAes256CbcSha = 53,
	RsaWithAes256CbcSha256 = 61,
	RsaWithAes256GcmSha384 = 157,
}

New Type: Security.TlsCipherSuiteGroup

[Serializable]
public enum TlsCipherSuiteGroup {
	Ats = 3,
	AtsCompatibility = 4,
	Compatibility = 1,
	Default = 0,
	Legacy = 2,
}

New Type: Security.TlsProtocolVersion

[Serializable]
public enum TlsProtocolVersion {
	Dtls10 = 65279,
	Dtls12 = 65277,
	Tls10 = 769,
	Tls11 = 770,
	Tls12 = 771,
	Tls13 = 772,
}

Namespace StoreKit

Type Changed: StoreKit.SKDownload

Added property:

public virtual long ExpectedContentLength { get; }

Type Changed: StoreKit.SKPaymentQueue

Added properties:

public ISKPaymentQueueDelegate Delegate { get; set; }
public virtual SKStorefront Storefront { get; }
public virtual Foundation.NSObject WeakDelegate { get; set; }

Added method:

protected override void Dispose (bool disposing);

Type Changed: StoreKit.SKPaymentTransactionObserver

Added method:

public virtual void DidChangeStorefront (SKPaymentQueue queue);

Type Changed: StoreKit.SKPaymentTransactionObserver_Extensions

Added method:

public static void DidChangeStorefront (this ISKPaymentTransactionObserver This, SKPaymentQueue queue);

Type Changed: StoreKit.SKProduct

Added property:

public virtual bool IsDownloadable { get; }

New Type: StoreKit.ISKPaymentQueueDelegate

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

New Type: StoreKit.SKArcadeService

public class SKArcadeService : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected SKArcadeService (Foundation.NSObjectFlag t);
	protected SKArcadeService (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public static void GetSubscriptionStatus (ulong nonce, SKArcadeServiceSubscriptionHandler resultHandler);
	public static void Register (Foundation.NSData randomFromLib, uint randomFromLibLength, SKArcadeServiceRegisterHandler resultHandler);
	public static void Repair ();
}

New Type: StoreKit.SKArcadeServiceRegisterHandler

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

New Type: StoreKit.SKArcadeServiceSubscriptionHandler

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

New Type: StoreKit.SKPaymentQueueDelegate

public class SKPaymentQueueDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, ISKPaymentQueueDelegate, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public SKPaymentQueueDelegate ();
	protected SKPaymentQueueDelegate (Foundation.NSObjectFlag t);
	protected SKPaymentQueueDelegate (IntPtr handle);
	// methods
	public virtual bool ShouldContinueTransaction (SKPaymentQueue paymentQueue, SKPaymentTransaction transaction, SKStorefront newStorefront);
}

New Type: StoreKit.SKPaymentQueueDelegate_Extensions

public static class SKPaymentQueueDelegate_Extensions {
	// methods
	public static bool ShouldContinueTransaction (this ISKPaymentQueueDelegate This, SKPaymentQueue paymentQueue, SKPaymentTransaction transaction, SKStorefront newStorefront);
}

New Type: StoreKit.SKStorefront

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

Namespace UserNotifications

Type Changed: UserNotifications.UNMutableNotificationContent

Added property:

public virtual string TargetContentIdentifier { get; set; }

Type Changed: UserNotifications.UNNotificationCategoryOptions

Added value:

AllowAnnouncement = 16,

Type Changed: UserNotifications.UNNotificationContent

Added property:

public virtual string TargetContentIdentifier { get; set; }

Namespace VideoSubscriberAccount

Type Changed: VideoSubscriberAccount.VSAccountMetadataRequest

Added property:

public virtual string AccountProviderAuthenticationToken { get; set; }

Type Changed: VideoSubscriberAccount.VSAccountProviderAuthenticationScheme

Added value:

Api = 1,

Type Changed: VideoSubscriberAccount.VSErrorCode

Added value:

Rejected = 6,

Namespace VideoToolbox

Type Changed: VideoToolbox.VTCompressionProperties

Added properties:

public VTAlphaChannelMode AlphaChannelMode { get; set; }
public double? GammaLevel { get; set; }
public float? TargetQualityForAlpha { get; set; }
public uint? UsingGpuRegistryId { get; }

Type Changed: VideoToolbox.VTCompressionPropertyKey

Added properties:

public static Foundation.NSString AlphaChannelMode { get; }
public static Foundation.NSString GammaLevel { get; }
public static Foundation.NSString TargetQualityForAlpha { get; }
public static Foundation.NSString UsingGpuRegistryId { get; }

Type Changed: VideoToolbox.VTDecompressionProperties

Added property:

public uint? UsingGpuRegistryId { get; }

Type Changed: VideoToolbox.VTDecompressionPropertyKey

Added property:

public static Foundation.NSString UsingGpuRegistryId { get; }

Type Changed: VideoToolbox.VTPixelTransferProperties

Added property:

public bool? RealTime { get; set; }

Type Changed: VideoToolbox.VTPixelTransferPropertyKeys

Added property:

public static Foundation.NSString RealTime { get; }

Type Changed: VideoToolbox.VTVideoEncoderSpecification

Added properties:

public uint? PreferredEncoderGpuRegistryId { get; set; }
public uint? RequiredEncoderGpuRegistryId { get; set; }

Type Changed: VideoToolbox.VTVideoEncoderSpecificationKeys

Added properties:

public static Foundation.NSString PreferredEncoderGpuRegistryId { get; }
public static Foundation.NSString RequiredEncoderGpuRegistryId { get; }

New Type: VideoToolbox.VTAlphaChannelMode

[Serializable]
public enum VTAlphaChannelMode {
	PremultipliedAlpha = 1,
	StraightAlpha = 0,
}

New Type: VideoToolbox.VTAlphaChannelModeExtensions

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

Namespace Vision

Type Changed: Vision.VNClassificationObservation

Added property:

public virtual bool HasPrecisionRecallCurve { get; }

Added methods:

public virtual bool HasMinimumPrecision (float minimumPrecision, float recall);
public virtual bool HasMinimumRecall (float minimumRecall, float precision);

Type Changed: Vision.VNCoreMLFeatureValueObservation

Added property:

public virtual string FeatureName { get; }

Type Changed: Vision.VNCoreMLModel

Added properties:

public virtual CoreML.IMLFeatureProvider FeatureProvider { get; set; }
public virtual string InputImageFeatureName { get; set; }

Type Changed: Vision.VNDetectFaceLandmarksRequest

Added property:

public virtual VNRequestFaceLandmarksConstellation Constellation { get; set; }

Added method:

public static bool SupportsConstellation (VNDetectFaceLandmarksRequestRevision revision, VNRequestFaceLandmarksConstellation constellation);

Type Changed: Vision.VNDetectFaceLandmarksRequestRevision

Added value:

Three = 3,

Type Changed: Vision.VNErrorCode

Added value:

DataUnavailable = 17,

Type Changed: Vision.VNFaceLandmarkRegion

Added constructor:

protected VNFaceLandmarkRegion (Foundation.NSCoder coder);

Added interfaces:

Foundation.INSCoding
Foundation.INSCopying
Foundation.INSSecureCoding
IVNRequestRevisionProviding

Added property:

public virtual VNRequestRevision RequestRevision { get; }

Added methods:

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

Type Changed: Vision.VNFaceLandmarkRegion2D

Added constructor:

public VNFaceLandmarkRegion2D (Foundation.NSCoder coder);

Added interfaces:

Foundation.INSCoding
Foundation.INSCopying
Foundation.INSSecureCoding
IVNRequestRevisionProviding

Added property:

public virtual nfloat[] PrecisionEstimatesPerPoint { get; }

Type Changed: Vision.VNFaceLandmarks

Added constructor:

protected VNFaceLandmarks (Foundation.NSCoder coder);

Added interfaces:

Foundation.INSCoding
Foundation.INSCopying
Foundation.INSSecureCoding
IVNRequestRevisionProviding

Added property:

public virtual VNRequestRevision RequestRevision { get; }

Added methods:

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

Type Changed: Vision.VNFaceLandmarks2D

Added constructor:

public VNFaceLandmarks2D (Foundation.NSCoder coder);

Added interfaces:

Foundation.INSCoding
Foundation.INSCopying
Foundation.INSSecureCoding
IVNRequestRevisionProviding

Type Changed: Vision.VNFaceObservation

Added property:

public virtual float? FaceCaptureQuality { get; }

Type Changed: Vision.VNPixelBufferObservation

Added property:

public virtual string FeatureName { get; }

Type Changed: Vision.VNRectangleObservation

Added method:

public static VNRectangleObservation GetRectangleObservation (VNRectangleObservationRequestRevision requestRevision, CoreGraphics.CGPoint topLeft, CoreGraphics.CGPoint bottomLeft, CoreGraphics.CGPoint bottomRight, CoreGraphics.CGPoint topRight);

Type Changed: Vision.VNRequest

Added method:

public virtual void Cancel ();

Type Changed: Vision.VNTrackObjectRequestRevision

Added value:

Two = 2,

Type Changed: Vision.VNUtils

Added method:

public static nuint GetElementTypeSize (VNElementType elementType);

New Type: Vision.IVNRequestProgressProviding

public interface IVNRequestProgressProviding : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual bool Indeterminate { get; }
	public virtual VNRequestProgressHandler ProgressHandler { get; set; }
}

New Type: Vision.VNAnimalIdentifier

[Serializable]
public enum VNAnimalIdentifier {
	Cat = 1,
	Dog = 0,
	Unknown = -1,
}

New Type: Vision.VNAnimalIdentifierExtensions

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

New Type: Vision.VNClassifyImageRequest

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

New Type: Vision.VNClassifyImageRequestRevision

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

New Type: Vision.VNDetectFaceCaptureQualityRequest

public class VNDetectFaceCaptureQualityRequest : Vision.VNImageBasedRequest, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, IVNFaceObservationAccepting {
	// constructors
	protected VNDetectFaceCaptureQualityRequest (Foundation.NSObjectFlag t);
	protected VNDetectFaceCaptureQualityRequest (IntPtr handle);
	public VNDetectFaceCaptureQualityRequest (VNRequestCompletionHandler completionHandler);
	// properties
	public override IntPtr ClassHandle { get; }
	public static VNDetectFaceCaptureQualityRequestRevision CurrentRevision { get; }
	public static VNDetectFaceCaptureQualityRequestRevision DefaultRevision { get; }
	public virtual VNFaceObservation[] InputFaceObservations { get; set; }
	public virtual VNDetectFaceCaptureQualityRequestRevision Revision { get; set; }
	public static VNDetectFaceCaptureQualityRequestRevision[] SupportedRevisions { get; }
	public static Foundation.NSIndexSet WeakSupportedRevisions { get; }
}

New Type: Vision.VNDetectFaceCaptureQualityRequestRevision

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

New Type: Vision.VNDetectHumanRectanglesRequest

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

New Type: Vision.VNDetectHumanRectanglesRequestRevision

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

New Type: Vision.VNElementType

[Serializable]
public enum VNElementType {
	Double = 2,
	Float = 1,
	Unknown = 0,
}

New Type: Vision.VNFeaturePrintObservation

public class VNFeaturePrintObservation : Vision.VNObservation, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, IVNRequestRevisionProviding {
	// constructors
	public VNFeaturePrintObservation (Foundation.NSCoder coder);
	protected VNFeaturePrintObservation (Foundation.NSObjectFlag t);
	protected VNFeaturePrintObservation (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSData Data { get; }
	public virtual nuint ElementCount { get; }
	public virtual VNElementType ElementType { get; }
	// methods
	public bool ComputeDistance (out float[] distance, VNFeaturePrintObservation featurePrint, out Foundation.NSError error);
}

New Type: Vision.VNGenerateAttentionBasedSaliencyImageRequest

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

New Type: Vision.VNGenerateAttentionBasedSaliencyImageRequestRevision

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

New Type: Vision.VNGenerateImageFeaturePrintRequest

public class VNGenerateImageFeaturePrintRequest : Vision.VNImageBasedRequest, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected VNGenerateImageFeaturePrintRequest (Foundation.NSObjectFlag t);
	protected VNGenerateImageFeaturePrintRequest (IntPtr handle);
	public VNGenerateImageFeaturePrintRequest (VNRequestCompletionHandler completionHandler);
	// properties
	public override IntPtr ClassHandle { get; }
	public static VNGenerateImageFeaturePrintRequestRevision CurrentRevision { get; }
	public static VNGenerateImageFeaturePrintRequestRevision DefaultRevision { get; }
	public virtual VNImageCropAndScaleOption ImageCropAndScaleOption { get; set; }
	public virtual VNGenerateImageFeaturePrintRequestRevision Revision { get; set; }
	public static VNGenerateImageFeaturePrintRequestRevision[] SupportedRevisions { get; }
	public static Foundation.NSIndexSet WeakSupportedRevisions { get; }
}

New Type: Vision.VNGenerateImageFeaturePrintRequestRevision

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

New Type: Vision.VNGenerateObjectnessBasedSaliencyImageRequest

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

New Type: Vision.VNGenerateObjectnessBasedSaliencyImageRequestRevision

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

New Type: Vision.VNRecognizeAnimalsRequest

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

New Type: Vision.VNRecognizeAnimalsRequestRevision

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

New Type: Vision.VNRecognizeTextRequest

public class VNRecognizeTextRequest : Vision.VNImageBasedRequest, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, IVNRequestProgressProviding {
	// constructors
	protected VNRecognizeTextRequest (Foundation.NSObjectFlag t);
	protected VNRecognizeTextRequest (IntPtr handle);
	public VNRecognizeTextRequest (VNRequestCompletionHandler completionHandler);
	// properties
	public override IntPtr ClassHandle { get; }
	public static VNRecognizeTextRequestRevision CurrentRevision { get; }
	public virtual string[] CustomWords { get; set; }
	public static VNRecognizeTextRequestRevision DefaultRevision { get; }
	public virtual bool Indeterminate { get; }
	public virtual float MinimumTextHeight { get; set; }
	public virtual VNRequestProgressHandler ProgressHandler { get; set; }
	public virtual string[] RecognitionLanguages { get; set; }
	public virtual VNRequestTextRecognitionLevel RecognitionLevel { get; set; }
	public virtual VNRecognizeTextRequestRevision Revision { get; set; }
	public static VNRecognizeTextRequestRevision[] SupportedRevisions { get; }
	public virtual bool UsesLanguageCorrection { get; set; }
	public static Foundation.NSIndexSet WeakSupportedRevisions { get; }
	// methods
	public static string[] GetSupportedRecognitionLanguages (VNRequestTextRecognitionLevel textRecognitionLevel, VNRecognizeTextRequestRevision revision, out Foundation.NSError error);
}

New Type: Vision.VNRecognizeTextRequestRevision

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

New Type: Vision.VNRecognizedText

public class VNRecognizedText : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public VNRecognizedText (Foundation.NSCoder coder);
	protected VNRecognizedText (Foundation.NSObjectFlag t);
	protected VNRecognizedText (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual float Confidence { get; }
	public virtual string String { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public virtual VNRectangleObservation GetBoundingBox (Foundation.NSRange range, out Foundation.NSError error);
}

New Type: Vision.VNRecognizedTextObservation

public class VNRecognizedTextObservation : Vision.VNRectangleObservation, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, IVNRequestRevisionProviding {
	// constructors
	public VNRecognizedTextObservation (Foundation.NSCoder coder);
	protected VNRecognizedTextObservation (Foundation.NSObjectFlag t);
	protected VNRecognizedTextObservation (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public static VNRecognizedTextObservation Create (CoreGraphics.CGRect boundingBox);
	public virtual VNRecognizedText[] TopCandidates (nuint maxCandidateCount);
}

New Type: Vision.VNRequestFaceLandmarksConstellation

[Serializable]
public enum VNRequestFaceLandmarksConstellation {
	NotDefined = 0,
	SeventySixPoints = 2,
	SixtyFivePoints = 1,
}

New Type: Vision.VNRequestProgressHandler

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

New Type: Vision.VNRequestTextRecognitionLevel

[Serializable]
public enum VNRequestTextRecognitionLevel {
	Accurate = 0,
	Fast = 1,
}

New Type: Vision.VNSaliencyImageObservation

public class VNSaliencyImageObservation : Vision.VNPixelBufferObservation, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, IVNRequestRevisionProviding {
	// constructors
	public VNSaliencyImageObservation (Foundation.NSCoder coder);
	protected VNSaliencyImageObservation (Foundation.NSObjectFlag t);
	protected VNSaliencyImageObservation (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual VNRectangleObservation[] SalientObjects { get; }
}

Namespace WebKit

Type Changed: WebKit.WKErrorCode

Added values:

AttributedStringContentFailedToLoad = 10,
AttributedStringContentLoadTimedOut = 11,

Type Changed: WebKit.WKNavigation

Added property:

public virtual WKContentMode EffectiveContentMode { get; }

Type Changed: WebKit.WKNavigationDelegate

Added method:

public virtual void DecidePolicy (WKWebView webView, WKNavigationAction navigationAction, WKWebpagePreferences preferences, System.Action<WKNavigationActionPolicy,WebKit.WKWebpagePreferences> decisionHandler);

Type Changed: WebKit.WKNavigationDelegate_Extensions

Added method:

public static void DecidePolicy (this IWKNavigationDelegate This, WKWebView webView, WKNavigationAction navigationAction, WKWebpagePreferences preferences, System.Action<WKNavigationActionPolicy,WebKit.WKWebpagePreferences> decisionHandler);

Type Changed: WebKit.WKPreferences

Added property:

public virtual bool FraudulentWebsiteWarningEnabled { get; set; }

Type Changed: WebKit.WKSnapshotConfiguration

Added property:

public virtual bool AfterScreenUpdates { get; set; }

Type Changed: WebKit.WKWebViewConfiguration

Added property:

public virtual WKWebpagePreferences DefaultWebpagePreferences { get; set; }

New Type: WebKit.WKContentMode

[Serializable]
public enum WKContentMode {
	Desktop = 2,
	Mobile = 1,
	Recommended = 0,
}

New Type: WebKit.WKWebpagePreferences

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

Namespace iTunesLibrary

Type Changed: iTunesLibrary.ITLibrary

Obsoleted constructors:

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

New Namespace AuthenticationServices

New Type: AuthenticationServices.ASAuthorization

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

New Type: AuthenticationServices.ASAuthorizationAppleIdButton

public class ASAuthorizationAppleIdButton : AppKit.NSControl, AppKit.INSAccessibility, AppKit.INSAccessibilityButton, AppKit.INSAccessibilityElementProtocol, AppKit.INSAppearanceCustomization, AppKit.INSDraggingDestination, AppKit.INSTouchBarProvider, AppKit.INSUserInterfaceItemIdentification, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ASAuthorizationAppleIdButton (Foundation.NSCoder coder);
	protected ASAuthorizationAppleIdButton (Foundation.NSObjectFlag t);
	protected ASAuthorizationAppleIdButton (IntPtr handle);
	public ASAuthorizationAppleIdButton (ASAuthorizationAppleIdButtonType type, ASAuthorizationAppleIdButtonStyle style);
	// properties
	public virtual bool AccessibilityFocused { get; }
	public virtual CoreGraphics.CGRect AccessibilityFrame { get; }
	public virtual string AccessibilityIdentifier { get; }
	public virtual string AccessibilityLabel { get; }
	public virtual Foundation.NSObject AccessibilityParent { get; }
	public override IntPtr ClassHandle { get; }
	public virtual nfloat CornerRadius { get; set; }
	// methods
	public virtual bool AccessibilityPerformPress ();
	public static ASAuthorizationAppleIdButton Create (ASAuthorizationAppleIdButtonType type, ASAuthorizationAppleIdButtonStyle style);
}

New Type: AuthenticationServices.ASAuthorizationAppleIdButtonStyle

[Serializable]
public enum ASAuthorizationAppleIdButtonStyle {
	Black = 2,
	White = 0,
	WhiteOutline = 1,
}

New Type: AuthenticationServices.ASAuthorizationAppleIdButtonType

[Serializable]
public enum ASAuthorizationAppleIdButtonType {
	Continue = 1,
	Default = 0,
	SignIn = 0,
}

New Type: AuthenticationServices.ASAuthorizationAppleIdCredential

public class ASAuthorizationAppleIdCredential : Foundation.NSObject, IASAuthorizationCredential, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ASAuthorizationAppleIdCredential (Foundation.NSCoder coder);
	protected ASAuthorizationAppleIdCredential (Foundation.NSObjectFlag t);
	protected ASAuthorizationAppleIdCredential (IntPtr handle);
	// properties
	public virtual Foundation.NSData AuthorizationCode { get; }
	public virtual ASAuthorizationScope[] AuthorizedScopes { get; }
	public override IntPtr ClassHandle { get; }
	public virtual string Email { get; }
	public virtual Foundation.NSPersonNameComponents FullName { get; }
	public virtual Foundation.NSData IdentityToken { get; }
	public virtual ASUserDetectionStatus RealUserStatus { get; }
	public virtual string State { get; }
	public virtual string User { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: AuthenticationServices.ASAuthorizationAppleIdProvider

public class ASAuthorizationAppleIdProvider : Foundation.NSObject, IASAuthorizationProvider, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ASAuthorizationAppleIdProvider ();
	protected ASAuthorizationAppleIdProvider (Foundation.NSObjectFlag t);
	protected ASAuthorizationAppleIdProvider (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static Foundation.NSString CredentialRevokedNotification { get; }
	// methods
	public virtual ASAuthorizationAppleIdRequest CreateRequest ();
	public virtual void GetCredentialState (string userID, System.Action<ASAuthorizationAppleIdProviderCredentialState,Foundation.NSError> completion);
	public virtual System.Threading.Tasks.Task<ASAuthorizationAppleIdProviderCredentialState> GetCredentialStateAsync (string userID);

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

New Type: AuthenticationServices.ASAuthorizationAppleIdProviderCredentialState

[Serializable]
public enum ASAuthorizationAppleIdProviderCredentialState {
	Authorized = 1,
	NotFound = 2,
	Revoked = 0,
	Transferred = 3,
}

New Type: AuthenticationServices.ASAuthorizationAppleIdRequest

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

New Type: AuthenticationServices.ASAuthorizationController

public class ASAuthorizationController : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ASAuthorizationController (ASAuthorizationRequest[] authorizationRequests);
	protected ASAuthorizationController (Foundation.NSObjectFlag t);
	protected ASAuthorizationController (IntPtr handle);
	// properties
	public virtual ASAuthorizationRequest[] AuthorizationRequests { get; }
	public override IntPtr ClassHandle { get; }
	public IASAuthorizationControllerDelegate Delegate { get; set; }
	public virtual IASAuthorizationControllerPresentationContextProviding PresentationContextProvider { get; set; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	protected override void Dispose (bool disposing);
	public virtual void PerformRequests ();
}

New Type: AuthenticationServices.ASAuthorizationControllerDelegate

public class ASAuthorizationControllerDelegate : Foundation.NSObject, IASAuthorizationControllerDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ASAuthorizationControllerDelegate ();
	protected ASAuthorizationControllerDelegate (Foundation.NSObjectFlag t);
	protected ASAuthorizationControllerDelegate (IntPtr handle);
	// methods
	public virtual void DidComplete (ASAuthorizationController controller, ASAuthorization authorization);
	public virtual void DidComplete (ASAuthorizationController controller, Foundation.NSError error);
}

New Type: AuthenticationServices.ASAuthorizationControllerDelegate_Extensions

public static class ASAuthorizationControllerDelegate_Extensions {
	// methods
	public static void DidComplete (this IASAuthorizationControllerDelegate This, ASAuthorizationController controller, ASAuthorization authorization);
	public static void DidComplete (this IASAuthorizationControllerDelegate This, ASAuthorizationController controller, Foundation.NSError error);
}

New Type: AuthenticationServices.ASAuthorizationError

[Serializable]
public enum ASAuthorizationError {
	Canceled = 1001,
	Failed = 1004,
	InvalidResponse = 1002,
	NotHandled = 1003,
	Unknown = 1000,
}

New Type: AuthenticationServices.ASAuthorizationErrorExtensions

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

New Type: AuthenticationServices.ASAuthorizationOpenIdRequest

public class ASAuthorizationOpenIdRequest : AuthenticationServices.ASAuthorizationRequest, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ASAuthorizationOpenIdRequest (Foundation.NSCoder coder);
	protected ASAuthorizationOpenIdRequest (Foundation.NSObjectFlag t);
	protected ASAuthorizationOpenIdRequest (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string Nonce { get; set; }
	public virtual ASAuthorizationOperation RequestedOperation { get; set; }
	public virtual ASAuthorizationScope[] RequestedScopes { get; set; }
	public virtual string State { get; set; }
}

New Type: AuthenticationServices.ASAuthorizationOperation

[Serializable]
public enum ASAuthorizationOperation {
	Implicit = 0,
	Login = 1,
	Logout = 3,
	Refresh = 2,
}

New Type: AuthenticationServices.ASAuthorizationOperationExtensions

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

New Type: AuthenticationServices.ASAuthorizationPasswordProvider

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

New Type: AuthenticationServices.ASAuthorizationPasswordRequest

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

New Type: AuthenticationServices.ASAuthorizationProviderAuthorizationOperation

[Serializable]
public enum ASAuthorizationProviderAuthorizationOperation {
	None = 0,
}

New Type: AuthenticationServices.ASAuthorizationProviderAuthorizationOperationExtensions

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

New Type: AuthenticationServices.ASAuthorizationProviderExtensionAuthorizationRequest

public class ASAuthorizationProviderExtensionAuthorizationRequest : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ASAuthorizationProviderExtensionAuthorizationRequest ();
	protected ASAuthorizationProviderExtensionAuthorizationRequest (Foundation.NSObjectFlag t);
	protected ASAuthorizationProviderExtensionAuthorizationRequest (IntPtr handle);
	// properties
	public virtual Foundation.NSDictionary AuthorizationOptions { get; }
	public virtual string CallerBundleIdentifier { get; }
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSDictionary ExtensionData { get; }
	public virtual Foundation.NSData HttpBody { get; }
	public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSString> HttpHeaders { get; }
	public virtual string Realm { get; }
	public ASAuthorizationProviderAuthorizationOperation RequestedOperation { get; }
	public virtual Foundation.NSUrl Url { get; }
	public virtual Foundation.NSString WeakRequestedOperation { get; }
	// methods
	public virtual void Cancel ();
	public virtual void Complete ();
	public virtual void Complete (Foundation.NSDictionary<Foundation.NSString,Foundation.NSString> httpAuthorizationHeaders);
	public virtual void Complete (Foundation.NSError error);
	public virtual void Complete (Foundation.NSHttpUrlResponse httpResponse, Foundation.NSData httpBody);
	public virtual void DoNotHandle ();
	public virtual void PresentAuthorizationViewController (System.Action<System.Boolean,Foundation.NSError> completion);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> PresentAuthorizationViewControllerAsync ();
}

New Type: AuthenticationServices.ASAuthorizationProviderExtensionAuthorizationRequestHandler_Extensions

public static class ASAuthorizationProviderExtensionAuthorizationRequestHandler_Extensions {
	// methods
	public static void CancelAuthorization (this IASAuthorizationProviderExtensionAuthorizationRequestHandler This, ASAuthorizationProviderExtensionAuthorizationRequest request);
}

New Type: AuthenticationServices.ASAuthorizationRequest

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

New Type: AuthenticationServices.ASAuthorizationScope

[Serializable]
public enum ASAuthorizationScope {
	Email = 1,
	FullName = 0,
}

New Type: AuthenticationServices.ASAuthorizationScopeExtensions

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

New Type: AuthenticationServices.ASAuthorizationSingleSignOnCredential

public class ASAuthorizationSingleSignOnCredential : Foundation.NSObject, IASAuthorizationCredential, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ASAuthorizationSingleSignOnCredential (Foundation.NSCoder coder);
	protected ASAuthorizationSingleSignOnCredential (Foundation.NSObjectFlag t);
	protected ASAuthorizationSingleSignOnCredential (IntPtr handle);
	// properties
	public virtual Foundation.NSData AccessToken { get; }
	public virtual Foundation.NSHttpUrlResponse AuthenticatedResponse { get; }
	public virtual ASAuthorizationScope[] AuthorizedScopes { get; }
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSData IdentityToken { get; }
	public virtual string State { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: AuthenticationServices.ASAuthorizationSingleSignOnProvider

public class ASAuthorizationSingleSignOnProvider : Foundation.NSObject, IASAuthorizationProvider, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ASAuthorizationSingleSignOnProvider (Foundation.NSObjectFlag t);
	protected ASAuthorizationSingleSignOnProvider (IntPtr handle);
	// properties
	public virtual bool CanPerformAuthorization { get; }
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSUrl Url { get; }
	// methods
	public static ASAuthorizationSingleSignOnProvider CreateProvider (Foundation.NSUrl identityProviderUrl);
	public virtual ASAuthorizationSingleSignOnRequest CreateRequest ();
}

New Type: AuthenticationServices.ASAuthorizationSingleSignOnRequest

public class ASAuthorizationSingleSignOnRequest : AuthenticationServices.ASAuthorizationOpenIdRequest, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ASAuthorizationSingleSignOnRequest (Foundation.NSCoder coder);
	protected ASAuthorizationSingleSignOnRequest (Foundation.NSObjectFlag t);
	protected ASAuthorizationSingleSignOnRequest (IntPtr handle);
	// properties
	public virtual Foundation.NSUrlQueryItem[] AuthorizationOptions { get; set; }
	public override IntPtr ClassHandle { get; }
}

New Type: AuthenticationServices.ASPasswordCredential

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

New Type: AuthenticationServices.ASUserDetectionStatus

[Serializable]
public enum ASUserDetectionStatus {
	LikelyReal = 2,
	Unknown = 1,
	Unsupported = 0,
}

New Type: AuthenticationServices.ASWebAuthenticationSession

public class ASWebAuthenticationSession : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ASWebAuthenticationSession (Foundation.NSObjectFlag t);
	protected ASWebAuthenticationSession (IntPtr handle);
	public ASWebAuthenticationSession (Foundation.NSUrl url, string callbackUrlScheme, ASWebAuthenticationSessionCompletionHandler completionHandler);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool PrefersEphemeralWebBrowserSession { get; set; }
	public virtual IASWebAuthenticationPresentationContextProviding PresentationContextProvider { get; set; }
	// methods
	public virtual void Cancel ();
	protected override void Dispose (bool disposing);
	public virtual bool Start ();
}

New Type: AuthenticationServices.ASWebAuthenticationSessionCompletionHandler

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

New Type: AuthenticationServices.ASWebAuthenticationSessionErrorCode

[Serializable]
public enum ASWebAuthenticationSessionErrorCode {
	CanceledLogin = 1,
}

New Type: AuthenticationServices.ASWebAuthenticationSessionErrorCodeExtensions

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

New Type: AuthenticationServices.ASWebAuthenticationSessionRequest

public class ASWebAuthenticationSessionRequest : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ASWebAuthenticationSessionRequest (Foundation.NSCoder coder);
	protected ASWebAuthenticationSessionRequest (Foundation.NSObjectFlag t);
	protected ASWebAuthenticationSessionRequest (IntPtr handle);
	// properties
	public virtual string CallbackUrlScheme { get; }
	public override IntPtr ClassHandle { get; }
	public IASWebAuthenticationSessionRequestDelegate Delegate { get; set; }
	public virtual bool ShouldUseEphemeralSession { get; }
	public virtual Foundation.NSUrl Url { get; }
	public virtual Foundation.NSUuid Uuid { get; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	public virtual void Cancel (Foundation.NSError error);
	public virtual void Complete (Foundation.NSUrl callbackUrl);
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	protected override void Dispose (bool disposing);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: AuthenticationServices.ASWebAuthenticationSessionRequestDelegate

public class ASWebAuthenticationSessionRequestDelegate : Foundation.NSObject, IASWebAuthenticationSessionRequestDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ASWebAuthenticationSessionRequestDelegate ();
	protected ASWebAuthenticationSessionRequestDelegate (Foundation.NSObjectFlag t);
	protected ASWebAuthenticationSessionRequestDelegate (IntPtr handle);
	// methods
	public virtual void DidCancel (ASWebAuthenticationSessionRequest authenticationSessionRequest, Foundation.NSError error);
	public virtual void DidComplete (ASWebAuthenticationSessionRequest authenticationSessionRequest, Foundation.NSUrl callbackUrl);
}

New Type: AuthenticationServices.ASWebAuthenticationSessionRequestDelegate_Extensions

public static class ASWebAuthenticationSessionRequestDelegate_Extensions {
	// methods
	public static void DidCancel (this IASWebAuthenticationSessionRequestDelegate This, ASWebAuthenticationSessionRequest authenticationSessionRequest, Foundation.NSError error);
	public static void DidComplete (this IASWebAuthenticationSessionRequestDelegate This, ASWebAuthenticationSessionRequest authenticationSessionRequest, Foundation.NSUrl callbackUrl);
}

New Type: AuthenticationServices.ASWebAuthenticationSessionWebBrowserSessionManager

public class ASWebAuthenticationSessionWebBrowserSessionManager : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ASWebAuthenticationSessionWebBrowserSessionManager (Foundation.NSObjectFlag t);
	protected ASWebAuthenticationSessionWebBrowserSessionManager (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual IASWebAuthenticationSessionWebBrowserSessionHandling SessionHandler { get; set; }
	public static ASWebAuthenticationSessionWebBrowserSessionManager SharedManager { get; }
	public virtual bool WasLaunchedByAuthenticationServices { get; }
	// methods
	protected override void Dispose (bool disposing);
}

New Type: AuthenticationServices.IASAuthorizationControllerDelegate

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

New Type: AuthenticationServices.IASAuthorizationControllerPresentationContextProviding

public interface IASAuthorizationControllerPresentationContextProviding : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual AppKit.NSWindow GetPresentationAnchor (ASAuthorizationController controller);
}

New Type: AuthenticationServices.IASAuthorizationCredential

public interface IASAuthorizationCredential : Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
}

New Type: AuthenticationServices.IASAuthorizationProvider

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

New Type: AuthenticationServices.IASAuthorizationProviderExtensionAuthorizationRequestHandler

public interface IASAuthorizationProviderExtensionAuthorizationRequestHandler : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void BeginAuthorization (ASAuthorizationProviderExtensionAuthorizationRequest request);
}

New Type: AuthenticationServices.IASWebAuthenticationPresentationContextProviding

public interface IASWebAuthenticationPresentationContextProviding : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual AppKit.NSWindow GetPresentationAnchor (ASWebAuthenticationSession session);
}

New Type: AuthenticationServices.IASWebAuthenticationSessionRequestDelegate

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

New Type: AuthenticationServices.IASWebAuthenticationSessionWebBrowserSessionHandling

public interface IASWebAuthenticationSessionWebBrowserSessionHandling : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void BeginHandlingWebAuthenticationSessionRequest (ASWebAuthenticationSessionRequest request);
	public virtual void CancelWebAuthenticationSessionRequest (ASWebAuthenticationSessionRequest request);
}

New Namespace CoreMotion

New Type: CoreMotion.CMAcceleration

public struct CMAcceleration {
	// constructors
	public CMAcceleration (double x, double y, double z);
	// fields
	public double X;
	public double Y;
	public double Z;
	// methods
	public override string ToString ();
}

New Type: CoreMotion.CMAccelerometerData

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

New Type: CoreMotion.CMAttitude

public class CMAttitude : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CMAttitude (Foundation.NSCoder coder);
	protected CMAttitude (Foundation.NSObjectFlag t);
	protected CMAttitude (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual double Pitch { get; }
	public virtual CMQuaternion Quaternion { get; }
	public virtual double Roll { get; }
	public virtual CMRotationMatrix RotationMatrix { get; }
	public virtual double Yaw { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public virtual void MultiplyByInverseOfAttitude (CMAttitude attitude);
}

New Type: CoreMotion.CMAuthorizationStatus

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

New Type: CoreMotion.CMCalibratedMagneticField

public struct CMCalibratedMagneticField {
	// fields
	public CMMagneticFieldCalibrationAccuracy Accuracy;
	public CMMagneticField Field;
	// methods
	public override string ToString ();
}

New Type: CoreMotion.CMDeviceMotion

public class CMDeviceMotion : CoreMotion.CMLogItem, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CMDeviceMotion (Foundation.NSCoder coder);
	protected CMDeviceMotion (Foundation.NSObjectFlag t);
	protected CMDeviceMotion (IntPtr handle);
	// properties
	public virtual CMAttitude Attitude { get; }
	public override IntPtr ClassHandle { get; }
	public virtual CMAcceleration Gravity { get; }
	public virtual double Heading { get; }
	public virtual CMCalibratedMagneticField MagneticField { get; }
	public virtual CMRotationRate RotationRate { get; }
	public virtual CMAcceleration UserAcceleration { get; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: CoreMotion.CMError

[Serializable]
public enum CMError {
	DeviceRequiresMovement = 101,
	InvalidAction = 108,
	InvalidParameter = 107,
	MotionActivityNotAuthorized = 105,
	MotionActivityNotAvailable = 104,
	MotionActivityNotEntitled = 106,
	NotAuthorized = 111,
	NotAvailable = 109,
	NotEntitled = 110,
	Null = 100,
	TrueNorthNotAvailable = 102,
	Unknown = 103,
}

New Type: CoreMotion.CMErrorExtensions

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

New Type: CoreMotion.CMGyroData

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

New Type: CoreMotion.CMLogItem

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

New Type: CoreMotion.CMMagneticField

public struct CMMagneticField {
	// fields
	public double X;
	public double Y;
	public double Z;
	// methods
	public override string ToString ();
}

New Type: CoreMotion.CMMagneticFieldCalibrationAccuracy

[Serializable]
public enum CMMagneticFieldCalibrationAccuracy {
	High = 2,
	Low = 0,
	Medium = 1,
	Uncalibrated = -1,
}

New Type: CoreMotion.CMMagnetometerData

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

New Type: CoreMotion.CMPedometer

public class CMPedometer : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CMPedometer ();
	protected CMPedometer (Foundation.NSObjectFlag t);
	protected CMPedometer (IntPtr handle);
	// properties
	public static CMAuthorizationStatus AuthorizationStatus { get; }
	public override IntPtr ClassHandle { get; }
	public static bool IsCadenceAvailable { get; }
	public static bool IsDistanceAvailable { get; }
	public static bool IsFloorCountingAvailable { get; }
	public static bool IsPaceAvailable { get; }
	public static bool IsPedometerEventTrackingAvailable { get; }
	public static bool IsStepCountingAvailable { get; }
	// methods
	public virtual void QueryPedometerData (Foundation.NSDate start, Foundation.NSDate end, System.Action<CMPedometerData,Foundation.NSError> handler);
	public virtual System.Threading.Tasks.Task<CMPedometerData> QueryPedometerDataAsync (Foundation.NSDate start, Foundation.NSDate end);
	public virtual void StartPedometerEventUpdates (System.Action<CMPedometerEvent,Foundation.NSError> handler);
	public virtual System.Threading.Tasks.Task<CMPedometerEvent> StartPedometerEventUpdatesAsync ();
	public virtual void StartPedometerUpdates (Foundation.NSDate start, System.Action<CMPedometerData,Foundation.NSError> handler);
	public virtual System.Threading.Tasks.Task<CMPedometerData> StartPedometerUpdatesAsync (Foundation.NSDate start);
	public virtual void StopPedometerEventUpdates ();
	public virtual void StopPedometerUpdates ();
}

New Type: CoreMotion.CMPedometerData

public class CMPedometerData : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CMPedometerData ();
	public CMPedometerData (Foundation.NSCoder coder);
	protected CMPedometerData (Foundation.NSObjectFlag t);
	protected CMPedometerData (IntPtr handle);
	// properties
	public virtual Foundation.NSNumber AverageActivePace { get; }
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSNumber CurrentCadence { get; }
	public virtual Foundation.NSNumber CurrentPace { get; }
	public virtual Foundation.NSNumber Distance { get; }
	public virtual Foundation.NSDate EndDate { get; }
	public virtual Foundation.NSNumber FloorsAscended { get; }
	public virtual Foundation.NSNumber FloorsDescended { get; }
	public virtual Foundation.NSNumber NumberOfSteps { get; }
	public virtual Foundation.NSDate StartDate { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: CoreMotion.CMPedometerEvent

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

New Type: CoreMotion.CMPedometerEventType

[Serializable]
public enum CMPedometerEventType {
	Pause = 0,
	Resume = 1,
}

New Type: CoreMotion.CMQuaternion

public struct CMQuaternion {
	// constructors
	public CMQuaternion (double x, double y, double z, double w);
	// fields
	public double w;
	public double x;
	public double y;
	public double z;
	// methods
	public override string ToString ();
}

New Type: CoreMotion.CMRotationMatrix

public struct CMRotationMatrix {
	// fields
	public double m11;
	public double m12;
	public double m13;
	public double m21;
	public double m22;
	public double m23;
	public double m31;
	public double m32;
	public double m33;
}

New Type: CoreMotion.CMRotationRate

public struct CMRotationRate {
	// constructors
	public CMRotationRate (double x, double y, double z);
	// fields
	public double x;
	public double y;
	public double z;
	// methods
	public override string ToString ();
}

New Namespace DeviceCheck

New Type: DeviceCheck.DCDevice

public class DCDevice : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected DCDevice (Foundation.NSObjectFlag t);
	protected DCDevice (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static DCDevice CurrentDevice { get; }
	public virtual bool Supported { get; }
	// methods
	public virtual void GenerateToken (DCDeviceGenerateTokenCompletionHandler completion);
	public virtual System.Threading.Tasks.Task<Foundation.NSData> GenerateTokenAsync ();
}

New Type: DeviceCheck.DCDeviceGenerateTokenCompletionHandler

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

New Type: DeviceCheck.DCError

[Serializable]
public enum DCError {
	FeatureUnsupported = 1,
	UnknownSystemFailure = 0,
}

New Type: DeviceCheck.DCErrorExtensions

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

New Namespace ExecutionPolicy

New Type: ExecutionPolicy.EPDeveloperTool

public class EPDeveloperTool : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public EPDeveloperTool ();
	protected EPDeveloperTool (Foundation.NSObjectFlag t);
	protected EPDeveloperTool (IntPtr handle);
	// properties
	public virtual EPDeveloperToolStatus AuthorizationStatus { get; }
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void RequestDeveloperToolAccess (System.Action<bool> handler);
}

New Type: ExecutionPolicy.EPDeveloperToolStatus

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

New Type: ExecutionPolicy.EPError

[Serializable]
public enum EPError {
	Generic = 1,
	NotADeveloperTool = 2,
}

New Type: ExecutionPolicy.EPErrorExtensions

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

New Type: ExecutionPolicy.EPExecutionPolicy

public class EPExecutionPolicy : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public EPExecutionPolicy ();
	protected EPExecutionPolicy (Foundation.NSObjectFlag t);
	protected EPExecutionPolicy (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual bool AddPolicyException (Foundation.NSUrl url, out Foundation.NSError error);
}

New Namespace FileProvider

New Type: FileProvider.INSFileProviderChangeObserver

public interface INSFileProviderChangeObserver : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DidDeleteItems (string[] deletedItemIdentifiers);
	public virtual void DidUpdateItems (INSFileProviderItem[] updatedItems);
	public virtual void FinishEnumerating (Foundation.NSError error);
	public virtual void FinishEnumeratingChanges (Foundation.NSData anchor, bool moreComing);
}

New Type: FileProvider.INSFileProviderEnumerationObserver

public interface INSFileProviderEnumerationObserver : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DidEnumerateItems (INSFileProviderItem[] updatedItems);
	public virtual void FinishEnumerating (Foundation.NSData upToPage);
	public virtual void FinishEnumerating (Foundation.NSError error);
}

New Type: FileProvider.INSFileProviderEnumerator

public interface INSFileProviderEnumerator : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void EnumerateItems (INSFileProviderEnumerationObserver observer, Foundation.NSData startPage);
	public virtual void Invalidate ();
}

New Type: FileProvider.INSFileProviderItem

public interface INSFileProviderItem : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual string Filename { get; }
	public virtual string Identifier { get; }
	public virtual string ParentIdentifier { get; }
	public virtual string TypeIdentifier { get; }
}

New Type: FileProvider.INSFileProviderItemFlags

public interface INSFileProviderItemFlags : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual bool Hidden { get; }
	public virtual bool PathExtensionHidden { get; }
	public virtual bool UserExecutable { get; }
	public virtual bool UserReadable { get; }
	public virtual bool UserWritable { get; }
}

New Type: FileProvider.NSFileProviderEnumerator_Extensions

public static class NSFileProviderEnumerator_Extensions {
	// methods
	public static void CurrentSyncAnchor (this INSFileProviderEnumerator This, System.Action<Foundation.NSData> completionHandler);
	public static void EnumerateChanges (this INSFileProviderEnumerator This, INSFileProviderChangeObserver observer, Foundation.NSData syncAnchor);
}

New Type: FileProvider.NSFileProviderItemCapabilities

[Serializable]
[Flags]
public enum NSFileProviderItemCapabilities {
	AddingSubItems = 2,
	All = 63,
	ContentEnumerating = 1,
	Deleting = 32,
	Reading = 1,
	Renaming = 8,
	Reparenting = 4,
	Trashing = 16,
	Writing = 2,
}

New Type: FileProvider.NSFileProviderItem_Extensions

public static class NSFileProviderItem_Extensions {
	// methods
	public static NSFileProviderItemCapabilities GetCapabilities (this INSFileProviderItem This);
	public static Foundation.NSNumber GetChildItemCount (this INSFileProviderItem This);
	public static Foundation.NSDate GetContentModificationDate (this INSFileProviderItem This);
	public static Foundation.NSDate GetCreationDate (this INSFileProviderItem This);
	public static Foundation.NSNumber GetDocumentSize (this INSFileProviderItem This);
	public static Foundation.NSError GetDownloadingError (this INSFileProviderItem This);
	public static Foundation.NSNumber GetFavoriteRank (this INSFileProviderItem This);
	public static Foundation.NSDate GetLastUsedDate (this INSFileProviderItem This);
	public static Foundation.NSPersonNameComponents GetMostRecentEditorNameComponents (this INSFileProviderItem This);
	public static Foundation.NSPersonNameComponents GetOwnerNameComponents (this INSFileProviderItem This);
	public static Foundation.NSData GetTagData (this INSFileProviderItem This);
	public static Foundation.NSError GetUploadingError (this INSFileProviderItem This);
	public static Foundation.NSDictionary GetUserInfo (this INSFileProviderItem This);
	public static bool IsDownloaded (this INSFileProviderItem This);
	public static bool IsDownloading (this INSFileProviderItem This);
	public static bool IsMostRecentVersionDownloaded (this INSFileProviderItem This);
	public static bool IsShared (this INSFileProviderItem This);
	public static bool IsSharedByCurrentUser (this INSFileProviderItem This);
	public static bool IsTrashed (this INSFileProviderItem This);
	public static bool IsUploaded (this INSFileProviderItem This);
	public static bool IsUploading (this INSFileProviderItem This);
}

New Namespace FileProviderUI

New Type: FileProviderUI.FPUIActionExtensionContext

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

New Type: FileProviderUI.FPUIActionExtensionViewController

public class FPUIActionExtensionViewController : AppKit.NSViewController, AppKit.INSEditor, AppKit.INSSeguePerforming, AppKit.INSTouchBarProvider, AppKit.INSUserInterfaceItemIdentification, Foundation.INSCoding, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public FPUIActionExtensionViewController ();
	public FPUIActionExtensionViewController (Foundation.NSCoder coder);
	protected FPUIActionExtensionViewController (Foundation.NSObjectFlag t);
	protected FPUIActionExtensionViewController (IntPtr handle);
	public FPUIActionExtensionViewController (string nibName, Foundation.NSBundle bundle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual FPUIActionExtensionContext ExtensionContext { get; }
	// methods
	public virtual void Prepare (Foundation.NSError error);
	public virtual void Prepare (string actionIdentifier, Foundation.NSString[] itemIdentifiers);
}

New Type: FileProviderUI.FPUIExtensionErrorCode

[Serializable]
public enum FPUIExtensionErrorCode {
	Failed = 1,
	UserCancelled = 0,
}

New Type: FileProviderUI.FPUIExtensionErrorCodeExtensions

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

New Namespace LinkPresentation

New Type: LinkPresentation.LPErrorCode

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

New Type: LinkPresentation.LPErrorCodeExtensions

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

New Type: LinkPresentation.LPLinkMetadata

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

New Type: LinkPresentation.LPLinkView

public class LPLinkView : AppKit.NSView, AppKit.INSAccessibility, AppKit.INSAccessibilityElementProtocol, AppKit.INSAppearanceCustomization, AppKit.INSDraggingDestination, AppKit.INSTouchBarProvider, AppKit.INSUserInterfaceItemIdentification, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public LPLinkView ();
	public LPLinkView (CoreGraphics.CGRect rect);
	public LPLinkView (Foundation.NSCoder coder);
	protected LPLinkView (Foundation.NSObjectFlag t);
	public LPLinkView (Foundation.NSUrl url);
	public LPLinkView (LPLinkMetadata metadata);
	protected LPLinkView (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual LPLinkMetadata Metadata { get; set; }
}

New Type: LinkPresentation.LPMetadataProvider

public class LPMetadataProvider : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public LPMetadataProvider ();
	protected LPMetadataProvider (Foundation.NSObjectFlag t);
	protected LPMetadataProvider (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool ShouldFetchSubresources { get; set; }
	public virtual double Timeout { get; set; }
	// methods
	public virtual void Cancel ();
	public virtual void StartFetchingMetadata (Foundation.NSUrl url, System.Action<LPLinkMetadata,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<LPLinkMetadata> StartFetchingMetadataAsync (Foundation.NSUrl url);
}

New Namespace PencilKit

New Type: PencilKit.PKDrawing

public class PKDrawing : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public PKDrawing ();
	public PKDrawing (Foundation.NSCoder coder);
	protected PKDrawing (Foundation.NSObjectFlag t);
	protected PKDrawing (IntPtr handle);
	public PKDrawing (Foundation.NSData data, out Foundation.NSError error);
	// properties
	public static Foundation.NSString AppleDrawingTypeIdentifier { get; }
	public virtual CoreGraphics.CGRect Bounds { get; }
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSData DataRepresentation { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public virtual PKDrawing GetDrawing (CoreGraphics.CGAffineTransform transform);
	public virtual PKDrawing GetDrawing (PKDrawing drawing);
	public virtual AppKit.NSImage GetImage (CoreGraphics.CGRect rect, nfloat scale);
}

New Namespace PushKit

New Type: PushKit.IPKPushRegistryDelegate

public interface IPKPushRegistryDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DidUpdatePushCredentials (PKPushRegistry registry, PKPushCredentials credentials, string type);
}

New Type: PushKit.PKPushCredentials

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

New Type: PushKit.PKPushPayload

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

New Type: PushKit.PKPushRegistry

public class PKPushRegistry : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public PKPushRegistry (CoreFoundation.DispatchQueue queue);
	protected PKPushRegistry (Foundation.NSObjectFlag t);
	protected PKPushRegistry (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public IPKPushRegistryDelegate Delegate { get; set; }
	public virtual Foundation.NSSet DesiredPushTypes { get; set; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	protected override void Dispose (bool disposing);
	public virtual Foundation.NSData PushToken (string type);
}

New Type: PushKit.PKPushRegistryDelegate

public abstract class PKPushRegistryDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, IPKPushRegistryDelegate, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected PKPushRegistryDelegate ();
	protected PKPushRegistryDelegate (Foundation.NSObjectFlag t);
	protected PKPushRegistryDelegate (IntPtr handle);
	// methods
	public virtual void DidInvalidatePushToken (PKPushRegistry registry, string type);
	public virtual void DidReceiveIncomingPush (PKPushRegistry registry, PKPushPayload payload, string type, System.Action completion);
	public virtual void DidUpdatePushCredentials (PKPushRegistry registry, PKPushCredentials credentials, string type);
}

New Type: PushKit.PKPushRegistryDelegate_Extensions

public static class PKPushRegistryDelegate_Extensions {
	// methods
	public static void DidInvalidatePushToken (this IPKPushRegistryDelegate This, PKPushRegistry registry, string type);
	public static void DidReceiveIncomingPush (this IPKPushRegistryDelegate This, PKPushRegistry registry, PKPushPayload payload, string type, System.Action completion);
}

New Type: PushKit.PKPushType

public static class PKPushType {
	// properties
	public static Foundation.NSString FileProvider { get; }
}

New Namespace QuickLookThumbnailing

New Type: QuickLookThumbnailing.QLFileThumbnailRequest

public class QLFileThumbnailRequest : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public QLFileThumbnailRequest ();
	protected QLFileThumbnailRequest (Foundation.NSObjectFlag t);
	protected QLFileThumbnailRequest (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSUrl FileUrl { get; }
	public virtual CoreGraphics.CGSize MaximumSize { get; }
	public virtual CoreGraphics.CGSize MinimumSize { get; }
	public virtual nfloat Scale { get; }
}

New Type: QuickLookThumbnailing.QLThumbnailError

[Serializable]
public enum QLThumbnailError {
	GenerationFailed = 0,
	NoCachedThumbnail = 2,
	NoCloudThumbnail = 3,
	RequestCancelled = 5,
	RequestInvalid = 4,
	SavingToUrlFailed = 1,
}

New Type: QuickLookThumbnailing.QLThumbnailErrorExtensions

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

New Type: QuickLookThumbnailing.QLThumbnailGenerationRequest

public class QLThumbnailGenerationRequest : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public QLThumbnailGenerationRequest (Foundation.NSCoder coder);
	protected QLThumbnailGenerationRequest (Foundation.NSObjectFlag t);
	protected QLThumbnailGenerationRequest (IntPtr handle);
	public QLThumbnailGenerationRequest (Foundation.NSUrl url, CoreGraphics.CGSize size, nfloat scale, QLThumbnailGenerationRequestRepresentationTypes representationTypes);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool IconMode { get; set; }
	public virtual nfloat MinimumDimension { get; set; }
	public virtual QLThumbnailGenerationRequestRepresentationTypes RepresentationTypes { get; }
	public virtual nfloat Scale { get; }
	public virtual CoreGraphics.CGSize Size { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: QuickLookThumbnailing.QLThumbnailGenerationRequestRepresentationTypes

[Serializable]
[Flags]
public enum QLThumbnailGenerationRequestRepresentationTypes {
	All = 18446744073709551615,
	Icon = 1,
	LowQualityThumbnail = 2,
	None = 0,
	Thumbnail = 4,
}

New Type: QuickLookThumbnailing.QLThumbnailGenerator

public class QLThumbnailGenerator : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected QLThumbnailGenerator (Foundation.NSObjectFlag t);
	protected QLThumbnailGenerator (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static QLThumbnailGenerator SharedGenerator { get; }
	// methods
	public virtual void CancelRequest (QLThumbnailGenerationRequest request);
	public virtual void GenerateBestRepresentation (QLThumbnailGenerationRequest request, System.Action<QLThumbnailRepresentation,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<QLThumbnailRepresentation> GenerateBestRepresentationAsync (QLThumbnailGenerationRequest request);
	public virtual void GenerateRepresentations (QLThumbnailGenerationRequest request, System.Action<QLThumbnailRepresentation,QuickLookThumbnailing.QLThumbnailRepresentationType,Foundation.NSError> updateHandler);
	public virtual System.Threading.Tasks.Task<QLThumbnailGeneratorResult> GenerateRepresentationsAsync (QLThumbnailGenerationRequest request);
	public virtual void SaveBestRepresentation (QLThumbnailGenerationRequest request, Foundation.NSUrl fileUrl, string contentType, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task SaveBestRepresentationAsync (QLThumbnailGenerationRequest request, Foundation.NSUrl fileUrl, string contentType);
}

New Type: QuickLookThumbnailing.QLThumbnailGeneratorResult

public class QLThumbnailGeneratorResult {
	// constructors
	public QLThumbnailGeneratorResult (QLThumbnailRepresentation arg1, QLThumbnailRepresentationType arg2);
	// properties
	public QLThumbnailRepresentation Arg1 { get; set; }
	public QLThumbnailRepresentationType Arg2 { get; set; }
}

New Type: QuickLookThumbnailing.QLThumbnailProvider

public class QLThumbnailProvider : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public QLThumbnailProvider ();
	protected QLThumbnailProvider (Foundation.NSObjectFlag t);
	protected QLThumbnailProvider (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void ProvideThumbnail (QLFileThumbnailRequest request, System.Action<QLThumbnailReply,Foundation.NSError> handler);
}

New Type: QuickLookThumbnailing.QLThumbnailReply

public class QLThumbnailReply : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected QLThumbnailReply (Foundation.NSObjectFlag t);
	protected QLThumbnailReply (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public static QLThumbnailReply CreateReply (Foundation.NSUrl fileUrl);
	public static QLThumbnailReply CreateReply (CoreGraphics.CGSize contextSize, System.Func<bool> drawingBlock);
	public static QLThumbnailReply CreateReply (CoreGraphics.CGSize contextSize, System.Func<CoreGraphics.CGContext,System.Boolean> drawingBlock);
}

New Type: QuickLookThumbnailing.QLThumbnailRepresentation

public class QLThumbnailRepresentation : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public QLThumbnailRepresentation ();
	protected QLThumbnailRepresentation (Foundation.NSObjectFlag t);
	protected QLThumbnailRepresentation (IntPtr handle);
	// properties
	public virtual CoreGraphics.CGImage CGImage { get; }
	public override IntPtr ClassHandle { get; }
	public virtual AppKit.NSImage NSImage { get; }
	public virtual QLThumbnailRepresentationType Type { get; }
}

New Type: QuickLookThumbnailing.QLThumbnailRepresentationType

[Serializable]
public enum QLThumbnailRepresentationType {
	Icon = 0,
	LowQualityThumbnail = 1,
	Thumbnail = 2,
}

New Namespace SoundAnalysis

New Type: SoundAnalysis.ISNRequest

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

New Type: SoundAnalysis.ISNResult

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

New Type: SoundAnalysis.ISNResultsObserving

public interface ISNResultsObserving : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DidProduceResult (ISNRequest request, ISNResult result);
}

New Type: SoundAnalysis.SNAudioFileAnalyzer

public class SNAudioFileAnalyzer : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected SNAudioFileAnalyzer (Foundation.NSObjectFlag t);
	protected SNAudioFileAnalyzer (IntPtr handle);
	public SNAudioFileAnalyzer (Foundation.NSUrl url, out Foundation.NSError error);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual bool AddRequest (ISNRequest request, ISNResultsObserving observer, out Foundation.NSError error);
	public virtual void Analyze ();
	public virtual void Analyze (SNAudioFileAnalyzerAnalyzeHandler completionHandler);
	public virtual System.Threading.Tasks.Task<bool> AnalyzeAsync ();
	public virtual void CancelAnalysis ();
	public virtual void RemoveAllRequests ();
	public virtual void RemoveRequest (ISNRequest request);
}

New Type: SoundAnalysis.SNAudioFileAnalyzerAnalyzeHandler

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

New Type: SoundAnalysis.SNAudioStreamAnalyzer

public class SNAudioStreamAnalyzer : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public SNAudioStreamAnalyzer (AVFoundation.AVAudioFormat format);
	protected SNAudioStreamAnalyzer (Foundation.NSObjectFlag t);
	protected SNAudioStreamAnalyzer (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual bool AddRequest (ISNRequest request, ISNResultsObserving observer, out Foundation.NSError error);
	public virtual void Analyze (AVFoundation.AVAudioBuffer audioBuffer, long audioFramePosition);
	public virtual void CompleteAnalysis ();
	public virtual void RemoveAllRequests ();
	public virtual void RemoveRequest (ISNRequest request);
}

New Type: SoundAnalysis.SNClassification

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

New Type: SoundAnalysis.SNClassificationResult

public class SNClassificationResult : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, ISNResult, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected SNClassificationResult (Foundation.NSObjectFlag t);
	protected SNClassificationResult (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual SNClassification[] Classifications { get; }
	public virtual CoreMedia.CMTimeRange TimeRange { get; }
}

New Type: SoundAnalysis.SNClassifySoundRequest

public class SNClassifySoundRequest : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, ISNRequest, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected SNClassifySoundRequest (Foundation.NSObjectFlag t);
	protected SNClassifySoundRequest (IntPtr handle);
	public SNClassifySoundRequest (CoreML.MLModel mlModel, out Foundation.NSError error);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual double OverlapFactor { get; set; }
}

New Type: SoundAnalysis.SNErrorCode

[Serializable]
public enum SNErrorCode {
	InvalidFile = 5,
	InvalidFormat = 3,
	InvalidModel = 4,
	OperationFailed = 2,
	UnknownError = 1,
}

New Type: SoundAnalysis.SNErrorCodeExtensions

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

New Type: SoundAnalysis.SNResultsObserving_Extensions

public static class SNResultsObserving_Extensions {
	// methods
	public static void DidComplete (this ISNResultsObserving This, ISNRequest request);
	public static void DidFail (this ISNResultsObserving This, ISNRequest request, Foundation.NSError error);
}

New Namespace Speech

New Type: Speech.ISFSpeechRecognitionTaskDelegate

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

New Type: Speech.ISFSpeechRecognizerDelegate

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

New Type: Speech.SFAcousticFeature

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

New Type: Speech.SFSpeechAudioBufferRecognitionRequest

public class SFSpeechAudioBufferRecognitionRequest : Speech.SFSpeechRecognitionRequest, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public SFSpeechAudioBufferRecognitionRequest ();
	protected SFSpeechAudioBufferRecognitionRequest (Foundation.NSObjectFlag t);
	protected SFSpeechAudioBufferRecognitionRequest (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual AVFoundation.AVAudioFormat NativeAudioFormat { get; }
	// methods
	public virtual void Append (AVFoundation.AVAudioPcmBuffer audioPcmBuffer);
	public virtual void Append (CoreMedia.CMSampleBuffer sampleBuffer);
	public virtual void EndAudio ();
}

New Type: Speech.SFSpeechRecognitionRequest

public abstract class SFSpeechRecognitionRequest : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected SFSpeechRecognitionRequest (Foundation.NSObjectFlag t);
	protected SFSpeechRecognitionRequest (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string[] ContextualStrings { get; set; }
	public virtual string InteractionIdentifier { get; set; }
	public virtual bool RequiresOnDeviceRecognition { get; set; }
	public virtual bool ShouldReportPartialResults { get; set; }
	public virtual SFSpeechRecognitionTaskHint TaskHint { get; set; }
}

New Type: Speech.SFSpeechRecognitionResult

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

New Type: Speech.SFSpeechRecognitionTask

public class SFSpeechRecognitionTask : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public SFSpeechRecognitionTask ();
	protected SFSpeechRecognitionTask (Foundation.NSObjectFlag t);
	protected SFSpeechRecognitionTask (IntPtr handle);
	// properties
	public virtual bool Cancelled { get; }
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSError Error { get; }
	public virtual bool Finishing { get; }
	public virtual SFSpeechRecognitionTaskState State { get; }
	// methods
	public virtual void Cancel ();
	public virtual void Finish ();
}

New Type: Speech.SFSpeechRecognitionTaskDelegate

public class SFSpeechRecognitionTaskDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, ISFSpeechRecognitionTaskDelegate, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public SFSpeechRecognitionTaskDelegate ();
	protected SFSpeechRecognitionTaskDelegate (Foundation.NSObjectFlag t);
	protected SFSpeechRecognitionTaskDelegate (IntPtr handle);
	// methods
	public virtual void DidDetectSpeech (SFSpeechRecognitionTask task);
	public virtual void DidFinishRecognition (SFSpeechRecognitionTask task, SFSpeechRecognitionResult recognitionResult);
	public virtual void DidFinishSuccessfully (SFSpeechRecognitionTask task, bool successfully);
	public virtual void DidHypothesizeTranscription (SFSpeechRecognitionTask task, SFTranscription transcription);
	public virtual void FinishedReadingAudio (SFSpeechRecognitionTask task);
	public virtual void WasCancelled (SFSpeechRecognitionTask task);
}

New Type: Speech.SFSpeechRecognitionTaskDelegate_Extensions

public static class SFSpeechRecognitionTaskDelegate_Extensions {
	// methods
	public static void DidDetectSpeech (this ISFSpeechRecognitionTaskDelegate This, SFSpeechRecognitionTask task);
	public static void DidFinishRecognition (this ISFSpeechRecognitionTaskDelegate This, SFSpeechRecognitionTask task, SFSpeechRecognitionResult recognitionResult);
	public static void DidFinishSuccessfully (this ISFSpeechRecognitionTaskDelegate This, SFSpeechRecognitionTask task, bool successfully);
	public static void DidHypothesizeTranscription (this ISFSpeechRecognitionTaskDelegate This, SFSpeechRecognitionTask task, SFTranscription transcription);
	public static void FinishedReadingAudio (this ISFSpeechRecognitionTaskDelegate This, SFSpeechRecognitionTask task);
	public static void WasCancelled (this ISFSpeechRecognitionTaskDelegate This, SFSpeechRecognitionTask task);
}

New Type: Speech.SFSpeechRecognitionTaskHint

[Serializable]
public enum SFSpeechRecognitionTaskHint {
	Confirmation = 3,
	Dictation = 1,
	Search = 2,
	Unspecified = 0,
}

New Type: Speech.SFSpeechRecognitionTaskState

[Serializable]
public enum SFSpeechRecognitionTaskState {
	Canceling = 3,
	Completed = 4,
	Finishing = 2,
	Running = 1,
	Starting = 0,
}

New Type: Speech.SFSpeechRecognizer

public class SFSpeechRecognizer : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public SFSpeechRecognizer ();
	public SFSpeechRecognizer (Foundation.NSLocale locale);
	protected SFSpeechRecognizer (Foundation.NSObjectFlag t);
	protected SFSpeechRecognizer (IntPtr handle);
	// properties
	public static SFSpeechRecognizerAuthorizationStatus AuthorizationStatus { get; }
	public virtual bool Available { get; }
	public override IntPtr ClassHandle { get; }
	public virtual SFSpeechRecognitionTaskHint DefaultTaskHint { get; set; }
	public virtual ISFSpeechRecognizerDelegate Delegate { get; set; }
	public virtual Foundation.NSLocale Locale { get; }
	public virtual Foundation.NSOperationQueue Queue { get; set; }
	public static Foundation.NSSet<Foundation.NSLocale> SupportedLocales { get; }
	public virtual bool SupportsOnDeviceRecognition { get; set; }
	// methods
	protected override void Dispose (bool disposing);
	public virtual SFSpeechRecognitionTask GetRecognitionTask (SFSpeechRecognitionRequest request, ISFSpeechRecognitionTaskDelegate delegate);
	public virtual SFSpeechRecognitionTask GetRecognitionTask (SFSpeechRecognitionRequest request, System.Action<SFSpeechRecognitionResult,Foundation.NSError> resultHandler);
	public static void RequestAuthorization (System.Action<SFSpeechRecognizerAuthorizationStatus> handler);
}

New Type: Speech.SFSpeechRecognizerAuthorizationStatus

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

New Type: Speech.SFSpeechRecognizerDelegate

public class SFSpeechRecognizerDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, ISFSpeechRecognizerDelegate, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public SFSpeechRecognizerDelegate ();
	protected SFSpeechRecognizerDelegate (Foundation.NSObjectFlag t);
	protected SFSpeechRecognizerDelegate (IntPtr handle);
	// methods
	public virtual void AvailabilityDidChange (SFSpeechRecognizer speechRecognizer, bool available);
}

New Type: Speech.SFSpeechRecognizerDelegate_Extensions

public static class SFSpeechRecognizerDelegate_Extensions {
	// methods
	public static void AvailabilityDidChange (this ISFSpeechRecognizerDelegate This, SFSpeechRecognizer speechRecognizer, bool available);
}

New Type: Speech.SFSpeechUrlRecognitionRequest

public class SFSpeechUrlRecognitionRequest : Speech.SFSpeechRecognitionRequest, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected SFSpeechUrlRecognitionRequest (Foundation.NSObjectFlag t);
	public SFSpeechUrlRecognitionRequest (Foundation.NSUrl url);
	protected SFSpeechUrlRecognitionRequest (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSUrl Url { get; }
}

New Type: Speech.SFTranscription

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

New Type: Speech.SFTranscriptionSegment

public class SFTranscriptionSegment : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public SFTranscriptionSegment ();
	public SFTranscriptionSegment (Foundation.NSCoder coder);
	protected SFTranscriptionSegment (Foundation.NSObjectFlag t);
	protected SFTranscriptionSegment (IntPtr handle);
	// properties
	public virtual string[] AlternativeSubstrings { get; }
	public override IntPtr ClassHandle { get; }
	public virtual float Confidence { get; }
	public virtual double Duration { get; }
	public virtual string Substring { get; }
	public virtual Foundation.NSRange SubstringRange { get; }
	public virtual double Timestamp { get; }
	public virtual SFVoiceAnalytics VoiceAnalytics { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Speech.SFVoiceAnalytics

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