Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save vs-mobiletools-engineering-service2/a1de082aad441c8aa119fa6689bf8316 to your computer and use it in GitHub Desktop.
Save vs-mobiletools-engineering-service2/a1de082aad441c8aa119fa6689bf8316 to your computer and use it in GitHub Desktop.
macCat API diff from stable
title description author ms.author ms.date ms.topic ms.assetid ms.prod
Xamarin.MacCatalyst SDK API diff: 14.16.0 vs 14.99.0
List of API changes between Xamarin.MacCatalyst versions 14.16.0 and 14.99.0.
spouliot
sepoulio
8/4/2021
article
107cb84a-29e9-694a-6caa-6f7975524a73
xamarin

Xamarin.MacCatalyst SDK API diff: 14.16.0 vs 14.99.0

New Namespace ARKit

New Type: ARKit.ARAltitudeSource

[Serializable]
public enum ARAltitudeSource {
	Coarse = 1,
	Precise = 2,
	Unknown = 0,
	UserDefined = 3,
}

New Type: ARKit.ARAnchor

public class ARAnchor : Foundation.NSObject, IARAnchorCopying, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ARAnchor (ARAnchor anchor);
	public ARAnchor (Foundation.NSCoder coder);
	protected ARAnchor (Foundation.NSObjectFlag t);
	public ARAnchor (OpenTK.NMatrix4 transform);
	protected ARAnchor (IntPtr handle);
	public ARAnchor (string name, OpenTK.NMatrix4 transform);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSUuid Identifier { get; }
	public virtual string Name { get; }
	public virtual Foundation.NSUuid SessionIdentifier { get; }
	public virtual OpenTK.NMatrix4 Transform { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: ARKit.ARAppClipCodeAnchor

public class ARAppClipCodeAnchor : ARKit.ARAnchor, IARAnchorCopying, IARTrackable, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ARAppClipCodeAnchor (ARAnchor anchor);
	public ARAppClipCodeAnchor (Foundation.NSCoder coder);
	protected ARAppClipCodeAnchor (Foundation.NSObjectFlag t);
	protected ARAppClipCodeAnchor (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool IsTracked { get; }
	public virtual float Radius { get; }
	public virtual Foundation.NSUrl Url { get; }
	public virtual ARAppClipCodeUrlDecodingState UrlDecodingState { get; }
}

New Type: ARKit.ARAppClipCodeUrlDecodingState

[Serializable]
public enum ARAppClipCodeUrlDecodingState {
	Decoded = 2,
	Decoding = 0,
	Failed = 1,
}

New Type: ARKit.ARBlendShapeLocationOptions

public class ARBlendShapeLocationOptions : Foundation.DictionaryContainer {
	// constructors
	public ARBlendShapeLocationOptions ();
	public ARBlendShapeLocationOptions (Foundation.NSDictionary dictionary);
	// properties
	public float? BrowDownLeft { get; set; }
	public float? BrowDownRight { get; set; }
	public float? BrowInnerUp { get; set; }
	public float? BrowOuterUpLeft { get; set; }
	public float? BrowOuterUpRight { get; set; }
	public float? CheekPuff { get; set; }
	public float? CheekSquintLeft { get; set; }
	public float? CheekSquintRight { get; set; }
	public float? EyeBlinkLeft { get; set; }
	public float? EyeBlinkRight { get; set; }
	public float? EyeLookDownLeft { get; set; }
	public float? EyeLookDownRight { get; set; }
	public float? EyeLookInLeft { get; set; }
	public float? EyeLookInRight { get; set; }
	public float? EyeLookOutLeft { get; set; }
	public float? EyeLookOutRight { get; set; }
	public float? EyeLookUpLeft { get; set; }
	public float? EyeLookUpRight { get; set; }
	public float? EyeSquintLeft { get; set; }
	public float? EyeSquintRight { get; set; }
	public float? EyeWideLeft { get; set; }
	public float? EyeWideRight { get; set; }
	public float? JawForward { get; set; }
	public float? JawLeft { get; set; }
	public float? JawOpen { get; set; }
	public float? JawRight { get; set; }
	public float? MouthClose { get; set; }
	public float? MouthDimpleLeft { get; set; }
	public float? MouthDimpleRight { get; set; }
	public float? MouthFrownLeft { get; set; }
	public float? MouthFrownRight { get; set; }
	public float? MouthFunnel { get; set; }
	public float? MouthLeft { get; set; }
	public float? MouthLowerDownLeft { get; set; }
	public float? MouthLowerDownRight { get; set; }
	public float? MouthPressLeft { get; set; }
	public float? MouthPressRight { get; set; }
	public float? MouthPucker { get; set; }
	public float? MouthRight { get; set; }
	public float? MouthRollLower { get; set; }
	public float? MouthRollUpper { get; set; }
	public float? MouthShrugLower { get; set; }
	public float? MouthShrugUpper { get; set; }
	public float? MouthSmileLeft { get; set; }
	public float? MouthSmileRight { get; set; }
	public float? MouthStretchLeft { get; set; }
	public float? MouthStretchRight { get; set; }
	public float? MouthUpperUpLeft { get; set; }
	public float? MouthUpperUpRight { get; set; }
	public float? NoseSneerLeft { get; set; }
	public float? NoseSneerRight { get; set; }
	public float? TongueOut { get; set; }
}

New Type: ARKit.ARBody2D

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

New Type: ARKit.ARBodyAnchor

public class ARBodyAnchor : ARKit.ARAnchor, IARAnchorCopying, IARTrackable, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ARBodyAnchor (ARAnchor anchor);
	public ARBodyAnchor (Foundation.NSCoder coder);
	protected ARBodyAnchor (Foundation.NSObjectFlag t);
	protected ARBodyAnchor (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nfloat EstimatedScaleFactor { get; }
	public virtual bool IsTracked { get; }
	public virtual ARSkeleton3D Skeleton { get; }
}

New Type: ARKit.ARBodyTrackingConfiguration

public class ARBodyTrackingConfiguration : ARKit.ARConfiguration, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ARBodyTrackingConfiguration ();
	protected ARBodyTrackingConfiguration (Foundation.NSObjectFlag t);
	protected ARBodyTrackingConfiguration (IntPtr handle);
	// properties
	public virtual bool AppClipCodeTrackingEnabled { get; set; }
	public virtual bool AutoFocusEnabled { get; set; }
	public virtual bool AutomaticImageScaleEstimationEnabled { get; set; }
	public virtual bool AutomaticSkeletonScaleEstimationEnabled { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSSet<ARReferenceImage> DetectionImages { get; set; }
	public virtual AREnvironmentTexturing EnvironmentTexturing { get; set; }
	public virtual ARWorldMap InitialWorldMap { get; set; }
	public virtual nint MaximumNumberOfTrackedImages { get; set; }
	public virtual ARPlaneDetection PlaneDetection { get; set; }
	public static bool SupportsAppClipCodeTracking { get; }
	public virtual bool WantsHdrEnvironmentTextures { get; set; }
	// methods
	public static ARVideoFormat[] GetSupportedVideoFormats ();
	public static bool SupportsFrameSemantics (ARFrameSemantics frameSemantics);
}

New Type: ARKit.ARCamera

public class ARCamera : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ARCamera (Foundation.NSObjectFlag t);
	protected ARCamera (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual OpenTK.NVector3 EulerAngles { get; }
	public virtual double ExposureDuration { get; }
	public virtual float ExposureOffset { get; }
	public virtual CoreGraphics.CGSize ImageResolution { get; }
	public virtual OpenTK.NMatrix3 Intrinsics { get; }
	public virtual OpenTK.NMatrix4 ProjectionMatrix { get; }
	public virtual ARTrackingState TrackingState { get; }
	public virtual ARTrackingStateReason TrackingStateReason { get; }
	public virtual OpenTK.NMatrix4 Transform { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual CoreGraphics.CGPoint GetProjectPoint (OpenTK.NVector3 point, UIKit.UIInterfaceOrientation orientation, CoreGraphics.CGSize viewportSize);
	public virtual OpenTK.NMatrix4 GetProjectionMatrix (UIKit.UIInterfaceOrientation orientation, CoreGraphics.CGSize viewportSize, nfloat zNear, nfloat zFar);
	public virtual OpenTK.NMatrix4 GetViewMatrix (UIKit.UIInterfaceOrientation orientation);
	public virtual CoreGraphics.CGPoint Project (OpenTK.NVector3 point, UIKit.UIInterfaceOrientation orientation, CoreGraphics.CGSize viewportSize);
	public virtual OpenTK.NVector3 Unproject (CoreGraphics.CGPoint point, OpenTK.NMatrix4 planeTransform, UIKit.UIInterfaceOrientation orientation, CoreGraphics.CGSize viewportSize);
}

New Type: ARKit.ARCoachingGoal

[Serializable]
public enum ARCoachingGoal {
	AnyPlane = 3,
	GeoTracking = 4,
	HorizontalPlane = 1,
	Tracking = 0,
	VerticalPlane = 2,
}

New Type: ARKit.ARCoachingOverlayView

public class ARCoachingOverlayView : UIKit.UIView, CoreAnimation.ICALayerDelegate, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAccessibilityIdentification, UIKit.IUIAppearance, UIKit.IUIAppearanceContainer, UIKit.IUICoordinateSpace, UIKit.IUIDynamicItem, UIKit.IUIFocusEnvironment, UIKit.IUIFocusItem, UIKit.IUIFocusItemContainer, UIKit.IUILargeContentViewerItem, UIKit.IUIPasteConfigurationSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public ARCoachingOverlayView ();
	public ARCoachingOverlayView (CoreGraphics.CGRect frame);
	public ARCoachingOverlayView (Foundation.NSCoder coder);
	protected ARCoachingOverlayView (Foundation.NSObjectFlag t);
	protected ARCoachingOverlayView (IntPtr handle);
	// properties
	public virtual bool ActivatesAutomatically { get; set; }
	public static ARCoachingOverlayView.ARCoachingOverlayViewAppearance Appearance { get; }
	public override IntPtr ClassHandle { get; }
	public IARCoachingOverlayViewDelegate Delegate { get; set; }
	public virtual ARCoachingGoal Goal { get; set; }
	public virtual bool IsActive { get; }
	public virtual ARSession Session { get; set; }
	public virtual IARSessionProviding SessionProvider { get; set; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	public static ARCoachingOverlayView.ARCoachingOverlayViewAppearance AppearanceWhenContainedIn (System.Type[] containers);
	protected override void Dispose (bool disposing);
	public static ARCoachingOverlayView.ARCoachingOverlayViewAppearance GetAppearance<T> ();
	public static ARCoachingOverlayView.ARCoachingOverlayViewAppearance GetAppearance<T> (UIKit.UITraitCollection traits);
	public static ARCoachingOverlayView.ARCoachingOverlayViewAppearance GetAppearance (UIKit.UITraitCollection traits);
	public static ARCoachingOverlayView.ARCoachingOverlayViewAppearance GetAppearance<T> (UIKit.UITraitCollection traits, System.Type[] containers);
	public static ARCoachingOverlayView.ARCoachingOverlayViewAppearance GetAppearance (UIKit.UITraitCollection traits, System.Type[] containers);
	public virtual void SetActive (bool active, bool animated);

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

New Type: ARKit.ARCoachingOverlayViewDelegate

public class ARCoachingOverlayViewDelegate : Foundation.NSObject, IARCoachingOverlayViewDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ARCoachingOverlayViewDelegate ();
	protected ARCoachingOverlayViewDelegate (Foundation.NSObjectFlag t);
	protected ARCoachingOverlayViewDelegate (IntPtr handle);
	// methods
	public virtual void DidDeactivate (ARCoachingOverlayView coachingOverlayView);
	public virtual void DidRequestSessionReset (ARCoachingOverlayView coachingOverlayView);
	public virtual void WillActivate (ARCoachingOverlayView coachingOverlayView);
}

New Type: ARKit.ARCoachingOverlayViewDelegate_Extensions

public static class ARCoachingOverlayViewDelegate_Extensions {
	// methods
	public static void DidDeactivate (this IARCoachingOverlayViewDelegate This, ARCoachingOverlayView coachingOverlayView);
	public static void DidRequestSessionReset (this IARCoachingOverlayViewDelegate This, ARCoachingOverlayView coachingOverlayView);
	public static void WillActivate (this IARCoachingOverlayViewDelegate This, ARCoachingOverlayView coachingOverlayView);
}

New Type: ARKit.ARCollaborationData

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

New Type: ARKit.ARCollaborationDataPriority

[Serializable]
public enum ARCollaborationDataPriority {
	Critical = 0,
	Optional = 1,
}

New Type: ARKit.ARConfidenceLevel

[Serializable]
public enum ARConfidenceLevel {
	High = 2,
	Low = 0,
	Medium = 1,
}

New Type: ARKit.ARConfiguration

public abstract class ARConfiguration : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ARConfiguration (Foundation.NSObjectFlag t);
	protected ARConfiguration (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual ARFrameSemantics FrameSemantics { get; set; }
	public static bool IsSupported { get; }
	public virtual bool LightEstimationEnabled { get; set; }
	public virtual bool ProvidesAudioData { get; set; }
	public static ARVideoFormat[] SupportedVideoFormats { get; }
	public virtual ARVideoFormat VideoFormat { get; set; }
	public virtual ARWorldAlignment WorldAlignment { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static bool SupportsFrameSemantics (ARFrameSemantics frameSemantics);
}

New Type: ARKit.ARDepthData

public class ARDepthData : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ARDepthData (Foundation.NSObjectFlag t);
	protected ARDepthData (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual CoreVideo.CVPixelBuffer ConfidenceMap { get; }
	public virtual CoreVideo.CVPixelBuffer DepthMap { get; }
	// methods
	protected override void Dispose (bool disposing);
}

New Type: ARKit.ARDirectionalLightEstimate

public class ARDirectionalLightEstimate : ARKit.ARLightEstimate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ARDirectionalLightEstimate (Foundation.NSObjectFlag t);
	protected ARDirectionalLightEstimate (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual OpenTK.NVector3 PrimaryLightDirection { get; }
	public virtual nfloat PrimaryLightIntensity { get; }
	public virtual Foundation.NSData SphericalHarmonicsCoefficients { get; }
}

New Type: ARKit.AREnvironmentProbeAnchor

public class AREnvironmentProbeAnchor : ARKit.ARAnchor, IARAnchorCopying, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public AREnvironmentProbeAnchor (ARAnchor anchor);
	public AREnvironmentProbeAnchor (Foundation.NSCoder coder);
	protected AREnvironmentProbeAnchor (Foundation.NSObjectFlag t);
	protected AREnvironmentProbeAnchor (IntPtr handle);
	public AREnvironmentProbeAnchor (OpenTK.NMatrix4 transform, OpenTK.NVector3 extent);
	public AREnvironmentProbeAnchor (string name, OpenTK.NMatrix4 transform, OpenTK.NVector3 extent);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Metal.IMTLTexture EnvironmentTexture { get; }
	public virtual OpenTK.NVector3 Extent { get; }
}

New Type: ARKit.AREnvironmentTexturing

[Serializable]
public enum AREnvironmentTexturing {
	Automatic = 2,
	Manual = 1,
	None = 0,
}

New Type: ARKit.ARErrorCode

[Serializable]
public enum ARErrorCode {
	CameraUnauthorized = 103,
	CollaborationDataUnavailable = 304,
	FileIOFailed = 500,
	GeoTrackingFailed = 202,
	GeoTrackingNotAvailableAtLocation = 201,
	InsufficientFeatures = 400,
	InvalidCollaborationData = 304,
	InvalidConfiguration = 303,
	InvalidReferenceImage = 300,
	InvalidReferenceObject = 301,
	InvalidWorldMap = 302,
	LocationUnauthorized = 105,
	MicrophoneUnauthorized = 104,
	ObjectMergeFailed = 401,
	RequestFailed = 501,
	SensorFailed = 102,
	SensorUnavailable = 101,
	UnsupportedConfiguration = 100,
	WorldTrackingFailed = 200,
}

New Type: ARKit.ARErrorCodeExtensions

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

New Type: ARKit.ARFaceAnchor

public class ARFaceAnchor : ARKit.ARAnchor, IARAnchorCopying, IARTrackable, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ARFaceAnchor ();
	public ARFaceAnchor (ARAnchor anchor);
	public ARFaceAnchor (Foundation.NSCoder coder);
	protected ARFaceAnchor (Foundation.NSObjectFlag t);
	protected ARFaceAnchor (IntPtr handle);
	// properties
	public ARBlendShapeLocationOptions BlendShapes { get; }
	public override IntPtr ClassHandle { get; }
	public virtual ARFaceGeometry Geometry { get; }
	public virtual bool IsTracked { get; }
	public virtual OpenTK.NMatrix4 LeftEyeTransform { get; }
	public virtual OpenTK.NVector3 LookAtPoint { get; }
	public virtual OpenTK.NMatrix4 RightEyeTransform { get; }
	public virtual Foundation.NSDictionary WeakBlendShapes { get; }
}

New Type: ARKit.ARFaceGeometry

public class ARFaceGeometry : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ARFaceGeometry (ARBlendShapeLocationOptions blendShapes);
	public ARFaceGeometry (Foundation.NSCoder coder);
	public ARFaceGeometry (Foundation.NSDictionary blendShapes);
	protected ARFaceGeometry (Foundation.NSObjectFlag t);
	protected ARFaceGeometry (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nuint TextureCoordinateCount { get; }
	public virtual OpenTK.Vector2 TextureCoordinates { get; }
	public virtual nuint TriangleCount { get; }
	public virtual short TriangleIndices { get; }
	public virtual nuint VertexCount { get; }
	public virtual OpenTK.NVector3 Vertices { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public virtual IntPtr GetRawTextureCoordinates ();
	public virtual IntPtr GetRawTriangleIndices ();
	public virtual IntPtr GetRawVertices ();
	public OpenTK.Vector2[] GetTextureCoordinates ();
	public short[] GetTriangleIndices ();
	public OpenTK.NVector3[] GetVertices ();
}

New Type: ARKit.ARFaceTrackingConfiguration

public class ARFaceTrackingConfiguration : ARKit.ARConfiguration, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ARFaceTrackingConfiguration ();
	protected ARFaceTrackingConfiguration (Foundation.NSObjectFlag t);
	protected ARFaceTrackingConfiguration (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nint MaximumNumberOfTrackedFaces { get; set; }
	public static nint SupportedNumberOfTrackedFaces { get; }
	public static bool SupportsWorldTracking { get; }
	public virtual bool WorldTrackingEnabled { get; set; }
	// methods
	public static ARVideoFormat[] GetSupportedVideoFormats ();
	public static bool SupportsFrameSemantics (ARFrameSemantics frameSemantics);
}

New Type: ARKit.ARFrame

public class ARFrame : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ARFrame (Foundation.NSObjectFlag t);
	protected ARFrame (IntPtr handle);
	// properties
	public virtual ARAnchor[] Anchors { get; }
	public virtual ARCamera Camera { get; }
	public virtual float CameraGrainIntensity { get; }
	public virtual Metal.IMTLTexture CameraGrainTexture { get; }
	public virtual AVFoundation.AVDepthData CapturedDepthData { get; }
	public virtual double CapturedDepthDataTimestamp { get; }
	public virtual CoreVideo.CVPixelBuffer CapturedImage { get; }
	public override IntPtr ClassHandle { get; }
	public virtual ARBody2D DetectedBody { get; }
	public virtual CoreVideo.CVPixelBuffer EstimatedDepthData { get; }
	public virtual ARGeoTrackingStatus GeoTrackingStatus { get; }
	public virtual ARLightEstimate LightEstimate { get; }
	public virtual ARPointCloud RawFeaturePoints { get; }
	public virtual ARDepthData SceneDepth { get; }
	public virtual CoreVideo.CVPixelBuffer SegmentationBuffer { get; }
	public virtual ARDepthData SmoothedSceneDepth { get; }
	public virtual double Timestamp { get; }
	public virtual ARWorldMappingStatus WorldMappingStatus { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual ARRaycastQuery CreateRaycastQuery (CoreGraphics.CGPoint point, ARRaycastTarget target, ARRaycastTargetAlignment alignment);
	public virtual CoreGraphics.CGAffineTransform GetDisplayTransform (UIKit.UIInterfaceOrientation orientation, CoreGraphics.CGSize viewportSize);
	public virtual ARHitTestResult[] HitTest (CoreGraphics.CGPoint point, ARHitTestResultType types);
}

New Type: ARKit.ARFrameSemantics

[Serializable]
public enum ARFrameSemantics {
	BodyDetection = 4,
	None = 0,
	PersonSegmentation = 1,
	PersonSegmentationWithDepth = 3,
	SceneDepth = 8,
	SmoothedSceneDepth = 16,
}

New Type: ARKit.ARGeoAnchor

public class ARGeoAnchor : ARKit.ARAnchor, IARAnchorCopying, IARTrackable, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ARGeoAnchor ();
	public ARGeoAnchor (ARAnchor anchor);
	public ARGeoAnchor (CoreLocation.CLLocationCoordinate2D coordinate);
	public ARGeoAnchor (Foundation.NSCoder coder);
	protected ARGeoAnchor (Foundation.NSObjectFlag t);
	protected ARGeoAnchor (IntPtr handle);
	public ARGeoAnchor (CoreLocation.CLLocationCoordinate2D coordinate, double altitude);
	public ARGeoAnchor (string name, CoreLocation.CLLocationCoordinate2D coordinate);
	public ARGeoAnchor (string name, CoreLocation.CLLocationCoordinate2D coordinate, double altitude);
	// properties
	public virtual double Altitude { get; }
	public virtual ARAltitudeSource AltitudeSource { get; }
	public override IntPtr ClassHandle { get; }
	public virtual CoreLocation.CLLocationCoordinate2D Coordinate { get; }
	public virtual bool IsTracked { get; }
}

New Type: ARKit.ARGeoTrackingAccuracy

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

New Type: ARKit.ARGeoTrackingConfiguration

public class ARGeoTrackingConfiguration : ARKit.ARConfiguration, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ARGeoTrackingConfiguration ();
	protected ARGeoTrackingConfiguration (Foundation.NSObjectFlag t);
	protected ARGeoTrackingConfiguration (IntPtr handle);
	// properties
	public virtual bool AppClipCodeTrackingEnabled { get; set; }
	public virtual bool AutomaticImageScaleEstimationEnabled { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSSet<ARReferenceImage> DetectionImages { get; set; }
	public virtual Foundation.NSSet<ARReferenceObject> DetectionObjects { get; set; }
	public virtual AREnvironmentTexturing EnvironmentTexturing { get; set; }
	public virtual nint MaximumNumberOfTrackedImages { get; set; }
	public virtual ARPlaneDetection PlaneDetection { get; set; }
	public static bool SupportsAppClipCodeTracking { get; }
	public virtual bool WantsHdrEnvironmentTextures { get; set; }
	// methods
	public static void CheckAvailability (System.Action<System.Boolean,Foundation.NSError> completionHandler);
	public static void CheckAvailability (CoreLocation.CLLocationCoordinate2D coordinate, System.Action<System.Boolean,Foundation.NSError> completionHandler);
	public static System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> CheckAvailabilityAsync ();
	public static System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> CheckAvailabilityAsync (CoreLocation.CLLocationCoordinate2D coordinate);
	public static ARGeoTrackingConfiguration Create ();
	public static ARVideoFormat[] GetSupportedVideoFormats ();
	public static bool SupportsFrameSemantics (ARFrameSemantics frameSemantics);
}

New Type: ARKit.ARGeoTrackingState

[Serializable]
public enum ARGeoTrackingState {
	Initializing = 1,
	Localized = 3,
	Localizing = 2,
	NotAvailable = 0,
}

New Type: ARKit.ARGeoTrackingStateReason

[Serializable]
public enum ARGeoTrackingStateReason {
	DevicePointedTooLow = 7,
	GeoDataNotLoaded = 6,
	NeedLocationPermissions = 2,
	None = 0,
	NotAvailableAtLocation = 1,
	VisualLocalizationFailed = 8,
	WaitingForAvailabilityCheck = 5,
	WaitingForLocation = 4,
	WorldTrackingUnstable = 3,
}

New Type: ARKit.ARGeoTrackingStatus

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

New Type: ARKit.ARGeometryElement

public class ARGeometryElement : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ARGeometryElement (Foundation.NSCoder coder);
	protected ARGeometryElement (Foundation.NSObjectFlag t);
	protected ARGeometryElement (IntPtr handle);
	// properties
	public virtual Metal.IMTLBuffer Buffer { get; }
	public virtual nint BytesPerIndex { get; }
	public override IntPtr ClassHandle { get; }
	public virtual nint Count { get; }
	public virtual nint IndexCountPerPrimitive { get; }
	public virtual ARGeometryPrimitiveType PrimitiveType { get; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: ARKit.ARGeometryPrimitiveType

[Serializable]
public enum ARGeometryPrimitiveType {
	Line = 0,
	Triangle = 1,
}

New Type: ARKit.ARGeometrySource

public class ARGeometrySource : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ARGeometrySource (Foundation.NSCoder coder);
	protected ARGeometrySource (Foundation.NSObjectFlag t);
	protected ARGeometrySource (IntPtr handle);
	// properties
	public virtual Metal.IMTLBuffer Buffer { get; }
	public override IntPtr ClassHandle { get; }
	public virtual nint ComponentsPerVector { get; }
	public virtual nint Count { get; }
	public virtual Metal.MTLVertexFormat Format { get; }
	public virtual nint Offset { get; }
	public virtual nint Stride { get; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: ARKit.ARHitTestResult

public class ARHitTestResult : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ARHitTestResult (Foundation.NSObjectFlag t);
	protected ARHitTestResult (IntPtr handle);
	// properties
	public virtual ARAnchor Anchor { get; }
	public override IntPtr ClassHandle { get; }
	public virtual nfloat Distance { get; }
	public virtual OpenTK.NMatrix4 LocalTransform { get; }
	public virtual ARHitTestResultType Type { get; }
	public virtual OpenTK.NMatrix4 WorldTransform { get; }
}

New Type: ARKit.ARHitTestResultType

[Serializable]
public enum ARHitTestResultType {
	EstimatedHorizontalPlane = 2,
	EstimatedVerticalPlane = 4,
	ExistingPlane = 8,
	ExistingPlaneUsingExtent = 16,
	ExistingPlaneUsingGeometry = 32,
	FeaturePoint = 1,
}

New Type: ARKit.ARImageAnchor

public class ARImageAnchor : ARKit.ARAnchor, IARAnchorCopying, IARTrackable, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ARImageAnchor (ARAnchor anchor);
	public ARImageAnchor (Foundation.NSCoder coder);
	protected ARImageAnchor (Foundation.NSObjectFlag t);
	protected ARImageAnchor (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nfloat EstimatedScaleFactor { get; }
	public virtual bool IsTracked { get; }
	public virtual ARReferenceImage ReferenceImage { get; }
}

New Type: ARKit.ARImageTrackingConfiguration

public class ARImageTrackingConfiguration : ARKit.ARConfiguration, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ARImageTrackingConfiguration ();
	protected ARImageTrackingConfiguration (Foundation.NSObjectFlag t);
	protected ARImageTrackingConfiguration (IntPtr handle);
	// properties
	public virtual bool AutoFocusEnabled { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual nint MaximumNumberOfTrackedImages { get; set; }
	public virtual Foundation.NSSet<ARReferenceImage> TrackingImages { get; set; }
	// methods
	public static ARVideoFormat[] GetSupportedVideoFormats ();
	public static bool SupportsFrameSemantics (ARFrameSemantics frameSemantics);
}

New Type: ARKit.ARLightEstimate

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

New Type: ARKit.ARMatteGenerator

public class ARMatteGenerator : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ARMatteGenerator (Foundation.NSObjectFlag t);
	protected ARMatteGenerator (IntPtr handle);
	public ARMatteGenerator (Metal.IMTLDevice device, ARMatteResolution matteResolution);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual Metal.IMTLTexture GenerateDilatedDepth (ARFrame frame, Metal.IMTLCommandBuffer commandBuffer);
	public virtual Metal.IMTLTexture GenerateMatte (ARFrame frame, Metal.IMTLCommandBuffer commandBuffer);
}

New Type: ARKit.ARMatteResolution

[Serializable]
public enum ARMatteResolution {
	Full = 0,
	Half = 1,
}

New Type: ARKit.ARMeshAnchor

public class ARMeshAnchor : ARKit.ARAnchor, IARAnchorCopying, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ARMeshAnchor (ARAnchor anchor);
	public ARMeshAnchor (Foundation.NSCoder coder);
	protected ARMeshAnchor (Foundation.NSObjectFlag t);
	protected ARMeshAnchor (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual ARMeshGeometry Geometry { get; }
}

New Type: ARKit.ARMeshClassification

[Serializable]
public enum ARMeshClassification {
	Ceiling = 3,
	Door = 7,
	Floor = 2,
	None = 0,
	Seat = 5,
	Table = 4,
	Wall = 1,
	Window = 6,
}

New Type: ARKit.ARMeshGeometry

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

New Type: ARKit.ARObjectAnchor

public class ARObjectAnchor : ARKit.ARAnchor, IARAnchorCopying, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ARObjectAnchor (ARAnchor anchor);
	public ARObjectAnchor (Foundation.NSCoder coder);
	protected ARObjectAnchor (Foundation.NSObjectFlag t);
	protected ARObjectAnchor (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual ARReferenceObject ReferenceObject { get; }
}

New Type: ARKit.ARObjectScanningConfiguration

public class ARObjectScanningConfiguration : ARKit.ARConfiguration, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ARObjectScanningConfiguration ();
	protected ARObjectScanningConfiguration (Foundation.NSObjectFlag t);
	protected ARObjectScanningConfiguration (IntPtr handle);
	// properties
	public virtual bool AutoFocusEnabled { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual ARPlaneDetection PlaneDetection { get; set; }
	// methods
	public static ARVideoFormat[] GetSupportedVideoFormats ();
	public static bool SupportsFrameSemantics (ARFrameSemantics frameSemantics);
}

New Type: ARKit.AROrientationTrackingConfiguration

public class AROrientationTrackingConfiguration : ARKit.ARConfiguration, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public AROrientationTrackingConfiguration ();
	protected AROrientationTrackingConfiguration (Foundation.NSObjectFlag t);
	protected AROrientationTrackingConfiguration (IntPtr handle);
	// properties
	public virtual bool AutoFocusEnabled { get; set; }
	public override IntPtr ClassHandle { get; }
	// methods
	public static ARVideoFormat[] GetSupportedVideoFormats ();
	public static bool SupportsFrameSemantics (ARFrameSemantics frameSemantics);
}

New Type: ARKit.ARParticipantAnchor

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

New Type: ARKit.ARPlaneAnchor

public class ARPlaneAnchor : ARKit.ARAnchor, IARAnchorCopying, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ARPlaneAnchor (ARAnchor anchor);
	public ARPlaneAnchor (Foundation.NSCoder coder);
	protected ARPlaneAnchor (Foundation.NSObjectFlag t);
	protected ARPlaneAnchor (IntPtr handle);
	// properties
	public virtual ARPlaneAnchorAlignment Alignment { get; }
	public virtual OpenTK.NVector3 Center { get; }
	public override IntPtr ClassHandle { get; }
	public virtual ARPlaneClassification Classification { get; }
	public virtual ARPlaneClassificationStatus ClassificationStatus { get; }
	public static bool ClassificationSupported { get; }
	public virtual OpenTK.NVector3 Extent { get; }
	public virtual ARPlaneGeometry Geometry { get; }
}

New Type: ARKit.ARPlaneAnchorAlignment

[Serializable]
public enum ARPlaneAnchorAlignment {
	Horizontal = 0,
	Vertical = 1,
}

New Type: ARKit.ARPlaneClassification

[Serializable]
public enum ARPlaneClassification {
	Ceiling = 3,
	Door = 7,
	Floor = 2,
	None = 0,
	Seat = 5,
	Table = 4,
	Wall = 1,
	Window = 6,
}

New Type: ARKit.ARPlaneClassificationStatus

[Serializable]
public enum ARPlaneClassificationStatus {
	Known = 3,
	NotAvailable = 0,
	Undetermined = 1,
	Unknown = 2,
}

New Type: ARKit.ARPlaneDetection

[Serializable]
public enum ARPlaneDetection {
	Horizontal = 1,
	None = 0,
	Vertical = 2,
}

New Type: ARKit.ARPlaneGeometry

public class ARPlaneGeometry : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ARPlaneGeometry (Foundation.NSCoder coder);
	protected ARPlaneGeometry (Foundation.NSObjectFlag t);
	protected ARPlaneGeometry (IntPtr handle);
	// properties
	public virtual nuint BoundaryVertexCount { get; }
	public override IntPtr ClassHandle { get; }
	public virtual nuint TextureCoordinateCount { get; }
	public virtual nuint TriangleCount { get; }
	public virtual nuint VertexCount { get; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public OpenTK.NVector3[] GetBoundaryVertices ();
	public virtual IntPtr GetRawBoundaryVertices ();
	public virtual IntPtr GetRawTextureCoordinates ();
	public virtual IntPtr GetRawTriangleIndices ();
	public virtual IntPtr GetRawVertices ();
	public OpenTK.Vector2[] GetTextureCoordinates ();
	public short[] GetTriangleIndices ();
	public OpenTK.NVector3[] GetVertices ();
}

New Type: ARKit.ARPointCloud

public class ARPointCloud : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ARPointCloud (Foundation.NSCoder coder);
	protected ARPointCloud (Foundation.NSObjectFlag t);
	protected ARPointCloud (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nuint Count { get; }
	public ulong[] Identifiers { get; }
	public OpenTK.NVector3[] Points { get; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	protected virtual IntPtr GetRawIdentifiers ();
	protected virtual IntPtr GetRawPoints ();
}

New Type: ARKit.ARPositionalTrackingConfiguration

public class ARPositionalTrackingConfiguration : ARKit.ARConfiguration, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ARPositionalTrackingConfiguration ();
	protected ARPositionalTrackingConfiguration (Foundation.NSObjectFlag t);
	protected ARPositionalTrackingConfiguration (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual ARWorldMap InitialWorldMap { get; set; }
	public virtual ARPlaneDetection PlaneDetection { get; set; }
	// methods
	public static ARVideoFormat[] GetSupportedVideoFormats ();
	public static bool SupportsFrameSemantics (ARFrameSemantics frameSemantics);
}

New Type: ARKit.ARQuickLookPreviewItem

public class ARQuickLookPreviewItem : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, QuickLook.IQLPreviewItem, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ARQuickLookPreviewItem (Foundation.NSObjectFlag t);
	public ARQuickLookPreviewItem (Foundation.NSUrl url);
	protected ARQuickLookPreviewItem (IntPtr handle);
	// properties
	public virtual bool AllowsContentScaling { get; set; }
	public virtual Foundation.NSUrl CanonicalWebPageUrl { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual string ItemTitle { get; }
	public virtual Foundation.NSUrl ItemUrl { get; }
}

New Type: ARKit.ARRaycastQuery

public class ARRaycastQuery : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ARRaycastQuery (Foundation.NSObjectFlag t);
	protected ARRaycastQuery (IntPtr handle);
	public ARRaycastQuery (OpenTK.NVector3 origin, OpenTK.NVector3 direction, ARRaycastTarget target, ARRaycastTargetAlignment alignment);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual OpenTK.NVector3 Direction { get; }
	public virtual OpenTK.NVector3 Origin { get; }
	public virtual ARRaycastTarget Target { get; }
	public virtual ARRaycastTargetAlignment TargetAlignment { get; }
}

New Type: ARKit.ARRaycastResult

public class ARRaycastResult : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ARRaycastResult (Foundation.NSObjectFlag t);
	protected ARRaycastResult (IntPtr handle);
	// properties
	public virtual ARAnchor Anchor { get; }
	public override IntPtr ClassHandle { get; }
	public virtual ARRaycastTarget Target { get; }
	public virtual ARRaycastTargetAlignment TargetAlignment { get; }
	public virtual OpenTK.NMatrix4 WorldTransform { get; }
}

New Type: ARKit.ARRaycastTarget

[Serializable]
public enum ARRaycastTarget {
	EstimatedPlane = 2,
	ExistingPlaneGeometry = 0,
	ExistingPlaneInfinite = 1,
}

New Type: ARKit.ARRaycastTargetAlignment

[Serializable]
public enum ARRaycastTargetAlignment {
	Any = 2,
	Horizontal = 0,
	Vertical = 1,
}

New Type: ARKit.ARReferenceImage

public class ARReferenceImage : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ARReferenceImage (Foundation.NSObjectFlag t);
	protected ARReferenceImage (IntPtr handle);
	public ARReferenceImage (CoreGraphics.CGImage image, ImageIO.CGImagePropertyOrientation orientation, nfloat physicalWidth);
	public ARReferenceImage (CoreVideo.CVPixelBuffer pixelBuffer, ImageIO.CGImagePropertyOrientation orientation, nfloat physicalWidth);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string Name { get; set; }
	public virtual CoreGraphics.CGSize PhysicalSize { get; }
	public virtual string ResourceGroupName { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static Foundation.NSSet<ARReferenceImage> GetReferenceImagesInGroup (string name, Foundation.NSBundle bundle);
	public virtual void Validate (System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task ValidateAsync ();
}

New Type: ARKit.ARReferenceObject

public class ARReferenceObject : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ARReferenceObject (Foundation.NSCoder coder);
	protected ARReferenceObject (Foundation.NSObjectFlag t);
	protected ARReferenceObject (IntPtr handle);
	public ARReferenceObject (Foundation.NSUrl archiveUrl, out Foundation.NSError error);
	// properties
	public static Foundation.NSString ArchiveExtension { get; }
	public virtual OpenTK.NVector3 Center { get; }
	public override IntPtr ClassHandle { get; }
	public virtual OpenTK.NVector3 Extent { get; }
	public virtual string Name { get; set; }
	public virtual ARPointCloud RawFeaturePoints { get; }
	public virtual string ResourceGroupName { get; }
	public virtual OpenTK.NVector3 Scale { get; }
	// methods
	public virtual ARReferenceObject ApplyTransform (OpenTK.NMatrix4 transform);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public virtual bool Export (Foundation.NSUrl url, UIKit.UIImage previewImage, out Foundation.NSError error);
	public static Foundation.NSSet<ARReferenceObject> GetReferenceObjects (string resourceGroupName, Foundation.NSBundle bundle);
	public virtual ARReferenceObject Merge (ARReferenceObject object, out Foundation.NSError error);
}

New Type: ARKit.ARSCNDebugOptions

public static class ARSCNDebugOptions {
	// properties
	public static SceneKit.SCNDebugOptions ShowFeaturePoints { get; }
	public static SceneKit.SCNDebugOptions ShowWorldOrigin { get; }
}

New Type: ARKit.ARSCNFaceGeometry

public class ARSCNFaceGeometry : SceneKit.SCNGeometry, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, SceneKit.ISCNAnimatable, SceneKit.ISCNBoundingVolume, SceneKit.ISCNShadable, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ARSCNFaceGeometry (Foundation.NSCoder coder);
	protected ARSCNFaceGeometry (Foundation.NSObjectFlag t);
	protected ARSCNFaceGeometry (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public static ARSCNFaceGeometry Create (Metal.IMTLDevice device);
	public static ARSCNFaceGeometry Create (Metal.IMTLDevice device, bool fillMesh);
	public static ARSCNFaceGeometry CreateFaceGeometry (Metal.IMTLDevice device);
	public static ARSCNFaceGeometry CreateFaceGeometry (Metal.IMTLDevice device, bool fillMesh);
	public virtual void Update (ARFaceGeometry faceGeometry);
}

New Type: ARKit.ARSCNPlaneGeometry

public class ARSCNPlaneGeometry : SceneKit.SCNGeometry, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, SceneKit.ISCNAnimatable, SceneKit.ISCNBoundingVolume, SceneKit.ISCNShadable, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ARSCNPlaneGeometry (Foundation.NSCoder coder);
	protected ARSCNPlaneGeometry (Foundation.NSObjectFlag t);
	protected ARSCNPlaneGeometry (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public static ARSCNPlaneGeometry Create (Metal.IMTLDevice device);
	public virtual void Update (ARPlaneGeometry planeGeometry);
}

New Type: ARKit.ARSCNView

public class ARSCNView : SceneKit.SCNView, IARSessionProviding, CoreAnimation.ICALayerDelegate, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, SceneKit.ISCNSceneRenderer, SceneKit.ISCNTechniqueSupport, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAccessibilityIdentification, UIKit.IUIAppearance, UIKit.IUIAppearanceContainer, UIKit.IUICoordinateSpace, UIKit.IUIDynamicItem, UIKit.IUIFocusEnvironment, UIKit.IUIFocusItem, UIKit.IUIFocusItemContainer, UIKit.IUILargeContentViewerItem, UIKit.IUIPasteConfigurationSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public ARSCNView ();
	public ARSCNView (Foundation.NSCoder coder);
	protected ARSCNView (Foundation.NSObjectFlag t);
	protected ARSCNView (IntPtr handle);
	// properties
	public static ARSCNView.ARSCNViewAppearance Appearance { get; }
	public virtual bool AutomaticallyUpdatesLighting { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual IARSCNViewDelegate Delegate { get; set; }
	public virtual bool RendersCameraGrain { get; set; }
	public virtual bool RendersMotionBlur { get; set; }
	public virtual SceneKit.SCNScene Scene { get; set; }
	public virtual ARSession Session { get; set; }
	// methods
	public static ARSCNView.ARSCNViewAppearance AppearanceWhenContainedIn (System.Type[] containers);
	public virtual ARRaycastQuery CreateRaycastQuery (CoreGraphics.CGPoint point, ARRaycastTarget target, ARRaycastTargetAlignment alignment);
	protected override void Dispose (bool disposing);
	public virtual ARAnchor GetAnchor (SceneKit.SCNNode node);
	public static ARSCNView.ARSCNViewAppearance GetAppearance<T> ();
	public static ARSCNView.ARSCNViewAppearance GetAppearance<T> (UIKit.UITraitCollection traits);
	public static ARSCNView.ARSCNViewAppearance GetAppearance (UIKit.UITraitCollection traits);
	public static ARSCNView.ARSCNViewAppearance GetAppearance<T> (UIKit.UITraitCollection traits, System.Type[] containers);
	public static ARSCNView.ARSCNViewAppearance GetAppearance (UIKit.UITraitCollection traits, System.Type[] containers);
	public virtual SceneKit.SCNNode GetNode (ARAnchor anchor);
	public virtual ARHitTestResult[] HitTest (CoreGraphics.CGPoint point, ARHitTestResultType types);
	public virtual OpenTK.NVector3 Unproject (CoreGraphics.CGPoint point, OpenTK.NMatrix4 planeTransform);

	// inner types
	public class ARSCNViewAppearance : SceneKit.SCNView+SCNViewAppearance, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearance {
		// constructors
		protected ARSCNView.ARSCNViewAppearance (IntPtr handle);
	}
}

New Type: ARKit.ARSCNViewDelegate

public class ARSCNViewDelegate : Foundation.NSObject, IARSCNViewDelegate, IARSessionObserver, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, SceneKit.ISCNSceneRendererDelegate, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ARSCNViewDelegate ();
	protected ARSCNViewDelegate (Foundation.NSObjectFlag t);
	protected ARSCNViewDelegate (IntPtr handle);
	// methods
	public virtual void CameraDidChangeTrackingState (ARSession session, ARCamera camera);
	public virtual void DidAddNode (SceneKit.ISCNSceneRenderer renderer, SceneKit.SCNNode node, ARAnchor anchor);
	public virtual void DidApplyAnimations (SceneKit.ISCNSceneRenderer renderer, double timeInSeconds);
	public virtual void DidApplyConstraints (SceneKit.ISCNSceneRenderer renderer, double atTime);
	public virtual void DidChangeGeoTrackingStatus (ARSession session, ARGeoTrackingStatus geoTrackingStatus);
	public virtual void DidFail (ARSession session, Foundation.NSError error);
	public virtual void DidOutputAudioSampleBuffer (ARSession session, CoreMedia.CMSampleBuffer audioSampleBuffer);
	public virtual void DidOutputCollaborationData (ARSession session, ARCollaborationData data);
	public virtual void DidRemoveNode (SceneKit.ISCNSceneRenderer renderer, SceneKit.SCNNode node, ARAnchor anchor);
	public virtual void DidRenderScene (SceneKit.ISCNSceneRenderer renderer, SceneKit.SCNScene scene, double timeInSeconds);
	public virtual void DidSimulatePhysics (SceneKit.ISCNSceneRenderer renderer, double timeInSeconds);
	public virtual void DidUpdateNode (SceneKit.ISCNSceneRenderer renderer, SceneKit.SCNNode node, ARAnchor anchor);
	public virtual SceneKit.SCNNode GetNode (SceneKit.ISCNSceneRenderer renderer, ARAnchor anchor);
	public virtual void InterruptionEnded (ARSession session);
	public virtual bool ShouldAttemptRelocalization (ARSession session);
	public virtual void Update (SceneKit.ISCNSceneRenderer renderer, double timeInSeconds);
	public virtual void WasInterrupted (ARSession session);
	public virtual void WillRenderScene (SceneKit.ISCNSceneRenderer renderer, SceneKit.SCNScene scene, double timeInSeconds);
	public virtual void WillUpdateNode (SceneKit.ISCNSceneRenderer renderer, SceneKit.SCNNode node, ARAnchor anchor);
}

New Type: ARKit.ARSCNViewDelegate_Extensions

public static class ARSCNViewDelegate_Extensions {
	// methods
	public static void DidAddNode (this IARSCNViewDelegate This, SceneKit.ISCNSceneRenderer renderer, SceneKit.SCNNode node, ARAnchor anchor);
	public static void DidRemoveNode (this IARSCNViewDelegate This, SceneKit.ISCNSceneRenderer renderer, SceneKit.SCNNode node, ARAnchor anchor);
	public static void DidUpdateNode (this IARSCNViewDelegate This, SceneKit.ISCNSceneRenderer renderer, SceneKit.SCNNode node, ARAnchor anchor);
	public static SceneKit.SCNNode GetNode (this IARSCNViewDelegate This, SceneKit.ISCNSceneRenderer renderer, ARAnchor anchor);
	public static void WillUpdateNode (this IARSCNViewDelegate This, SceneKit.ISCNSceneRenderer renderer, SceneKit.SCNNode node, ARAnchor anchor);
}

New Type: ARKit.ARSKView

public class ARSKView : SpriteKit.SKView, IARSessionProviding, CoreAnimation.ICALayerDelegate, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAccessibilityIdentification, UIKit.IUIAppearance, UIKit.IUIAppearanceContainer, UIKit.IUICoordinateSpace, UIKit.IUIDynamicItem, UIKit.IUIFocusEnvironment, UIKit.IUIFocusItem, UIKit.IUIFocusItemContainer, UIKit.IUILargeContentViewerItem, UIKit.IUIPasteConfigurationSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public ARSKView ();
	public ARSKView (Foundation.NSCoder coder);
	protected ARSKView (Foundation.NSObjectFlag t);
	protected ARSKView (IntPtr handle);
	// properties
	public static ARSKView.ARSKViewAppearance Appearance { get; }
	public override IntPtr ClassHandle { get; }
	public virtual IARSKViewDelegate Delegate { get; set; }
	public virtual ARSession Session { get; set; }
	// methods
	public static ARSKView.ARSKViewAppearance AppearanceWhenContainedIn (System.Type[] containers);
	protected override void Dispose (bool disposing);
	public virtual ARAnchor GetAnchor (SpriteKit.SKNode node);
	public static ARSKView.ARSKViewAppearance GetAppearance<T> ();
	public static ARSKView.ARSKViewAppearance GetAppearance<T> (UIKit.UITraitCollection traits);
	public static ARSKView.ARSKViewAppearance GetAppearance (UIKit.UITraitCollection traits);
	public static ARSKView.ARSKViewAppearance GetAppearance<T> (UIKit.UITraitCollection traits, System.Type[] containers);
	public static ARSKView.ARSKViewAppearance GetAppearance (UIKit.UITraitCollection traits, System.Type[] containers);
	public virtual SpriteKit.SKNode GetNode (ARAnchor anchor);
	public virtual ARHitTestResult[] HitTest (CoreGraphics.CGPoint point, ARHitTestResultType types);

	// inner types
	public class ARSKViewAppearance : SpriteKit.SKView+SKViewAppearance, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearance {
		// constructors
		protected ARSKView.ARSKViewAppearance (IntPtr handle);
	}
}

New Type: ARKit.ARSKViewDelegate

public class ARSKViewDelegate : Foundation.NSObject, IARSKViewDelegate, IARSessionObserver, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, SpriteKit.ISKViewDelegate, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ARSKViewDelegate ();
	protected ARSKViewDelegate (Foundation.NSObjectFlag t);
	protected ARSKViewDelegate (IntPtr handle);
	// methods
	public virtual void CameraDidChangeTrackingState (ARSession session, ARCamera camera);
	public virtual void DidAddNode (ARSKView view, SpriteKit.SKNode node, ARAnchor anchor);
	public virtual void DidChangeGeoTrackingStatus (ARSession session, ARGeoTrackingStatus geoTrackingStatus);
	public virtual void DidFail (ARSession session, Foundation.NSError error);
	public virtual void DidOutputAudioSampleBuffer (ARSession session, CoreMedia.CMSampleBuffer audioSampleBuffer);
	public virtual void DidOutputCollaborationData (ARSession session, ARCollaborationData data);
	public virtual void DidRemoveNode (ARSKView view, SpriteKit.SKNode node, ARAnchor anchor);
	public virtual void DidUpdateNode (ARSKView view, SpriteKit.SKNode node, ARAnchor anchor);
	public virtual SpriteKit.SKNode GetNode (ARSKView view, ARAnchor anchor);
	public virtual void InterruptionEnded (ARSession session);
	public virtual bool ShouldAttemptRelocalization (ARSession session);
	public virtual bool ShouldRender (SpriteKit.SKView view, double time);
	public virtual void WasInterrupted (ARSession session);
	public virtual void WillUpdateNode (ARSKView view, SpriteKit.SKNode node, ARAnchor anchor);
}

New Type: ARKit.ARSKViewDelegate_Extensions

public static class ARSKViewDelegate_Extensions {
	// methods
	public static void DidAddNode (this IARSKViewDelegate This, ARSKView view, SpriteKit.SKNode node, ARAnchor anchor);
	public static void DidRemoveNode (this IARSKViewDelegate This, ARSKView view, SpriteKit.SKNode node, ARAnchor anchor);
	public static void DidUpdateNode (this IARSKViewDelegate This, ARSKView view, SpriteKit.SKNode node, ARAnchor anchor);
	public static SpriteKit.SKNode GetNode (this IARSKViewDelegate This, ARSKView view, ARAnchor anchor);
	public static void WillUpdateNode (this IARSKViewDelegate This, ARSKView view, SpriteKit.SKNode node, ARAnchor anchor);
}

New Type: ARKit.ARSceneReconstruction

[Serializable]
public enum ARSceneReconstruction {
	Mesh = 1,
	MeshWithClassification = 3,
	None = 0,
}

New Type: ARKit.ARSegmentationClass

[Serializable]
public enum ARSegmentationClass {
	None = 0,
	Person = 255,
}

New Type: ARKit.ARSession

public class ARSession : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ARSession ();
	protected ARSession (Foundation.NSObjectFlag t);
	protected ARSession (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual ARConfiguration Configuration { get; }
	public virtual ARFrame CurrentFrame { get; }
	public virtual IARSessionDelegate Delegate { get; set; }
	public virtual CoreFoundation.DispatchQueue DelegateQueue { get; set; }
	public virtual Foundation.NSUuid Identifier { get; }
	// methods
	public virtual void AddAnchor (ARAnchor anchor);
	public virtual void CreateReferenceObject (OpenTK.NMatrix4 transform, OpenTK.NVector3 center, OpenTK.NVector3 extent, System.Action<ARReferenceObject,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<ARReferenceObject> CreateReferenceObjectAsync (OpenTK.NMatrix4 transform, OpenTK.NVector3 center, OpenTK.NVector3 extent);
	protected override void Dispose (bool disposing);
	public virtual void GetCurrentWorldMap (System.Action<ARWorldMap,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<ARWorldMap> GetCurrentWorldMapAsync ();
	public virtual void GetGeoLocation (OpenTK.NVector3 position, GetGeolocationCallback completionHandler);
	public virtual System.Threading.Tasks.Task<GeoLocationForPoint> GetGeoLocationAsync (OpenTK.NVector3 position);
	public virtual void Pause ();
	public virtual ARRaycastResult[] Raycast (ARRaycastQuery query);
	public virtual void RemoveAnchor (ARAnchor anchor);
	public virtual void Run (ARConfiguration configuration);
	public virtual void Run (ARConfiguration configuration, ARSessionRunOptions options);
	public virtual void SetWorldOrigin (OpenTK.NMatrix4 relativeTransform);
	public virtual ARTrackedRaycast TrackedRaycast (ARRaycastQuery query, System.Action<ARRaycastResult[]> updateHandler);
	public virtual System.Threading.Tasks.Task<ARRaycastResult[]> TrackedRaycastAsync (ARRaycastQuery query);
	public virtual System.Threading.Tasks.Task<ARRaycastResult[]> TrackedRaycastAsync (ARRaycastQuery query, out ARTrackedRaycast result);
	public virtual void Update (ARCollaborationData collaborationData);
}

New Type: ARKit.ARSessionDelegate

public class ARSessionDelegate : Foundation.NSObject, IARSessionDelegate, IARSessionObserver, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ARSessionDelegate ();
	protected ARSessionDelegate (Foundation.NSObjectFlag t);
	protected ARSessionDelegate (IntPtr handle);
	// methods
	public virtual void CameraDidChangeTrackingState (ARSession session, ARCamera camera);
	public virtual void DidAddAnchors (ARSession session, ARAnchor[] anchors);
	public virtual void DidChangeGeoTrackingStatus (ARSession session, ARGeoTrackingStatus geoTrackingStatus);
	public virtual void DidFail (ARSession session, Foundation.NSError error);
	public virtual void DidOutputAudioSampleBuffer (ARSession session, CoreMedia.CMSampleBuffer audioSampleBuffer);
	public virtual void DidOutputCollaborationData (ARSession session, ARCollaborationData data);
	public virtual void DidRemoveAnchors (ARSession session, ARAnchor[] anchors);
	public virtual void DidUpdateAnchors (ARSession session, ARAnchor[] anchors);
	public virtual void DidUpdateFrame (ARSession session, ARFrame frame);
	public virtual void InterruptionEnded (ARSession session);
	public virtual bool ShouldAttemptRelocalization (ARSession session);
	public virtual void WasInterrupted (ARSession session);
}

New Type: ARKit.ARSessionDelegate_Extensions

public static class ARSessionDelegate_Extensions {
	// methods
	public static void DidAddAnchors (this IARSessionDelegate This, ARSession session, ARAnchor[] anchors);
	public static void DidRemoveAnchors (this IARSessionDelegate This, ARSession session, ARAnchor[] anchors);
	public static void DidUpdateAnchors (this IARSessionDelegate This, ARSession session, ARAnchor[] anchors);
	public static void DidUpdateFrame (this IARSessionDelegate This, ARSession session, ARFrame frame);
}

New Type: ARKit.ARSessionObserver_Extensions

public static class ARSessionObserver_Extensions {
	// methods
	public static void CameraDidChangeTrackingState (this IARSessionObserver This, ARSession session, ARCamera camera);
	public static void DidChangeGeoTrackingStatus (this IARSessionObserver This, ARSession session, ARGeoTrackingStatus geoTrackingStatus);
	public static void DidFail (this IARSessionObserver This, ARSession session, Foundation.NSError error);
	public static void DidOutputAudioSampleBuffer (this IARSessionObserver This, ARSession session, CoreMedia.CMSampleBuffer audioSampleBuffer);
	public static void DidOutputCollaborationData (this IARSessionObserver This, ARSession session, ARCollaborationData data);
	public static void InterruptionEnded (this IARSessionObserver This, ARSession session);
	public static bool ShouldAttemptRelocalization (this IARSessionObserver This, ARSession session);
	public static void WasInterrupted (this IARSessionObserver This, ARSession session);
}

New Type: ARKit.ARSessionRunOptions

[Serializable]
public enum ARSessionRunOptions {
	None = 0,
	RemoveExistingAnchors = 2,
	ResetSceneReconstruction = 8,
	ResetTracking = 1,
	StopTrackedRaycasts = 4,
}

New Type: ARKit.ARSkeleton

public class ARSkeleton : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ARSkeleton (Foundation.NSObjectFlag t);
	protected ARSkeleton (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual ARSkeletonDefinition Definition { get; }
	public virtual nuint JointCount { get; }
	// methods
	public static Foundation.NSString CreateJointName (Foundation.NSString recognizedPointKey);
	public virtual bool IsJointTracked (nint jointIndex);
}

New Type: ARKit.ARSkeleton2D

public class ARSkeleton2D : ARKit.ARSkeleton, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ARSkeleton2D (Foundation.NSObjectFlag t);
	protected ARSkeleton2D (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public OpenTK.Vector2[] JointLandmarks { get; }
	protected virtual IntPtr RawJointLandmarks { get; }
	// methods
	public virtual OpenTK.Vector2 GetLandmarkPoint (ARSkeletonJointName jointName);
	public virtual OpenTK.Vector2 GetLandmarkPoint (Foundation.NSString jointName);
}

New Type: ARKit.ARSkeleton3D

public class ARSkeleton3D : ARKit.ARSkeleton, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ARSkeleton3D (Foundation.NSObjectFlag t);
	protected ARSkeleton3D (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public OpenTK.NMatrix4[] JointLocalTransforms { get; }
	public OpenTK.NMatrix4[] JointModelTransforms { get; }
	protected virtual IntPtr RawJointLocalTransforms { get; }
	protected virtual IntPtr RawJointModelTransforms { get; }
	// methods
	public virtual OpenTK.NMatrix4 GetLocalTransform (ARSkeletonJointName jointName);
	public virtual OpenTK.NMatrix4 GetLocalTransform (Foundation.NSString jointName);
	public virtual OpenTK.NMatrix4 GetModelTransform (ARSkeletonJointName jointName);
	public virtual OpenTK.NMatrix4 GetModelTransform (Foundation.NSString jointName);
}

New Type: ARKit.ARSkeletonDefinition

public class ARSkeletonDefinition : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ARSkeletonDefinition (Foundation.NSObjectFlag t);
	protected ARSkeletonDefinition (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static ARSkeletonDefinition DefaultBody2DSkeletonDefinition { get; }
	public static ARSkeletonDefinition DefaultBody3DSkeletonDefinition { get; }
	public virtual nuint JointCount { get; }
	public virtual string[] JointNames { get; }
	public virtual ARSkeleton3D NeutralBodySkeleton3D { get; }
	public virtual Foundation.NSNumber[] ParentIndices { get; }
	// methods
	public nuint GetJointIndex (ARSkeletonJointName jointName);
	public virtual nuint GetJointIndex (Foundation.NSString jointName);
}

New Type: ARKit.ARSkeletonJointName

[Serializable]
public enum ARSkeletonJointName {
	Head = 1,
	LeftFoot = 4,
	LeftHand = 2,
	LeftShoulder = 6,
	RightFoot = 5,
	RightHand = 3,
	RightShoulder = 7,
	Root = 0,
}

New Type: ARKit.ARSkeletonJointNameExtensions

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

New Type: ARKit.ARTrackedRaycast

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

New Type: ARKit.ARTrackingState

[Serializable]
public enum ARTrackingState {
	Limited = 1,
	Normal = 2,
	NotAvailable = 0,
}

New Type: ARKit.ARTrackingStateReason

[Serializable]
public enum ARTrackingStateReason {
	ExcessiveMotion = 2,
	Initializing = 1,
	InsufficientFeatures = 3,
	None = 0,
	Relocalizing = 4,
}

New Type: ARKit.ARVideoFormat

public class ARVideoFormat : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ARVideoFormat (Foundation.NSObjectFlag t);
	protected ARVideoFormat (IntPtr handle);
	// properties
	public virtual AVFoundation.AVCaptureDevicePosition CaptureDevicePosition { get; }
	public virtual Foundation.NSString CaptureDeviceType { get; }
	public override IntPtr ClassHandle { get; }
	public virtual nint FramesPerSecond { get; }
	public virtual CoreGraphics.CGSize ImageResolution { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: ARKit.ARWorldAlignment

[Serializable]
public enum ARWorldAlignment {
	Camera = 2,
	Gravity = 0,
	GravityAndHeading = 1,
}

New Type: ARKit.ARWorldMap

public class ARWorldMap : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ARWorldMap (Foundation.NSCoder coder);
	protected ARWorldMap (Foundation.NSObjectFlag t);
	protected ARWorldMap (IntPtr handle);
	// properties
	public virtual ARAnchor[] Anchors { get; set; }
	public virtual OpenTK.NVector3 Center { get; }
	public override IntPtr ClassHandle { get; }
	public virtual OpenTK.NVector3 Extent { get; }
	public virtual ARPointCloud RawFeaturePoints { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: ARKit.ARWorldMappingStatus

[Serializable]
public enum ARWorldMappingStatus {
	Extending = 2,
	Limited = 1,
	Mapped = 3,
	NotAvailable = 0,
}

New Type: ARKit.ARWorldTrackingConfiguration

public class ARWorldTrackingConfiguration : ARKit.ARConfiguration, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ARWorldTrackingConfiguration ();
	protected ARWorldTrackingConfiguration (Foundation.NSObjectFlag t);
	protected ARWorldTrackingConfiguration (IntPtr handle);
	// properties
	public virtual bool AppClipCodeTrackingEnabled { get; set; }
	public virtual bool AutoFocusEnabled { get; set; }
	public virtual bool AutomaticImageScaleEstimationEnabled { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual bool CollaborationEnabled { get; set; }
	public virtual Foundation.NSSet<ARReferenceImage> DetectionImages { get; set; }
	public virtual Foundation.NSSet<ARReferenceObject> DetectionObjects { get; set; }
	public virtual AREnvironmentTexturing EnvironmentTexturing { get; set; }
	public virtual ARWorldMap InitialWorldMap { get; set; }
	public virtual nint MaximumNumberOfTrackedImages { get; set; }
	public virtual ARPlaneDetection PlaneDetection { get; set; }
	public virtual ARSceneReconstruction SceneReconstruction { get; set; }
	public static bool SupportsAppClipCodeTracking { get; }
	public static bool SupportsUserFaceTracking { get; }
	public virtual bool UserFaceTrackingEnabled { get; set; }
	public virtual bool WantsHdrEnvironmentTextures { get; set; }
	// methods
	public static ARVideoFormat[] GetSupportedVideoFormats ();
	public static bool SupportsFrameSemantics (ARFrameSemantics frameSemantics);
	public static bool SupportsSceneReconstruction (ARSceneReconstruction sceneReconstruction);
}

New Type: ARKit.GeoLocationForPoint

public class GeoLocationForPoint {
	// constructors
	public GeoLocationForPoint (CoreLocation.CLLocationCoordinate2D coordinate, double altitude);
	// properties
	public double Altitude { get; set; }
	public CoreLocation.CLLocationCoordinate2D Coordinate { get; set; }
}

New Type: ARKit.GetGeolocationCallback

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

New Type: ARKit.IARAnchorCopying

public interface IARAnchorCopying : Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable {
}

New Type: ARKit.IARCoachingOverlayViewDelegate

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

New Type: ARKit.IARSCNViewDelegate

public interface IARSCNViewDelegate : IARSessionObserver, ObjCRuntime.INativeObject, SceneKit.ISCNSceneRendererDelegate, System.IDisposable {
}

New Type: ARKit.IARSKViewDelegate

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

New Type: ARKit.IARSessionDelegate

public interface IARSessionDelegate : IARSessionObserver, ObjCRuntime.INativeObject, System.IDisposable {
}

New Type: ARKit.IARSessionObserver

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

New Type: ARKit.IARSessionProviding

public interface IARSessionProviding : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual ARSession Session { get; }
}

New Type: ARKit.IARTrackable

public interface IARTrackable : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual bool IsTracked { get; }
}

New Namespace AVFoundation

New Type: AVFoundation.AVCaptureDeviceTransportControlsPlaybackMode

[Serializable]
public enum AVCaptureDeviceTransportControlsPlaybackMode {
	NotPlaying = 0,
	Playing = 1,
}

New Type: AVFoundation.AVVideoFieldMode

[Serializable]
public enum AVVideoFieldMode {
	Both = 0,
	BottomOnly = 2,
	Deinterlace = 3,
	TopOnly = 1,
}

New Namespace AddressBookUI

New Type: AddressBookUI.ABAddressFormatting

public static class ABAddressFormatting {
	// methods
	public static string ToString (Foundation.NSDictionary address, bool addCountryName);
}

New Type: AddressBookUI.ABNewPersonCompleteEventArgs

public class ABNewPersonCompleteEventArgs : System.EventArgs {
	// constructors
	public ABNewPersonCompleteEventArgs (AddressBook.ABPerson person);
	// properties
	public bool Completed { get; }
	public AddressBook.ABPerson Person { get; }
}

New Type: AddressBookUI.ABNewPersonViewController

public class ABNewPersonViewController : UIKit.UIViewController, Foundation.INSCoding, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearanceContainer, UIKit.IUIContentContainer, UIKit.IUIFocusEnvironment, UIKit.IUIPasteConfigurationSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public ABNewPersonViewController ();
	public ABNewPersonViewController (Foundation.NSCoder coder);
	protected ABNewPersonViewController (Foundation.NSObjectFlag t);
	protected ABNewPersonViewController (IntPtr handle);
	public ABNewPersonViewController (string nibName, Foundation.NSBundle bundle);
	// properties
	public AddressBook.ABAddressBook AddressBook { get; set; }
	public override IntPtr ClassHandle { get; }
	public IABNewPersonViewControllerDelegate Delegate { get; set; }
	public AddressBook.ABPerson DisplayedPerson { get; set; }
	public AddressBook.ABGroup ParentGroup { get; set; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// events
	public event System.EventHandler<ABNewPersonCompleteEventArgs> NewPersonComplete;
	// methods
	protected override void Dispose (bool disposing);
	protected virtual void OnNewPersonComplete (ABNewPersonCompleteEventArgs e);
}

New Type: AddressBookUI.ABNewPersonViewControllerDelegate

public abstract class ABNewPersonViewControllerDelegate : Foundation.NSObject, IABNewPersonViewControllerDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ABNewPersonViewControllerDelegate ();
	protected ABNewPersonViewControllerDelegate (Foundation.NSObjectFlag t);
	protected ABNewPersonViewControllerDelegate (IntPtr handle);
	// methods
	public virtual void DidCompleteWithNewPerson (ABNewPersonViewController controller, AddressBook.ABPerson person);
}

New Type: AddressBookUI.ABPeoplePickerNavigationController

public class ABPeoplePickerNavigationController : UIKit.UINavigationController, Foundation.INSCoding, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearance, UIKit.IUIAppearanceContainer, UIKit.IUIContentContainer, UIKit.IUIFocusEnvironment, UIKit.IUIPasteConfigurationSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public ABPeoplePickerNavigationController ();
	public ABPeoplePickerNavigationController (Foundation.NSCoder coder);
	protected ABPeoplePickerNavigationController (Foundation.NSObjectFlag t);
	protected ABPeoplePickerNavigationController (IntPtr handle);
	public ABPeoplePickerNavigationController (UIKit.UIViewController rootViewController);
	public ABPeoplePickerNavigationController (string nibName, Foundation.NSBundle bundle);
	// properties
	public AddressBook.ABAddressBook AddressBook { get; set; }
	public static ABPeoplePickerNavigationController.ABPeoplePickerNavigationControllerAppearance Appearance { get; }
	public override IntPtr ClassHandle { get; }
	public IABPeoplePickerNavigationControllerDelegate Delegate { get; set; }
	public DisplayedPropertiesCollection DisplayedProperties { get; }
	public virtual Foundation.NSPredicate PredicateForEnablingPerson { get; set; }
	public virtual Foundation.NSPredicate PredicateForSelectionOfPerson { get; set; }
	public virtual Foundation.NSPredicate PredicateForSelectionOfProperty { get; set; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// events
	public event System.EventHandler Cancelled;
	public event System.EventHandler<ABPeoplePickerPerformActionEventArgs> PerformAction;
	public event System.EventHandler<ABPeoplePickerPerformAction2EventArgs> PerformAction2;
	public event System.EventHandler<ABPeoplePickerSelectPersonEventArgs> SelectPerson;
	public event System.EventHandler<ABPeoplePickerSelectPerson2EventArgs> SelectPerson2;
	// methods
	public static ABPeoplePickerNavigationController.ABPeoplePickerNavigationControllerAppearance AppearanceWhenContainedIn (System.Type[] containers);
	protected override void Dispose (bool disposing);
	public static ABPeoplePickerNavigationController.ABPeoplePickerNavigationControllerAppearance GetAppearance<T> ();
	public static ABPeoplePickerNavigationController.ABPeoplePickerNavigationControllerAppearance GetAppearance<T> (UIKit.UITraitCollection traits);
	public static ABPeoplePickerNavigationController.ABPeoplePickerNavigationControllerAppearance GetAppearance (UIKit.UITraitCollection traits);
	public static ABPeoplePickerNavigationController.ABPeoplePickerNavigationControllerAppearance GetAppearance<T> (UIKit.UITraitCollection traits, System.Type[] containers);
	public static ABPeoplePickerNavigationController.ABPeoplePickerNavigationControllerAppearance GetAppearance (UIKit.UITraitCollection traits, System.Type[] containers);
	protected virtual void OnCancelled (System.EventArgs e);
	protected virtual void OnPerformAction (ABPeoplePickerPerformActionEventArgs e);
	protected virtual void OnPerformAction2 (ABPeoplePickerPerformAction2EventArgs e);
	protected virtual void OnSelectPerson (ABPeoplePickerSelectPersonEventArgs e);
	protected virtual void OnSelectPerson2 (ABPeoplePickerSelectPerson2EventArgs e);

	// inner types
	public class ABPeoplePickerNavigationControllerAppearance : UIKit.UIAppearance, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearance {
		// constructors
		protected ABPeoplePickerNavigationController.ABPeoplePickerNavigationControllerAppearance (IntPtr handle);
	}
}

New Type: AddressBookUI.ABPeoplePickerNavigationControllerDelegate

public class ABPeoplePickerNavigationControllerDelegate : UIKit.UINavigationControllerDelegate, IABPeoplePickerNavigationControllerDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUINavigationControllerDelegate {
	// constructors
	public ABPeoplePickerNavigationControllerDelegate ();
	protected ABPeoplePickerNavigationControllerDelegate (Foundation.NSObjectFlag t);
	protected ABPeoplePickerNavigationControllerDelegate (IntPtr handle);
	// methods
	public virtual void Cancelled (ABPeoplePickerNavigationController peoplePicker);
	public virtual void DidSelectPerson (ABPeoplePickerNavigationController peoplePicker, AddressBook.ABPerson selectedPerson);
	public virtual void DidSelectPerson (ABPeoplePickerNavigationController peoplePicker, AddressBook.ABPerson selectedPerson, int propertyId, int identifier);
	public virtual bool ShouldContinue (ABPeoplePickerNavigationController peoplePicker, AddressBook.ABPerson selectedPerson);
	public virtual bool ShouldContinue (ABPeoplePickerNavigationController peoplePicker, AddressBook.ABPerson selectedPerson, int propertyId, int identifier);
}

New Type: AddressBookUI.ABPeoplePickerNavigationControllerDelegate_Extensions

public static class ABPeoplePickerNavigationControllerDelegate_Extensions {
	// methods
	public static void Cancelled (this IABPeoplePickerNavigationControllerDelegate This, ABPeoplePickerNavigationController peoplePicker);
	public static void DidSelectPerson (this IABPeoplePickerNavigationControllerDelegate This, ABPeoplePickerNavigationController peoplePicker, AddressBook.ABPerson selectedPerson);
	public static void DidSelectPerson (this IABPeoplePickerNavigationControllerDelegate This, ABPeoplePickerNavigationController peoplePicker, AddressBook.ABPerson selectedPerson, int propertyId, int identifier);
	public static bool ShouldContinue (this IABPeoplePickerNavigationControllerDelegate This, ABPeoplePickerNavigationController peoplePicker, AddressBook.ABPerson selectedPerson);
	public static bool ShouldContinue (this IABPeoplePickerNavigationControllerDelegate This, ABPeoplePickerNavigationController peoplePicker, AddressBook.ABPerson selectedPerson, int propertyId, int identifier);
}

New Type: AddressBookUI.ABPeoplePickerPerformAction2EventArgs

public class ABPeoplePickerPerformAction2EventArgs : AddressBookUI.ABPeoplePickerSelectPerson2EventArgs {
	// constructors
	public ABPeoplePickerPerformAction2EventArgs (AddressBook.ABPerson person, AddressBook.ABPersonProperty property, int? identifier);
	// properties
	public int? Identifier { get; }
	public AddressBook.ABPersonProperty Property { get; }
}

New Type: AddressBookUI.ABPeoplePickerPerformActionEventArgs

public class ABPeoplePickerPerformActionEventArgs : AddressBookUI.ABPeoplePickerSelectPersonEventArgs {
	// constructors
	public ABPeoplePickerPerformActionEventArgs (AddressBook.ABPerson person, AddressBook.ABPersonProperty property, int? identifier);
	// properties
	public int? Identifier { get; }
	public AddressBook.ABPersonProperty Property { get; }
}

New Type: AddressBookUI.ABPeoplePickerSelectPerson2EventArgs

public class ABPeoplePickerSelectPerson2EventArgs : System.EventArgs {
	// constructors
	public ABPeoplePickerSelectPerson2EventArgs (AddressBook.ABPerson person);
	// properties
	public AddressBook.ABPerson Person { get; }
}

New Type: AddressBookUI.ABPeoplePickerSelectPersonEventArgs

public class ABPeoplePickerSelectPersonEventArgs : System.EventArgs {
	// constructors
	public ABPeoplePickerSelectPersonEventArgs (AddressBook.ABPerson person);
	// properties
	public bool Continue { get; set; }
	public AddressBook.ABPerson Person { get; }
}

New Type: AddressBookUI.ABPersonPredicateKey

public static class ABPersonPredicateKey {
	// properties
	public static Foundation.NSString Birthday { get; }
	public static Foundation.NSString Dates { get; }
	public static Foundation.NSString DepartmentName { get; }
	public static Foundation.NSString EmailAddresses { get; }
	public static Foundation.NSString FamilyName { get; }
	public static Foundation.NSString GivenName { get; }
	public static Foundation.NSString InstantMessageAddresses { get; }
	public static Foundation.NSString JobTitle { get; }
	public static Foundation.NSString MiddleName { get; }
	public static Foundation.NSString NamePrefix { get; }
	public static Foundation.NSString NameSuffix { get; }
	public static Foundation.NSString Nickname { get; }
	public static Foundation.NSString Note { get; }
	public static Foundation.NSString OrganizationName { get; }
	public static Foundation.NSString PhoneNumbers { get; }
	public static Foundation.NSString PhoneticFamilyName { get; }
	public static Foundation.NSString PhoneticGivenName { get; }
	public static Foundation.NSString PhoneticMiddleName { get; }
	public static Foundation.NSString PostalAddresses { get; }
	public static Foundation.NSString PreviousFamilyName { get; }
	public static Foundation.NSString RelatedNames { get; }
	public static Foundation.NSString SocialProfiles { get; }
	public static Foundation.NSString UrlAddresses { get; }
}

New Type: AddressBookUI.ABPersonViewController

public class ABPersonViewController : UIKit.UIViewController, Foundation.INSCoding, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearanceContainer, UIKit.IUIContentContainer, UIKit.IUIFocusEnvironment, UIKit.IUIPasteConfigurationSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring, UIKit.IUIViewControllerRestoration {
	// constructors
	public ABPersonViewController ();
	public ABPersonViewController (Foundation.NSCoder coder);
	protected ABPersonViewController (Foundation.NSObjectFlag t);
	protected ABPersonViewController (IntPtr handle);
	public ABPersonViewController (string nibName, Foundation.NSBundle bundle);
	// properties
	public AddressBook.ABAddressBook AddressBook { get; set; }
	public virtual bool AllowsActions { get; set; }
	public virtual bool AllowsEditing { get; set; }
	public override IntPtr ClassHandle { get; }
	public IABPersonViewControllerDelegate Delegate { get; set; }
	public AddressBook.ABPerson DisplayedPerson { get; set; }
	public DisplayedPropertiesCollection DisplayedProperties { get; }
	public virtual bool ShouldShowLinkedPeople { get; set; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// events
	public event System.EventHandler<ABPersonViewPerformDefaultActionEventArgs> PerformDefaultAction;
	// methods
	protected override void Dispose (bool disposing);
	protected virtual void OnPerformDefaultAction (ABPersonViewPerformDefaultActionEventArgs e);
	public void SetHighlightedItemForProperty (AddressBook.ABPersonProperty property, int? identifier);
	public void SetHighlightedProperty (AddressBook.ABPersonProperty property);
}

New Type: AddressBookUI.ABPersonViewControllerDelegate

public abstract class ABPersonViewControllerDelegate : Foundation.NSObject, IABPersonViewControllerDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ABPersonViewControllerDelegate ();
	protected ABPersonViewControllerDelegate (Foundation.NSObjectFlag t);
	protected ABPersonViewControllerDelegate (IntPtr handle);
	// methods
	public virtual bool ShouldPerformDefaultActionForPerson (ABPersonViewController personViewController, AddressBook.ABPerson person, int propertyId, int identifier);
}

New Type: AddressBookUI.ABPersonViewPerformDefaultActionEventArgs

public class ABPersonViewPerformDefaultActionEventArgs : System.EventArgs {
	// constructors
	public ABPersonViewPerformDefaultActionEventArgs (AddressBook.ABPerson person, AddressBook.ABPersonProperty property, int? identifier);
	// properties
	public int? Identifier { get; }
	public AddressBook.ABPerson Person { get; }
	public AddressBook.ABPersonProperty Property { get; }
	public bool ShouldPerformDefaultAction { get; set; }
}

New Type: AddressBookUI.ABUnknownPersonCreatedEventArgs

public class ABUnknownPersonCreatedEventArgs : System.EventArgs {
	// constructors
	public ABUnknownPersonCreatedEventArgs (AddressBook.ABPerson person);
	// properties
	public AddressBook.ABPerson Person { get; }
}

New Type: AddressBookUI.ABUnknownPersonViewController

public class ABUnknownPersonViewController : UIKit.UIViewController, Foundation.INSCoding, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearanceContainer, UIKit.IUIContentContainer, UIKit.IUIFocusEnvironment, UIKit.IUIPasteConfigurationSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public ABUnknownPersonViewController ();
	public ABUnknownPersonViewController (Foundation.NSCoder coder);
	protected ABUnknownPersonViewController (Foundation.NSObjectFlag t);
	protected ABUnknownPersonViewController (IntPtr handle);
	public ABUnknownPersonViewController (string nibName, Foundation.NSBundle bundle);
	// properties
	public AddressBook.ABAddressBook AddressBook { get; set; }
	public virtual bool AllowsActions { get; set; }
	public virtual bool AllowsAddingToAddressBook { get; set; }
	public virtual string AlternateName { get; set; }
	public override IntPtr ClassHandle { get; }
	public IABUnknownPersonViewControllerDelegate Delegate { get; set; }
	public AddressBook.ABPerson DisplayedPerson { get; set; }
	public virtual string Message { get; set; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// events
	public event System.EventHandler<ABPersonViewPerformDefaultActionEventArgs> PerformDefaultAction;
	public event System.EventHandler<ABUnknownPersonCreatedEventArgs> PersonCreated;
	// methods
	protected override void Dispose (bool disposing);
	protected virtual void OnPerformDefaultAction (ABPersonViewPerformDefaultActionEventArgs e);
	protected virtual void OnPersonCreated (ABUnknownPersonCreatedEventArgs e);
}

New Type: AddressBookUI.ABUnknownPersonViewControllerDelegate

public abstract class ABUnknownPersonViewControllerDelegate : Foundation.NSObject, IABUnknownPersonViewControllerDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ABUnknownPersonViewControllerDelegate ();
	protected ABUnknownPersonViewControllerDelegate (Foundation.NSObjectFlag t);
	protected ABUnknownPersonViewControllerDelegate (IntPtr handle);
	// methods
	public virtual void DidResolveToPerson (ABUnknownPersonViewController unknownPersonView, AddressBook.ABPerson person);
	public virtual bool ShouldPerformDefaultActionForPerson (ABUnknownPersonViewController personViewController, AddressBook.ABPerson person, int propertyId, int identifier);
}

New Type: AddressBookUI.ABUnknownPersonViewControllerDelegate_Extensions

public static class ABUnknownPersonViewControllerDelegate_Extensions {
	// methods
	public static bool ShouldPerformDefaultActionForPerson (this IABUnknownPersonViewControllerDelegate This, ABUnknownPersonViewController personViewController, AddressBook.ABPerson person, int propertyId, int identifier);
}

New Type: AddressBookUI.DisplayedPropertiesCollection

public class DisplayedPropertiesCollection : System.Collections.Generic.ICollection<AddressBook.ABPersonProperty>, System.Collections.Generic.IEnumerable<AddressBook.ABPersonProperty>, System.Collections.IEnumerable {
	// properties
	public virtual int Count { get; }
	// methods
	public virtual void Add (AddressBook.ABPersonProperty item);
	public virtual void Clear ();
	public virtual bool Contains (AddressBook.ABPersonProperty item);
	public virtual void CopyTo (AddressBook.ABPersonProperty[] array, int arrayIndex);
	public virtual System.Collections.Generic.IEnumerator<AddressBook.ABPersonProperty> GetEnumerator ();
	public virtual bool Remove (AddressBook.ABPersonProperty item);
}

New Type: AddressBookUI.IABNewPersonViewControllerDelegate

public interface IABNewPersonViewControllerDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DidCompleteWithNewPerson (ABNewPersonViewController controller, AddressBook.ABPerson person);
}

New Type: AddressBookUI.IABPeoplePickerNavigationControllerDelegate

public interface IABPeoplePickerNavigationControllerDelegate : ObjCRuntime.INativeObject, System.IDisposable, UIKit.IUINavigationControllerDelegate {
}

New Type: AddressBookUI.IABPersonViewControllerDelegate

public interface IABPersonViewControllerDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual bool ShouldPerformDefaultActionForPerson (ABPersonViewController personViewController, AddressBook.ABPerson person, int propertyId, int identifier);
}

New Type: AddressBookUI.IABUnknownPersonViewControllerDelegate

public interface IABUnknownPersonViewControllerDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DidResolveToPerson (ABUnknownPersonViewController unknownPersonView, AddressBook.ABPerson person);
}

New Namespace AppClip

New Type: AppClip.APActivationPayload

public class APActivationPayload : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public APActivationPayload (Foundation.NSCoder coder);
	protected APActivationPayload (Foundation.NSObjectFlag t);
	protected APActivationPayload (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSUrl Url { get; }
	// methods
	public virtual void ConfirmAcquired (CoreLocation.CLRegion region, System.Action<System.Boolean,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> ConfirmAcquiredAsync (CoreLocation.CLRegion region);
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: AppClip.APActivationPayloadErrorCode

[Serializable]
public enum APActivationPayloadErrorCode {
	Disallowed = 1,
	DoesNotMatch = 2,
}

New Type: AppClip.APActivationPayloadErrorCodeExtensions

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

New Namespace AssetsLibrary

New Type: AssetsLibrary.ALAsset

public class ALAsset : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ALAsset ();
	protected ALAsset (Foundation.NSObjectFlag t);
	protected ALAsset (IntPtr handle);
	// properties
	public ALAssetType AssetType { get; }
	public Foundation.NSUrl AssetUrl { get; }
	public override IntPtr ClassHandle { get; }
	public Foundation.NSDate Date { get; }
	public virtual ALAssetRepresentation DefaultRepresentation { get; }
	public double Duration { get; }
	public virtual bool Editable { get; }
	public CoreLocation.CLLocation Location { get; }
	public ALAssetOrientation Orientation { get; }
	public virtual ALAsset OriginalAsset { get; }
	public string[] Representations { get; }
	public virtual CoreGraphics.CGImage Thumbnail { get; }
	public Foundation.NSDictionary UtiToUrlDictionary { get; }
	// methods
	public virtual CoreGraphics.CGImage AspectRatioThumbnail ();
	public virtual ALAssetRepresentation RepresentationForUti (string uti);
	public virtual void SetImageData (Foundation.NSData imageData, Foundation.NSDictionary metadata, System.Action<Foundation.NSUrl,Foundation.NSError> completionBlock);
	public virtual System.Threading.Tasks.Task<Foundation.NSUrl> SetImageDataAsync (Foundation.NSData imageData, Foundation.NSDictionary metadata);
	public virtual void SetVideoAtPath (Foundation.NSUrl videoPathURL, System.Action<Foundation.NSUrl,Foundation.NSError> completionBlock);
	public virtual System.Threading.Tasks.Task<Foundation.NSUrl> SetVideoAtPathAsync (Foundation.NSUrl videoPathURL);
	public virtual Foundation.NSObject ValueForProperty (Foundation.NSString property);
	public virtual void WriteModifiedImageToSavedToPhotosAlbum (Foundation.NSData imageData, Foundation.NSDictionary metadata, System.Action<Foundation.NSUrl,Foundation.NSError> completionBlock);
	public virtual System.Threading.Tasks.Task<Foundation.NSUrl> WriteModifiedImageToSavedToPhotosAlbumAsync (Foundation.NSData imageData, Foundation.NSDictionary metadata);
	public virtual void WriteModifiedVideoToSavedPhotosAlbum (Foundation.NSUrl videoPathURL, System.Action<Foundation.NSUrl,Foundation.NSError> completionBlock);
	public virtual System.Threading.Tasks.Task<Foundation.NSUrl> WriteModifiedVideoToSavedPhotosAlbumAsync (Foundation.NSUrl videoPathURL);
}

New Type: AssetsLibrary.ALAssetLibraryChangedEventArgs

public class ALAssetLibraryChangedEventArgs : Foundation.NSNotificationEventArgs {
	// constructors
	public ALAssetLibraryChangedEventArgs (Foundation.NSNotification notification);
	// properties
	public Foundation.NSSet DeletedAssetGroupsKey { get; }
	public Foundation.NSSet InsertedAssetGroups { get; }
	public Foundation.NSSet UpdatedAssetGroups { get; }
	public Foundation.NSSet UpdatedAssets { get; }
}

New Type: AssetsLibrary.ALAssetOrientation

[Serializable]
public enum ALAssetOrientation {
	Down = 1,
	DownMirrored = 5,
	Left = 2,
	LeftMirrored = 6,
	Right = 3,
	RightMirrored = 7,
	Up = 0,
	UpMirrored = 4,
}

New Type: AssetsLibrary.ALAssetRepresentation

public class ALAssetRepresentation : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ALAssetRepresentation ();
	protected ALAssetRepresentation (Foundation.NSObjectFlag t);
	protected ALAssetRepresentation (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual CoreGraphics.CGSize Dimensions { get; }
	public virtual string Filename { get; }
	public virtual Foundation.NSDictionary Metadata { get; }
	public virtual ALAssetOrientation Orientation { get; }
	public virtual float Scale { get; }
	public virtual long Size { get; }
	public virtual Foundation.NSUrl Url { get; }
	public virtual string Uti { get; }
	// methods
	public virtual nuint GetBytes (IntPtr buffer, long offset, nuint length, out Foundation.NSError error);
	public virtual CoreGraphics.CGImage GetFullScreenImage ();
	public virtual CoreGraphics.CGImage GetImage ();
	public virtual CoreGraphics.CGImage GetImage (Foundation.NSDictionary options);
}

New Type: AssetsLibrary.ALAssetType

[Serializable]
public enum ALAssetType {
	Photo = 1,
	Unknown = 2,
	Video = 0,
}

New Type: AssetsLibrary.ALAssetsEnumerator

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

New Type: AssetsLibrary.ALAssetsError

[Serializable]
public enum ALAssetsError {
	AccessGloballyDeniedError = -3312,
	AccessUserDeniedError = -3311,
	DataUnavailableError = -3310,
	UnknownError = -1,
	WriteBusyError = -3301,
	WriteDataEncodingError = -3304,
	WriteDiskSpaceError = -3305,
	WriteFailedError = -3300,
	WriteIncompatibleDataError = -3303,
	WriteInvalidDataError = -3302,
}

New Type: AssetsLibrary.ALAssetsErrorExtensions

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

New Type: AssetsLibrary.ALAssetsFilter

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

New Type: AssetsLibrary.ALAssetsGroup

public class ALAssetsGroup : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ALAssetsGroup ();
	protected ALAssetsGroup (Foundation.NSObjectFlag t);
	protected ALAssetsGroup (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nint Count { get; }
	public virtual bool Editable { get; }
	public Foundation.NSString Name { get; }
	public string PersistentID { get; }
	public virtual CoreGraphics.CGImage PosterImage { get; }
	public Foundation.NSUrl PropertyUrl { get; }
	public ALAssetsGroupType Type { get; }
	// methods
	public virtual bool AddAsset (ALAsset asset);
	public virtual void Enumerate (ALAssetsEnumerator result);
	public virtual void Enumerate (Foundation.NSEnumerationOptions options, ALAssetsEnumerator result);
	public virtual void Enumerate (Foundation.NSIndexSet indexSet, Foundation.NSEnumerationOptions options, ALAssetsEnumerator result);
	public virtual void SetAssetsFilter (ALAssetsFilter filter);
}

New Type: AssetsLibrary.ALAssetsGroupType

[Serializable]
public enum ALAssetsGroupType {
	Album = 2,
	All = 4294967295,
	Event = 4,
	Faces = 8,
	GroupPhotoStream = 32,
	Library = 1,
	SavedPhotos = 16,
}

New Type: AssetsLibrary.ALAssetsLibrary

public class ALAssetsLibrary : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ALAssetsLibrary ();
	protected ALAssetsLibrary (Foundation.NSObjectFlag t);
	protected ALAssetsLibrary (IntPtr handle);
	// properties
	public static ALAuthorizationStatus AuthorizationStatus { get; }
	public static Foundation.NSString ChangedNotification { get; }
	public override IntPtr ClassHandle { get; }
	public static Foundation.NSString DeletedAssetGroupsKey { get; }
	public static Foundation.NSString InsertedAssetGroupsKey { get; }
	public static Foundation.NSString UpdatedAssetGroupsKey { get; }
	public static Foundation.NSString UpdatedAssetsKey { get; }
	// methods
	public virtual void AddAssetsGroupAlbum (string name, System.Action<ALAssetsGroup> resultBlock, System.Action<Foundation.NSError> failureBlock);
	public virtual void AssetForUrl (Foundation.NSUrl assetURL, System.Action<ALAsset> resultBlock, System.Action<Foundation.NSError> failureBlock);
	public static void DisableSharedPhotoStreamsSupport ();
	public virtual void Enumerate (ALAssetsGroupType types, ALAssetsLibraryGroupsEnumerationResultsDelegate enumerationBlock, System.Action<Foundation.NSError> failureBlock);
	public virtual void GroupForUrl (Foundation.NSUrl groupURL, System.Action<ALAssetsGroup> resultBlock, System.Action<Foundation.NSError> failureBlock);
	public virtual bool VideoAtPathIsIsCompatibleWithSavedPhotosAlbum (Foundation.NSUrl videoPathURL);
	public virtual void WriteImageToSavedPhotosAlbum (CoreGraphics.CGImage imageData, ALAssetOrientation orientation, System.Action<Foundation.NSUrl,Foundation.NSError> completionBlock);
	public virtual void WriteImageToSavedPhotosAlbum (CoreGraphics.CGImage imageData, Foundation.NSDictionary metadata, System.Action<Foundation.NSUrl,Foundation.NSError> completionBlock);
	public virtual void WriteImageToSavedPhotosAlbum (Foundation.NSData imageData, Foundation.NSDictionary metadata, System.Action<Foundation.NSUrl,Foundation.NSError> completionBlock);
	public virtual System.Threading.Tasks.Task<Foundation.NSUrl> WriteImageToSavedPhotosAlbumAsync (CoreGraphics.CGImage imageData, ALAssetOrientation orientation);
	public virtual System.Threading.Tasks.Task<Foundation.NSUrl> WriteImageToSavedPhotosAlbumAsync (CoreGraphics.CGImage imageData, Foundation.NSDictionary metadata);
	public virtual System.Threading.Tasks.Task<Foundation.NSUrl> WriteImageToSavedPhotosAlbumAsync (Foundation.NSData imageData, Foundation.NSDictionary metadata);
	public virtual void WriteVideoToSavedPhotosAlbum (Foundation.NSUrl videoPathURL, System.Action<Foundation.NSUrl,Foundation.NSError> completionBlock);
	public virtual System.Threading.Tasks.Task<Foundation.NSUrl> WriteVideoToSavedPhotosAlbumAsync (Foundation.NSUrl videoPathURL);

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

New Type: AssetsLibrary.ALAssetsLibraryGroupsEnumerationResultsDelegate

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

New Type: AssetsLibrary.ALAuthorizationStatus

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

New Namespace CarPlay

New Type: CarPlay.CPActionSheetTemplate

public class CPActionSheetTemplate : CarPlay.CPTemplate, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CPActionSheetTemplate (Foundation.NSCoder coder);
	protected CPActionSheetTemplate (Foundation.NSObjectFlag t);
	protected CPActionSheetTemplate (IntPtr handle);
	public CPActionSheetTemplate (string title, string message, CPAlertAction[] actions);
	// properties
	public virtual CPAlertAction[] Actions { get; }
	public override IntPtr ClassHandle { get; }
	public virtual string Message { get; }
	public virtual string Title { get; }
}

New Type: CarPlay.CPAlertAction

public class CPAlertAction : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CPAlertAction (Foundation.NSCoder coder);
	protected CPAlertAction (Foundation.NSObjectFlag t);
	protected CPAlertAction (IntPtr handle);
	public CPAlertAction (string title, CPAlertActionStyle style, System.Action<CPAlertAction> handler);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual System.Action<CPAlertAction> Handler { get; }
	public virtual CPAlertActionStyle Style { get; }
	public virtual string Title { get; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: CarPlay.CPAlertActionStyle

[Serializable]
public enum CPAlertActionStyle {
	Cancel = 1,
	Default = 0,
	Destructive = 2,
}

New Type: CarPlay.CPAlertTemplate

public class CPAlertTemplate : CarPlay.CPTemplate, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CPAlertTemplate (Foundation.NSCoder coder);
	protected CPAlertTemplate (Foundation.NSObjectFlag t);
	protected CPAlertTemplate (IntPtr handle);
	public CPAlertTemplate (string[] titleVariants, CPAlertAction[] actions);
	// properties
	public virtual CPAlertAction[] Actions { get; }
	public override IntPtr ClassHandle { get; }
	public static nuint MaximumActionCount { get; }
	public virtual string[] TitleVariants { get; }
}

New Type: CarPlay.CPApplicationDelegate

public abstract class CPApplicationDelegate : Foundation.NSObject, ICPApplicationDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIApplicationDelegate {
	// constructors
	protected CPApplicationDelegate ();
	protected CPApplicationDelegate (Foundation.NSObjectFlag t);
	protected CPApplicationDelegate (IntPtr handle);
	// properties
	public virtual UIKit.UIWindow Window { get; set; }
	// methods
	public virtual bool AccessibilityPerformMagicTap ();
	public virtual void ApplicationSignificantTimeChange (UIKit.UIApplication application);
	public virtual void ChangedStatusBarFrame (UIKit.UIApplication application, CoreGraphics.CGRect oldStatusBarFrame);
	public virtual bool ContinueUserActivity (UIKit.UIApplication application, Foundation.NSUserActivity userActivity, UIKit.UIApplicationRestorationHandler completionHandler);
	public virtual void DidChangeStatusBarOrientation (UIKit.UIApplication application, UIKit.UIInterfaceOrientation oldStatusBarOrientation);
	public virtual void DidConnectCarInterfaceController (UIKit.UIApplication application, CPInterfaceController interfaceController, CPWindow window);
	public virtual void DidDecodeRestorableState (UIKit.UIApplication application, Foundation.NSCoder coder);
	public virtual void DidDiscardSceneSessions (UIKit.UIApplication application, Foundation.NSSet<UIKit.UISceneSession> sceneSessions);
	public virtual void DidDisconnectCarInterfaceController (UIKit.UIApplication application, CPInterfaceController interfaceController, CPWindow window);
	public virtual void DidEnterBackground (UIKit.UIApplication application);
	public virtual void DidFailToContinueUserActivitiy (UIKit.UIApplication application, string userActivityType, Foundation.NSError error);
	public virtual void DidReceiveRemoteNotification (UIKit.UIApplication application, Foundation.NSDictionary userInfo, System.Action<UIKit.UIBackgroundFetchResult> completionHandler);
	public virtual void DidRegisterUserNotificationSettings (UIKit.UIApplication application, UIKit.UIUserNotificationSettings notificationSettings);
	public virtual void DidSelectManeuver (UIKit.UIApplication application, CPManeuver maneuver);
	public virtual void DidSelectNavigationAlert (UIKit.UIApplication application, CPNavigationAlert navigationAlert);
	public virtual void FailedToRegisterForRemoteNotifications (UIKit.UIApplication application, Foundation.NSError error);
	public virtual void FinishedLaunching (UIKit.UIApplication application);
	public virtual bool FinishedLaunching (UIKit.UIApplication application, Foundation.NSDictionary launchOptions);
	public virtual UIKit.UISceneConfiguration GetConfiguration (UIKit.UIApplication application, UIKit.UISceneSession connectingSceneSession, UIKit.UISceneConnectionOptions options);
	public virtual Foundation.NSObject GetHandlerForIntent (UIKit.UIApplication application, Intents.INIntent intent);
	public virtual UIKit.UIInterfaceOrientationMask GetSupportedInterfaceOrientations (UIKit.UIApplication application, UIKit.UIWindow forWindow);
	public virtual UIKit.UIViewController GetViewController (UIKit.UIApplication application, string[] restorationIdentifierComponents, Foundation.NSCoder coder);
	public virtual void HandleAction (UIKit.UIApplication application, string actionIdentifier, Foundation.NSDictionary remoteNotificationInfo, System.Action completionHandler);
	public virtual void HandleAction (UIKit.UIApplication application, string actionIdentifier, UIKit.UILocalNotification localNotification, System.Action completionHandler);
	public virtual void HandleAction (UIKit.UIApplication application, string actionIdentifier, Foundation.NSDictionary remoteNotificationInfo, Foundation.NSDictionary responseInfo, System.Action completionHandler);
	public virtual void HandleAction (UIKit.UIApplication application, string actionIdentifier, UIKit.UILocalNotification localNotification, Foundation.NSDictionary responseInfo, System.Action completionHandler);
	public virtual void HandleEventsForBackgroundUrl (UIKit.UIApplication application, string sessionIdentifier, System.Action completionHandler);
	public virtual void HandleIntent (UIKit.UIApplication application, Intents.INIntent intent, System.Action<Intents.INIntentResponse> completionHandler);
	public virtual bool HandleOpenURL (UIKit.UIApplication application, Foundation.NSUrl url);
	public virtual void HandleWatchKitExtensionRequest (UIKit.UIApplication application, Foundation.NSDictionary userInfo, System.Action<Foundation.NSDictionary> reply);
	public virtual void OnActivated (UIKit.UIApplication application);
	public virtual void OnResignActivation (UIKit.UIApplication application);
	public virtual bool OpenUrl (UIKit.UIApplication app, Foundation.NSUrl url, Foundation.NSDictionary options);
	public bool OpenUrl (UIKit.UIApplication app, Foundation.NSUrl url, UIKit.UIApplicationOpenUrlOptions options);
	public virtual bool OpenUrl (UIKit.UIApplication application, Foundation.NSUrl url, string sourceApplication, Foundation.NSObject annotation);
	public virtual void PerformActionForShortcutItem (UIKit.UIApplication application, UIKit.UIApplicationShortcutItem shortcutItem, UIKit.UIOperationHandler completionHandler);
	public virtual void PerformFetch (UIKit.UIApplication application, System.Action<UIKit.UIBackgroundFetchResult> completionHandler);
	public virtual void ProtectedDataDidBecomeAvailable (UIKit.UIApplication application);
	public virtual void ProtectedDataWillBecomeUnavailable (UIKit.UIApplication application);
	public virtual void ReceiveMemoryWarning (UIKit.UIApplication application);
	public virtual void ReceivedLocalNotification (UIKit.UIApplication application, UIKit.UILocalNotification notification);
	public virtual void ReceivedRemoteNotification (UIKit.UIApplication application, Foundation.NSDictionary userInfo);
	public virtual void RegisteredForRemoteNotifications (UIKit.UIApplication application, Foundation.NSData deviceToken);
	public virtual bool ShouldAllowExtensionPointIdentifier (UIKit.UIApplication application, Foundation.NSString extensionPointIdentifier);
	public virtual void ShouldRequestHealthAuthorization (UIKit.UIApplication application);
	public virtual bool ShouldRestoreApplicationState (UIKit.UIApplication application, Foundation.NSCoder coder);
	public virtual bool ShouldRestoreSecureApplicationState (UIKit.UIApplication application, Foundation.NSCoder coder);
	public virtual bool ShouldSaveApplicationState (UIKit.UIApplication application, Foundation.NSCoder coder);
	public virtual bool ShouldSaveSecureApplicationState (UIKit.UIApplication application, Foundation.NSCoder coder);
	public virtual void UserActivityUpdated (UIKit.UIApplication application, Foundation.NSUserActivity userActivity);
	public virtual void UserDidAcceptCloudKitShare (UIKit.UIApplication application, CloudKit.CKShareMetadata cloudKitShareMetadata);
	public virtual void WillChangeStatusBarFrame (UIKit.UIApplication application, CoreGraphics.CGRect newStatusBarFrame);
	public virtual void WillChangeStatusBarOrientation (UIKit.UIApplication application, UIKit.UIInterfaceOrientation newStatusBarOrientation, double duration);
	public virtual bool WillContinueUserActivity (UIKit.UIApplication application, string userActivityType);
	public virtual void WillEncodeRestorableState (UIKit.UIApplication application, Foundation.NSCoder coder);
	public virtual void WillEnterForeground (UIKit.UIApplication application);
	public virtual bool WillFinishLaunching (UIKit.UIApplication application, Foundation.NSDictionary launchOptions);
	public virtual void WillTerminate (UIKit.UIApplication application);
}

New Type: CarPlay.CPApplicationDelegate_Extensions

public static class CPApplicationDelegate_Extensions {
	// methods
	public static void DidSelectManeuver (this ICPApplicationDelegate This, UIKit.UIApplication application, CPManeuver maneuver);
	public static void DidSelectNavigationAlert (this ICPApplicationDelegate This, UIKit.UIApplication application, CPNavigationAlert navigationAlert);
}

New Type: CarPlay.CPAssistantCellPosition

[Serializable]
public enum CPAssistantCellPosition {
	Bottom = 1,
	Top = 0,
}

New Type: CarPlay.CPAssistantCellVisibility

[Serializable]
public enum CPAssistantCellVisibility {
	Always = 2,
	Off = 0,
	WhileLimitedUIActive = 1,
}

New Type: CarPlay.CPBarButton

public class CPBarButton : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CPBarButton (Foundation.NSCoder coder);
	protected CPBarButton (Foundation.NSObjectFlag t);
	protected CPBarButton (IntPtr handle);
	public CPBarButton (CPBarButtonType type, System.Action<CPBarButton> handler);
	public CPBarButton (string title, CPBarButtonHandler handler);
	public CPBarButton (UIKit.UIImage image, CPBarButtonHandler handler);
	// properties
	public virtual CPBarButtonStyle ButtonStyle { get; set; }
	public virtual CPBarButtonType ButtonType { get; }
	public override IntPtr ClassHandle { get; }
	public virtual bool Enabled { get; set; }
	public virtual UIKit.UIImage Image { get; set; }
	public virtual string Title { get; set; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: CarPlay.CPBarButtonHandler

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

New Type: CarPlay.CPBarButtonProviding_Extensions

public static class CPBarButtonProviding_Extensions {
	// methods
	public static CPBarButton GetBackButton (this ICPBarButtonProviding This);
	public static void SetBackButton (this ICPBarButtonProviding This, CPBarButton value);
}

New Type: CarPlay.CPBarButtonStyle

[Serializable]
public enum CPBarButtonStyle {
	None = 0,
	Rounded = 1,
}

New Type: CarPlay.CPBarButtonType

[Serializable]
public enum CPBarButtonType {
	Image = 1,
	Text = 0,
}

New Type: CarPlay.CPButton

public class CPButton : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected CPButton (Foundation.NSObjectFlag t);
	protected CPButton (IntPtr handle);
	public CPButton (UIKit.UIImage image, System.Action<CPButton> handler);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool Enabled { get; set; }
	public virtual UIKit.UIImage Image { get; }
	public static CoreGraphics.CGSize MaximumImageSize { get; }
	public virtual string Title { get; set; }
}

New Type: CarPlay.CPContact

public class CPContact : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CPContact ();
	public CPContact (Foundation.NSCoder coder);
	protected CPContact (Foundation.NSObjectFlag t);
	protected CPContact (IntPtr handle);
	public CPContact (string name, UIKit.UIImage image);
	// properties
	public virtual CPButton[] Actions { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual UIKit.UIImage Image { get; set; }
	public virtual string InformativeText { get; set; }
	public virtual string Name { get; set; }
	public virtual string Subtitle { get; set; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: CarPlay.CPContactCallButton

public class CPContactCallButton : CarPlay.CPButton, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected CPContactCallButton (Foundation.NSObjectFlag t);
	public CPContactCallButton (System.Action<CPButton> handler);
	protected CPContactCallButton (IntPtr handle);
	public CPContactCallButton (UIKit.UIImage image, System.Action<CPButton> handler);
	// properties
	public override IntPtr ClassHandle { get; }
}

New Type: CarPlay.CPContactDirectionsButton

public class CPContactDirectionsButton : CarPlay.CPButton, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected CPContactDirectionsButton (Foundation.NSObjectFlag t);
	public CPContactDirectionsButton (System.Action<CPButton> handler);
	protected CPContactDirectionsButton (IntPtr handle);
	public CPContactDirectionsButton (UIKit.UIImage image, System.Action<CPButton> handler);
	// properties
	public override IntPtr ClassHandle { get; }
}

New Type: CarPlay.CPContactMessageButton

public class CPContactMessageButton : CarPlay.CPButton, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected CPContactMessageButton (Foundation.NSObjectFlag t);
	protected CPContactMessageButton (IntPtr handle);
	public CPContactMessageButton (string phoneOrEmail);
	public CPContactMessageButton (UIKit.UIImage image, System.Action<CPButton> handler);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string PhoneOrEmail { get; }
}

New Type: CarPlay.CPContactTemplate

public class CPContactTemplate : CarPlay.CPTemplate, ICPBarButtonProviding, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CPContactTemplate (CPContact contact);
	public CPContactTemplate (Foundation.NSCoder coder);
	protected CPContactTemplate (Foundation.NSObjectFlag t);
	protected CPContactTemplate (IntPtr handle);
	// properties
	public virtual CPBarButton BackButton { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual CPContact Contact { get; set; }
	public virtual CPBarButton[] LeadingNavigationBarButtons { get; set; }
	public virtual CPBarButton[] TrailingNavigationBarButtons { get; set; }
}

New Type: CarPlay.CPContentStyle

[Serializable]
public enum CPContentStyle {
	Dark = 2,
	Light = 1,
}

New Type: CarPlay.CPDashboardButton

public class CPDashboardButton : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CPDashboardButton (Foundation.NSCoder coder);
	protected CPDashboardButton (Foundation.NSObjectFlag t);
	protected CPDashboardButton (IntPtr handle);
	public CPDashboardButton (string[] titleVariants, string[] subtitleVariants, UIKit.UIImage image, System.Action<CPDashboardButton> handler);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual UIKit.UIImage Image { get; }
	public virtual string[] SubtitleVariants { get; }
	public virtual string[] TitleVariants { get; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: CarPlay.CPDashboardController

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

New Type: CarPlay.CPEntity

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

New Type: CarPlay.CPGridButton

public class CPGridButton : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CPGridButton (Foundation.NSCoder coder);
	protected CPGridButton (Foundation.NSObjectFlag t);
	protected CPGridButton (IntPtr handle);
	public CPGridButton (string[] titleVariants, UIKit.UIImage image, System.Action<CPGridButton> handler);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool Enabled { get; set; }
	public virtual UIKit.UIImage Image { get; }
	public virtual string[] TitleVariants { get; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: CarPlay.CPGridTemplate

public class CPGridTemplate : CarPlay.CPTemplate, ICPBarButtonProviding, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CPGridTemplate (Foundation.NSCoder coder);
	protected CPGridTemplate (Foundation.NSObjectFlag t);
	protected CPGridTemplate (IntPtr handle);
	public CPGridTemplate (string title, CPGridButton[] gridButtons);
	// properties
	public virtual CPBarButton BackButton { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual CPGridButton[] GridButtons { get; }
	public virtual CPBarButton[] LeadingNavigationBarButtons { get; set; }
	public static nuint MaximumItems { get; }
	public virtual string Title { get; }
	public virtual CPBarButton[] TrailingNavigationBarButtons { get; set; }
	// methods
	public virtual void UpdateGridButtons (CPGridButton[] gridButtons);
	public virtual void UpdateTitle (string title);
}

New Type: CarPlay.CPImageSet

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

New Type: CarPlay.CPInformationItem

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

New Type: CarPlay.CPInformationRatingItem

public class CPInformationRatingItem : CarPlay.CPInformationItem, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CPInformationRatingItem (Foundation.NSCoder coder);
	protected CPInformationRatingItem (Foundation.NSObjectFlag t);
	protected CPInformationRatingItem (IntPtr handle);
	public CPInformationRatingItem (Foundation.NSNumber rating, Foundation.NSNumber maximumRating, string title, string detail);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSNumber MaximumRating { get; }
	public virtual Foundation.NSNumber Rating { get; }
}

New Type: CarPlay.CPInformationTemplate

public class CPInformationTemplate : CarPlay.CPTemplate, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CPInformationTemplate (Foundation.NSCoder coder);
	protected CPInformationTemplate (Foundation.NSObjectFlag t);
	protected CPInformationTemplate (IntPtr handle);
	public CPInformationTemplate (string title, CPInformationTemplateLayout layout, CPInformationItem[] items, CPTextButton[] actions);
	// properties
	public virtual CPTextButton[] Actions { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual CPInformationItem[] Items { get; set; }
	public virtual CPInformationTemplateLayout Layout { get; }
	public virtual string Title { get; set; }
}

New Type: CarPlay.CPInformationTemplateLayout

[Serializable]
public enum CPInformationTemplateLayout {
	Leading = 0,
	TwoColumn = 1,
}

New Type: CarPlay.CPInterfaceController

public class CPInterfaceController : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected CPInterfaceController (Foundation.NSObjectFlag t);
	protected CPInterfaceController (IntPtr handle);
	// properties
	public virtual UIKit.UITraitCollection CarTraitCollection { get; }
	public override IntPtr ClassHandle { get; }
	public ICPInterfaceControllerDelegate Delegate { get; set; }
	public virtual bool PrefersDarkUserInterfaceStyle { get; set; }
	public virtual CPTemplate PresentedTemplate { get; }
	public virtual CPTemplate RootTemplate { get; }
	public virtual CPTemplate[] Templates { get; }
	public virtual CPTemplate TopTemplate { get; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	public virtual void DismissTemplate (bool animated);
	public virtual void DismissTemplate (bool animated, System.Action<System.Boolean,Foundation.NSError> completion);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> DismissTemplateAsync (bool animated);
	protected override void Dispose (bool disposing);
	public virtual void PopTemplate (bool animated);
	public virtual void PopTemplate (bool animated, System.Action<System.Boolean,Foundation.NSError> completion);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> PopTemplateAsync (bool animated);
	public virtual void PopToRootTemplate (bool animated);
	public virtual void PopToRootTemplate (bool animated, System.Action<System.Boolean,Foundation.NSError> completion);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> PopToRootTemplateAsync (bool animated);
	public virtual void PopToTemplate (CPTemplate targetTemplate, bool animated);
	public virtual void PopToTemplate (CPTemplate targetTemplate, bool animated, System.Action<System.Boolean,Foundation.NSError> completion);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> PopToTemplateAsync (CPTemplate targetTemplate, bool animated);
	public virtual void PresentTemplate (CPTemplate templateToPresent, bool animated);
	public virtual void PresentTemplate (CPTemplate templateToPresent, bool animated, System.Action<System.Boolean,Foundation.NSError> completion);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> PresentTemplateAsync (CPTemplate templateToPresent, bool animated);
	public virtual void PushTemplate (CPTemplate templateToPush, bool animated);
	public virtual void PushTemplate (CPTemplate templateToPush, bool animated, System.Action<System.Boolean,Foundation.NSError> completion);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> PushTemplateAsync (CPTemplate templateToPush, bool animated);
	public virtual void SetRootTemplate (CPTemplate rootTemplate, bool animated);
	public virtual void SetRootTemplate (CPTemplate rootTemplate, bool animated, System.Action<System.Boolean,Foundation.NSError> completion);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> SetRootTemplateAsync (CPTemplate rootTemplate, bool animated);
}

New Type: CarPlay.CPInterfaceControllerDelegate

public class CPInterfaceControllerDelegate : Foundation.NSObject, ICPInterfaceControllerDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CPInterfaceControllerDelegate ();
	protected CPInterfaceControllerDelegate (Foundation.NSObjectFlag t);
	protected CPInterfaceControllerDelegate (IntPtr handle);
	// methods
	public virtual void TemplateDidAppear (CPTemplate aTemplate, bool animated);
	public virtual void TemplateDidDisappear (CPTemplate aTemplate, bool animated);
	public virtual void TemplateWillAppear (CPTemplate aTemplate, bool animated);
	public virtual void TemplateWillDisappear (CPTemplate aTemplate, bool animated);
}

New Type: CarPlay.CPInterfaceControllerDelegate_Extensions

public static class CPInterfaceControllerDelegate_Extensions {
	// methods
	public static void TemplateDidAppear (this ICPInterfaceControllerDelegate This, CPTemplate aTemplate, bool animated);
	public static void TemplateDidDisappear (this ICPInterfaceControllerDelegate This, CPTemplate aTemplate, bool animated);
	public static void TemplateWillAppear (this ICPInterfaceControllerDelegate This, CPTemplate aTemplate, bool animated);
	public static void TemplateWillDisappear (this ICPInterfaceControllerDelegate This, CPTemplate aTemplate, bool animated);
}

New Type: CarPlay.CPLimitableUserInterface

[Serializable]
public enum CPLimitableUserInterface {
	Keyboard = 1,
	Lists = 2,
}

New Type: CarPlay.CPListImageRowItem

public class CPListImageRowItem : Foundation.NSObject, ICPListTemplateItem, ICPSelectableListItem, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected CPListImageRowItem (Foundation.NSObjectFlag t);
	protected CPListImageRowItem (IntPtr handle);
	public CPListImageRowItem (string text, UIKit.UIImage[] images);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool Enabled { get; set; }
	public virtual UIKit.UIImage[] GridImages { get; }
	public virtual CPSelectableListItemHandler Handler { get; set; }
	public virtual CPListImageRowItemHandler ListImageRowHandler { get; set; }
	public static CoreGraphics.CGSize MaximumImageSize { get; }
	public static nuint MaximumNumberOfGridImages { get; }
	public virtual string Text { get; set; }
	public virtual Foundation.NSObject UserInfo { get; set; }
	// methods
	public virtual void UpdateImages (UIKit.UIImage[] gridImages);
}

New Type: CarPlay.CPListImageRowItemHandler

public sealed delegate CPListImageRowItemHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public CPListImageRowItemHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (CPListImageRowItem item, nint index, System.Action completionBlock, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (CPListImageRowItem item, nint index, System.Action completionBlock);
}

New Type: CarPlay.CPListItem

public class CPListItem : Foundation.NSObject, ICPListTemplateItem, ICPSelectableListItem, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CPListItem (Foundation.NSCoder coder);
	protected CPListItem (Foundation.NSObjectFlag t);
	protected CPListItem (IntPtr handle);
	public CPListItem (string text, string detailText);
	public CPListItem (string text, string detailText, UIKit.UIImage image);
	public CPListItem (string text, string detailText, UIKit.UIImage image, bool showsDisclosureIndicator);
	public CPListItem (string text, string detailText, UIKit.UIImage image, UIKit.UIImage accessoryImage, CPListItemAccessoryType accessoryType);
	// properties
	public virtual UIKit.UIImage AccessoryImage { get; }
	public virtual CPListItemAccessoryType AccessoryType { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual string DetailText { get; }
	public virtual bool Enabled { get; set; }
	public virtual CPSelectableListItemHandler Handler { get; set; }
	public virtual UIKit.UIImage Image { get; }
	public virtual bool IsExplicitContent { get; set; }
	public virtual bool IsPlaying { get; set; }
	public static CoreGraphics.CGSize MaximumImageSize { get; }
	public static CoreGraphics.CGSize MaximumListItemImageSize { get; }
	public virtual nfloat PlaybackProgress { get; set; }
	public virtual CPListItemPlayingIndicatorLocation PlayingIndicatorLocation { get; set; }
	public virtual bool ShowsDisclosureIndicator { get; }
	public virtual string Text { get; }
	public virtual Foundation.NSObject UserInfo { get; set; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public virtual void SetAccessoryImage (UIKit.UIImage accessoryImage);
	public virtual void SetDetailText (string detailText);
	public virtual void SetImage (UIKit.UIImage image);
	public virtual void SetText (string text);
}

New Type: CarPlay.CPListItemAccessoryType

[Serializable]
public enum CPListItemAccessoryType {
	Cloud = 2,
	DisclosureIndicator = 1,
	None = 0,
}

New Type: CarPlay.CPListItemPlayingIndicatorLocation

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

New Type: CarPlay.CPListSection

public class CPListSection : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CPListSection (CPListItem[] items);
	public CPListSection (Foundation.NSCoder coder);
	protected CPListSection (Foundation.NSObjectFlag t);
	protected CPListSection (IntPtr handle);
	public CPListSection (CPListItem[] items, string header, string sectionIndexTitle);
	public CPListSection (ICPListTemplateItem[] items, string header, string headerSubtitle, UIKit.UIImage headerImage, CPButton headerButton, string sectionIndexTitle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string Header { get; }
	public virtual CPButton HeaderButton { get; }
	public virtual UIKit.UIImage HeaderImage { get; }
	public virtual string HeaderSubtitle { get; }
	public virtual CPListItem[] Items { get; }
	public static CoreGraphics.CGSize MaximumImageSize { get; }
	public virtual string SectionIndexTitle { get; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public virtual nuint GetIndex (ICPListTemplateItem item);
	public virtual ICPListTemplateItem GetItem (nuint index);
}

New Type: CarPlay.CPListTemplate

public class CPListTemplate : CarPlay.CPTemplate, ICPBarButtonProviding, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CPListTemplate (Foundation.NSCoder coder);
	protected CPListTemplate (Foundation.NSObjectFlag t);
	protected CPListTemplate (IntPtr handle);
	public CPListTemplate (string title, CPListSection[] sections);
	public CPListTemplate (string title, CPListSection[] sections, CPAssistantCellVisibility visibility, CPAssistantCellPosition position);
	// properties
	public virtual CPAssistantCellPosition AssistantCellPosition { get; set; }
	public virtual CPAssistantCellVisibility AssistantCellVisibility { get; set; }
	public virtual CPBarButton BackButton { get; set; }
	public override IntPtr ClassHandle { get; }
	public ICPListTemplateDelegate Delegate { get; set; }
	public virtual string[] EmptyViewSubtitleVariants { get; set; }
	public virtual string[] EmptyViewTitleVariants { get; set; }
	public virtual nuint ItemCount { get; }
	public virtual CPBarButton[] LeadingNavigationBarButtons { get; set; }
	public static nuint MaximumItemCount { get; }
	public static nuint MaximumSectionCount { get; }
	public virtual nuint SectionCount { get; }
	public virtual CPListSection[] Sections { get; }
	public virtual string Title { get; }
	public virtual CPBarButton[] TrailingNavigationBarButtons { get; set; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	protected override void Dispose (bool disposing);
	public virtual Foundation.NSIndexPath GetIndexPath (ICPListTemplateItem item);
	public virtual void UpdateSections (CPListSection[] sections);
}

New Type: CarPlay.CPListTemplateDelegate

public abstract class CPListTemplateDelegate : Foundation.NSObject, ICPListTemplateDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected CPListTemplateDelegate ();
	protected CPListTemplateDelegate (Foundation.NSObjectFlag t);
	protected CPListTemplateDelegate (IntPtr handle);
	// methods
	public virtual void DidSelectListItem (CPListTemplate listTemplate, CPListItem item, System.Action completionHandler);
}

New Type: CarPlay.CPListTemplateItem_Extensions

public static class CPListTemplateItem_Extensions {
	// methods
	public static bool GetEnabled (this ICPListTemplateItem This);
	public static void SetEnabled (this ICPListTemplateItem This, bool value);
}

New Type: CarPlay.CPManeuver

public class CPManeuver : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CPManeuver ();
	public CPManeuver (Foundation.NSCoder coder);
	protected CPManeuver (Foundation.NSObjectFlag t);
	protected CPManeuver (IntPtr handle);
	// properties
	public virtual Foundation.NSAttributedString[] AttributedInstructionVariants { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSAttributedString[] DashboardAttributedInstructionVariants { get; set; }
	public virtual string[] DashboardInstructionVariants { get; set; }
	public virtual UIKit.UIImage DashboardJunctionImage { get; set; }
	public virtual UIKit.UIImage DashboardSymbolImage { get; set; }
	public virtual CPTravelEstimates InitialTravelEstimates { get; set; }
	public virtual string[] InstructionVariants { get; set; }
	public virtual UIKit.UIImage JunctionImage { get; set; }
	public virtual Foundation.NSAttributedString[] NotificationAttributedInstructionVariants { get; set; }
	public virtual string[] NotificationInstructionVariants { get; set; }
	public virtual UIKit.UIImage NotificationSymbolImage { get; set; }
	public virtual UIKit.UIImage SymbolImage { get; set; }
	public virtual CPImageSet SymbolSet { get; set; }
	public virtual Foundation.NSObject UserInfo { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: CarPlay.CPManeuverDisplayStyle

[Serializable]
public enum CPManeuverDisplayStyle {
	Default = 0,
	InstructionOnly = 4,
	LeadingSymbol = 1,
	SymbolOnly = 3,
	TrailingSymbol = 2,
}

New Type: CarPlay.CPMapButton

public class CPMapButton : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CPMapButton (Foundation.NSCoder coder);
	protected CPMapButton (Foundation.NSObjectFlag t);
	public CPMapButton (System.Action<CPMapButton> handler);
	protected CPMapButton (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool Enabled { get; set; }
	public virtual UIKit.UIImage FocusedImage { get; set; }
	public virtual bool Hidden { get; set; }
	public virtual UIKit.UIImage Image { get; set; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: CarPlay.CPMapTemplate

public class CPMapTemplate : CarPlay.CPTemplate, ICPBarButtonProviding, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CPMapTemplate (Foundation.NSCoder coder);
	protected CPMapTemplate (Foundation.NSObjectFlag t);
	protected CPMapTemplate (IntPtr handle);
	// properties
	public virtual bool AutomaticallyHidesNavigationBar { get; set; }
	public virtual CPBarButton BackButton { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual CPNavigationAlert CurrentNavigationAlert { get; }
	public virtual UIKit.UIColor GuidanceBackgroundColor { get; set; }
	public virtual bool HidesButtonsWithNavigationBar { get; set; }
	public virtual CPBarButton[] LeadingNavigationBarButtons { get; set; }
	public virtual CPMapButton[] MapButtons { get; set; }
	public ICPMapTemplateDelegate MapDelegate { get; set; }
	public virtual bool PanningInterfaceVisible { get; }
	public virtual CPBarButton[] TrailingNavigationBarButtons { get; set; }
	public virtual CPTripEstimateStyle TripEstimateStyle { get; set; }
	public virtual Foundation.NSObject WeakMapDelegate { get; set; }
	// methods
	public virtual void DismissNavigationAlert (bool animated, System.Action<bool> completion);
	public virtual System.Threading.Tasks.Task<bool> DismissNavigationAlertAsync (bool animated);
	public virtual void DismissPanningInterface (bool animated);
	protected override void Dispose (bool disposing);
	public virtual void HideTripPreviews ();
	public virtual void PresentNavigationAlert (CPNavigationAlert navigationAlert, bool animated);
	public virtual void ShowPanningInterface (bool animated);
	public virtual void ShowRouteChoicesPreview (CPTrip tripPreview, CPTripPreviewTextConfiguration textConfiguration);
	public virtual void ShowTripPreviews (CPTrip[] tripPreviews, CPTripPreviewTextConfiguration textConfiguration);
	public virtual void ShowTripPreviews (CPTrip[] tripPreviews, CPTrip selectedTrip, CPTripPreviewTextConfiguration textConfiguration);
	public virtual CPNavigationSession StartNavigationSession (CPTrip trip);
	public virtual void UpdateTravelEstimates (CPTravelEstimates estimates, CPTrip trip);
	public virtual void UpdateTravelEstimates (CPTravelEstimates estimates, CPTrip trip, CPTimeRemainingColor timeRemainingColor);
}

New Type: CarPlay.CPMapTemplateDelegate

public class CPMapTemplateDelegate : Foundation.NSObject, ICPMapTemplateDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CPMapTemplateDelegate ();
	protected CPMapTemplateDelegate (Foundation.NSObjectFlag t);
	protected CPMapTemplateDelegate (IntPtr handle);
	// methods
	public virtual void DidBeginPanGesture (CPMapTemplate mapTemplate);
	public virtual void DidCancelNavigation (CPMapTemplate mapTemplate);
	public virtual void DidDismissNavigationAlert (CPMapTemplate mapTemplate, CPNavigationAlert navigationAlert, CPNavigationAlertDismissalContext dismissalContext);
	public virtual void DidDismissPanningInterface (CPMapTemplate mapTemplate);
	public virtual void DidEndPanGesture (CPMapTemplate mapTemplate, CoreGraphics.CGPoint velocity);
	public virtual void DidShowNavigationAlert (CPMapTemplate mapTemplate, CPNavigationAlert navigationAlert);
	public virtual void DidShowPanningInterface (CPMapTemplate mapTemplate);
	public virtual void DidUpdatePanGesture (CPMapTemplate mapTemplate, CoreGraphics.CGPoint translation, CoreGraphics.CGPoint velocity);
	public virtual CPManeuverDisplayStyle GetDisplayStyle (CPMapTemplate mapTemplate, CPManeuver maneuver);
	public virtual void Pan (CPMapTemplate mapTemplate, CPPanDirection direction);
	public virtual void PanBegan (CPMapTemplate mapTemplate, CPPanDirection direction);
	public virtual void PanEnded (CPMapTemplate mapTemplate, CPPanDirection direction);
	public virtual void SelectedPreview (CPMapTemplate mapTemplate, CPTrip trip, CPRouteChoice routeChoice);
	public virtual bool ShouldShowNotificationForManeuver (CPMapTemplate mapTemplate, CPManeuver maneuver);
	public virtual bool ShouldShowNotificationForNavigationAlert (CPMapTemplate mapTemplate, CPNavigationAlert navigationAlert);
	public virtual bool ShouldUpdateNotificationForManeuver (CPMapTemplate mapTemplate, CPManeuver maneuver, CPTravelEstimates travelEstimates);
	public virtual void StartedTrip (CPMapTemplate mapTemplate, CPTrip trip, CPRouteChoice routeChoice);
	public virtual void WillDismissNavigationAlert (CPMapTemplate mapTemplate, CPNavigationAlert navigationAlert, CPNavigationAlertDismissalContext dismissalContext);
	public virtual void WillDismissPanningInterface (CPMapTemplate mapTemplate);
	public virtual void WillShowNavigationAlert (CPMapTemplate mapTemplate, CPNavigationAlert navigationAlert);
}

New Type: CarPlay.CPMapTemplateDelegate_Extensions

public static class CPMapTemplateDelegate_Extensions {
	// methods
	public static void DidBeginPanGesture (this ICPMapTemplateDelegate This, CPMapTemplate mapTemplate);
	public static void DidCancelNavigation (this ICPMapTemplateDelegate This, CPMapTemplate mapTemplate);
	public static void DidDismissNavigationAlert (this ICPMapTemplateDelegate This, CPMapTemplate mapTemplate, CPNavigationAlert navigationAlert, CPNavigationAlertDismissalContext dismissalContext);
	public static void DidDismissPanningInterface (this ICPMapTemplateDelegate This, CPMapTemplate mapTemplate);
	public static void DidEndPanGesture (this ICPMapTemplateDelegate This, CPMapTemplate mapTemplate, CoreGraphics.CGPoint velocity);
	public static void DidShowNavigationAlert (this ICPMapTemplateDelegate This, CPMapTemplate mapTemplate, CPNavigationAlert navigationAlert);
	public static void DidShowPanningInterface (this ICPMapTemplateDelegate This, CPMapTemplate mapTemplate);
	public static void DidUpdatePanGesture (this ICPMapTemplateDelegate This, CPMapTemplate mapTemplate, CoreGraphics.CGPoint translation, CoreGraphics.CGPoint velocity);
	public static CPManeuverDisplayStyle GetDisplayStyle (this ICPMapTemplateDelegate This, CPMapTemplate mapTemplate, CPManeuver maneuver);
	public static void Pan (this ICPMapTemplateDelegate This, CPMapTemplate mapTemplate, CPPanDirection direction);
	public static void PanBegan (this ICPMapTemplateDelegate This, CPMapTemplate mapTemplate, CPPanDirection direction);
	public static void PanEnded (this ICPMapTemplateDelegate This, CPMapTemplate mapTemplate, CPPanDirection direction);
	public static void SelectedPreview (this ICPMapTemplateDelegate This, CPMapTemplate mapTemplate, CPTrip trip, CPRouteChoice routeChoice);
	public static bool ShouldShowNotificationForManeuver (this ICPMapTemplateDelegate This, CPMapTemplate mapTemplate, CPManeuver maneuver);
	public static bool ShouldShowNotificationForNavigationAlert (this ICPMapTemplateDelegate This, CPMapTemplate mapTemplate, CPNavigationAlert navigationAlert);
	public static bool ShouldUpdateNotificationForManeuver (this ICPMapTemplateDelegate This, CPMapTemplate mapTemplate, CPManeuver maneuver, CPTravelEstimates travelEstimates);
	public static void StartedTrip (this ICPMapTemplateDelegate This, CPMapTemplate mapTemplate, CPTrip trip, CPRouteChoice routeChoice);
	public static void WillDismissNavigationAlert (this ICPMapTemplateDelegate This, CPMapTemplate mapTemplate, CPNavigationAlert navigationAlert, CPNavigationAlertDismissalContext dismissalContext);
	public static void WillDismissPanningInterface (this ICPMapTemplateDelegate This, CPMapTemplate mapTemplate);
	public static void WillShowNavigationAlert (this ICPMapTemplateDelegate This, CPMapTemplate mapTemplate, CPNavigationAlert navigationAlert);
}

New Type: CarPlay.CPMessageComposeBarButton

public class CPMessageComposeBarButton : CarPlay.CPBarButton, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CPMessageComposeBarButton ();
	public CPMessageComposeBarButton (Foundation.NSCoder coder);
	protected CPMessageComposeBarButton (Foundation.NSObjectFlag t);
	protected CPMessageComposeBarButton (IntPtr handle);
	public CPMessageComposeBarButton (UIKit.UIImage image);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public static CPMessageComposeBarButton Create ();
}

New Type: CarPlay.CPMessageLeadingItem

[Serializable]
public enum CPMessageLeadingItem {
	None = 0,
	Pin = 1,
	Star = 2,
}

New Type: CarPlay.CPMessageListItem

public class CPMessageListItem : Foundation.NSObject, ICPListTemplateItem, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CPMessageListItem ();
	protected CPMessageListItem (Foundation.NSObjectFlag t);
	protected CPMessageListItem (IntPtr handle);
	public CPMessageListItem (string identifier, string text, CPMessageListItemLeadingConfiguration leadingConfiguration, CPMessageListItemTrailingConfiguration trailingConfiguration, string detailText, string trailingText);
	public CPMessageListItem (string identifier, string text, CPMessageListItemLeadingConfiguration leadingConfiguration, CPMessageListItemTrailingConfiguration trailingConfiguration, string detailText, string trailingText, CPMessageListItemType type);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string ConversationIdentifier { get; set; }
	public virtual string DetailText { get; set; }
	public virtual bool Enabled { get; set; }
	public virtual CPMessageListItemLeadingConfiguration LeadingConfiguration { get; set; }
	public static CoreGraphics.CGSize MaximumMessageItemImageSize { get; }
	public virtual string PhoneOrEmailAddress { get; set; }
	public virtual string Text { get; set; }
	public virtual CPMessageListItemTrailingConfiguration TrailingConfiguration { get; set; }
	public virtual string TrailingText { get; set; }
	public virtual Foundation.NSObject UserInfo { get; set; }
}

New Type: CarPlay.CPMessageListItemLeadingConfiguration

public class CPMessageListItemLeadingConfiguration : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected CPMessageListItemLeadingConfiguration (Foundation.NSObjectFlag t);
	protected CPMessageListItemLeadingConfiguration (IntPtr handle);
	public CPMessageListItemLeadingConfiguration (CPMessageLeadingItem leadingItem, UIKit.UIImage leadingImage, bool unread);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual UIKit.UIImage LeadingImage { get; }
	public virtual CPMessageLeadingItem LeadingItem { get; }
	public virtual bool Unread { get; }
}

New Type: CarPlay.CPMessageListItemTrailingConfiguration

public class CPMessageListItemTrailingConfiguration : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected CPMessageListItemTrailingConfiguration (Foundation.NSObjectFlag t);
	protected CPMessageListItemTrailingConfiguration (IntPtr handle);
	public CPMessageListItemTrailingConfiguration (CPMessageTrailingItem trailingItem, UIKit.UIImage trailingImage);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual UIKit.UIImage TrailingImage { get; }
	public virtual CPMessageTrailingItem TrailingItem { get; }
}

New Type: CarPlay.CPMessageListItemType

[Serializable]
public enum CPMessageListItemType {
	FullName = 1,
	Identifier = 0,
}

New Type: CarPlay.CPMessageTrailingItem

[Serializable]
public enum CPMessageTrailingItem {
	Mute = 1,
	None = 0,
}

New Type: CarPlay.CPNavigationAlert

public class CPNavigationAlert : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CPNavigationAlert (Foundation.NSCoder coder);
	protected CPNavigationAlert (Foundation.NSObjectFlag t);
	protected CPNavigationAlert (IntPtr handle);
	public CPNavigationAlert (string[] titleVariants, string[] subtitleVariants, CPImageSet imageSet, CPAlertAction primaryAction, CPAlertAction secondaryAction, double duration);
	public CPNavigationAlert (string[] titleVariants, string[] subtitleVariants, UIKit.UIImage image, CPAlertAction primaryAction, CPAlertAction secondaryAction, double duration);
	// fields
	public static const double MinimumDuration;
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual double Duration { get; }
	public virtual UIKit.UIImage Image { get; }
	public virtual CPImageSet ImageSet { get; }
	public virtual CPAlertAction PrimaryAction { get; }
	public virtual CPAlertAction SecondaryAction { get; }
	public virtual string[] SubtitleVariants { get; }
	public virtual string[] TitleVariants { get; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public virtual void UpdateTitleVariants (string[] newTitleVariants, string[] newSubtitleVariants);
}

New Type: CarPlay.CPNavigationAlertDismissalContext

[Serializable]
public enum CPNavigationAlertDismissalContext {
	SystemDismissed = 2,
	Timeout = 0,
	UserDismissed = 1,
}

New Type: CarPlay.CPNavigationSession

public class CPNavigationSession : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected CPNavigationSession (Foundation.NSObjectFlag t);
	protected CPNavigationSession (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual CPTrip Trip { get; }
	public virtual CPManeuver[] UpcomingManeuvers { get; set; }
	// methods
	public virtual void CancelTrip ();
	public virtual void FinishTrip ();
	public virtual void PauseTrip (CPTripPauseReason reason, string description);
	public virtual void UpdateTravelEstimates (CPTravelEstimates estimates, CPManeuver maneuver);
}

New Type: CarPlay.CPNowPlayingAddToLibraryButton

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

New Type: CarPlay.CPNowPlayingButton

public class CPNowPlayingButton : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CPNowPlayingButton (Foundation.NSCoder coder);
	protected CPNowPlayingButton (Foundation.NSObjectFlag t);
	public CPNowPlayingButton (System.Action<CPNowPlayingButton> handler);
	protected CPNowPlayingButton (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool Enabled { get; set; }
	public static CoreGraphics.CGSize MaximumImageSize { get; }
	public virtual bool Selected { get; set; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: CarPlay.CPNowPlayingImageButton

public class CPNowPlayingImageButton : CarPlay.CPNowPlayingButton, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CPNowPlayingImageButton (Foundation.NSCoder coder);
	protected CPNowPlayingImageButton (Foundation.NSObjectFlag t);
	protected CPNowPlayingImageButton (IntPtr handle);
	public CPNowPlayingImageButton (UIKit.UIImage image, System.Action<CPNowPlayingButton> handler);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual UIKit.UIImage Image { get; }
}

New Type: CarPlay.CPNowPlayingMoreButton

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

New Type: CarPlay.CPNowPlayingPlaybackRateButton

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

New Type: CarPlay.CPNowPlayingRepeatButton

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

New Type: CarPlay.CPNowPlayingShuffleButton

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

New Type: CarPlay.CPNowPlayingTemplate

public class CPNowPlayingTemplate : CarPlay.CPTemplate, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CPNowPlayingTemplate (Foundation.NSCoder coder);
	protected CPNowPlayingTemplate (Foundation.NSObjectFlag t);
	protected CPNowPlayingTemplate (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool IsAlbumArtistButtonEnabled { get; set; }
	public virtual bool IsUpNextButtonEnabled { get; set; }
	public virtual CPNowPlayingButton[] NowPlayingButtons { get; }
	public static CPNowPlayingTemplate SharedTemplate { get; }
	public virtual string UpNextTitle { get; set; }
	// methods
	public virtual void AddObserver (ICPNowPlayingTemplateObserver observer);
	public virtual void RemoveObserver (ICPNowPlayingTemplateObserver observer);
	public virtual void UpdateNowPlayingButtons (CPNowPlayingButton[] nowPlayingButtons);
}

New Type: CarPlay.CPNowPlayingTemplateObserver_Extensions

public static class CPNowPlayingTemplateObserver_Extensions {
	// methods
	public static void AlbumArtistButtonTapped (this ICPNowPlayingTemplateObserver This, CPNowPlayingTemplate nowPlayingTemplate);
	public static void UpNextButtonTapped (this ICPNowPlayingTemplateObserver This, CPNowPlayingTemplate nowPlayingTemplate);
}

New Type: CarPlay.CPPanDirection

[Serializable]
public enum CPPanDirection {
	Down = 8,
	Left = 1,
	None = 0,
	Right = 2,
	Up = 4,
}

New Type: CarPlay.CPPointOfInterest

public class CPPointOfInterest : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CPPointOfInterest (Foundation.NSCoder coder);
	protected CPPointOfInterest (Foundation.NSObjectFlag t);
	protected CPPointOfInterest (IntPtr handle);
	public CPPointOfInterest (MapKit.MKMapItem location, string title, string subtitle, string summary, string detailTitle, string detailSubtitle, string detailSummary, UIKit.UIImage pinImage);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string DetailSubtitle { get; set; }
	public virtual string DetailSummary { get; set; }
	public virtual string DetailTitle { get; set; }
	public virtual MapKit.MKMapItem Location { get; set; }
	public virtual UIKit.UIImage PinImage { get; set; }
	public virtual CPTextButton PrimaryButton { get; set; }
	public virtual CPTextButton SecondaryButton { get; set; }
	public virtual string Subtitle { get; set; }
	public virtual string Summary { get; set; }
	public virtual string Title { get; set; }
	public virtual Foundation.NSObject UserInfo { get; set; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: CarPlay.CPPointOfInterestTemplate

public class CPPointOfInterestTemplate : CarPlay.CPTemplate, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CPPointOfInterestTemplate (Foundation.NSCoder coder);
	protected CPPointOfInterestTemplate (Foundation.NSObjectFlag t);
	protected CPPointOfInterestTemplate (IntPtr handle);
	public CPPointOfInterestTemplate (string title, CPPointOfInterest[] pointsOfInterest, nint selectedIndex);
	// properties
	public override IntPtr ClassHandle { get; }
	public ICPPointOfInterestTemplateDelegate PointOfInterestDelegate { get; set; }
	public virtual CPPointOfInterest[] PointsOfInterest { get; }
	public virtual nint SelectedIndex { get; set; }
	public virtual string Title { get; set; }
	public virtual Foundation.NSObject WeakPointOfInterestDelegate { get; set; }
	// methods
	protected override void Dispose (bool disposing);
	public virtual void SetPointsOfInterest (CPPointOfInterest[] pointsOfInterest, nint selectedIndex);
}

New Type: CarPlay.CPPointOfInterestTemplateDelegate

public abstract class CPPointOfInterestTemplateDelegate : Foundation.NSObject, ICPPointOfInterestTemplateDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected CPPointOfInterestTemplateDelegate ();
	protected CPPointOfInterestTemplateDelegate (Foundation.NSObjectFlag t);
	protected CPPointOfInterestTemplateDelegate (IntPtr handle);
	// methods
	public virtual void DidChangeMapRegion (CPPointOfInterestTemplate pointOfInterestTemplate, MapKit.MKCoordinateRegion region);
	public virtual void DidSelectPointOfInterest (CPPointOfInterestTemplate pointOfInterestTemplate, CPPointOfInterest pointOfInterest);
}

New Type: CarPlay.CPPointOfInterestTemplateDelegate_Extensions

public static class CPPointOfInterestTemplateDelegate_Extensions {
	// methods
	public static void DidSelectPointOfInterest (this ICPPointOfInterestTemplateDelegate This, CPPointOfInterestTemplate pointOfInterestTemplate, CPPointOfInterest pointOfInterest);
}

New Type: CarPlay.CPRouteChoice

public class CPRouteChoice : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CPRouteChoice (Foundation.NSCoder coder);
	protected CPRouteChoice (Foundation.NSObjectFlag t);
	protected CPRouteChoice (IntPtr handle);
	public CPRouteChoice (string[] summaryVariants, string[] additionalInformationVariants, string[] selectionSummaryVariants);
	// properties
	public virtual string[] AdditionalInformationVariants { get; }
	public override IntPtr ClassHandle { get; }
	public virtual string[] SelectionSummaryVariants { get; }
	public virtual string[] SummaryVariants { get; }
	public virtual Foundation.NSObject UserInfo { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: CarPlay.CPSearchTemplate

public class CPSearchTemplate : CarPlay.CPTemplate, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CPSearchTemplate ();
	public CPSearchTemplate (Foundation.NSCoder coder);
	protected CPSearchTemplate (Foundation.NSObjectFlag t);
	protected CPSearchTemplate (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public ICPSearchTemplateDelegate Delegate { get; set; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	protected override void Dispose (bool disposing);
}

New Type: CarPlay.CPSearchTemplateDelegate

public abstract class CPSearchTemplateDelegate : Foundation.NSObject, ICPSearchTemplateDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected CPSearchTemplateDelegate ();
	protected CPSearchTemplateDelegate (Foundation.NSObjectFlag t);
	protected CPSearchTemplateDelegate (IntPtr handle);
	// methods
	public virtual void SearchButtonPressed (CPSearchTemplate searchTemplate);
	public virtual void SelectedResult (CPSearchTemplate searchTemplate, CPListItem item, System.Action completionHandler);
	public virtual void UpdatedSearchText (CPSearchTemplate searchTemplate, string searchText, CPSearchTemplateDelegateUpdateHandler completionHandler);
}

New Type: CarPlay.CPSearchTemplateDelegateUpdateHandler

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

New Type: CarPlay.CPSearchTemplateDelegate_Extensions

public static class CPSearchTemplateDelegate_Extensions {
	// methods
	public static void SearchButtonPressed (this ICPSearchTemplateDelegate This, CPSearchTemplate searchTemplate);
}

New Type: CarPlay.CPSelectableListItemHandler

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

New Type: CarPlay.CPSessionConfiguration

public class CPSessionConfiguration : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CPSessionConfiguration (ICPSessionConfigurationDelegate delegate);
	protected CPSessionConfiguration (Foundation.NSObjectFlag t);
	protected CPSessionConfiguration (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual CPContentStyle ContentStyle { get; }
	public ICPSessionConfigurationDelegate Delegate { get; set; }
	public virtual CPLimitableUserInterface LimitedUserInterfaces { get; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	protected override void Dispose (bool disposing);
}

New Type: CarPlay.CPSessionConfigurationDelegate

public abstract class CPSessionConfigurationDelegate : Foundation.NSObject, ICPSessionConfigurationDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected CPSessionConfigurationDelegate ();
	protected CPSessionConfigurationDelegate (Foundation.NSObjectFlag t);
	protected CPSessionConfigurationDelegate (IntPtr handle);
	// methods
	public virtual void ContentStyleChanged (CPSessionConfiguration sessionConfiguration, CPContentStyle contentStyle);
	public virtual void LimitedUserInterfacesChanged (CPSessionConfiguration sessionConfiguration, CPLimitableUserInterface limitedUserInterfaces);
}

New Type: CarPlay.CPSessionConfigurationDelegate_Extensions

public static class CPSessionConfigurationDelegate_Extensions {
	// methods
	public static void ContentStyleChanged (this ICPSessionConfigurationDelegate This, CPSessionConfiguration sessionConfiguration, CPContentStyle contentStyle);
}

New Type: CarPlay.CPTabBarTemplate

public class CPTabBarTemplate : CarPlay.CPTemplate, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CPTabBarTemplate (CPTemplate[] templates);
	public CPTabBarTemplate (Foundation.NSCoder coder);
	protected CPTabBarTemplate (Foundation.NSObjectFlag t);
	protected CPTabBarTemplate (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public ICPTabBarTemplateDelegate Delegate { get; set; }
	public static nuint MaximumTabCount { get; }
	public virtual CPTemplate SelectedTemplate { get; }
	public virtual CPTemplate[] Templates { get; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	protected override void Dispose (bool disposing);
	public virtual void UpdateTemplates (CPTemplate[] newTemplates);
}

New Type: CarPlay.CPTabBarTemplateDelegate

public abstract class CPTabBarTemplateDelegate : Foundation.NSObject, ICPTabBarTemplateDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected CPTabBarTemplateDelegate ();
	protected CPTabBarTemplateDelegate (Foundation.NSObjectFlag t);
	protected CPTabBarTemplateDelegate (IntPtr handle);
	// methods
	public virtual void DidSelectTemplate (CPTabBarTemplate tabBarTemplate, CPTemplate selectedTemplate);
}

New Type: CarPlay.CPTemplate

public abstract class CPTemplate : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected CPTemplate ();
	protected CPTemplate (Foundation.NSCoder coder);
	protected CPTemplate (Foundation.NSObjectFlag t);
	protected CPTemplate (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool ShowsTabBadge { get; set; }
	public virtual UIKit.UIImage TabImage { get; set; }
	public virtual UIKit.UITabBarSystemItem TabSystemItem { get; set; }
	public virtual string TabTitle { get; set; }
	public virtual Foundation.NSObject UserInfo { get; set; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: CarPlay.CPTemplateApplicationDashboardScene

public class CPTemplateApplicationDashboardScene : UIKit.UIScene, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIPasteConfigurationSupporting, UIKit.IUIUserActivityRestoring {
	// constructors
	public CPTemplateApplicationDashboardScene ();
	protected CPTemplateApplicationDashboardScene (Foundation.NSObjectFlag t);
	protected CPTemplateApplicationDashboardScene (IntPtr handle);
	public CPTemplateApplicationDashboardScene (UIKit.UISceneSession session, UIKit.UISceneConnectionOptions connectionOptions);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual CPDashboardController DashboardController { get; }
	public virtual UIKit.UIWindow DashboardWindow { get; }
	public ICPTemplateApplicationDashboardSceneDelegate Delegate { get; set; }
	public static Foundation.NSString SessionRoleApplication { get; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
}

New Type: CarPlay.CPTemplateApplicationDashboardSceneDelegate

public class CPTemplateApplicationDashboardSceneDelegate : Foundation.NSObject, ICPTemplateApplicationDashboardSceneDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUISceneDelegate {
	// constructors
	public CPTemplateApplicationDashboardSceneDelegate ();
	protected CPTemplateApplicationDashboardSceneDelegate (Foundation.NSObjectFlag t);
	protected CPTemplateApplicationDashboardSceneDelegate (IntPtr handle);
	// methods
	public virtual void ContinueUserActivity (UIKit.UIScene scene, Foundation.NSUserActivity userActivity);
	public virtual void DidBecomeActive (UIKit.UIScene scene);
	public virtual void DidConnectDashboardController (CPTemplateApplicationDashboardScene templateApplicationDashboardScene, CPDashboardController dashboardController, UIKit.UIWindow window);
	public virtual void DidDisconnect (UIKit.UIScene scene);
	public virtual void DidDisconnectDashboardController (CPTemplateApplicationDashboardScene templateApplicationDashboardScene, CPDashboardController dashboardController, UIKit.UIWindow window);
	public virtual void DidEnterBackground (UIKit.UIScene scene);
	public virtual void DidFailToContinueUserActivity (UIKit.UIScene scene, string userActivityType, Foundation.NSError error);
	public virtual void DidUpdateUserActivity (UIKit.UIScene scene, Foundation.NSUserActivity userActivity);
	public virtual Foundation.NSUserActivity GetStateRestorationActivity (UIKit.UIScene scene);
	public virtual void OpenUrlContexts (UIKit.UIScene scene, Foundation.NSSet<UIKit.UIOpenUrlContext> urlContexts);
	public virtual void WillConnect (UIKit.UIScene scene, UIKit.UISceneSession session, UIKit.UISceneConnectionOptions connectionOptions);
	public virtual void WillContinueUserActivity (UIKit.UIScene scene, string userActivityType);
	public virtual void WillEnterForeground (UIKit.UIScene scene);
	public virtual void WillResignActive (UIKit.UIScene scene);
}

New Type: CarPlay.CPTemplateApplicationDashboardSceneDelegate_Extensions

public static class CPTemplateApplicationDashboardSceneDelegate_Extensions {
	// methods
	public static void DidConnectDashboardController (this ICPTemplateApplicationDashboardSceneDelegate This, CPTemplateApplicationDashboardScene templateApplicationDashboardScene, CPDashboardController dashboardController, UIKit.UIWindow window);
	public static void DidDisconnectDashboardController (this ICPTemplateApplicationDashboardSceneDelegate This, CPTemplateApplicationDashboardScene templateApplicationDashboardScene, CPDashboardController dashboardController, UIKit.UIWindow window);
}

New Type: CarPlay.CPTemplateApplicationScene

public class CPTemplateApplicationScene : UIKit.UIScene, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIPasteConfigurationSupporting, UIKit.IUIUserActivityRestoring {
	// constructors
	public CPTemplateApplicationScene ();
	protected CPTemplateApplicationScene (Foundation.NSObjectFlag t);
	protected CPTemplateApplicationScene (IntPtr handle);
	public CPTemplateApplicationScene (UIKit.UISceneSession session, UIKit.UISceneConnectionOptions connectionOptions);
	// properties
	public virtual CPWindow CarWindow { get; }
	public override IntPtr ClassHandle { get; }
	public ICPTemplateApplicationSceneDelegate Delegate { get; set; }
	public virtual CPInterfaceController InterfaceController { get; }
	public static Foundation.NSString SessionRoleApplication { get; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
}

New Type: CarPlay.CPTemplateApplicationSceneDelegate

public class CPTemplateApplicationSceneDelegate : Foundation.NSObject, ICPTemplateApplicationSceneDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUISceneDelegate {
	// constructors
	public CPTemplateApplicationSceneDelegate ();
	protected CPTemplateApplicationSceneDelegate (Foundation.NSObjectFlag t);
	protected CPTemplateApplicationSceneDelegate (IntPtr handle);
	// methods
	public virtual void ContinueUserActivity (UIKit.UIScene scene, Foundation.NSUserActivity userActivity);
	public virtual void DidBecomeActive (UIKit.UIScene scene);
	public virtual void DidConnect (CPTemplateApplicationScene templateApplicationScene, CPInterfaceController interfaceController);
	public virtual void DidConnect (CPTemplateApplicationScene templateApplicationScene, CPInterfaceController interfaceController, CPWindow window);
	public virtual void DidDisconnect (UIKit.UIScene scene);
	public virtual void DidDisconnect (CPTemplateApplicationScene templateApplicationScene, CPInterfaceController interfaceController);
	public virtual void DidDisconnect (CPTemplateApplicationScene templateApplicationScene, CPInterfaceController interfaceController, CPWindow window);
	public virtual void DidEnterBackground (UIKit.UIScene scene);
	public virtual void DidFailToContinueUserActivity (UIKit.UIScene scene, string userActivityType, Foundation.NSError error);
	public virtual void DidSelect (CPTemplateApplicationScene templateApplicationScene, CPManeuver maneuver);
	public virtual void DidSelect (CPTemplateApplicationScene templateApplicationScene, CPNavigationAlert navigationAlert);
	public virtual void DidUpdateUserActivity (UIKit.UIScene scene, Foundation.NSUserActivity userActivity);
	public virtual Foundation.NSUserActivity GetStateRestorationActivity (UIKit.UIScene scene);
	public virtual void OpenUrlContexts (UIKit.UIScene scene, Foundation.NSSet<UIKit.UIOpenUrlContext> urlContexts);
	public virtual void WillConnect (UIKit.UIScene scene, UIKit.UISceneSession session, UIKit.UISceneConnectionOptions connectionOptions);
	public virtual void WillContinueUserActivity (UIKit.UIScene scene, string userActivityType);
	public virtual void WillEnterForeground (UIKit.UIScene scene);
	public virtual void WillResignActive (UIKit.UIScene scene);
}

New Type: CarPlay.CPTemplateApplicationSceneDelegate_Extensions

public static class CPTemplateApplicationSceneDelegate_Extensions {
	// methods
	public static void DidConnect (this ICPTemplateApplicationSceneDelegate This, CPTemplateApplicationScene templateApplicationScene, CPInterfaceController interfaceController);
	public static void DidConnect (this ICPTemplateApplicationSceneDelegate This, CPTemplateApplicationScene templateApplicationScene, CPInterfaceController interfaceController, CPWindow window);
	public static void DidDisconnect (this ICPTemplateApplicationSceneDelegate This, CPTemplateApplicationScene templateApplicationScene, CPInterfaceController interfaceController);
	public static void DidDisconnect (this ICPTemplateApplicationSceneDelegate This, CPTemplateApplicationScene templateApplicationScene, CPInterfaceController interfaceController, CPWindow window);
	public static void DidSelect (this ICPTemplateApplicationSceneDelegate This, CPTemplateApplicationScene templateApplicationScene, CPManeuver maneuver);
	public static void DidSelect (this ICPTemplateApplicationSceneDelegate This, CPTemplateApplicationScene templateApplicationScene, CPNavigationAlert navigationAlert);
}

New Type: CarPlay.CPTextButton

public class CPTextButton : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected CPTextButton (Foundation.NSObjectFlag t);
	protected CPTextButton (IntPtr handle);
	public CPTextButton (string title, CPTextButtonStyle textStyle, System.Action<CPTextButton> handler);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual CPTextButtonStyle TextStyle { get; set; }
	public virtual string Title { get; set; }
}

New Type: CarPlay.CPTextButtonStyle

[Serializable]
public enum CPTextButtonStyle {
	Cancel = 1,
	Confirm = 2,
	Normal = 0,
}

New Type: CarPlay.CPTimeRemainingColor

[Serializable]
public enum CPTimeRemainingColor {
	Default = 0,
	Green = 1,
	Orange = 2,
	Red = 3,
}

New Type: CarPlay.CPTravelEstimates

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

New Type: CarPlay.CPTrip

public class CPTrip : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CPTrip (Foundation.NSCoder coder);
	protected CPTrip (Foundation.NSObjectFlag t);
	protected CPTrip (IntPtr handle);
	public CPTrip (MapKit.MKMapItem origin, MapKit.MKMapItem destination, CPRouteChoice[] routeChoices);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual MapKit.MKMapItem Destination { get; }
	public virtual MapKit.MKMapItem Origin { get; }
	public virtual CPRouteChoice[] RouteChoices { get; }
	public virtual Foundation.NSObject UserInfo { get; set; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: CarPlay.CPTripEstimateStyle

[Serializable]
public enum CPTripEstimateStyle {
	Dark = 1,
	Light = 0,
}

New Type: CarPlay.CPTripPauseReason

[Serializable]
public enum CPTripPauseReason {
	Arrived = 1,
	Loading = 2,
	Locating = 3,
	ProceedToRoute = 5,
	Rerouting = 4,
}

New Type: CarPlay.CPTripPreviewTextConfiguration

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

New Type: CarPlay.CPVoiceControlState

public class CPVoiceControlState : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CPVoiceControlState ();
	public CPVoiceControlState (Foundation.NSCoder coder);
	protected CPVoiceControlState (Foundation.NSObjectFlag t);
	protected CPVoiceControlState (IntPtr handle);
	public CPVoiceControlState (string identifier, string[] titleVariants, UIKit.UIImage image, bool repeats);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string Identifier { get; }
	public virtual UIKit.UIImage Image { get; }
	public virtual bool Repeats { get; }
	public virtual string[] TitleVariants { get; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: CarPlay.CPVoiceControlTemplate

public class CPVoiceControlTemplate : CarPlay.CPTemplate, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CPVoiceControlTemplate (CPVoiceControlState[] voiceControlStates);
	public CPVoiceControlTemplate (Foundation.NSCoder coder);
	protected CPVoiceControlTemplate (Foundation.NSObjectFlag t);
	protected CPVoiceControlTemplate (IntPtr handle);
	// properties
	public virtual string ActiveStateIdentifier { get; }
	public override IntPtr ClassHandle { get; }
	public virtual CPVoiceControlState[] VoiceControlStates { get; }
	// methods
	public virtual void ActivateVoiceControlState (string identifier);
}

New Type: CarPlay.CPWindow

public class CPWindow : UIKit.UIWindow, CoreAnimation.ICALayerDelegate, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAccessibilityIdentification, UIKit.IUIAppearance, UIKit.IUIAppearanceContainer, UIKit.IUICoordinateSpace, UIKit.IUIDynamicItem, UIKit.IUIFocusEnvironment, UIKit.IUIFocusItem, UIKit.IUIFocusItemContainer, UIKit.IUILargeContentViewerItem, UIKit.IUIPasteConfigurationSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public CPWindow ();
	public CPWindow (CoreGraphics.CGRect frame);
	public CPWindow (Foundation.NSCoder coder);
	protected CPWindow (Foundation.NSObjectFlag t);
	protected CPWindow (IntPtr handle);
	// properties
	public static CPWindow.CPWindowAppearance Appearance { get; }
	public override IntPtr ClassHandle { get; }
	public virtual UIKit.UILayoutGuide MapButtonSafeAreaLayoutGuide { get; }
	public virtual CPTemplateApplicationScene TemplateApplicationScene { get; set; }
	// methods
	public static CPWindow.CPWindowAppearance AppearanceWhenContainedIn (System.Type[] containers);
	protected override void Dispose (bool disposing);
	public static CPWindow.CPWindowAppearance GetAppearance<T> ();
	public static CPWindow.CPWindowAppearance GetAppearance<T> (UIKit.UITraitCollection traits);
	public static CPWindow.CPWindowAppearance GetAppearance (UIKit.UITraitCollection traits);
	public static CPWindow.CPWindowAppearance GetAppearance<T> (UIKit.UITraitCollection traits, System.Type[] containers);
	public static CPWindow.CPWindowAppearance GetAppearance (UIKit.UITraitCollection traits, System.Type[] containers);

	// inner types
	public class CPWindowAppearance : UIKit.UIWindow+UIWindowAppearance, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearance {
		// constructors
		protected CPWindow.CPWindowAppearance (IntPtr handle);
	}
}

New Type: CarPlay.ICPApplicationDelegate

public interface ICPApplicationDelegate : ObjCRuntime.INativeObject, System.IDisposable, UIKit.IUIApplicationDelegate {
	// methods
	public virtual void DidConnectCarInterfaceController (UIKit.UIApplication application, CPInterfaceController interfaceController, CPWindow window);
	public virtual void DidDisconnectCarInterfaceController (UIKit.UIApplication application, CPInterfaceController interfaceController, CPWindow window);
}

New Type: CarPlay.ICPBarButtonProviding

public interface ICPBarButtonProviding : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual CPBarButton[] LeadingNavigationBarButtons { get; set; }
	public virtual CPBarButton[] TrailingNavigationBarButtons { get; set; }
}

New Type: CarPlay.ICPInterfaceControllerDelegate

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

New Type: CarPlay.ICPListTemplateDelegate

public interface ICPListTemplateDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DidSelectListItem (CPListTemplate listTemplate, CPListItem item, System.Action completionHandler);
}

New Type: CarPlay.ICPListTemplateItem

public interface ICPListTemplateItem : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual string Text { get; }
	public virtual Foundation.NSObject UserInfo { get; set; }
}

New Type: CarPlay.ICPMapTemplateDelegate

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

New Type: CarPlay.ICPNowPlayingTemplateObserver

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

New Type: CarPlay.ICPPointOfInterestTemplateDelegate

public interface ICPPointOfInterestTemplateDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DidChangeMapRegion (CPPointOfInterestTemplate pointOfInterestTemplate, MapKit.MKCoordinateRegion region);
}

New Type: CarPlay.ICPSearchTemplateDelegate

public interface ICPSearchTemplateDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void SelectedResult (CPSearchTemplate searchTemplate, CPListItem item, System.Action completionHandler);
	public virtual void UpdatedSearchText (CPSearchTemplate searchTemplate, string searchText, CPSearchTemplateDelegateUpdateHandler completionHandler);
}

New Type: CarPlay.ICPSelectableListItem

public interface ICPSelectableListItem : ICPListTemplateItem, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual CPSelectableListItemHandler Handler { get; set; }
}

New Type: CarPlay.ICPSessionConfigurationDelegate

public interface ICPSessionConfigurationDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void LimitedUserInterfacesChanged (CPSessionConfiguration sessionConfiguration, CPLimitableUserInterface limitedUserInterfaces);
}

New Type: CarPlay.ICPTabBarTemplateDelegate

public interface ICPTabBarTemplateDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DidSelectTemplate (CPTabBarTemplate tabBarTemplate, CPTemplate selectedTemplate);
}

New Type: CarPlay.ICPTemplateApplicationDashboardSceneDelegate

public interface ICPTemplateApplicationDashboardSceneDelegate : ObjCRuntime.INativeObject, System.IDisposable, UIKit.IUISceneDelegate {
}

New Type: CarPlay.ICPTemplateApplicationSceneDelegate

public interface ICPTemplateApplicationSceneDelegate : ObjCRuntime.INativeObject, System.IDisposable, UIKit.IUISceneDelegate {
}

New Namespace Chip

New Type: Chip.ChipAccountLogin

public class ChipAccountLogin : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipAccountLogin (Foundation.NSObjectFlag t);
	protected ChipAccountLogin (IntPtr handle);
	public ChipAccountLogin (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void GetSetupPin (string tempAccountIdentifier, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> GetSetupPinAsync (string tempAccountIdentifier);
	public virtual void Login (string tempAccountIdentifier, string setupPin, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> LoginAsync (string tempAccountIdentifier, string setupPin);
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
}

New Type: Chip.ChipApplicationBasic

public class ChipApplicationBasic : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipApplicationBasic (Foundation.NSObjectFlag t);
	protected ChipApplicationBasic (IntPtr handle);
	public ChipApplicationBasic (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void ReadAttributeApplication (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeApplicationAsync ();
	public virtual void ReadAttributeApplicationName (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeApplicationNameAsync ();
	public virtual void ReadAttributeApplicationSatus (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeApplicationSatusAsync ();
	public virtual void ReadAttributeCatalogVendorId (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeCatalogVendorIdAsync ();
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void ReadAttributeProductId (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeProductIdAsync ();
	public virtual void ReadAttributeVendorId (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeVendorIdAsync ();
	public virtual void ReadAttributeVendorName (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeVendorNameAsync ();
}

New Type: Chip.ChipApplicationLauncher

public class ChipApplicationLauncher : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipApplicationLauncher (Foundation.NSObjectFlag t);
	protected ChipApplicationLauncher (IntPtr handle);
	public ChipApplicationLauncher (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void LaunchApp (string data, ushort catalogVendorId, string applicationId, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> LaunchAppAsync (string data, ushort catalogVendorId, string applicationId);
	public virtual void ReadAttributeApplicationLauncherList (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeApplicationLauncherListAsync ();
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
}

New Type: Chip.ChipAudioOutput

public class ChipAudioOutput : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipAudioOutput (Foundation.NSObjectFlag t);
	protected ChipAudioOutput (IntPtr handle);
	public ChipAudioOutput (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void ReadAttributeAudioOutputList (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeAudioOutputListAsync ();
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void RenameOutput (byte index, string name, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> RenameOutputAsync (byte index, string name);
	public virtual void SelectOutput (byte index, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> SelectOutputAsync (byte index);
}

New Type: Chip.ChipBarrierControl

public class ChipBarrierControl : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipBarrierControl (Foundation.NSObjectFlag t);
	protected ChipBarrierControl (IntPtr handle);
	public ChipBarrierControl (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void GoToPercent (byte percentOpen, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> GoToPercentAsync (byte percentOpen);
	public virtual void ReadAttributeBarrierCapabilities (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeBarrierCapabilitiesAsync ();
	public virtual void ReadAttributeBarrierMovingState (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeBarrierMovingStateAsync ();
	public virtual void ReadAttributeBarrierPosition (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeBarrierPositionAsync ();
	public virtual void ReadAttributeBarrierSafetyStatus (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeBarrierSafetyStatusAsync ();
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void Stop (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> StopAsync ();
}

New Type: Chip.ChipBasic

public class ChipBasic : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipBasic (Foundation.NSObjectFlag t);
	protected ChipBasic (IntPtr handle);
	public ChipBasic (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void GetMfgSpecificPing (ChipResponseHandler responseHandler);
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void ReadAttributeHardwareVersion (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeHardwareVersionAsync ();
	public virtual void ReadAttributeHardwareVersionString (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeHardwareVersionStringAsync ();
	public virtual void ReadAttributeInteractionModelVersion (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeInteractionModelVersionAsync ();
	public virtual void ReadAttributeLocalConfigDisabled (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeLocalConfigDisabledAsync ();
	public virtual void ReadAttributeLocation (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeLocationAsync ();
	public virtual void ReadAttributeManufacturingDate (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeManufacturingDateAsync ();
	public virtual void ReadAttributePartNumber (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributePartNumberAsync ();
	public virtual void ReadAttributeProductId (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeProductIdAsync ();
	public virtual void ReadAttributeProductLabel (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeProductLabelAsync ();
	public virtual void ReadAttributeProductName (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeProductNameAsync ();
	public virtual void ReadAttributeProductUrl (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeProductUrlAsync ();
	public virtual void ReadAttributeSerialNumber (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeSerialNumberAsync ();
	public virtual void ReadAttributeSoftwareVersion (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeSoftwareVersionAsync ();
	public virtual void ReadAttributeSoftwareVersionString (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeSoftwareVersionStringAsync ();
	public virtual void ReadAttributeUserLabel (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeUserLabelAsync ();
	public virtual void ReadAttributeVendorId (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeVendorIdAsync ();
	public virtual void ReadAttributeVendorName (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeVendorNameAsync ();
	public virtual void WriteAttributeLocalConfigDisabled (byte value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeLocalConfigDisabledAsync (byte value);
	public virtual void WriteAttributeLocation (string value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeLocationAsync (string value);
	public virtual void WriteAttributeUserLabel (string value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeUserLabelAsync (string value);
}

New Type: Chip.ChipBinaryInputBasic

public class ChipBinaryInputBasic : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipBinaryInputBasic (Foundation.NSObjectFlag t);
	protected ChipBinaryInputBasic (IntPtr handle);
	public ChipBinaryInputBasic (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void ConfigureAttributePresentValue (ushort minInterval, ushort maxInterval, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ConfigureAttributePresentValueAsync (ushort minInterval, ushort maxInterval);
	public virtual void ConfigureAttributeStatusFlags (ushort minInterval, ushort maxInterval, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ConfigureAttributeStatusFlagsAsync (ushort minInterval, ushort maxInterval);
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void ReadAttributeOutOfService (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeOutOfServiceAsync ();
	public virtual void ReadAttributePresentValue (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributePresentValueAsync ();
	public virtual void ReadAttributeStatusFlags (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeStatusFlagsAsync ();
	public virtual void ReportAttributePresentValue (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReportAttributePresentValueAsync ();
	public virtual void ReportAttributeStatusFlags (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReportAttributeStatusFlagsAsync ();
	public virtual void WriteAttributeOutOfService (byte value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeOutOfServiceAsync (byte value);
	public virtual void WriteAttributePresentValue (byte value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributePresentValueAsync (byte value);
}

New Type: Chip.ChipBinding

public class ChipBinding : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipBinding (Foundation.NSObjectFlag t);
	protected ChipBinding (IntPtr handle);
	public ChipBinding (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void Bind (ulong nodeId, ushort groupId, byte endpointId, ushort clusterId, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> BindAsync (ulong nodeId, ushort groupId, byte endpointId, ushort clusterId);
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void Unbind (ulong nodeId, ushort groupId, byte endpointId, ushort clusterId, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> UnbindAsync (ulong nodeId, ushort groupId, byte endpointId, ushort clusterId);
}

New Type: Chip.ChipBridgedDeviceBasic

public class ChipBridgedDeviceBasic : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipBridgedDeviceBasic (Foundation.NSObjectFlag t);
	protected ChipBridgedDeviceBasic (IntPtr handle);
	public ChipBridgedDeviceBasic (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void ReadAttributeHardwareVersion (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeHardwareVersionAsync ();
	public virtual void ReadAttributeHardwareVersionString (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeHardwareVersionStringAsync ();
	public virtual void ReadAttributeManufacturingDate (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeManufacturingDateAsync ();
	public virtual void ReadAttributePartNumber (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributePartNumberAsync ();
	public virtual void ReadAttributeProductLabel (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeProductLabelAsync ();
	public virtual void ReadAttributeProductName (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeProductNameAsync ();
	public virtual void ReadAttributeProductUrl (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeProductUrlAsync ();
	public virtual void ReadAttributeReachable (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeReachableAsync ();
	public virtual void ReadAttributeSerialNumber (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeSerialNumberAsync ();
	public virtual void ReadAttributeSoftwareVersion (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeSoftwareVersionAsync ();
	public virtual void ReadAttributeSoftwareVersionString (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeSoftwareVersionStringAsync ();
	public virtual void ReadAttributeUserLabel (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeUserLabelAsync ();
	public virtual void ReadAttributeVendorId (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeVendorIdAsync ();
	public virtual void ReadAttributeVendorName (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeVendorNameAsync ();
	public virtual void WriteAttributeUserLabel (string value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeUserLabelAsync (string value);
}

New Type: Chip.ChipCluster

public class ChipCluster : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipCluster (Foundation.NSObjectFlag t);
	protected ChipCluster (IntPtr handle);
	public ChipCluster (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
}

New Type: Chip.ChipColorControl

public class ChipColorControl : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipColorControl (Foundation.NSObjectFlag t);
	protected ChipColorControl (IntPtr handle);
	public ChipColorControl (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void ConfigureAttributeColorTemperature (ushort minInterval, ushort maxInterval, ushort change, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ConfigureAttributeColorTemperatureAsync (ushort minInterval, ushort maxInterval, ushort change);
	public virtual void ConfigureAttributeCurrentHue (ushort minInterval, ushort maxInterval, byte change, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ConfigureAttributeCurrentHueAsync (ushort minInterval, ushort maxInterval, byte change);
	public virtual void ConfigureAttributeCurrentSaturation (ushort minInterval, ushort maxInterval, byte change, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ConfigureAttributeCurrentSaturationAsync (ushort minInterval, ushort maxInterval, byte change);
	public virtual void ConfigureAttributeCurrentX (ushort minInterval, ushort maxInterval, ushort change, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ConfigureAttributeCurrentXAsync (ushort minInterval, ushort maxInterval, ushort change);
	public virtual void ConfigureAttributeCurrentY (ushort minInterval, ushort maxInterval, ushort change, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ConfigureAttributeCurrentYAsync (ushort minInterval, ushort maxInterval, ushort change);
	public virtual void MoveColor (short rateX, short rateY, byte optionsMask, byte optionsOverride, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> MoveColorAsync (short rateX, short rateY, byte optionsMask, byte optionsOverride);
	public virtual void MoveColorTemperature (byte moveMode, ushort rate, ushort colorTemperatureMinimum, ushort colorTemperatureMaximum, byte optionsMask, byte optionsOverride, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> MoveColorTemperatureAsync (byte moveMode, ushort rate, ushort colorTemperatureMinimum, ushort colorTemperatureMaximum, byte optionsMask, byte optionsOverride);
	public virtual void MoveHue (byte moveMode, byte rate, byte optionsMask, byte optionsOverride, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> MoveHueAsync (byte moveMode, byte rate, byte optionsMask, byte optionsOverride);
	public virtual void MoveSaturation (byte moveMode, byte rate, byte optionsMask, byte optionsOverride, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> MoveSaturationAsync (byte moveMode, byte rate, byte optionsMask, byte optionsOverride);
	public virtual void MoveToColor (ushort colorX, ushort colorY, ushort transitionTime, byte optionsMask, byte optionsOverride, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> MoveToColorAsync (ushort colorX, ushort colorY, ushort transitionTime, byte optionsMask, byte optionsOverride);
	public virtual void MoveToColorTemperature (ushort colorTemperature, ushort transitionTime, byte optionsMask, byte optionsOverride, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> MoveToColorTemperatureAsync (ushort colorTemperature, ushort transitionTime, byte optionsMask, byte optionsOverride);
	public virtual void MoveToHue (byte hue, byte direction, ushort transitionTime, byte optionsMask, byte optionsOverride, ChipResponseHandler responseHandler);
	public virtual void MoveToHueAndSaturation (byte hue, byte saturation, ushort transitionTime, byte optionsMask, byte optionsOverride, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> MoveToHueAndSaturationAsync (byte hue, byte saturation, ushort transitionTime, byte optionsMask, byte optionsOverride);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> MoveToHueAsync (byte hue, byte direction, ushort transitionTime, byte optionsMask, byte optionsOverride);
	public virtual void MoveToSaturation (byte saturation, ushort transitionTime, byte optionsMask, byte optionsOverride, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> MoveToSaturationAsync (byte saturation, ushort transitionTime, byte optionsMask, byte optionsOverride);
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void ReadAttributeColorCapabilities (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeColorCapabilitiesAsync ();
	public virtual void ReadAttributeColorControlOptions (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeColorControlOptionsAsync ();
	public virtual void ReadAttributeColorLoopActive (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeColorLoopActiveAsync ();
	public virtual void ReadAttributeColorLoopDirection (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeColorLoopDirectionAsync ();
	public virtual void ReadAttributeColorLoopTime (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeColorLoopTimeAsync ();
	public virtual void ReadAttributeColorMode (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeColorModeAsync ();
	public virtual void ReadAttributeColorPointBIntensity (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeColorPointBIntensityAsync ();
	public virtual void ReadAttributeColorPointBX (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeColorPointBXAsync ();
	public virtual void ReadAttributeColorPointBY (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeColorPointBYAsync ();
	public virtual void ReadAttributeColorPointGIntensity (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeColorPointGIntensityAsync ();
	public virtual void ReadAttributeColorPointGX (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeColorPointGXAsync ();
	public virtual void ReadAttributeColorPointGY (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeColorPointGYAsync ();
	public virtual void ReadAttributeColorPointRIntensity (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeColorPointRIntensityAsync ();
	public virtual void ReadAttributeColorPointRX (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeColorPointRXAsync ();
	public virtual void ReadAttributeColorPointRY (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeColorPointRYAsync ();
	public virtual void ReadAttributeColorTempPhysicalMax (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeColorTempPhysicalMaxAsync ();
	public virtual void ReadAttributeColorTempPhysicalMin (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeColorTempPhysicalMinAsync ();
	public virtual void ReadAttributeColorTemperature (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeColorTemperatureAsync ();
	public virtual void ReadAttributeCompensationText (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeCompensationTextAsync ();
	public virtual void ReadAttributeCoupleColorTempToLevelMinMireds (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeCoupleColorTempToLevelMinMiredsAsync ();
	public virtual void ReadAttributeCurrentHue (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeCurrentHueAsync ();
	public virtual void ReadAttributeCurrentSaturation (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeCurrentSaturationAsync ();
	public virtual void ReadAttributeCurrentX (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeCurrentXAsync ();
	public virtual void ReadAttributeCurrentY (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeCurrentYAsync ();
	public virtual void ReadAttributeDriftCompensation (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeDriftCompensationAsync ();
	public virtual void ReadAttributeEnhancedColorMode (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeEnhancedColorModeAsync ();
	public virtual void ReadAttributeEnhancedCurrentHue (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeEnhancedCurrentHueAsync ();
	public virtual void ReadAttributeNumberOfPrimaries (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeNumberOfPrimariesAsync ();
	public virtual void ReadAttributePrimary1Intensity (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributePrimary1IntensityAsync ();
	public virtual void ReadAttributePrimary1X (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributePrimary1XAsync ();
	public virtual void ReadAttributePrimary1Y (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributePrimary1YAsync ();
	public virtual void ReadAttributePrimary2Intensity (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributePrimary2IntensityAsync ();
	public virtual void ReadAttributePrimary2X (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributePrimary2XAsync ();
	public virtual void ReadAttributePrimary2Y (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributePrimary2YAsync ();
	public virtual void ReadAttributePrimary3Intensity (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributePrimary3IntensityAsync ();
	public virtual void ReadAttributePrimary3X (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributePrimary3XAsync ();
	public virtual void ReadAttributePrimary3Y (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributePrimary3YAsync ();
	public virtual void ReadAttributePrimary4Intensity (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributePrimary4IntensityAsync ();
	public virtual void ReadAttributePrimary4X (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributePrimary4XAsync ();
	public virtual void ReadAttributePrimary4Y (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributePrimary4YAsync ();
	public virtual void ReadAttributePrimary5Intensity (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributePrimary5IntensityAsync ();
	public virtual void ReadAttributePrimary5X (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributePrimary5XAsync ();
	public virtual void ReadAttributePrimary5Y (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributePrimary5YAsync ();
	public virtual void ReadAttributePrimary6Intensity (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributePrimary6IntensityAsync ();
	public virtual void ReadAttributePrimary6X (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributePrimary6XAsync ();
	public virtual void ReadAttributePrimary6Y (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributePrimary6YAsync ();
	public virtual void ReadAttributeRemainingTime (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeRemainingTimeAsync ();
	public virtual void ReadAttributeStartUpColorTemperatureMireds (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeStartUpColorTemperatureMiredsAsync ();
	public virtual void ReadAttributeWhitePointX (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeWhitePointXAsync ();
	public virtual void ReadAttributeWhitePointY (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeWhitePointYAsync ();
	public virtual void ReportAttributeColorTemperature (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReportAttributeColorTemperatureAsync ();
	public virtual void ReportAttributeCurrentHue (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReportAttributeCurrentHueAsync ();
	public virtual void ReportAttributeCurrentSaturation (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReportAttributeCurrentSaturationAsync ();
	public virtual void ReportAttributeCurrentX (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReportAttributeCurrentXAsync ();
	public virtual void ReportAttributeCurrentY (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReportAttributeCurrentYAsync ();
	public virtual void StepColor (short stepX, short stepY, ushort transitionTime, byte optionsMask, byte optionsOverride, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> StepColorAsync (short stepX, short stepY, ushort transitionTime, byte optionsMask, byte optionsOverride);
	public virtual void StepColorTemperature (byte stepMode, ushort stepSize, ushort transitionTime, ushort colorTemperatureMinimum, ushort colorTemperatureMaximum, byte optionsMask, byte optionsOverride, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> StepColorTemperatureAsync (byte stepMode, ushort stepSize, ushort transitionTime, ushort colorTemperatureMinimum, ushort colorTemperatureMaximum, byte optionsMask, byte optionsOverride);
	public virtual void StepHue (byte stepMode, byte stepSize, byte transitionTime, byte optionsMask, byte optionsOverride, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> StepHueAsync (byte stepMode, byte stepSize, byte transitionTime, byte optionsMask, byte optionsOverride);
	public virtual void StepSaturation (byte stepMode, byte stepSize, byte transitionTime, byte optionsMask, byte optionsOverride, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> StepSaturationAsync (byte stepMode, byte stepSize, byte transitionTime, byte optionsMask, byte optionsOverride);
	public virtual void StopMoveStep (byte optionsMask, byte optionsOverride, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> StopMoveStepAsync (byte optionsMask, byte optionsOverride);
	public virtual void WriteAttributeColorControlOptions (byte value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeColorControlOptionsAsync (byte value);
	public virtual void WriteAttributeColorPointBIntensity (byte value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeColorPointBIntensityAsync (byte value);
	public virtual void WriteAttributeColorPointBX (ushort value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeColorPointBXAsync (ushort value);
	public virtual void WriteAttributeColorPointBY (ushort value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeColorPointBYAsync (ushort value);
	public virtual void WriteAttributeColorPointGIntensity (byte value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeColorPointGIntensityAsync (byte value);
	public virtual void WriteAttributeColorPointGX (ushort value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeColorPointGXAsync (ushort value);
	public virtual void WriteAttributeColorPointGY (ushort value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeColorPointGYAsync (ushort value);
	public virtual void WriteAttributeColorPointRIntensity (byte value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeColorPointRIntensityAsync (byte value);
	public virtual void WriteAttributeColorPointRX (ushort value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeColorPointRXAsync (ushort value);
	public virtual void WriteAttributeColorPointRY (ushort value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeColorPointRYAsync (ushort value);
	public virtual void WriteAttributeStartUpColorTemperatureMireds (ushort value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeStartUpColorTemperatureMiredsAsync (ushort value);
	public virtual void WriteAttributeWhitePointX (ushort value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeWhitePointXAsync (ushort value);
	public virtual void WriteAttributeWhitePointY (ushort value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeWhitePointYAsync (ushort value);
}

New Type: Chip.ChipCommissioningFlow

[Serializable]
public enum ChipCommissioningFlow {
	Custom = 2,
	Invalid = 3,
	Standard = 0,
	UserActionRequired = 1,
}

New Type: Chip.ChipContentLaunch

public class ChipContentLaunch : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipContentLaunch (Foundation.NSObjectFlag t);
	protected ChipContentLaunch (IntPtr handle);
	public ChipContentLaunch (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void LaunchContent (byte autoPlay, string data, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> LaunchContentAsync (byte autoPlay, string data);
	public virtual void LaunchUrl (string contentUrl, string displayString, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> LaunchUrlAsync (string contentUrl, string displayString);
	public virtual void ReadAttributeAcceptsHeaderList (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeAcceptsHeaderListAsync ();
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void ReadAttributeSupportedStreamingTypes (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeSupportedStreamingTypesAsync ();
}

New Type: Chip.ChipDescriptor

public class ChipDescriptor : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipDescriptor (Foundation.NSObjectFlag t);
	protected ChipDescriptor (IntPtr handle);
	public ChipDescriptor (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void ReadAttributeClientList (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClientListAsync ();
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void ReadAttributeDeviceList (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeDeviceListAsync ();
	public virtual void ReadAttributePartsList (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributePartsListAsync ();
	public virtual void ReadAttributeServerList (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeServerListAsync ();
}

New Type: Chip.ChipDevice

public class ChipDevice : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipDevice (Foundation.NSObjectFlag t);
	protected ChipDevice (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool IsActive { get; }
	// methods
	public virtual bool OpenPairingWindow (nuint duration, out Foundation.NSError error);
	public virtual string OpenPairingWindow (nuint duration, nuint discriminator, nuint setupPin, out Foundation.NSError error);
}

New Type: Chip.ChipDeviceController

public class ChipDeviceController : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipDeviceController (Foundation.NSObjectFlag t);
	protected ChipDeviceController (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSNumber ControllerNodeId { get; }
	public virtual bool IsRunning { get; }
	public static ChipDeviceController SharedController { get; }
	// methods
	public virtual ChipDevice GetPairedDevice (ulong deviceId, out Foundation.NSError error);
	public virtual bool PairDevice (ulong deviceId, string onboardingPayload, ChipOnboardingPayloadType onboardingPayloadType, out Foundation.NSError error);
	public virtual bool PairDevice (ulong deviceId, ushort discriminator, uint setupPinCode, out Foundation.NSError error);
	public virtual bool PairDevice (ulong deviceId, string address, ushort port, ushort discriminator, uint setupPinCode, out Foundation.NSError error);
	public virtual bool PairDeviceWithoutSecurity (ulong deviceId, string address, ushort port, out Foundation.NSError error);
	public virtual void SetListenPort (ushort port);
	public virtual void SetPairingDelegate (IChipDevicePairingDelegate delegate, CoreFoundation.DispatchQueue queue);
	public virtual bool Shutdown ();
	public virtual bool Startup (IChipPersistentStorageDelegate storageDelegate);
	public virtual bool StopDevicePairing (ulong deviceId, out Foundation.NSError error);
	public virtual bool UnpairDevice (ulong deviceId, out Foundation.NSError error);
	public virtual void UpdateDevice (ulong deviceId, ulong fabricId);
}

New Type: Chip.ChipDevicePairingDelegate

public class ChipDevicePairingDelegate : Foundation.NSObject, IChipDevicePairingDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ChipDevicePairingDelegate ();
	protected ChipDevicePairingDelegate (Foundation.NSObjectFlag t);
	protected ChipDevicePairingDelegate (IntPtr handle);
	// methods
	public virtual void OnAddressUpdated (Foundation.NSError error);
	public virtual void OnPairingComplete (Foundation.NSError error);
	public virtual void OnPairingDeleted (Foundation.NSError error);
	public virtual void OnStatusUpdate (ChipPairingStatus status);
}

New Type: Chip.ChipDevicePairingDelegate_Extensions

public static class ChipDevicePairingDelegate_Extensions {
	// methods
	public static void OnAddressUpdated (this IChipDevicePairingDelegate This, Foundation.NSError error);
	public static void OnPairingComplete (this IChipDevicePairingDelegate This, Foundation.NSError error);
	public static void OnPairingDeleted (this IChipDevicePairingDelegate This, Foundation.NSError error);
	public static void OnStatusUpdate (this IChipDevicePairingDelegate This, ChipPairingStatus status);
}

New Type: Chip.ChipDoorLock

public class ChipDoorLock : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipDoorLock (Foundation.NSObjectFlag t);
	protected ChipDoorLock (IntPtr handle);
	public ChipDoorLock (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void ClearAllPins (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ClearAllPinsAsync ();
	public virtual void ClearAllRfids (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ClearAllRfidsAsync ();
	public virtual void ClearHolidaySchedule (byte scheduleId, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ClearHolidayScheduleAsync (byte scheduleId);
	public virtual void ClearPin (ushort userId, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ClearPinAsync (ushort userId);
	public virtual void ClearRfid (ushort userId, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ClearRfidAsync (ushort userId);
	public virtual void ClearWeekdaySchedule (byte scheduleId, ushort userId, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ClearWeekdayScheduleAsync (byte scheduleId, ushort userId);
	public virtual void ClearYeardaySchedule (byte scheduleId, ushort userId, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ClearYeardayScheduleAsync (byte scheduleId, ushort userId);
	public virtual void ConfigureAttributeLockState (ushort minInterval, ushort maxInterval, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ConfigureAttributeLockStateAsync (ushort minInterval, ushort maxInterval);
	public virtual void GetHolidaySchedule (byte scheduleId, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> GetHolidayScheduleAsync (byte scheduleId);
	public virtual void GetLogRecord (ushort logIndex, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> GetLogRecordAsync (ushort logIndex);
	public virtual void GetPin (ushort userId, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> GetPinAsync (ushort userId);
	public virtual void GetRfid (ushort userId, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> GetRfidAsync (ushort userId);
	public virtual void GetUserType (ushort userId, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> GetUserTypeAsync (ushort userId);
	public virtual void GetWeekdaySchedule (byte scheduleId, ushort userId, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> GetWeekdayScheduleAsync (byte scheduleId, ushort userId);
	public virtual void GetYeardaySchedule (byte scheduleId, ushort userId, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> GetYeardayScheduleAsync (byte scheduleId, ushort userId);
	public virtual void LockDoor (string pin, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> LockDoorAsync (string pin);
	public virtual void ReadAttributeActuatorEnabled (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeActuatorEnabledAsync ();
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void ReadAttributeLockState (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeLockStateAsync ();
	public virtual void ReadAttributeLockType (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeLockTypeAsync ();
	public virtual void ReportAttributeLockState (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReportAttributeLockStateAsync ();
	public virtual void SetHolidaySchedule (byte scheduleId, uint localStartTime, uint localEndTime, byte operatingModeDuringHoliday, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> SetHolidayScheduleAsync (byte scheduleId, uint localStartTime, uint localEndTime, byte operatingModeDuringHoliday);
	public virtual void SetPin (ushort userId, byte userStatus, byte userType, string pin, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> SetPinAsync (ushort userId, byte userStatus, byte userType, string pin);
	public virtual void SetRfid (ushort userId, byte userStatus, byte userType, string id, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> SetRfidAsync (ushort userId, byte userStatus, byte userType, string id);
	public virtual void SetUserType (ushort userId, byte userType, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> SetUserTypeAsync (ushort userId, byte userType);
	public virtual void SetWeekdaySchedule (byte scheduleId, ushort userId, byte daysMask, byte startHour, byte startMinute, byte endHour, byte endMinute, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> SetWeekdayScheduleAsync (byte scheduleId, ushort userId, byte daysMask, byte startHour, byte startMinute, byte endHour, byte endMinute);
	public virtual void SetYeardaySchedule (byte scheduleId, ushort userId, uint localStartTime, uint localEndTime, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> SetYeardayScheduleAsync (byte scheduleId, ushort userId, uint localStartTime, uint localEndTime);
	public virtual void UnlockDoor (string pin, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> UnlockDoorAsync (string pin);
	public virtual void UnlockWithTimeout (ushort timeoutInSeconds, string pin, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> UnlockWithTimeoutAsync (ushort timeoutInSeconds, string pin);
}

New Type: Chip.ChipError

public class ChipError : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipError (Foundation.NSObjectFlag t);
	protected ChipError (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public static int ConvertToChipErrorCode (Foundation.NSError errorCode);
	public static Foundation.NSError Create (int errorCode);
}

New Type: Chip.ChipErrorCode

[Serializable]
public enum ChipErrorCode {
	DuplicateExists = 9,
	IntegrityCheckFailed = 8,
	InvalidArgument = 4,
	InvalidIntegerValue = 3,
	InvalidMessageLength = 5,
	InvalidState = 6,
	InvalidStringLength = 2,
	Success = 0,
	UndefinedError = 1,
	WrongAddressType = 7,
}

New Type: Chip.ChipErrorCodeExtensions

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

New Type: Chip.ChipEthernetNetworkDiagnostics

public class ChipEthernetNetworkDiagnostics : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipEthernetNetworkDiagnostics (Foundation.NSObjectFlag t);
	protected ChipEthernetNetworkDiagnostics (IntPtr handle);
	public ChipEthernetNetworkDiagnostics (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void ReadAttributeCollisionCount (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeCollisionCountAsync ();
	public virtual void ReadAttributeOverrunCount (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeOverrunCountAsync ();
	public virtual void ReadAttributePacketRxCount (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributePacketRxCountAsync ();
	public virtual void ReadAttributePacketTxCount (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributePacketTxCountAsync ();
	public virtual void ReadAttributeTxErrCount (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeTxErrCountAsync ();
	public virtual void ResetCounts (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ResetCountsAsync ();
}

New Type: Chip.ChipFixedLabel

public class ChipFixedLabel : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipFixedLabel (Foundation.NSObjectFlag t);
	protected ChipFixedLabel (IntPtr handle);
	public ChipFixedLabel (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void ReadAttributeLabelList (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeLabelListAsync ();
}

New Type: Chip.ChipGeneralCommissioning

public class ChipGeneralCommissioning : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipGeneralCommissioning (Foundation.NSObjectFlag t);
	protected ChipGeneralCommissioning (IntPtr handle);
	public ChipGeneralCommissioning (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void ArmFailSafe (ushort expiryLengthSeconds, ulong breadcrumb, uint timeoutMs, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ArmFailSafeAsync (ushort expiryLengthSeconds, ulong breadcrumb, uint timeoutMs);
	public virtual void CommissioningComplete (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> CommissioningCompleteAsync ();
	public virtual void ReadAttributeBreadcrumb (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeBreadcrumbAsync ();
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void ReadAttributeFabricId (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeFabricIdAsync ();
	public virtual void SetRegulatoryConfig (byte location, string countryCode, ulong breadcrumb, uint timeoutMs, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> SetRegulatoryConfigAsync (byte location, string countryCode, ulong breadcrumb, uint timeoutMs);
	public virtual void WriteAttributeBreadcrumb (ulong value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeBreadcrumbAsync (ulong value);
}

New Type: Chip.ChipGeneralDiagnostics

public class ChipGeneralDiagnostics : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipGeneralDiagnostics (Foundation.NSObjectFlag t);
	protected ChipGeneralDiagnostics (IntPtr handle);
	public ChipGeneralDiagnostics (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void ReadAttributeNetworkInterfaces (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeNetworkInterfacesAsync ();
	public virtual void ReadAttributeRebootCount (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeRebootCountAsync ();
}

New Type: Chip.ChipGroupKeyManagement

public class ChipGroupKeyManagement : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipGroupKeyManagement (Foundation.NSObjectFlag t);
	protected ChipGroupKeyManagement (IntPtr handle);
	public ChipGroupKeyManagement (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void ReadAttributeGroupKeys (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeGroupKeysAsync ();
	public virtual void ReadAttributeGroups (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeGroupsAsync ();
}

New Type: Chip.ChipGroups

public class ChipGroups : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipGroups (Foundation.NSObjectFlag t);
	protected ChipGroups (IntPtr handle);
	public ChipGroups (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void AddGroup (ushort groupId, string groupName, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> AddGroupAsync (ushort groupId, string groupName);
	public virtual void AddGroupIfIdentifying (ushort groupId, string groupName, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> AddGroupIfIdentifyingAsync (ushort groupId, string groupName);
	public virtual void GetGroupMembership (byte groupCount, ushort groupList, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> GetGroupMembershipAsync (byte groupCount, ushort groupList);
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void ReadAttributeNameSupport (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeNameSupportAsync ();
	public virtual void RemoveAllGroups (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> RemoveAllGroupsAsync ();
	public virtual void RemoveGroup (ushort groupId, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> RemoveGroupAsync (ushort groupId);
	public virtual void ViewGroup (ushort groupId, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ViewGroupAsync (ushort groupId);
}

New Type: Chip.ChipIdentify

public class ChipIdentify : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipIdentify (Foundation.NSObjectFlag t);
	protected ChipIdentify (IntPtr handle);
	public ChipIdentify (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void Identify (ushort identifyTime, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> IdentifyAsync (ushort identifyTime);
	public virtual void IdentifyQuery (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> IdentifyQueryAsync ();
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void ReadAttributeIdentifyTime (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeIdentifyTimeAsync ();
	public virtual void WriteAttributeIdentifyTime (ushort value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeIdentifyTimeAsync (ushort value);
}

New Type: Chip.ChipKeypadInput

public class ChipKeypadInput : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipKeypadInput (Foundation.NSObjectFlag t);
	protected ChipKeypadInput (IntPtr handle);
	public ChipKeypadInput (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void SendKey (byte keyCode, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> SendKeyAsync (byte keyCode);
}

New Type: Chip.ChipLevelControl

public class ChipLevelControl : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipLevelControl (Foundation.NSObjectFlag t);
	protected ChipLevelControl (IntPtr handle);
	public ChipLevelControl (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void ConfigureAttributeCurrentLevel (ushort minInterval, ushort maxInterval, byte change, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ConfigureAttributeCurrentLevelAsync (ushort minInterval, ushort maxInterval, byte change);
	public virtual void Move (byte moveMode, byte rate, byte optionMask, byte optionOverride, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> MoveAsync (byte moveMode, byte rate, byte optionMask, byte optionOverride);
	public virtual void MoveToLevel (byte level, ushort transitionTime, byte optionMask, byte optionOverride, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> MoveToLevelAsync (byte level, ushort transitionTime, byte optionMask, byte optionOverride);
	public virtual void MoveToLevelWithOnOff (byte level, ushort transitionTime, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> MoveToLevelWithOnOffAsync (byte level, ushort transitionTime);
	public virtual void MoveWithOnOff (byte moveMode, byte rate, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> MoveWithOnOffAsync (byte moveMode, byte rate);
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void ReadAttributeCurrentLevel (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeCurrentLevelAsync ();
	public virtual void ReportAttributeCurrentLevel (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReportAttributeCurrentLevelAsync ();
	public virtual void Step (byte stepMode, byte stepSize, ushort transitionTime, byte optionMask, byte optionOverride, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> StepAsync (byte stepMode, byte stepSize, ushort transitionTime, byte optionMask, byte optionOverride);
	public virtual void StepWithOnOff (byte stepMode, byte stepSize, ushort transitionTime, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> StepWithOnOffAsync (byte stepMode, byte stepSize, ushort transitionTime);
	public virtual void Stop (byte optionMask, byte optionOverride, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> StopAsync (byte optionMask, byte optionOverride);
	public virtual void StopWithOnOff (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> StopWithOnOffAsync ();
}

New Type: Chip.ChipLowPower

public class ChipLowPower : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipLowPower (Foundation.NSObjectFlag t);
	protected ChipLowPower (IntPtr handle);
	public ChipLowPower (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void Sleep (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> SleepAsync ();
}

New Type: Chip.ChipManualSetupPayloadParser

public class ChipManualSetupPayloadParser : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipManualSetupPayloadParser (Foundation.NSObjectFlag t);
	protected ChipManualSetupPayloadParser (IntPtr handle);
	public ChipManualSetupPayloadParser (string decimalStringRepresentation);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual ChipSetupPayload PopulatePayload (out Foundation.NSError error);
}

New Type: Chip.ChipMediaInput

public class ChipMediaInput : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipMediaInput (Foundation.NSObjectFlag t);
	protected ChipMediaInput (IntPtr handle);
	public ChipMediaInput (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void HideInputStatus (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> HideInputStatusAsync ();
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void ReadAttributeMediaInputList (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeMediaInputListAsync ();
	public virtual void RenameInput (byte index, string name, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> RenameInputAsync (byte index, string name);
	public virtual void SelectInput (byte index, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> SelectInputAsync (byte index);
	public virtual void ShowInputStatus (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ShowInputStatusAsync ();
}

New Type: Chip.ChipMediaPlayback

public class ChipMediaPlayback : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipMediaPlayback (Foundation.NSObjectFlag t);
	protected ChipMediaPlayback (IntPtr handle);
	public ChipMediaPlayback (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void FastForward (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> FastForwardAsync ();
	public virtual void Next (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> NextAsync ();
	public virtual void Pause (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> PauseAsync ();
	public virtual void Play (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> PlayAsync ();
	public virtual void Previous (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> PreviousAsync ();
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void Rewind (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> RewindAsync ();
	public virtual void SkipBackward (ulong deltaPositionMilliseconds, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> SkipBackwardAsync (ulong deltaPositionMilliseconds);
	public virtual void SkipForward (ulong deltaPositionMilliseconds, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> SkipForwardAsync (ulong deltaPositionMilliseconds);
	public virtual void SkipSeek (ulong position, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> SkipSeekAsync (ulong position);
	public virtual void StartOver (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> StartOverAsync ();
	public virtual void Stop (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> StopAsync ();
}

New Type: Chip.ChipNetworkCommissioning

public class ChipNetworkCommissioning : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipNetworkCommissioning (Foundation.NSObjectFlag t);
	protected ChipNetworkCommissioning (IntPtr handle);
	public ChipNetworkCommissioning (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void AddThreadNetwork (Foundation.NSData operationalDataset, ulong breadcrumb, uint timeoutMs, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> AddThreadNetworkAsync (Foundation.NSData operationalDataset, ulong breadcrumb, uint timeoutMs);
	public virtual void AddWiFiNetwork (Foundation.NSData ssid, Foundation.NSData credentials, ulong breadcrumb, uint timeoutMs, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> AddWiFiNetworkAsync (Foundation.NSData ssid, Foundation.NSData credentials, ulong breadcrumb, uint timeoutMs);
	public virtual void DisableNetwork (Foundation.NSData networkId, ulong breadcrumb, uint timeoutMs, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> DisableNetworkAsync (Foundation.NSData networkId, ulong breadcrumb, uint timeoutMs);
	public virtual void EnableNetwork (Foundation.NSData networkId, ulong breadcrumb, uint timeoutMs, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> EnableNetworkAsync (Foundation.NSData networkId, ulong breadcrumb, uint timeoutMs);
	public virtual void GetLastNetworkCommissioningResult (uint timeoutMs, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> GetLastNetworkCommissioningResultAsync (uint timeoutMs);
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void RemoveNetwork (Foundation.NSData networkId, ulong breadcrumb, uint timeoutMs, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> RemoveNetworkAsync (Foundation.NSData networkId, ulong breadcrumb, uint timeoutMs);
	public virtual void ScanNetworks (Foundation.NSData ssid, ulong breadcrumb, uint timeoutMs, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ScanNetworksAsync (Foundation.NSData ssid, ulong breadcrumb, uint timeoutMs);
	public virtual void UpdateThreadNetwork (Foundation.NSData operationalDataset, ulong breadcrumb, uint timeoutMs, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> UpdateThreadNetworkAsync (Foundation.NSData operationalDataset, ulong breadcrumb, uint timeoutMs);
	public virtual void UpdateWiFiNetwork (Foundation.NSData ssid, Foundation.NSData credentials, ulong breadcrumb, uint timeoutMs, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> UpdateWiFiNetworkAsync (Foundation.NSData ssid, Foundation.NSData credentials, ulong breadcrumb, uint timeoutMs);
}

New Type: Chip.ChipOnOff

public class ChipOnOff : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipOnOff (Foundation.NSObjectFlag t);
	protected ChipOnOff (IntPtr handle);
	public ChipOnOff (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void ConfigureAttributeOnOff (ushort minInterval, ushort maxInterval, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ConfigureAttributeOnOffAsync (ushort minInterval, ushort maxInterval);
	public virtual void Off (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> OffAsync ();
	public virtual void On (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> OnAsync ();
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void ReadAttributeOnOff (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeOnOffAsync ();
	public virtual void ReportAttributeOnOff (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReportAttributeOnOffAsync ();
	public virtual void Toggle (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ToggleAsync ();
}

New Type: Chip.ChipOnboardingPayloadParser

public class ChipOnboardingPayloadParser : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipOnboardingPayloadParser (Foundation.NSObjectFlag t);
	protected ChipOnboardingPayloadParser (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public static ChipSetupPayload SetupPayload (string onboardingPayload, ChipOnboardingPayloadType type, out Foundation.NSError error);
}

New Type: Chip.ChipOnboardingPayloadType

[Serializable]
public enum ChipOnboardingPayloadType {
	Admin = 3,
	ManualCode = 1,
	Nfc = 2,
	QRCode = 0,
}

New Type: Chip.ChipOperationalCredentials

public class ChipOperationalCredentials : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipOperationalCredentials (Foundation.NSObjectFlag t);
	protected ChipOperationalCredentials (IntPtr handle);
	public ChipOperationalCredentials (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void AddOpCert (Foundation.NSData noc, Foundation.NSData iCACertificate, Foundation.NSData iPKValue, ulong caseAdminNode, ushort adminVendorId, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> AddOpCertAsync (Foundation.NSData noc, Foundation.NSData iCACertificate, Foundation.NSData iPKValue, ulong caseAdminNode, ushort adminVendorId);
	public virtual void OpCsrRequest (Foundation.NSData csrNonce, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> OpCsrRequestAsync (Foundation.NSData csrNonce);
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void ReadAttributeFabricsList (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeFabricsListAsync ();
	public virtual void RemoveAllFabrics (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> RemoveAllFabricsAsync ();
	public virtual void RemoveFabric (ulong fabricId, ulong nodeId, ushort vendorId, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> RemoveFabricAsync (ulong fabricId, ulong nodeId, ushort vendorId);
	public virtual void SetFabric (ushort vendorId, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> SetFabricAsync (ushort vendorId);
	public virtual void UpdateFabricLabel (string label, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> UpdateFabricLabelAsync (string label);
}

New Type: Chip.ChipOptionalQRCodeInfo

public class ChipOptionalQRCodeInfo : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipOptionalQRCodeInfo (Foundation.NSObjectFlag t);
	protected ChipOptionalQRCodeInfo (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSNumber InfoType { get; set; }
	public virtual Foundation.NSNumber IntegerValue { get; set; }
	public virtual string StringValue { get; set; }
	public virtual Foundation.NSNumber Tag { get; set; }
}

New Type: Chip.ChipOptionalQRCodeInfoType

[Serializable]
public enum ChipOptionalQRCodeInfoType {
	Int32 = 2,
	String = 1,
	Unknown = 0,
}

New Type: Chip.ChipPairingStatus

[Serializable]
public enum ChipPairingStatus {
	SecurePairingFailed = 1,
	SecurePairingSuccess = 0,
	UnknownStatus = 2,
}

New Type: Chip.ChipPersistentStorageDelegate

public abstract class ChipPersistentStorageDelegate : Foundation.NSObject, IChipPersistentStorageDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipPersistentStorageDelegate ();
	protected ChipPersistentStorageDelegate (Foundation.NSObjectFlag t);
	protected ChipPersistentStorageDelegate (IntPtr handle);
	// methods
	public virtual void DeleteValue (string key);
	public virtual string GetValue (string key);
	public virtual void SetValue (string key, string value);
}

New Type: Chip.ChipPumpConfigurationAndControl

public class ChipPumpConfigurationAndControl : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipPumpConfigurationAndControl (Foundation.NSObjectFlag t);
	protected ChipPumpConfigurationAndControl (IntPtr handle);
	public ChipPumpConfigurationAndControl (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void ConfigureAttributeCapacity (ushort minInterval, ushort maxInterval, short change, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ConfigureAttributeCapacityAsync (ushort minInterval, ushort maxInterval, short change);
	public virtual void ReadAttributeCapacity (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeCapacityAsync ();
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void ReadAttributeEffectiveControlMode (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeEffectiveControlModeAsync ();
	public virtual void ReadAttributeEffectiveOperationMode (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeEffectiveOperationModeAsync ();
	public virtual void ReadAttributeMaxFlow (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeMaxFlowAsync ();
	public virtual void ReadAttributeMaxPressure (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeMaxPressureAsync ();
	public virtual void ReadAttributeMaxSpeed (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeMaxSpeedAsync ();
	public virtual void ReadAttributeOperationMode (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeOperationModeAsync ();
	public virtual void ReportAttributeCapacity (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReportAttributeCapacityAsync ();
	public virtual void WriteAttributeOperationMode (byte value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeOperationModeAsync (byte value);
}

New Type: Chip.ChipQRCodeSetupPayloadParser

public class ChipQRCodeSetupPayloadParser : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipQRCodeSetupPayloadParser (Foundation.NSObjectFlag t);
	protected ChipQRCodeSetupPayloadParser (IntPtr handle);
	public ChipQRCodeSetupPayloadParser (string base38Representation);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual ChipSetupPayload PopulatePayload (out Foundation.NSError error);
}

New Type: Chip.ChipReadAttributeResult

public class ChipReadAttributeResult {
	// constructors
	public ChipReadAttributeResult (Foundation.NSError error, Foundation.NSDictionary data);
	// properties
	public Foundation.NSDictionary Data { get; set; }
	public Foundation.NSError Error { get; set; }
}

New Type: Chip.ChipRelativeHumidityMeasurement

public class ChipRelativeHumidityMeasurement : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipRelativeHumidityMeasurement (Foundation.NSObjectFlag t);
	protected ChipRelativeHumidityMeasurement (IntPtr handle);
	public ChipRelativeHumidityMeasurement (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void ConfigureAttributeMeasuredValue (ushort minInterval, ushort maxInterval, ushort change, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ConfigureAttributeMeasuredValueAsync (ushort minInterval, ushort maxInterval, ushort change);
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void ReadAttributeMaxMeasuredValue (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeMaxMeasuredValueAsync ();
	public virtual void ReadAttributeMeasuredValue (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeMeasuredValueAsync ();
	public virtual void ReadAttributeMinMeasuredValue (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeMinMeasuredValueAsync ();
	public virtual void ReportAttributeMeasuredValue (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReportAttributeMeasuredValueAsync ();
}

New Type: Chip.ChipRendezvousInformationFlags

[Serializable]
public enum ChipRendezvousInformationFlags {
	AllMask = 7,
	Ble = 2,
	None = 0,
	OnNetwork = 4,
	SoftAP = 1,
}

New Type: Chip.ChipResponseHandler

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

New Type: Chip.ChipScenes

public class ChipScenes : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipScenes (Foundation.NSObjectFlag t);
	protected ChipScenes (IntPtr handle);
	public ChipScenes (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void AddScene (ushort groupId, byte sceneId, ushort transitionTime, string sceneName, ushort clusterId, byte length, byte value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> AddSceneAsync (ushort groupId, byte sceneId, ushort transitionTime, string sceneName, ushort clusterId, byte length, byte value);
	public virtual void GetSceneMembership (ushort groupId, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> GetSceneMembershipAsync (ushort groupId);
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void ReadAttributeCurrentGroup (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeCurrentGroupAsync ();
	public virtual void ReadAttributeCurrentScene (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeCurrentSceneAsync ();
	public virtual void ReadAttributeNameSupport (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeNameSupportAsync ();
	public virtual void ReadAttributeSceneCount (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeSceneCountAsync ();
	public virtual void ReadAttributeSceneValid (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeSceneValidAsync ();
	public virtual void RecallScene (ushort groupId, byte sceneId, ushort transitionTime, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> RecallSceneAsync (ushort groupId, byte sceneId, ushort transitionTime);
	public virtual void RemoveAllScenes (ushort groupId, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> RemoveAllScenesAsync (ushort groupId);
	public virtual void RemoveScene (ushort groupId, byte sceneId, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> RemoveSceneAsync (ushort groupId, byte sceneId);
	public virtual void StoreScene (ushort groupId, byte sceneId, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> StoreSceneAsync (ushort groupId, byte sceneId);
	public virtual void ViewScene (ushort groupId, byte sceneId, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ViewSceneAsync (ushort groupId, byte sceneId);
}

New Type: Chip.ChipSetupPayload

public class ChipSetupPayload : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipSetupPayload (Foundation.NSObjectFlag t);
	protected ChipSetupPayload (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual ChipCommissioningFlow CommissioningFlow { get; set; }
	public virtual Foundation.NSNumber Discriminator { get; set; }
	public virtual Foundation.NSNumber ProductId { get; set; }
	public virtual ChipRendezvousInformationFlags RendezvousInformation { get; set; }
	public virtual string SerialNumber { get; set; }
	public virtual Foundation.NSNumber SetUpPinCode { get; set; }
	public virtual Foundation.NSNumber VendorId { get; set; }
	public virtual Foundation.NSNumber Version { get; set; }
	// methods
	public virtual ChipOptionalQRCodeInfo[] GetAllOptionalVendorData (out Foundation.NSError error);
}

New Type: Chip.ChipSoftwareDiagnostics

public class ChipSoftwareDiagnostics : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipSoftwareDiagnostics (Foundation.NSObjectFlag t);
	protected ChipSoftwareDiagnostics (IntPtr handle);
	public ChipSoftwareDiagnostics (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void ReadAttributeCurrentHeapHighWatermark (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeCurrentHeapHighWatermarkAsync ();
	public virtual void ResetWatermarks (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ResetWatermarksAsync ();
}

New Type: Chip.ChipSwitch

public class ChipSwitch : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipSwitch (Foundation.NSObjectFlag t);
	protected ChipSwitch (IntPtr handle);
	public ChipSwitch (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void ConfigureAttributeCurrentPosition (ushort minInterval, ushort maxInterval, byte change, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ConfigureAttributeCurrentPositionAsync (ushort minInterval, ushort maxInterval, byte change);
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void ReadAttributeCurrentPosition (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeCurrentPositionAsync ();
	public virtual void ReadAttributeNumberOfPositions (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeNumberOfPositionsAsync ();
	public virtual void ReportAttributeCurrentPosition (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReportAttributeCurrentPositionAsync ();
}

New Type: Chip.ChipTargetNavigator

public class ChipTargetNavigator : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipTargetNavigator (Foundation.NSObjectFlag t);
	protected ChipTargetNavigator (IntPtr handle);
	public ChipTargetNavigator (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void NavigateTarget (byte target, string data, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> NavigateTargetAsync (byte target, string data);
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void ReadAttributeTargetNavigatorList (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeTargetNavigatorListAsync ();
}

New Type: Chip.ChipTemperatureMeasurement

public class ChipTemperatureMeasurement : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipTemperatureMeasurement (Foundation.NSObjectFlag t);
	protected ChipTemperatureMeasurement (IntPtr handle);
	public ChipTemperatureMeasurement (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void ConfigureAttributeMeasuredValue (ushort minInterval, ushort maxInterval, short change, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ConfigureAttributeMeasuredValueAsync (ushort minInterval, ushort maxInterval, short change);
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void ReadAttributeMaxMeasuredValue (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeMaxMeasuredValueAsync ();
	public virtual void ReadAttributeMeasuredValue (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeMeasuredValueAsync ();
	public virtual void ReadAttributeMinMeasuredValue (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeMinMeasuredValueAsync ();
	public virtual void ReportAttributeMeasuredValue (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReportAttributeMeasuredValueAsync ();
}

New Type: Chip.ChipTestCluster

public class ChipTestCluster : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipTestCluster (Foundation.NSObjectFlag t);
	protected ChipTestCluster (IntPtr handle);
	public ChipTestCluster (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void ReadAttributeBitmap16 (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeBitmap16Async ();
	public virtual void ReadAttributeBitmap32 (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeBitmap32Async ();
	public virtual void ReadAttributeBitmap64 (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeBitmap64Async ();
	public virtual void ReadAttributeBitmap8 (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeBitmap8Async ();
	public virtual void ReadAttributeBoolean (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeBooleanAsync ();
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void ReadAttributeEnum16 (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeEnum16Async ();
	public virtual void ReadAttributeEnum8 (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeEnum8Async ();
	public virtual void ReadAttributeInt16s (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeInt16sAsync ();
	public virtual void ReadAttributeInt16u (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeInt16uAsync ();
	public virtual void ReadAttributeInt32s (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeInt32sAsync ();
	public virtual void ReadAttributeInt32u (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeInt32uAsync ();
	public virtual void ReadAttributeInt64s (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeInt64sAsync ();
	public virtual void ReadAttributeInt64u (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeInt64uAsync ();
	public virtual void ReadAttributeInt8s (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeInt8sAsync ();
	public virtual void ReadAttributeInt8u (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeInt8uAsync ();
	public virtual void ReadAttributeListInt8u (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeListInt8uAsync ();
	public virtual void ReadAttributeListOctetString (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeListOctetStringAsync ();
	public virtual void ReadAttributeListStructOctetString (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeListStructOctetStringAsync ();
	public virtual void ReadAttributeOctetString (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeOctetStringAsync ();
	public virtual void Test (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> TestAsync ();
	public virtual void TestNotHandled (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> TestNotHandledAsync ();
	public virtual void TestSpecific (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> TestSpecificAsync ();
	public virtual void TestUnknownCommand (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> TestUnknownCommandAsync ();
	public virtual void WriteAttributeBitmap16 (ushort value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeBitmap16Async (ushort value);
	public virtual void WriteAttributeBitmap32 (uint value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeBitmap32Async (uint value);
	public virtual void WriteAttributeBitmap64 (ulong value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeBitmap64Async (ulong value);
	public virtual void WriteAttributeBitmap8 (byte value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeBitmap8Async (byte value);
	public virtual void WriteAttributeBoolean (byte value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeBooleanAsync (byte value);
	public virtual void WriteAttributeEnum16 (ushort value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeEnum16Async (ushort value);
	public virtual void WriteAttributeEnum8 (byte value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeEnum8Async (byte value);
	public virtual void WriteAttributeInt16s (short value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeInt16sAsync (short value);
	public virtual void WriteAttributeInt16u (ushort value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeInt16uAsync (ushort value);
	public virtual void WriteAttributeInt32s (int value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeInt32sAsync (int value);
	public virtual void WriteAttributeInt32u (uint value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeInt32uAsync (uint value);
	public virtual void WriteAttributeInt64s (long value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeInt64sAsync (long value);
	public virtual void WriteAttributeInt64u (ulong value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeInt64uAsync (ulong value);
	public virtual void WriteAttributeInt8s (sbyte value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeInt8sAsync (sbyte value);
	public virtual void WriteAttributeInt8u (byte value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeInt8uAsync (byte value);
	public virtual void WriteAttributeOctetString (Foundation.NSData value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeOctetStringAsync (Foundation.NSData value);
}

New Type: Chip.ChipThermostat

public class ChipThermostat : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipThermostat (Foundation.NSObjectFlag t);
	protected ChipThermostat (IntPtr handle);
	public ChipThermostat (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void ClearWeeklySchedule (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ClearWeeklyScheduleAsync ();
	public virtual void ConfigureAttributeLocalTemperature (ushort minInterval, ushort maxInterval, short change, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ConfigureAttributeLocalTemperatureAsync (ushort minInterval, ushort maxInterval, short change);
	public virtual void GetRelayStatusLog (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> GetRelayStatusLogAsync ();
	public virtual void GetWeeklySchedule (byte daysToReturn, byte modeToReturn, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> GetWeeklyScheduleAsync (byte daysToReturn, byte modeToReturn);
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void ReadAttributeControlSequenceOfOperation (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeControlSequenceOfOperationAsync ();
	public virtual void ReadAttributeLocalTemperature (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeLocalTemperatureAsync ();
	public virtual void ReadAttributeOccupiedCoolingSetpoint (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeOccupiedCoolingSetpointAsync ();
	public virtual void ReadAttributeOccupiedHeatingSetpoint (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeOccupiedHeatingSetpointAsync ();
	public virtual void ReadAttributeSystemMode (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeSystemModeAsync ();
	public virtual void ReportAttributeLocalTemperature (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReportAttributeLocalTemperatureAsync ();
	public virtual void SetWeeklySchedule (byte numberOfTransitionsForSequence, byte dayOfWeekForSequence, byte modeForSequence, byte payload, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> SetWeeklyScheduleAsync (byte numberOfTransitionsForSequence, byte dayOfWeekForSequence, byte modeForSequence, byte payload);
	public virtual void SetpointRaiseLower (byte mode, sbyte amount, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> SetpointRaiseLowerAsync (byte mode, sbyte amount);
	public virtual void WriteAttributeControlSequenceOfOperation (byte value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeControlSequenceOfOperationAsync (byte value);
	public virtual void WriteAttributeOccupiedCoolingSetpoint (short value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeOccupiedCoolingSetpointAsync (short value);
	public virtual void WriteAttributeOccupiedHeatingSetpoint (short value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeOccupiedHeatingSetpointAsync (short value);
	public virtual void WriteAttributeSystemMode (byte value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeSystemModeAsync (byte value);
}

New Type: Chip.ChipTrustedRootCertificates

public class ChipTrustedRootCertificates : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipTrustedRootCertificates (Foundation.NSObjectFlag t);
	protected ChipTrustedRootCertificates (IntPtr handle);
	public ChipTrustedRootCertificates (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void AddTrustedRootCertificate (Foundation.NSData rootCertificate, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> AddTrustedRootCertificateAsync (Foundation.NSData rootCertificate);
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void RemoveTrustedRootCertificate (Foundation.NSData trustedRootIdentifier, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> RemoveTrustedRootCertificateAsync (Foundation.NSData trustedRootIdentifier);
}

New Type: Chip.ChipTvChannel

public class ChipTvChannel : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipTvChannel (Foundation.NSObjectFlag t);
	protected ChipTvChannel (IntPtr handle);
	public ChipTvChannel (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void ChangeChannel (string match, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ChangeChannelAsync (string match);
	public virtual void ChangeChannelByNumber (ushort majorNumber, ushort minorNumber, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ChangeChannelByNumberAsync (ushort majorNumber, ushort minorNumber);
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void ReadAttributeCurrentTvChannel (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeCurrentTvChannelAsync ();
	public virtual void ReadAttributeTvChannelLineup (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeTvChannelLineupAsync ();
	public virtual void ReadAttributeTvChannelList (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeTvChannelListAsync ();
	public virtual void SkipChannel (ushort count, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> SkipChannelAsync (ushort count);
}

New Type: Chip.ChipWakeOnLan

public class ChipWakeOnLan : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipWakeOnLan (Foundation.NSObjectFlag t);
	protected ChipWakeOnLan (IntPtr handle);
	public ChipWakeOnLan (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void ReadAttributeWakeOnLanMacAddress (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeWakeOnLanMacAddressAsync ();
}

New Type: Chip.ChipWindowCovering

public class ChipWindowCovering : Chip.ChipCluster, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ChipWindowCovering (Foundation.NSObjectFlag t);
	protected ChipWindowCovering (IntPtr handle);
	public ChipWindowCovering (ChipDevice device, byte endpoint, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void ConfigureAttributeConfigStatus (ushort minInterval, ushort maxInterval, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ConfigureAttributeConfigStatusAsync (ushort minInterval, ushort maxInterval);
	public virtual void ConfigureAttributeCurrentPositionLift (ushort minInterval, ushort maxInterval, ushort change, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ConfigureAttributeCurrentPositionLiftAsync (ushort minInterval, ushort maxInterval, ushort change);
	public virtual void ConfigureAttributeCurrentPositionTilt (ushort minInterval, ushort maxInterval, ushort change, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ConfigureAttributeCurrentPositionTiltAsync (ushort minInterval, ushort maxInterval, ushort change);
	public virtual void ConfigureAttributeWindowCoveringType (ushort minInterval, ushort maxInterval, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ConfigureAttributeWindowCoveringTypeAsync (ushort minInterval, ushort maxInterval);
	public virtual void DownClose (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> DownCloseAsync ();
	public virtual void GoToLiftPercentage (byte percentageLiftValue, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> GoToLiftPercentageAsync (byte percentageLiftValue);
	public virtual void GoToLiftValue (ushort liftValue, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> GoToLiftValueAsync (ushort liftValue);
	public virtual void GoToTiltPercentage (byte percentageTiltValue, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> GoToTiltPercentageAsync (byte percentageTiltValue);
	public virtual void GoToTiltValue (ushort tiltValue, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> GoToTiltValueAsync (ushort tiltValue);
	public virtual void ReadAttributeClusterRevision (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeClusterRevisionAsync ();
	public virtual void ReadAttributeConfigStatus (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeConfigStatusAsync ();
	public virtual void ReadAttributeCurrentPositionLift (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeCurrentPositionLiftAsync ();
	public virtual void ReadAttributeCurrentPositionTilt (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeCurrentPositionTiltAsync ();
	public virtual void ReadAttributeInstalledClosedLimitLift (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeInstalledClosedLimitLiftAsync ();
	public virtual void ReadAttributeInstalledClosedLimitTilt (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeInstalledClosedLimitTiltAsync ();
	public virtual void ReadAttributeInstalledOpenLimitLift (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeInstalledOpenLimitLiftAsync ();
	public virtual void ReadAttributeInstalledOpenLimitTilt (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeInstalledOpenLimitTiltAsync ();
	public virtual void ReadAttributeMode (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeModeAsync ();
	public virtual void ReadAttributeWindowCoveringType (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReadAttributeWindowCoveringTypeAsync ();
	public virtual void ReportAttributeConfigStatus (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReportAttributeConfigStatusAsync ();
	public virtual void ReportAttributeCurrentPositionLift (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReportAttributeCurrentPositionLiftAsync ();
	public virtual void ReportAttributeCurrentPositionTilt (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReportAttributeCurrentPositionTiltAsync ();
	public virtual void ReportAttributeWindowCoveringType (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> ReportAttributeWindowCoveringTypeAsync ();
	public virtual void Stop (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> StopAsync ();
	public virtual void UpOpen (ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> UpOpenAsync ();
	public virtual void WriteAttributeMode (byte value, ChipResponseHandler responseHandler);
	public virtual System.Threading.Tasks.Task<ChipReadAttributeResult> WriteAttributeModeAsync (byte value);
}

New Type: Chip.IChipDevicePairingDelegate

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

New Type: Chip.IChipPersistentStorageDelegate

public interface IChipPersistentStorageDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DeleteValue (string key);
	public virtual string GetValue (string key);
	public virtual void SetValue (string key, string value);
}

New Namespace CoreAnimation

New Type: CoreAnimation.CAEAGLLayer

public class CAEAGLLayer : CoreAnimation.CALayer, ICAMediaTiming, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, OpenGLES.IEAGLDrawable, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CAEAGLLayer ();
	public CAEAGLLayer (Foundation.NSCoder coder);
	protected CAEAGLLayer (Foundation.NSObjectFlag t);
	protected CAEAGLLayer (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSDictionary DrawableProperties { get; set; }
	public virtual bool PresentsWithTransaction { get; set; }
	// methods
	public static CALayer Create ();
}

New Namespace CoreAudioKit

New Type: CoreAudioKit.CAInterAppAudioSwitcherView

public class CAInterAppAudioSwitcherView : UIKit.UIView, CoreAnimation.ICALayerDelegate, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAccessibilityIdentification, UIKit.IUIAppearance, UIKit.IUIAppearanceContainer, UIKit.IUICoordinateSpace, UIKit.IUIDynamicItem, UIKit.IUIFocusEnvironment, UIKit.IUIFocusItem, UIKit.IUIFocusItemContainer, UIKit.IUILargeContentViewerItem, UIKit.IUIPasteConfigurationSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public CAInterAppAudioSwitcherView ();
	public CAInterAppAudioSwitcherView (CoreGraphics.CGRect bounds);
	public CAInterAppAudioSwitcherView (Foundation.NSCoder coder);
	protected CAInterAppAudioSwitcherView (Foundation.NSObjectFlag t);
	protected CAInterAppAudioSwitcherView (IntPtr handle);
	// properties
	public static CAInterAppAudioSwitcherView.CAInterAppAudioSwitcherViewAppearance Appearance { get; }
	public override IntPtr ClassHandle { get; }
	public virtual bool ShowingAppNames { get; set; }
	// methods
	public static CAInterAppAudioSwitcherView.CAInterAppAudioSwitcherViewAppearance AppearanceWhenContainedIn (System.Type[] containers);
	public virtual nfloat ContentWidth ();
	public static CAInterAppAudioSwitcherView.CAInterAppAudioSwitcherViewAppearance GetAppearance<T> ();
	public static CAInterAppAudioSwitcherView.CAInterAppAudioSwitcherViewAppearance GetAppearance<T> (UIKit.UITraitCollection traits);
	public static CAInterAppAudioSwitcherView.CAInterAppAudioSwitcherViewAppearance GetAppearance (UIKit.UITraitCollection traits);
	public static CAInterAppAudioSwitcherView.CAInterAppAudioSwitcherViewAppearance GetAppearance<T> (UIKit.UITraitCollection traits, System.Type[] containers);
	public static CAInterAppAudioSwitcherView.CAInterAppAudioSwitcherViewAppearance GetAppearance (UIKit.UITraitCollection traits, System.Type[] containers);
	public virtual void SetOutputAudioUnit (AudioUnit.AudioUnit audioUnit);

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

New Type: CoreAudioKit.CAInterAppAudioTransportView

public class CAInterAppAudioTransportView : UIKit.UIView, CoreAnimation.ICALayerDelegate, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAccessibilityIdentification, UIKit.IUIAppearance, UIKit.IUIAppearanceContainer, UIKit.IUICoordinateSpace, UIKit.IUIDynamicItem, UIKit.IUIFocusEnvironment, UIKit.IUIFocusItem, UIKit.IUIFocusItemContainer, UIKit.IUILargeContentViewerItem, UIKit.IUIPasteConfigurationSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public CAInterAppAudioTransportView ();
	public CAInterAppAudioTransportView (CoreGraphics.CGRect bounds);
	public CAInterAppAudioTransportView (Foundation.NSCoder coder);
	protected CAInterAppAudioTransportView (Foundation.NSObjectFlag t);
	protected CAInterAppAudioTransportView (IntPtr handle);
	// properties
	public static CAInterAppAudioTransportView.CAInterAppAudioTransportViewAppearance Appearance { get; }
	public override IntPtr ClassHandle { get; }
	public virtual bool Connected { get; }
	public virtual UIKit.UIFont CurrentTimeLabelFont { get; set; }
	public virtual bool Enabled { get; set; }
	public virtual UIKit.UIColor LabelColor { get; set; }
	public virtual UIKit.UIColor PauseButtonColor { get; set; }
	public virtual UIKit.UIColor PlayButtonColor { get; set; }
	public virtual bool Playing { get; }
	public virtual UIKit.UIColor RecordButtonColor { get; set; }
	public virtual bool Recording { get; }
	public virtual UIKit.UIColor RewindButtonColor { get; set; }
	// methods
	public static CAInterAppAudioTransportView.CAInterAppAudioTransportViewAppearance AppearanceWhenContainedIn (System.Type[] containers);
	public static CAInterAppAudioTransportView.CAInterAppAudioTransportViewAppearance GetAppearance<T> ();
	public static CAInterAppAudioTransportView.CAInterAppAudioTransportViewAppearance GetAppearance<T> (UIKit.UITraitCollection traits);
	public static CAInterAppAudioTransportView.CAInterAppAudioTransportViewAppearance GetAppearance (UIKit.UITraitCollection traits);
	public static CAInterAppAudioTransportView.CAInterAppAudioTransportViewAppearance GetAppearance<T> (UIKit.UITraitCollection traits, System.Type[] containers);
	public static CAInterAppAudioTransportView.CAInterAppAudioTransportViewAppearance GetAppearance (UIKit.UITraitCollection traits, System.Type[] containers);
	public virtual void SetOutputAudioUnit (AudioUnit.AudioUnit audioUnit);

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

New Namespace CoreBluetooth

New Type: CoreBluetooth.CBPeripheralsEventArgs

public class CBPeripheralsEventArgs : System.EventArgs {
	// constructors
	public CBPeripheralsEventArgs (CBPeripheral[] peripherals);
	// properties
	public CBPeripheral[] Peripherals { get; set; }
}

New Namespace CoreLocationUI

New Type: CoreLocationUI.CLLocationButton

public class CLLocationButton : UIKit.UIControl, CoreAnimation.ICALayerDelegate, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAccessibilityIdentification, UIKit.IUIAppearance, UIKit.IUIAppearanceContainer, UIKit.IUIContextMenuInteractionDelegate, UIKit.IUICoordinateSpace, UIKit.IUIDynamicItem, UIKit.IUIFocusEnvironment, UIKit.IUIFocusItem, UIKit.IUIFocusItemContainer, UIKit.IUILargeContentViewerItem, UIKit.IUIPasteConfigurationSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public CLLocationButton ();
	public CLLocationButton (CoreGraphics.CGRect frame);
	public CLLocationButton (Foundation.NSCoder coder);
	protected CLLocationButton (Foundation.NSObjectFlag t);
	protected CLLocationButton (IntPtr handle);
	// properties
	public static CLLocationButton.CLLocationButtonAppearance Appearance { get; }
	public override IntPtr ClassHandle { get; }
	public virtual nfloat CornerRadius { get; set; }
	public virtual nfloat FontSize { get; set; }
	public virtual CLLocationButtonIcon Icon { get; set; }
	public virtual CLLocationButtonLabel Label { get; set; }
	// methods
	public static CLLocationButton.CLLocationButtonAppearance AppearanceWhenContainedIn (System.Type[] containers);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public static CLLocationButton.CLLocationButtonAppearance GetAppearance<T> ();
	public static CLLocationButton.CLLocationButtonAppearance GetAppearance<T> (UIKit.UITraitCollection traits);
	public static CLLocationButton.CLLocationButtonAppearance GetAppearance (UIKit.UITraitCollection traits);
	public static CLLocationButton.CLLocationButtonAppearance GetAppearance<T> (UIKit.UITraitCollection traits, System.Type[] containers);
	public static CLLocationButton.CLLocationButtonAppearance GetAppearance (UIKit.UITraitCollection traits, System.Type[] containers);

	// inner types
	public class CLLocationButtonAppearance : UIKit.UIControl+UIControlAppearance, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearance {
		// constructors
		protected CLLocationButton.CLLocationButtonAppearance (IntPtr handle);
	}
}

New Type: CoreLocationUI.CLLocationButtonIcon

[Serializable]
public enum CLLocationButtonIcon {
	ArrowFilled = 1,
	ArrowOutline = 2,
	None = 0,
}

New Type: CoreLocationUI.CLLocationButtonLabel

[Serializable]
public enum CLLocationButtonLabel {
	CurrentLocation = 1,
	None = 0,
	SendCurrentLocation = 2,
	SendMyCurrentLocation = 3,
	ShareCurrentLocation = 4,
	ShareMyCurrentLocation = 5,
}

New Namespace CoreNFC

New Type: CoreNFC.EncryptionId

[Serializable]
public enum EncryptionId {
	Aes = 79,
	Des = 65,
}

New Type: CoreNFC.INFCFeliCaTag

public interface INFCFeliCaTag : INFCNdefTag, INFCTag, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual Foundation.NSData CurrentIdm { get; }
	public virtual Foundation.NSData CurrentSystemCode { get; }
	// methods
	public virtual void Polling (Foundation.NSData systemCode, PollingRequestCode requestCode, PollingTimeSlot timeSlot, NFCFeliCaPollingCompletionHandler completionHandler);
	public virtual void ReadWithoutEncryption (Foundation.NSData[] serviceCodeList, Foundation.NSData[] blockList, NFCFeliCaReadWithoutEncryptionCompletionHandler completionHandler);
	public virtual void RequestResponse (System.Action<System.nint,Foundation.NSError> completionHandler);
	public virtual void RequestService (Foundation.NSData[] nodeCodeList, System.Action<Foundation.NSData[],Foundation.NSError> completionHandler);
	public virtual void RequestServiceV2 (Foundation.NSData[] nodeCodeList, NFCFeliCaRequestServiceV2CompletionHandler completionHandler);
	public virtual void RequestSpecificationVersion (NFCFeliCaRequestSpecificationVersionCompletionHandler completionHandler);
	public virtual void RequestSystemCode (System.Action<Foundation.NSData[],Foundation.NSError> completionHandler);
	public virtual void ResetMode (NFCFeliCaStatus1Status2CompletionHandler completionHandler);
	public virtual void Send (Foundation.NSData commandPacket, System.Action<Foundation.NSData,Foundation.NSError> completionHandler);
	public virtual void WriteWithoutEncryption (Foundation.NSData[] serviceCodeList, Foundation.NSData[] blockList, Foundation.NSData[] blockData, NFCFeliCaStatus1Status2CompletionHandler completionHandler);
}

New Type: CoreNFC.INFCIso15693Tag

public interface INFCIso15693Tag : INFCNdefTag, INFCTag, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual nuint IcManufacturerCode { get; }
	public virtual Foundation.NSData IcSerialNumber { get; }
	public virtual Foundation.NSData Identifier { get; }
	// methods
	public virtual void ReadMultipleBlocks (NFCIso15693ReadMultipleBlocksConfiguration readConfiguration, System.Action<Foundation.NSData,Foundation.NSError> completionHandler);
	public virtual void SendCustomCommand (NFCIso15693CustomCommandConfiguration commandConfiguration, System.Action<Foundation.NSData,Foundation.NSError> completionHandler);
}

New Type: CoreNFC.INFCIso7816Tag

public interface INFCIso7816Tag : INFCNdefTag, INFCTag, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual Foundation.NSData ApplicationData { get; }
	public virtual Foundation.NSData HistoricalBytes { get; }
	public virtual Foundation.NSData Identifier { get; }
	public virtual string InitialSelectedAid { get; }
	public virtual bool ProprietaryApplicationDataCoding { get; }
	// methods
	public virtual void SendCommand (NFCIso7816Apdu apdu, NFCIso7816SendCompletionHandler completionHandler);
}

New Type: CoreNFC.INFCMiFareTag

public interface INFCMiFareTag : INFCNdefTag, INFCTag, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual Foundation.NSData HistoricalBytes { get; }
	public virtual Foundation.NSData Identifier { get; }
	// methods
	public virtual void SendMiFareCommand (Foundation.NSData command, System.Action<Foundation.NSData,Foundation.NSError> completionHandler);
	public virtual void SendMiFareIso7816Command (NFCIso7816Apdu apdu, NFCIso7816SendCompletionHandler completionHandler);
}

New Type: CoreNFC.INFCNdefReaderSessionDelegate

public interface INFCNdefReaderSessionDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DidDetect (NFCNdefReaderSession session, NFCNdefMessage[] messages);
	public virtual void DidInvalidate (NFCNdefReaderSession session, Foundation.NSError error);
}

New Type: CoreNFC.INFCNdefTag

public interface INFCNdefTag : Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual bool Available { get; }
	// methods
	public virtual void QueryNdefStatus (NFCQueryNdefStatusCompletionHandler completionHandler);
	public virtual void ReadNdef (System.Action<NFCNdefMessage,Foundation.NSError> completionHandler);
	public virtual void WriteLock (System.Action<Foundation.NSError> completionHandler);
	public virtual void WriteNdef (NFCNdefMessage ndefMessage, System.Action<Foundation.NSError> completionHandler);
}

New Type: CoreNFC.INFCReaderSessionContract

public interface INFCReaderSessionContract : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual string AlertMessage { get; set; }
	public virtual bool Ready { get; }
	// methods
	public virtual void BeginSession ();
	public virtual void InvalidateSession ();
}

New Type: CoreNFC.INFCReaderSessionDelegate

public interface INFCReaderSessionDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DidBecomeActive (NFCReaderSession session);
	public virtual void DidDetectTags (NFCReaderSession session, INFCTag[] tags);
	public virtual void DidInvalidate (NFCReaderSession session, Foundation.NSError error);
}

New Type: CoreNFC.INFCTag

public interface INFCTag : Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual bool Available { get; }
	public virtual NFCReaderSession Session { get; }
	public virtual NFCTagType Type { get; }
}

New Type: CoreNFC.INFCTagReaderSessionDelegate

public interface INFCTagReaderSessionDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DidInvalidate (NFCTagReaderSession session, Foundation.NSError error);
}

New Type: CoreNFC.INFCVasReaderSessionDelegate

public interface INFCVasReaderSessionDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DidInvalidate (NFCVasReaderSession session, Foundation.NSError error);
	public virtual void DidReceiveVasResponses (NFCVasReaderSession session, NFCVasResponse[] responses);
}

New Type: CoreNFC.NFCFeliCaPollingCompletionHandler

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

New Type: CoreNFC.NFCFeliCaReadWithoutEncryptionCompletionHandler

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

New Type: CoreNFC.NFCFeliCaRequestServiceV2CompletionHandler

public sealed delegate NFCFeliCaRequestServiceV2CompletionHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public NFCFeliCaRequestServiceV2CompletionHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (nint statusFlag1, nint statusFlag2, EncryptionId encryptionIdentifier, Foundation.NSData[] nodeKeyVersionListAes, Foundation.NSData[] nodeKeyVersionListDes, Foundation.NSError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (nint statusFlag1, nint statusFlag2, EncryptionId encryptionIdentifier, Foundation.NSData[] nodeKeyVersionListAes, Foundation.NSData[] nodeKeyVersionListDes, Foundation.NSError error);
}

New Type: CoreNFC.NFCFeliCaRequestSpecificationVersionCompletionHandler

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

New Type: CoreNFC.NFCFeliCaStatus1Status2CompletionHandler

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

New Type: CoreNFC.NFCGetSystemInfoCompletionHandler

public sealed delegate NFCGetSystemInfoCompletionHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public NFCGetSystemInfoCompletionHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (nint dsfid, nint afi, nint blockSize, nint blockCount, nint icReference, Foundation.NSError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (nint dsfid, nint afi, nint blockSize, nint blockCount, nint icReference, Foundation.NSError error);
}

New Type: CoreNFC.NFCIso15693CustomCommandConfiguration

public class NFCIso15693CustomCommandConfiguration : CoreNFC.NFCTagCommandConfiguration, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NFCIso15693CustomCommandConfiguration ();
	protected NFCIso15693CustomCommandConfiguration (Foundation.NSObjectFlag t);
	protected NFCIso15693CustomCommandConfiguration (IntPtr handle);
	public NFCIso15693CustomCommandConfiguration (nuint manufacturerCode, nuint customCommandCode, Foundation.NSData requestParameters);
	public NFCIso15693CustomCommandConfiguration (nuint manufacturerCode, nuint customCommandCode, Foundation.NSData requestParameters, nuint maximumRetries, double retryInterval);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nuint CustomCommandCode { get; set; }
	public virtual nuint ManufacturerCode { get; set; }
	public virtual Foundation.NSData RequestParameters { get; set; }
}

New Type: CoreNFC.NFCIso15693ReadMultipleBlocksConfiguration

public class NFCIso15693ReadMultipleBlocksConfiguration : CoreNFC.NFCTagCommandConfiguration, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NFCIso15693ReadMultipleBlocksConfiguration ();
	protected NFCIso15693ReadMultipleBlocksConfiguration (Foundation.NSObjectFlag t);
	protected NFCIso15693ReadMultipleBlocksConfiguration (IntPtr handle);
	public NFCIso15693ReadMultipleBlocksConfiguration (Foundation.NSRange range, nuint chunkSize);
	public NFCIso15693ReadMultipleBlocksConfiguration (Foundation.NSRange range, nuint chunkSize, nuint maximumRetries, double retryInterval);
	// properties
	public virtual nuint ChunkSize { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSRange Range { get; set; }
}

New Type: CoreNFC.NFCIso15693ReaderSession

public class NFCIso15693ReaderSession : CoreNFC.NFCReaderSession, INFCReaderSessionContract, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NFCIso15693ReaderSession (Foundation.NSObjectFlag t);
	protected NFCIso15693ReaderSession (IntPtr handle);
	public NFCIso15693ReaderSession (INFCReaderSessionDelegate delegate, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	public static bool ReadingAvailable { get; }
	public static Foundation.NSString TagResponseErrorKey { get; }
	// methods
	public virtual void RestartPolling ();
}

New Type: CoreNFC.NFCIso15693ResponseFlag

[Serializable]
public enum NFCIso15693ResponseFlag {
	BlockSecurityStatusBit5 = 16,
	BlockSecurityStatusBit6 = 32,
	Error = 1,
	FinalResponse = 4,
	ProtocolExtension = 8,
	ResponseBufferValid = 2,
	WaitTimeExtension = 64,
}

New Type: CoreNFC.NFCIso15693TagGetMultipleBlockSecurityStatusCallback

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

New Type: CoreNFC.NFCIso15693TagGetSystemInfoAndUidCallback

public sealed delegate NFCIso15693TagGetSystemInfoAndUidCallback : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public NFCIso15693TagGetSystemInfoAndUidCallback (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (Foundation.NSData uid, nint dsfid, nint afi, nint blockSize, nint blockCount, nint icReference, Foundation.NSError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (Foundation.NSData uid, nint dsfid, nint afi, nint blockSize, nint blockCount, nint icReference, Foundation.NSError error);
}

New Type: CoreNFC.NFCIso15693TagReadMultipleBlocksCallback

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

New Type: CoreNFC.NFCIso15693TagResponseCallback

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

New Type: CoreNFC.NFCIso15693Tag_Extensions

public static class NFCIso15693Tag_Extensions {
	// methods
	public static void Authenticate (this INFCIso15693Tag This, RequestFlag flags, nint cryptoSuiteIdentifier, Foundation.NSData message, NFCIso15693TagResponseCallback completionHandler);
	public static void Challenge (this INFCIso15693Tag This, RequestFlag flags, nint cryptoSuiteIdentifier, Foundation.NSData message, System.Action<Foundation.NSError> completionHandler);
	public static void CustomCommand (this INFCIso15693Tag This, RequestFlag flags, nint customCommandCode, Foundation.NSData customRequestParameters, System.Action<Foundation.NSData,Foundation.NSError> completionHandler);
	public static void ExtendedFastReadMultipleBlocks (this INFCIso15693Tag This, RequestFlag flags, Foundation.NSRange blockRange, NFCIso15693TagReadMultipleBlocksCallback completionHandler);
	public static void ExtendedGetMultipleBlockSecurityStatus (this INFCIso15693Tag This, RequestFlag flags, Foundation.NSRange blockRange, NFCIso15693TagGetMultipleBlockSecurityStatusCallback completionHandler);
	public static void ExtendedLockBlock (this INFCIso15693Tag This, RequestFlag flags, nint blockNumber, System.Action<Foundation.NSError> completionHandler);
	public static void ExtendedReadMultipleBlocks (this INFCIso15693Tag This, RequestFlag flags, Foundation.NSRange blockRange, System.Action<Foundation.NSData[],Foundation.NSError> completionHandler);
	public static void ExtendedReadSingleBlock (this INFCIso15693Tag This, RequestFlag flags, nint blockNumber, System.Action<Foundation.NSData,Foundation.NSError> completionHandler);
	public static void ExtendedWriteMultipleBlocks (this INFCIso15693Tag This, RequestFlag flags, Foundation.NSRange blockRange, Foundation.NSData[] dataBlocks, System.Action<Foundation.NSError> completionHandler);
	public static void ExtendedWriteSingleBlock (this INFCIso15693Tag This, RequestFlag flags, nint blockNumber, Foundation.NSData dataBlock, System.Action<Foundation.NSError> completionHandler);
	public static void FastReadMultipleBlocks (this INFCIso15693Tag This, RequestFlag flags, Foundation.NSRange blockRange, NFCIso15693TagReadMultipleBlocksCallback completionHandler);
	public static void GetMultipleBlockSecurityStatus (this INFCIso15693Tag This, RequestFlag flags, Foundation.NSRange blockRange, System.Action<Foundation.NSNumber[],Foundation.NSError> completionHandler);
	public static void GetSystemInfo (this INFCIso15693Tag This, RequestFlag flags, NFCGetSystemInfoCompletionHandler completionHandler);
	public static void GetSystemInfoAndUid (this INFCIso15693Tag This, RequestFlag flags, NFCIso15693TagGetSystemInfoAndUidCallback completionHandler);
	public static void KeyUpdate (this INFCIso15693Tag This, RequestFlag flags, nint keyIdentifier, Foundation.NSData message, NFCIso15693TagResponseCallback completionHandler);
	public static void LockAfi (this INFCIso15693Tag This, RequestFlag flags, System.Action<Foundation.NSError> completionHandler);
	public static void LockBlock (this INFCIso15693Tag This, RequestFlag flags, byte blockNumber, System.Action<Foundation.NSError> completionHandler);
	public static void LockDfsi (this INFCIso15693Tag This, RequestFlag flags, System.Action<Foundation.NSError> completionHandler);
	public static void LockDsfId (this INFCIso15693Tag This, RequestFlag flags, System.Action<Foundation.NSError> completionHandler);
	public static void ReadBuffer (this INFCIso15693Tag This, RequestFlag flags, NFCIso15693TagResponseCallback completionHandler);
	public static void ReadMultipleBlocks (this INFCIso15693Tag This, RequestFlag flags, Foundation.NSRange blockRange, System.Action<Foundation.NSData[],Foundation.NSError> completionHandler);
	public static void ReadSingleBlock (this INFCIso15693Tag This, RequestFlag flags, byte blockNumber, System.Action<Foundation.NSData,Foundation.NSError> completionHandler);
	public static void ResetToReady (this INFCIso15693Tag This, RequestFlag flags, System.Action<Foundation.NSError> completionHandler);
	public static void Select (this INFCIso15693Tag This, RequestFlag flags, System.Action<Foundation.NSError> completionHandler);
	public static void SendRequest (this INFCIso15693Tag This, nint flags, nint commandCode, Foundation.NSData data, NFCIso15693TagResponseCallback completionHandler);
	public static void StayQuiet (this INFCIso15693Tag This, System.Action<Foundation.NSError> completionHandler);
	public static void WriteAfi (this INFCIso15693Tag This, RequestFlag flags, byte afi, System.Action<Foundation.NSError> completionHandler);
	public static void WriteDsfi (this INFCIso15693Tag This, RequestFlag flags, byte dsfid, System.Action<Foundation.NSError> completionHandler);
	public static void WriteMultipleBlocks (this INFCIso15693Tag This, RequestFlag flags, Foundation.NSRange blockRange, Foundation.NSData[] dataBlocks, System.Action<Foundation.NSError> completionHandler);
	public static void WriteSingleBlock (this INFCIso15693Tag This, RequestFlag flags, byte blockNumber, Foundation.NSData dataBlock, System.Action<Foundation.NSError> completionHandler);
}

New Type: CoreNFC.NFCIso7816Apdu

public class NFCIso7816Apdu : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NFCIso7816Apdu (Foundation.NSData data);
	protected NFCIso7816Apdu (Foundation.NSObjectFlag t);
	protected NFCIso7816Apdu (IntPtr handle);
	public NFCIso7816Apdu (byte instructionClass, byte instructionCode, byte p1Parameter, byte p2Parameter, Foundation.NSData data, nint expectedResponseLength);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSData Data { get; }
	public virtual nint ExpectedResponseLength { get; }
	public virtual byte InstructionClass { get; }
	public virtual byte InstructionCode { get; }
	public virtual byte P1Parameter { get; }
	public virtual byte P2Parameter { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: CoreNFC.NFCIso7816SendCompletionHandler

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

New Type: CoreNFC.NFCMiFareFamily

[Serializable]
public enum NFCMiFareFamily {
	DesFire = 4,
	Plus = 3,
	Ultralight = 2,
	Unknown = 1,
}

New Type: CoreNFC.NFCMiFareTag_Extensions

public static class NFCMiFareTag_Extensions {
	// methods
	public static NFCMiFareFamily GetMifareFamily (this INFCMiFareTag This);
}

New Type: CoreNFC.NFCNdefMessage

public class NFCNdefMessage : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NFCNdefMessage (NFCNdefPayload[] records);
	public NFCNdefMessage (Foundation.NSCoder coder);
	protected NFCNdefMessage (Foundation.NSObjectFlag t);
	protected NFCNdefMessage (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nuint Length { get; }
	public virtual NFCNdefPayload[] Records { get; set; }
	// methods
	public static NFCNdefMessage Create (Foundation.NSData data);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: CoreNFC.NFCNdefPayload

public class NFCNdefPayload : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NFCNdefPayload (Foundation.NSCoder coder);
	protected NFCNdefPayload (Foundation.NSObjectFlag t);
	protected NFCNdefPayload (IntPtr handle);
	public NFCNdefPayload (NFCTypeNameFormat format, Foundation.NSData type, Foundation.NSData identifier, Foundation.NSData payload);
	public NFCNdefPayload (NFCTypeNameFormat format, Foundation.NSData type, Foundation.NSData identifier, Foundation.NSData payload, nuint chunkSize);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSData Identifier { get; set; }
	public virtual Foundation.NSData Payload { get; set; }
	public virtual Foundation.NSData Type { get; set; }
	public virtual NFCTypeNameFormat TypeNameFormat { get; set; }
	public virtual Foundation.NSUrl WellKnownTypeUriPayload { get; }
	// methods
	public static NFCNdefPayload CreateWellKnownTypePayload (Foundation.NSUrl url);
	public static NFCNdefPayload CreateWellKnownTypePayload (string uri);
	public static NFCNdefPayload CreateWellKnownTypePayload (string text, Foundation.NSLocale locale);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public virtual string GetWellKnownTypeTextPayload (out Foundation.NSLocale locale);
}

New Type: CoreNFC.NFCNdefReaderSession

public class NFCNdefReaderSession : CoreNFC.NFCReaderSession, INFCReaderSessionContract, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NFCNdefReaderSession (Foundation.NSObjectFlag t);
	protected NFCNdefReaderSession (IntPtr handle);
	public NFCNdefReaderSession (INFCNdefReaderSessionDelegate delegate, CoreFoundation.DispatchQueue queue, bool invalidateAfterFirstRead);
	// properties
	public override IntPtr ClassHandle { get; }
	public static bool ReadingAvailable { get; }
	// methods
	public virtual void ConnectToTag (INFCNdefTag tag, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task ConnectToTagAsync (INFCNdefTag tag);
	public virtual void RestartPolling ();
}

New Type: CoreNFC.NFCNdefReaderSessionDelegate

public abstract class NFCNdefReaderSessionDelegate : Foundation.NSObject, INFCNdefReaderSessionDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NFCNdefReaderSessionDelegate ();
	protected NFCNdefReaderSessionDelegate (Foundation.NSObjectFlag t);
	protected NFCNdefReaderSessionDelegate (IntPtr handle);
	// methods
	public virtual void DidBecomeActive (NFCNdefReaderSession session);
	public virtual void DidDetect (NFCNdefReaderSession session, NFCNdefMessage[] messages);
	public virtual void DidDetectTags (NFCNdefReaderSession session, INFCNdefTag[] tags);
	public virtual void DidInvalidate (NFCNdefReaderSession session, Foundation.NSError error);
}

New Type: CoreNFC.NFCNdefReaderSessionDelegate_Extensions

public static class NFCNdefReaderSessionDelegate_Extensions {
	// methods
	public static void DidBecomeActive (this INFCNdefReaderSessionDelegate This, NFCNdefReaderSession session);
	public static void DidDetectTags (this INFCNdefReaderSessionDelegate This, NFCNdefReaderSession session, INFCNdefTag[] tags);
}

New Type: CoreNFC.NFCNdefStatus

[Serializable]
public enum NFCNdefStatus {
	NotSupported = 1,
	ReadOnly = 3,
	ReadWrite = 2,
}

New Type: CoreNFC.NFCPollingOption

[Serializable]
public enum NFCPollingOption {
	Iso14443 = 1,
	Iso15693 = 2,
	Iso18092 = 4,
}

New Type: CoreNFC.NFCQueryNdefStatusCompletionHandler

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

New Type: CoreNFC.NFCReaderError

[Serializable]
public enum NFCReaderError {
	InvalidParameter = 3,
	InvalidParameterLength = 4,
	NdefReaderSessionErrorTagNotWritable = 400,
	NdefReaderSessionErrorTagSizeTooSmall = 402,
	NdefReaderSessionErrorTagUpdateFailure = 401,
	NdefReaderSessionErrorZeroLengthMessage = 403,
	ParameterOutOfBound = 5,
	RadioDisabled = 6,
	ReaderSessionInvalidationErrorFirstNDEFTagRead = 204,
	ReaderSessionInvalidationErrorSessionTerminatedUnexpectedly = 202,
	ReaderSessionInvalidationErrorSessionTimeout = 201,
	ReaderSessionInvalidationErrorSystemIsBusy = 203,
	ReaderSessionInvalidationErrorUserCanceled = 200,
	ReaderTransceiveErrorPacketTooLong = 105,
	ReaderTransceiveErrorRetryExceeded = 101,
	ReaderTransceiveErrorSessionInvalidated = 103,
	ReaderTransceiveErrorTagConnectionLost = 100,
	ReaderTransceiveErrorTagNotConnected = 104,
	ReaderTransceiveErrorTagResponseError = 102,
	SecurityViolation = 2,
	TagCommandConfigurationErrorInvalidParameters = 300,
	UnsupportedFeature = 1,
}

New Type: CoreNFC.NFCReaderErrorExtensions

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

New Type: CoreNFC.NFCReaderSession

public class NFCReaderSession : Foundation.NSObject, INFCReaderSessionContract, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NFCReaderSession (Foundation.NSObjectFlag t);
	protected NFCReaderSession (IntPtr handle);
	// properties
	public virtual string AlertMessage { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual INFCReaderSessionDelegate Delegate { get; }
	public static bool ReadingAvailable { get; }
	public virtual bool Ready { get; }
	public virtual CoreFoundation.DispatchQueue SessionQueue { get; }
	// methods
	public virtual void BeginSession ();
	protected override void Dispose (bool disposing);
	public virtual void InvalidateSession ();
	public virtual void InvalidateSession (string errorMessage);
}

New Type: CoreNFC.NFCReaderSessionContract_Extensions

public static class NFCReaderSessionContract_Extensions {
	// methods
	public static void InvalidateSession (this INFCReaderSessionContract This, string errorMessage);
}

New Type: CoreNFC.NFCReaderSessionDelegate

public abstract class NFCReaderSessionDelegate : Foundation.NSObject, INFCReaderSessionDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NFCReaderSessionDelegate ();
	protected NFCReaderSessionDelegate (Foundation.NSObjectFlag t);
	protected NFCReaderSessionDelegate (IntPtr handle);
	// methods
	public virtual void DidBecomeActive (NFCReaderSession session);
	public virtual void DidDetectTags (NFCReaderSession session, INFCTag[] tags);
	public virtual void DidInvalidate (NFCReaderSession session, Foundation.NSError error);
}

New Type: CoreNFC.NFCTagCommandConfiguration

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

New Type: CoreNFC.NFCTagReaderSession

public class NFCTagReaderSession : CoreNFC.NFCReaderSession, INFCReaderSessionContract, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NFCTagReaderSession (Foundation.NSObjectFlag t);
	protected NFCTagReaderSession (IntPtr handle);
	public NFCTagReaderSession (NFCPollingOption pollingOption, INFCTagReaderSessionDelegate delegate, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual INFCTag ConnectedTag { get; }
	public static Foundation.NSString UnexpectedLengthErrorKey { get; }
	// methods
	public virtual void ConnectTo (INFCTag tag, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task ConnectToAsync (INFCTag tag);
	public virtual void RestartPolling ();
}

New Type: CoreNFC.NFCTagReaderSessionDelegate

public abstract class NFCTagReaderSessionDelegate : Foundation.NSObject, INFCTagReaderSessionDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NFCTagReaderSessionDelegate ();
	protected NFCTagReaderSessionDelegate (Foundation.NSObjectFlag t);
	protected NFCTagReaderSessionDelegate (IntPtr handle);
	// methods
	public virtual void DidBecomeActive (NFCTagReaderSession session);
	public virtual void DidDetectTags (NFCTagReaderSession session, INFCTag[] tags);
	public virtual void DidInvalidate (NFCTagReaderSession session, Foundation.NSError error);
}

New Type: CoreNFC.NFCTagReaderSessionDelegate_Extensions

public static class NFCTagReaderSessionDelegate_Extensions {
	// methods
	public static void DidBecomeActive (this INFCTagReaderSessionDelegate This, NFCTagReaderSession session);
	public static void DidDetectTags (this INFCTagReaderSessionDelegate This, NFCTagReaderSession session, INFCTag[] tags);
}

New Type: CoreNFC.NFCTagType

[Serializable]
public enum NFCTagType {
	FeliCa = 2,
	Iso15693 = 1,
	Iso7816Compatible = 3,
	MiFare = 4,
}

New Type: CoreNFC.NFCTag_Extensions

public static class NFCTag_Extensions {
	// methods
	public static INFCFeliCaTag GetNFCFeliCaTag (this INFCTag This);
	public static INFCIso15693Tag GetNFCIso15693Tag (this INFCTag This);
	public static INFCIso7816Tag GetNFCIso7816Tag (this INFCTag This);
	public static INFCMiFareTag GetNFCMiFareTag (this INFCTag This);
}

New Type: CoreNFC.NFCTypeNameFormat

[Serializable]
public enum NFCTypeNameFormat {
	AbsoluteUri = 3,
	Empty = 0,
	Media = 2,
	NFCExternal = 4,
	NFCWellKnown = 1,
	Unchanged = 6,
	Unknown = 5,
}

New Type: CoreNFC.NFCVasCommandConfiguration

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

New Type: CoreNFC.NFCVasReaderSession

public class NFCVasReaderSession : CoreNFC.NFCReaderSession, INFCReaderSessionContract, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NFCVasReaderSession (Foundation.NSObjectFlag t);
	protected NFCVasReaderSession (IntPtr handle);
	public NFCVasReaderSession (NFCVasCommandConfiguration[] commandConfigurations, INFCVasReaderSessionDelegate delegate, CoreFoundation.DispatchQueue queue);
	// properties
	public override IntPtr ClassHandle { get; }
}

New Type: CoreNFC.NFCVasReaderSessionDelegate

public abstract class NFCVasReaderSessionDelegate : Foundation.NSObject, INFCVasReaderSessionDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NFCVasReaderSessionDelegate ();
	protected NFCVasReaderSessionDelegate (Foundation.NSObjectFlag t);
	protected NFCVasReaderSessionDelegate (IntPtr handle);
	// methods
	public virtual void DidBecomeActive (NFCVasReaderSession session);
	public virtual void DidInvalidate (NFCVasReaderSession session, Foundation.NSError error);
	public virtual void DidReceiveVasResponses (NFCVasReaderSession session, NFCVasResponse[] responses);
}

New Type: CoreNFC.NFCVasReaderSessionDelegate_Extensions

public static class NFCVasReaderSessionDelegate_Extensions {
	// methods
	public static void DidBecomeActive (this INFCVasReaderSessionDelegate This, NFCVasReaderSession session);
}

New Type: CoreNFC.NFCVasResponse

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

New Type: CoreNFC.NSUserActivity_CoreNFC

public static class NSUserActivity_CoreNFC {
	// methods
	public static NFCNdefMessage GetNdefMessagePayload (this Foundation.NSUserActivity This);
}

New Type: CoreNFC.PollingRequestCode

[Serializable]
public enum PollingRequestCode {
	CommunicationPerformance = 2,
	NoRequest = 0,
	SystemCode = 1,
}

New Type: CoreNFC.PollingTimeSlot

[Serializable]
public enum PollingTimeSlot {
	Max1 = 0,
	Max16 = 15,
	Max2 = 1,
	Max4 = 3,
	Max8 = 7,
}

New Type: CoreNFC.RequestFlag

[Serializable]
public enum RequestFlag {
	Address = 32,
	CommandSpecificBit8 = 128,
	DualSubCarriers = 1,
	HighDataRate = 2,
	Option = 64,
	ProtocolExtension = 8,
	Select = 16,
}

New Type: CoreNFC.VasErrorCode

[Serializable]
public enum VasErrorCode {
	DataNotActivated = 25223,
	DataNotFound = 27267,
	IncorrectData = 27264,
	Success = 36864,
	UnsupportedApplicationVersion = 25408,
	UserIntervention = 27012,
	WrongLCField = 26368,
	WrongParameters = 27392,
}

New Type: CoreNFC.VasMode

[Serializable]
public enum VasMode {
	Normal = 1,
	UrlOnly = 0,
}

New Namespace CoreTelephony

New Type: CoreTelephony.CTCall

public class CTCall : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CTCall ();
	protected CTCall (Foundation.NSObjectFlag t);
	protected CTCall (IntPtr handle);
	// properties
	public virtual string CallID { get; }
	public virtual string CallState { get; }
	public override IntPtr ClassHandle { get; }
	public string StateConnected { get; }
	public string StateDialing { get; }
	public string StateDisconnected { get; }
	public string StateIncoming { get; }
}

New Type: CoreTelephony.CTCallCenter

public class CTCallCenter : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CTCallCenter ();
	protected CTCallCenter (Foundation.NSObjectFlag t);
	protected CTCallCenter (IntPtr handle);
	// properties
	public virtual System.Action<CTCall> CallEventHandler { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSSet CurrentCalls { get; }
}

New Type: CoreTelephony.CTCarrier

public class CTCarrier : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CTCarrier ();
	protected CTCarrier (Foundation.NSObjectFlag t);
	protected CTCarrier (IntPtr handle);
	// properties
	public virtual bool AllowsVoip { get; }
	public virtual string CarrierName { get; }
	public override IntPtr ClassHandle { get; }
	public virtual string IsoCountryCode { get; }
	public virtual string MobileCountryCode { get; }
	public virtual string MobileNetworkCode { get; }
}

New Type: CoreTelephony.CTCellularData

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

New Type: CoreTelephony.CTCellularDataRestrictedState

[Serializable]
public enum CTCellularDataRestrictedState {
	NotRestricted = 2,
	Restricted = 1,
	Unknown = 0,
}

New Type: CoreTelephony.CTCellularPlanProvisioning

public class CTCellularPlanProvisioning : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CTCellularPlanProvisioning ();
	protected CTCellularPlanProvisioning (Foundation.NSObjectFlag t);
	protected CTCellularPlanProvisioning (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool SupportsCellularPlan { get; }
	// methods
	public virtual void AddPlan (CTCellularPlanProvisioningRequest request, System.Action<CTCellularPlanProvisioningAddPlanResult> completionHandler);
	public virtual System.Threading.Tasks.Task<CTCellularPlanProvisioningAddPlanResult> AddPlanAsync (CTCellularPlanProvisioningRequest request);
}

New Type: CoreTelephony.CTCellularPlanProvisioningAddPlanResult

[Serializable]
public enum CTCellularPlanProvisioningAddPlanResult {
	Fail = 1,
	Success = 2,
	Unknown = 0,
}

New Type: CoreTelephony.CTCellularPlanProvisioningRequest

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

New Type: CoreTelephony.CTErrorDomain

[Serializable]
public enum CTErrorDomain {
	Mach = 2,
	NoError = 0,
	Posix = 1,
}

New Type: CoreTelephony.CTRadioAccessTechnology

public static class CTRadioAccessTechnology {
	// properties
	public static Foundation.NSString CDMA1x { get; }
	public static Foundation.NSString CDMAEVDORev0 { get; }
	public static Foundation.NSString CDMAEVDORevA { get; }
	public static Foundation.NSString CDMAEVDORevB { get; }
	public static Foundation.NSString EHRPD { get; }
	public static Foundation.NSString Edge { get; }
	public static Foundation.NSString GPRS { get; }
	public static Foundation.NSString HSDPA { get; }
	public static Foundation.NSString HSUPA { get; }
	public static Foundation.NSString LTE { get; }
	public static Foundation.NSString NR { get; }
	public static Foundation.NSString NRNsa { get; }
	public static Foundation.NSString WCDMA { get; }
}

New Type: CoreTelephony.CTSubscriber

public class CTSubscriber : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CTSubscriber ();
	protected CTSubscriber (Foundation.NSObjectFlag t);
	protected CTSubscriber (IntPtr handle);
	// properties
	public virtual Foundation.NSData CarrierToken { get; }
	public override IntPtr ClassHandle { get; }
	public ICTSubscriberDelegate Delegate { get; set; }
	public virtual string Identifier { get; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	protected override void Dispose (bool disposing);
}

New Type: CoreTelephony.CTSubscriberInfo

public class CTSubscriberInfo : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CTSubscriberInfo ();
	protected CTSubscriberInfo (Foundation.NSObjectFlag t);
	protected CTSubscriberInfo (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static CTSubscriber Subscriber { get; }
	public static CTSubscriber[] Subscribers { get; }
}

New Type: CoreTelephony.CTTelephonyNetworkInfo

public class CTTelephonyNetworkInfo : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CTTelephonyNetworkInfo ();
	protected CTTelephonyNetworkInfo (Foundation.NSObjectFlag t);
	protected CTTelephonyNetworkInfo (IntPtr handle);
	// properties
	public virtual System.Action<CTCarrier> CellularProviderUpdatedEventHandler { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSString CurrentRadioAccessTechnology { get; }
	public virtual string DataServiceIdentifier { get; }
	public ICTTelephonyNetworkInfoDelegate Delegate { get; set; }
	public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSString> ServiceCurrentRadioAccessTechnology { get; }
	public static Foundation.NSString ServiceRadioAccessTechnologyDidChangeNotification { get; }
	public virtual Foundation.NSDictionary<Foundation.NSString,CoreTelephony.CTCarrier> ServiceSubscriberCellularProviders { get; }
	public virtual System.Action<Foundation.NSString> ServiceSubscriberCellularProvidersDidUpdateNotifier { get; set; }
	public virtual CTCarrier SubscriberCellularProvider { get; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	protected override void Dispose (bool disposing);

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

New Type: CoreTelephony.CTTelephonyNetworkInfoDelegate

public class CTTelephonyNetworkInfoDelegate : Foundation.NSObject, ICTTelephonyNetworkInfoDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CTTelephonyNetworkInfoDelegate ();
	protected CTTelephonyNetworkInfoDelegate (Foundation.NSObjectFlag t);
	protected CTTelephonyNetworkInfoDelegate (IntPtr handle);
	// methods
	public virtual void DataServiceIdentifierDidChange (string identifier);
}

New Type: CoreTelephony.CTTelephonyNetworkInfoDelegate_Extensions

public static class CTTelephonyNetworkInfoDelegate_Extensions {
	// methods
	public static void DataServiceIdentifierDidChange (this ICTTelephonyNetworkInfoDelegate This, string identifier);
}

New Type: CoreTelephony.ICTSubscriberDelegate

public interface ICTSubscriberDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void SubscriberTokenRefreshed (CTSubscriber subscriber);
}

New Type: CoreTelephony.ICTTelephonyNetworkInfoDelegate

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

New Namespace EventKitUI

New Type: EventKitUI.EKCalendarChooser

public class EKCalendarChooser : UIKit.UIViewController, Foundation.INSCoding, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearanceContainer, UIKit.IUIContentContainer, UIKit.IUIFocusEnvironment, UIKit.IUIPasteConfigurationSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public EKCalendarChooser ();
	public EKCalendarChooser (Foundation.NSCoder coder);
	protected EKCalendarChooser (Foundation.NSObjectFlag t);
	protected EKCalendarChooser (IntPtr handle);
	public EKCalendarChooser (string nibName, Foundation.NSBundle bundle);
	public EKCalendarChooser (EKCalendarChooserSelectionStyle selectionStyle, EKCalendarChooserDisplayStyle displayStyle, EventKit.EKEventStore eventStore);
	public EKCalendarChooser (EKCalendarChooserSelectionStyle selectionStyle, EKCalendarChooserDisplayStyle displayStyle, EventKit.EKEntityType entityType, EventKit.EKEventStore eventStore);
	// properties
	public override IntPtr ClassHandle { get; }
	public IEKCalendarChooserDelegate Delegate { get; set; }
	public virtual Foundation.NSSet SelectedCalendars { get; set; }
	public virtual EKCalendarChooserSelectionStyle SelectionStyle { get; set; }
	public virtual bool ShowsCancelButton { get; set; }
	public virtual bool ShowsDoneButton { get; set; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// events
	public event System.EventHandler Cancelled;
	public event System.EventHandler Finished;
	public event System.EventHandler SelectionChanged;
	// methods
	protected override void Dispose (bool disposing);
}

New Type: EventKitUI.EKCalendarChooserDelegate

public class EKCalendarChooserDelegate : Foundation.NSObject, IEKCalendarChooserDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public EKCalendarChooserDelegate ();
	protected EKCalendarChooserDelegate (Foundation.NSObjectFlag t);
	protected EKCalendarChooserDelegate (IntPtr handle);
	// methods
	public virtual void Cancelled (EKCalendarChooser calendarChooser);
	public virtual void Finished (EKCalendarChooser calendarChooser);
	public virtual void SelectionChanged (EKCalendarChooser calendarChooser);
}

New Type: EventKitUI.EKCalendarChooserDelegate_Extensions

public static class EKCalendarChooserDelegate_Extensions {
	// methods
	public static void Cancelled (this IEKCalendarChooserDelegate This, EKCalendarChooser calendarChooser);
	public static void Finished (this IEKCalendarChooserDelegate This, EKCalendarChooser calendarChooser);
	public static void SelectionChanged (this IEKCalendarChooserDelegate This, EKCalendarChooser calendarChooser);
}

New Type: EventKitUI.EKCalendarChooserDisplayStyle

[Serializable]
public enum EKCalendarChooserDisplayStyle {
	AllCalendars = 0,
	WritableCalendarsOnly = 1,
}

New Type: EventKitUI.EKCalendarChooserSelectionStyle

[Serializable]
public enum EKCalendarChooserSelectionStyle {
	Multiple = 1,
	Single = 0,
}

New Type: EventKitUI.EKEventEditController

public sealed delegate EKEventEditController : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public EKEventEditController (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (EKEventEditViewController controller, System.AsyncCallback callback, object object);
	public virtual EventKit.EKCalendar EndInvoke (System.IAsyncResult result);
	public virtual EventKit.EKCalendar Invoke (EKEventEditViewController controller);
}

New Type: EventKitUI.EKEventEditEventArgs

public class EKEventEditEventArgs : System.EventArgs {
	// constructors
	public EKEventEditEventArgs (EKEventEditViewAction action);
	// properties
	public EKEventEditViewAction Action { get; set; }
}

New Type: EventKitUI.EKEventEditViewAction

[Serializable]
public enum EKEventEditViewAction {
	Canceled = 0,
	Deleted = 2,
	Saved = 1,
}

New Type: EventKitUI.EKEventEditViewController

public class EKEventEditViewController : UIKit.UINavigationController, Foundation.INSCoding, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearance, UIKit.IUIAppearanceContainer, UIKit.IUIContentContainer, UIKit.IUIFocusEnvironment, UIKit.IUIPasteConfigurationSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public EKEventEditViewController ();
	public EKEventEditViewController (Foundation.NSCoder coder);
	protected EKEventEditViewController (Foundation.NSObjectFlag t);
	protected EKEventEditViewController (IntPtr handle);
	public EKEventEditViewController (UIKit.UIViewController rootViewController);
	public EKEventEditViewController (string nibName, Foundation.NSBundle bundle);
	// properties
	public static EKEventEditViewController.EKEventEditViewControllerAppearance Appearance { get; }
	public override IntPtr ClassHandle { get; }
	public IEKEventEditViewDelegate EditViewDelegate { get; set; }
	public virtual EventKit.EKEvent Event { get; set; }
	public virtual EventKit.EKEventStore EventStore { get; set; }
	public EKEventEditController GetDefaultCalendarForNewEvents { get; set; }
	public virtual Foundation.NSObject WeakEditViewDelegate { get; set; }
	// events
	public event System.EventHandler<EKEventEditEventArgs> Completed;
	// methods
	public static EKEventEditViewController.EKEventEditViewControllerAppearance AppearanceWhenContainedIn (System.Type[] containers);
	public virtual void CancelEditing ();
	protected override void Dispose (bool disposing);
	public static EKEventEditViewController.EKEventEditViewControllerAppearance GetAppearance<T> ();
	public static EKEventEditViewController.EKEventEditViewControllerAppearance GetAppearance<T> (UIKit.UITraitCollection traits);
	public static EKEventEditViewController.EKEventEditViewControllerAppearance GetAppearance (UIKit.UITraitCollection traits);
	public static EKEventEditViewController.EKEventEditViewControllerAppearance GetAppearance<T> (UIKit.UITraitCollection traits, System.Type[] containers);
	public static EKEventEditViewController.EKEventEditViewControllerAppearance GetAppearance (UIKit.UITraitCollection traits, System.Type[] containers);

	// inner types
	public class EKEventEditViewControllerAppearance : UIKit.UIAppearance, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearance {
		// constructors
		protected EKEventEditViewController.EKEventEditViewControllerAppearance (IntPtr handle);
	}
}

New Type: EventKitUI.EKEventEditViewDelegate

public abstract class EKEventEditViewDelegate : Foundation.NSObject, IEKEventEditViewDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected EKEventEditViewDelegate ();
	protected EKEventEditViewDelegate (Foundation.NSObjectFlag t);
	protected EKEventEditViewDelegate (IntPtr handle);
	// methods
	public virtual void Completed (EKEventEditViewController controller, EKEventEditViewAction action);
	public virtual EventKit.EKCalendar GetDefaultCalendarForNewEvents (EKEventEditViewController controller);
}

New Type: EventKitUI.EKEventEditViewDelegate_Extensions

public static class EKEventEditViewDelegate_Extensions {
	// methods
	public static EventKit.EKCalendar GetDefaultCalendarForNewEvents (this IEKEventEditViewDelegate This, EKEventEditViewController controller);
}

New Type: EventKitUI.EKEventViewAction

[Serializable]
public enum EKEventViewAction {
	Deleted = 2,
	Done = 0,
	Responded = 1,
}

New Type: EventKitUI.EKEventViewController

public class EKEventViewController : UIKit.UIViewController, Foundation.INSCoding, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearanceContainer, UIKit.IUIContentContainer, UIKit.IUIFocusEnvironment, UIKit.IUIPasteConfigurationSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public EKEventViewController ();
	public EKEventViewController (Foundation.NSCoder coder);
	protected EKEventViewController (Foundation.NSObjectFlag t);
	protected EKEventViewController (IntPtr handle);
	public EKEventViewController (string nibName, Foundation.NSBundle bundle);
	// properties
	public virtual bool AllowsCalendarPreview { get; set; }
	public virtual bool AllowsEditing { get; set; }
	public override IntPtr ClassHandle { get; }
	public IEKEventViewDelegate Delegate { get; set; }
	public virtual EventKit.EKEvent Event { get; set; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// events
	public event System.EventHandler<EKEventViewEventArgs> Completed;
	// methods
	protected override void Dispose (bool disposing);
}

New Type: EventKitUI.EKEventViewDelegate

public abstract class EKEventViewDelegate : Foundation.NSObject, IEKEventViewDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected EKEventViewDelegate ();
	protected EKEventViewDelegate (Foundation.NSObjectFlag t);
	protected EKEventViewDelegate (IntPtr handle);
	// methods
	public virtual void Completed (EKEventViewController controller, EKEventViewAction action);
}

New Type: EventKitUI.EKEventViewEventArgs

public class EKEventViewEventArgs : System.EventArgs {
	// constructors
	public EKEventViewEventArgs (EKEventViewAction action);
	// properties
	public EKEventViewAction Action { get; set; }
}

New Type: EventKitUI.EKUIBundle

public static class EKUIBundle {
	// properties
	public static Foundation.NSBundle UIBundle { get; }
}

New Type: EventKitUI.IEKCalendarChooserDelegate

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

New Type: EventKitUI.IEKEventEditViewDelegate

public interface IEKEventEditViewDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void Completed (EKEventEditViewController controller, EKEventEditViewAction action);
}

New Type: EventKitUI.IEKEventViewDelegate

public interface IEKEventViewDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void Completed (EKEventViewController controller, EKEventViewAction action);
}

New Namespace FileProvider

New Type: FileProvider.INSFileProviderItemDecorating

public interface INSFileProviderItemDecorating : INSFileProviderItem, ObjCRuntime.INativeObject, System.IDisposable {
}

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

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

New Type: FileProvider.NSFileProviderDomain

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

New Type: FileProvider.NSFileProviderDomainTestingModes

[Serializable]
public enum NSFileProviderDomainTestingModes {
	AlwaysEnabled = 1,
	Interactive = 2,
}

New Type: FileProvider.NSFileProviderError

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

New Type: FileProvider.NSFileProviderErrorExtensions

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

New Type: FileProvider.NSFileProviderErrorKeys

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

New Type: FileProvider.NSFileProviderFavoriteRank

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

New Type: FileProvider.NSFileProviderFileSystemFlags

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

New Type: FileProvider.NSFileProviderManager

public class NSFileProviderManager : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NSFileProviderManager (Foundation.NSObjectFlag t);
	protected NSFileProviderManager (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static NSFileProviderManager DefaultManager { get; }
	public virtual Foundation.NSUrl DocumentStorageUrl { get; }
	public virtual string ProviderIdentifier { get; }
	// methods
	public static void AddDomain (NSFileProviderDomain domain, System.Action<Foundation.NSError> completionHandler);
	public static System.Threading.Tasks.Task AddDomainAsync (NSFileProviderDomain domain);
	public static NSFileProviderManager FromDomain (NSFileProviderDomain domain);
	public static void GetDomains (System.Action<NSFileProviderDomain[],Foundation.NSError> completionHandler);
	public static System.Threading.Tasks.Task<NSFileProviderDomain[]> GetDomainsAsync ();
	public static Foundation.NSUrl GetPlaceholderUrl (Foundation.NSUrl url);
	public virtual void Register (Foundation.NSUrlSessionTask task, string identifier, System.Action<Foundation.NSError> completion);
	public static void RemoveAllDomains (System.Action<Foundation.NSError> completionHandler);
	public static System.Threading.Tasks.Task RemoveAllDomainsAsync ();
	public static void RemoveDomain (NSFileProviderDomain domain, System.Action<Foundation.NSError> completionHandler);
	public static System.Threading.Tasks.Task RemoveDomainAsync (NSFileProviderDomain domain);
	public virtual void SignalEnumerator (string containerItemIdentifier, System.Action<Foundation.NSError> completion);
	public static bool WritePlaceholder (Foundation.NSUrl placeholderUrl, INSFileProviderItem metadata, out Foundation.NSError error);
}

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 : UIKit.UIViewController, Foundation.INSCoding, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearanceContainer, UIKit.IUIContentContainer, UIKit.IUIFocusEnvironment, UIKit.IUIPasteConfigurationSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// 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 Foundation

New Type: Foundation.NSPortDelegate_Extensions

public static class NSPortDelegate_Extensions {
	// methods
	public static void MessageReceived (this INSPortDelegate This, NSPortMessage message);
}

New Type: Foundation.NSPortMessage

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

New Namespace GLKit

New Type: GLKit.GLKBaseEffect

public class GLKBaseEffect : Foundation.NSObject, Foundation.INSObjectProtocol, IGLKNamedEffect, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GLKBaseEffect ();
	protected GLKBaseEffect (Foundation.NSObjectFlag t);
	protected GLKBaseEffect (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool ColorMaterialEnabled { get; set; }
	public virtual OpenTK.Vector4 ConstantColor { get; set; }
	public virtual GLKEffectPropertyFog Fog { get; }
	public virtual string Label { get; set; }
	public virtual GLKEffectPropertyLight Light0 { get; }
	public virtual GLKEffectPropertyLight Light1 { get; }
	public virtual GLKEffectPropertyLight Light2 { get; }
	public virtual OpenTK.Vector4 LightModelAmbientColor { get; set; }
	public virtual bool LightModelTwoSided { get; set; }
	public virtual GLKLightingType LightingType { get; set; }
	public virtual GLKEffectPropertyMaterial Material { get; }
	public virtual GLKEffectPropertyTexture Texture2d0 { get; }
	public virtual GLKEffectPropertyTexture Texture2d1 { get; }
	public virtual GLKEffectPropertyTexture[] TextureOrder { get; set; }
	public virtual GLKEffectPropertyTransform Transform { get; }
	public virtual bool UseConstantColor { get; set; }
	// methods
	public virtual void PrepareToDraw ();
}

New Type: GLKit.GLKEffectProperty

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

New Type: GLKit.GLKEffectPropertyFog

public class GLKEffectPropertyFog : GLKit.GLKEffectProperty, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GLKEffectPropertyFog ();
	protected GLKEffectPropertyFog (Foundation.NSObjectFlag t);
	protected GLKEffectPropertyFog (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual OpenTK.Vector4 Color { get; set; }
	public virtual float Density { get; set; }
	public virtual bool Enabled { get; set; }
	public virtual float End { get; set; }
	public virtual GLKFogMode Mode { get; set; }
	public virtual float Start { get; set; }
}

New Type: GLKit.GLKEffectPropertyLight

public class GLKEffectPropertyLight : GLKit.GLKEffectProperty, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GLKEffectPropertyLight ();
	protected GLKEffectPropertyLight (Foundation.NSObjectFlag t);
	protected GLKEffectPropertyLight (IntPtr handle);
	// properties
	public virtual OpenTK.Vector4 AmbientColor { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual float ConstantAttenuation { get; set; }
	public virtual OpenTK.Vector4 DiffuseColor { get; set; }
	public virtual bool Enabled { get; set; }
	public virtual float LinearAttenuation { get; set; }
	public virtual OpenTK.Vector4 Position { get; set; }
	public virtual float QuadraticAttenuation { get; set; }
	public virtual OpenTK.Vector4 SpecularColor { get; set; }
	public virtual float SpotCutoff { get; set; }
	public virtual OpenTK.Vector3 SpotDirection { get; set; }
	public virtual float SpotExponent { get; set; }
	public virtual GLKEffectPropertyTransform Transform { get; set; }
}

New Type: GLKit.GLKEffectPropertyMaterial

public class GLKEffectPropertyMaterial : GLKit.GLKEffectProperty, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GLKEffectPropertyMaterial ();
	protected GLKEffectPropertyMaterial (Foundation.NSObjectFlag t);
	protected GLKEffectPropertyMaterial (IntPtr handle);
	// properties
	public virtual OpenTK.Vector4 AmbientColor { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual OpenTK.Vector4 DiffuseColor { get; set; }
	public virtual OpenTK.Vector4 EmissiveColor { get; set; }
	public virtual float Shininess { get; set; }
	public virtual OpenTK.Vector4 SpecularColor { get; set; }
}

New Type: GLKit.GLKEffectPropertyTexture

public class GLKEffectPropertyTexture : GLKit.GLKEffectProperty, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GLKEffectPropertyTexture ();
	protected GLKEffectPropertyTexture (Foundation.NSObjectFlag t);
	protected GLKEffectPropertyTexture (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool Enabled { get; set; }
	public virtual GLKTextureEnvMode EnvMode { get; set; }
	public virtual uint GLName { get; set; }
	public virtual GLKTextureTarget Target { get; set; }
}

New Type: GLKit.GLKEffectPropertyTransform

public class GLKEffectPropertyTransform : GLKit.GLKEffectProperty, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GLKEffectPropertyTransform ();
	protected GLKEffectPropertyTransform (Foundation.NSObjectFlag t);
	protected GLKEffectPropertyTransform (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual OpenTK.Matrix4 ModelViewMatrix { get; set; }
	public virtual OpenTK.Matrix3 NormalMatrix { get; }
	public virtual OpenTK.Matrix4 ProjectionMatrix { get; set; }
}

New Type: GLKit.GLKFogMode

[Serializable]
public enum GLKFogMode {
	Exp = 0,
	Exp2 = 1,
	Linear = 2,
}

New Type: GLKit.GLKLightingType

[Serializable]
public enum GLKLightingType {
	PerPixel = 1,
	PerVertex = 0,
}

New Type: GLKit.GLKMesh

public class GLKMesh : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected GLKMesh (Foundation.NSObjectFlag t);
	protected GLKMesh (IntPtr handle);
	public GLKMesh (ModelIO.MDLMesh mesh, out Foundation.NSError error);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string Name { get; }
	public virtual GLKSubmesh[] Submeshes { get; }
	public virtual GLKMeshBuffer[] VertexBuffers { get; }
	public virtual nuint VertexCount { get; }
	public virtual ModelIO.MDLVertexDescriptor VertexDescriptor { get; }
	// methods
	public static GLKMesh[] FromAsset (ModelIO.MDLAsset asset, out ModelIO.MDLMesh[] sourceMeshes, out Foundation.NSError error);
}

New Type: GLKit.GLKMeshBuffer

public class GLKMeshBuffer : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ModelIO.IMDLMeshBuffer, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected GLKMeshBuffer (Foundation.NSObjectFlag t);
	protected GLKMeshBuffer (IntPtr handle);
	// properties
	public virtual ModelIO.IMDLMeshBufferAllocator Allocator { get; }
	public override IntPtr ClassHandle { get; }
	public virtual uint GlBufferName { get; }
	public virtual nuint Length { get; }
	public virtual ModelIO.MDLMeshBufferMap Map { get; }
	public virtual nuint Offset { get; }
	public virtual ModelIO.MDLMeshBufferType Type { get; }
	public virtual ModelIO.IMDLMeshBufferZone Zone { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void FillData (Foundation.NSData data, nuint offset);
}

New Type: GLKit.GLKMeshBufferAllocator

public class GLKMeshBufferAllocator : Foundation.NSObject, Foundation.INSObjectProtocol, ModelIO.IMDLMeshBufferAllocator, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected GLKMeshBufferAllocator (Foundation.NSObjectFlag t);
	protected GLKMeshBufferAllocator (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual ModelIO.IMDLMeshBuffer CreateBuffer (Foundation.NSData data, ModelIO.MDLMeshBufferType type);
	public virtual ModelIO.IMDLMeshBuffer CreateBuffer (nuint length, ModelIO.MDLMeshBufferType type);
	public virtual ModelIO.IMDLMeshBuffer CreateBuffer (ModelIO.IMDLMeshBufferZone zone, Foundation.NSData data, ModelIO.MDLMeshBufferType type);
	public virtual ModelIO.IMDLMeshBuffer CreateBuffer (ModelIO.IMDLMeshBufferZone zone, nuint length, ModelIO.MDLMeshBufferType type);
	public virtual ModelIO.IMDLMeshBufferZone CreateZone (nuint capacity);
	public virtual ModelIO.IMDLMeshBufferZone CreateZone (Foundation.NSNumber[] sizes, Foundation.NSNumber[] types);
}

New Type: GLKit.GLKModelError

public static class GLKModelError {
	// properties
	public static Foundation.NSString Domain { get; }
	public static Foundation.NSString Key { get; }
}

New Type: GLKit.GLKNamedEffect

public abstract class GLKNamedEffect : Foundation.NSObject, Foundation.INSObjectProtocol, IGLKNamedEffect, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected GLKNamedEffect ();
	protected GLKNamedEffect (Foundation.NSObjectFlag t);
	protected GLKNamedEffect (IntPtr handle);
	// methods
	public virtual void PrepareToDraw ();
}

New Type: GLKit.GLKReflectionMapEffect

public class GLKReflectionMapEffect : GLKit.GLKBaseEffect, Foundation.INSObjectProtocol, IGLKNamedEffect, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GLKReflectionMapEffect ();
	protected GLKReflectionMapEffect (Foundation.NSObjectFlag t);
	protected GLKReflectionMapEffect (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual OpenTK.Matrix3 Matrix { get; set; }
	public virtual GLKEffectPropertyTexture TextureCubeMap { get; }
	// methods
	public virtual void PrepareToDraw ();
}

New Type: GLKit.GLKSkyboxEffect

public class GLKSkyboxEffect : Foundation.NSObject, Foundation.INSObjectProtocol, IGLKNamedEffect, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GLKSkyboxEffect ();
	protected GLKSkyboxEffect (Foundation.NSObjectFlag t);
	protected GLKSkyboxEffect (IntPtr handle);
	// properties
	public virtual OpenTK.Vector3 Center { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual string Label { get; set; }
	public virtual GLKEffectPropertyTexture TextureCubeMap { get; }
	public virtual GLKEffectPropertyTransform Transform { get; }
	public virtual float XSize { get; set; }
	public virtual float YSize { get; set; }
	public virtual float ZSize { get; set; }
	// methods
	public virtual void Draw ();
	public virtual void PrepareToDraw ();
}

New Type: GLKit.GLKSubmesh

public class GLKSubmesh : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected GLKSubmesh (Foundation.NSObjectFlag t);
	protected GLKSubmesh (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual GLKMeshBuffer ElementBuffer { get; }
	public virtual int ElementCount { get; }
	public virtual GLKMesh Mesh { get; }
	public virtual uint Mode { get; }
	public virtual string Name { get; }
	public virtual uint Type { get; }
	// methods
	protected override void Dispose (bool disposing);
}

New Type: GLKit.GLKTextureEnvMode

[Serializable]
public enum GLKTextureEnvMode {
	Decal = 2,
	Modulate = 1,
	Replace = 0,
}

New Type: GLKit.GLKTextureInfo

public class GLKTextureInfo : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GLKTextureInfo ();
	protected GLKTextureInfo (Foundation.NSObjectFlag t);
	protected GLKTextureInfo (IntPtr handle);
	// properties
	public virtual GLKTextureInfoAlphaState AlphaState { get; }
	public virtual uint ArrayLength { get; }
	public override IntPtr ClassHandle { get; }
	public virtual bool ContainsMipmaps { get; }
	public virtual uint Depth { get; }
	public virtual int Height { get; }
	public virtual uint MimapLevelCount { get; }
	public virtual uint Name { get; }
	public virtual GLKTextureTarget Target { get; }
	public virtual GLKTextureInfoOrigin TextureOrigin { get; }
	public virtual int Width { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: GLKit.GLKTextureInfoAlphaState

[Serializable]
public enum GLKTextureInfoAlphaState {
	NonPremultiplied = 1,
	None = 0,
	Premultiplied = 2,
}

New Type: GLKit.GLKTextureInfoOrigin

[Serializable]
public enum GLKTextureInfoOrigin {
	BottomLeft = 2,
	TopLeft = 1,
	Unknown = 0,
}

New Type: GLKit.GLKTextureLoader

public class GLKTextureLoader : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GLKTextureLoader ();
	protected GLKTextureLoader (Foundation.NSObjectFlag t);
	public GLKTextureLoader (OpenGLES.EAGLSharegroup sharegroup);
	protected GLKTextureLoader (IntPtr handle);
	// properties
	public static Foundation.NSString ApplyPremultiplication { get; }
	public override IntPtr ClassHandle { get; }
	public static Foundation.NSString ErrorDomain { get; }
	public static Foundation.NSString ErrorKey { get; }
	public static Foundation.NSString GLErrorKey { get; }
	public static Foundation.NSString GenerateMipmaps { get; }
	public static Foundation.NSString GrayscaleAsAlpha { get; }
	public static Foundation.NSString OriginBottomLeft { get; }
	public static Foundation.NSString SRGB { get; }
	// methods
	public virtual void BeginLoadCubeMap (Foundation.NSUrl filePath, Foundation.NSDictionary textureOperations, CoreFoundation.DispatchQueue queue, GLKTextureLoaderCallback onComplete);
	public void BeginLoadCubeMap (Foundation.NSUrl filePath, GLKTextureOperations textureOperations, CoreFoundation.DispatchQueue queue, GLKTextureLoaderCallback onComplete);
	public void BeginLoadCubeMap (Foundation.NSUrl[] urls, Foundation.NSDictionary textureOperations, CoreFoundation.DispatchQueue queue, GLKTextureLoaderCallback onComplete);
	public void BeginLoadCubeMap (Foundation.NSUrl[] urls, GLKTextureOperations textureOperations, CoreFoundation.DispatchQueue queue, GLKTextureLoaderCallback onComplete);
	public virtual void BeginLoadCubeMap (string fileName, Foundation.NSDictionary textureOperations, CoreFoundation.DispatchQueue queue, GLKTextureLoaderCallback onComplete);
	public void BeginLoadCubeMap (string fileName, GLKTextureOperations textureOperations, CoreFoundation.DispatchQueue queue, GLKTextureLoaderCallback onComplete);
	public void BeginLoadCubeMap (string[] files, Foundation.NSDictionary textureOperations, CoreFoundation.DispatchQueue queue, GLKTextureLoaderCallback onComplete);
	public void BeginLoadCubeMap (string[] files, GLKTextureOperations textureOperations, CoreFoundation.DispatchQueue queue, GLKTextureLoaderCallback onComplete);
	public virtual System.Threading.Tasks.Task<GLKTextureInfo> BeginLoadCubeMapAsync (Foundation.NSUrl filePath, Foundation.NSDictionary textureOperations, CoreFoundation.DispatchQueue queue);
	public virtual System.Threading.Tasks.Task<GLKTextureInfo> BeginLoadCubeMapAsync (string fileName, Foundation.NSDictionary textureOperations, CoreFoundation.DispatchQueue queue);
	public virtual void BeginTextureLoad (CoreGraphics.CGImage image, Foundation.NSDictionary textureOperations, CoreFoundation.DispatchQueue queue, GLKTextureLoaderCallback onComplete);
	public void BeginTextureLoad (CoreGraphics.CGImage image, GLKTextureOperations textureOperations, CoreFoundation.DispatchQueue queue, GLKTextureLoaderCallback onComplete);
	public virtual void BeginTextureLoad (Foundation.NSData data, Foundation.NSDictionary textureOperations, CoreFoundation.DispatchQueue queue, GLKTextureLoaderCallback onComplete);
	public void BeginTextureLoad (Foundation.NSData data, GLKTextureOperations textureOperations, CoreFoundation.DispatchQueue queue, GLKTextureLoaderCallback onComplete);
	public virtual void BeginTextureLoad (Foundation.NSUrl filePath, Foundation.NSDictionary textureOperations, CoreFoundation.DispatchQueue queue, GLKTextureLoaderCallback onComplete);
	public void BeginTextureLoad (Foundation.NSUrl filePath, GLKTextureOperations textureOperations, CoreFoundation.DispatchQueue queue, GLKTextureLoaderCallback onComplete);
	public virtual void BeginTextureLoad (string file, Foundation.NSDictionary textureOperations, CoreFoundation.DispatchQueue queue, GLKTextureLoaderCallback onComplete);
	public void BeginTextureLoad (string file, GLKTextureOperations textureOperations, CoreFoundation.DispatchQueue queue, GLKTextureLoaderCallback onComplete);
	public virtual void BeginTextureLoad (string name, nfloat scaleFactor, Foundation.NSBundle bundle, Foundation.NSDictionary<Foundation.NSString,Foundation.NSNumber> options, CoreFoundation.DispatchQueue queue, GLKTextureLoaderCallback block);
	public virtual System.Threading.Tasks.Task<GLKTextureInfo> BeginTextureLoadAsync (CoreGraphics.CGImage image, Foundation.NSDictionary textureOperations, CoreFoundation.DispatchQueue queue);
	public virtual System.Threading.Tasks.Task<GLKTextureInfo> BeginTextureLoadAsync (Foundation.NSData data, Foundation.NSDictionary textureOperations, CoreFoundation.DispatchQueue queue);
	public virtual System.Threading.Tasks.Task<GLKTextureInfo> BeginTextureLoadAsync (Foundation.NSUrl filePath, Foundation.NSDictionary textureOperations, CoreFoundation.DispatchQueue queue);
	public virtual System.Threading.Tasks.Task<GLKTextureInfo> BeginTextureLoadAsync (string file, Foundation.NSDictionary textureOperations, CoreFoundation.DispatchQueue queue);
	public virtual System.Threading.Tasks.Task<GLKTextureInfo> BeginTextureLoadAsync (string name, nfloat scaleFactor, Foundation.NSBundle bundle, Foundation.NSDictionary<Foundation.NSString,Foundation.NSNumber> options, CoreFoundation.DispatchQueue queue);
	public static GLKTextureInfo CubeMapFromFile (string path, Foundation.NSDictionary textureOperations, out Foundation.NSError error);
	public static GLKTextureInfo CubeMapFromFile (string path, GLKTextureOperations textureOperations, out Foundation.NSError error);
	public static GLKTextureInfo CubeMapFromFiles (string[] files, Foundation.NSDictionary textureOperations, out Foundation.NSError error);
	public static GLKTextureInfo CubeMapFromFiles (string[] files, GLKTextureOperations textureOperations, out Foundation.NSError error);
	public static GLKTextureInfo CubeMapFromUrl (Foundation.NSUrl url, Foundation.NSDictionary textureOperations, out Foundation.NSError error);
	public static GLKTextureInfo CubeMapFromUrl (Foundation.NSUrl url, GLKTextureOperations textureOperations, out Foundation.NSError error);
	public static GLKTextureInfo CubeMapFromUrls (Foundation.NSUrl[] urls, Foundation.NSDictionary textureOperations, out Foundation.NSError error);
	public static GLKTextureInfo CubeMapFromUrls (Foundation.NSUrl[] urls, GLKTextureOperations textureOperations, out Foundation.NSError error);
	public static GLKTextureInfo FromData (Foundation.NSData data, Foundation.NSDictionary textureOperations, out Foundation.NSError error);
	public static GLKTextureInfo FromData (Foundation.NSData data, GLKTextureOperations textureOperations, out Foundation.NSError error);
	public static GLKTextureInfo FromFile (string path, Foundation.NSDictionary textureOperations, out Foundation.NSError error);
	public static GLKTextureInfo FromFile (string path, GLKTextureOperations textureOperations, out Foundation.NSError error);
	public static GLKTextureInfo FromImage (CoreGraphics.CGImage cgImage, Foundation.NSDictionary textureOperations, out Foundation.NSError error);
	public static GLKTextureInfo FromImage (CoreGraphics.CGImage cgImage, GLKTextureOperations textureOperations, out Foundation.NSError error);
	public static GLKTextureInfo FromName (string name, nfloat scaleFactor, Foundation.NSBundle bundle, Foundation.NSDictionary<Foundation.NSString,Foundation.NSNumber> options, out Foundation.NSError outError);
	public static GLKTextureInfo FromUrl (Foundation.NSUrl url, Foundation.NSDictionary textureOperations, out Foundation.NSError error);
	public static GLKTextureInfo FromUrl (Foundation.NSUrl url, GLKTextureOperations textureOperations, out Foundation.NSError error);
}

New Type: GLKit.GLKTextureLoaderCallback

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

New Type: GLKit.GLKTextureLoaderError

[Serializable]
public enum GLKTextureLoaderError {
	AlphaPremultiplicationFailure = 16,
	CompressedTextureUpload = 7,
	CubeMapInvalidNumFiles = 6,
	DataPreprocessingFailure = 12,
	FileOrURLNotFound = 0,
	IncompatibleFormatSRGB = 18,
	InvalidCGImage = 2,
	InvalidEAGLContext = 17,
	InvalidNSData = 1,
	MipmapUnsupported = 13,
	PVRAtlasUnsupported = 5,
	ReorientationFailure = 15,
	UncompressedTextureUpload = 8,
	UnknownFileType = 4,
	UnknownPathType = 3,
	UnsupportedBitDepth = 10,
	UnsupportedCubeMapDimensions = 9,
	UnsupportedOrientation = 14,
	UnsupportedPVRFormat = 11,
	UnsupportedTextureTarget = 19,
}

New Type: GLKit.GLKTextureOperations

public class GLKTextureOperations : Foundation.DictionaryContainer {
	// constructors
	public GLKTextureOperations ();
	public GLKTextureOperations (Foundation.NSDictionary options);
	// properties
	public bool? ApplyPremultiplication { get; set; }
	public bool? GenerateMipmaps { get; set; }
	public bool? GrayscaleAsAlpha { get; set; }
	public bool? OriginBottomLeft { get; set; }
	public bool? SRGB { get; set; }
}

New Type: GLKit.GLKTextureTarget

[Serializable]
public enum GLKTextureTarget {
	CubeMap = 34067,
	TargetCt = 2,
	Texture2D = 3553,
}

New Type: GLKit.GLKVertexAttrib

[Serializable]
public enum GLKVertexAttrib {
	Color = 2,
	Normal = 1,
	Position = 0,
	TexCoord0 = 3,
	TexCoord1 = 4,
}

New Type: GLKit.GLKVertexAttributeParameters

public struct GLKVertexAttributeParameters {
	// fields
	public bool Normalized;
	public uint Size;
	public uint Type;
	// methods
	public static GLKVertexAttributeParameters FromVertexFormat (ModelIO.MDLVertexFormat vertexFormat);
}

New Type: GLKit.GLKView

public class GLKView : UIKit.UIView, CoreAnimation.ICALayerDelegate, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAccessibilityIdentification, UIKit.IUIAppearance, UIKit.IUIAppearanceContainer, UIKit.IUICoordinateSpace, UIKit.IUIDynamicItem, UIKit.IUIFocusEnvironment, UIKit.IUIFocusItem, UIKit.IUIFocusItemContainer, UIKit.IUILargeContentViewerItem, UIKit.IUIPasteConfigurationSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public GLKView ();
	public GLKView (CoreGraphics.CGRect frame);
	public GLKView (Foundation.NSCoder coder);
	protected GLKView (Foundation.NSObjectFlag t);
	protected GLKView (IntPtr handle);
	public GLKView (CoreGraphics.CGRect frame, OpenGLES.EAGLContext context);
	// properties
	public static GLKView.GLKViewAppearance Appearance { get; }
	public override IntPtr ClassHandle { get; }
	public virtual OpenGLES.EAGLContext Context { get; set; }
	public IGLKViewDelegate Delegate { get; set; }
	public virtual GLKViewDrawableColorFormat DrawableColorFormat { get; set; }
	public virtual GLKViewDrawableDepthFormat DrawableDepthFormat { get; set; }
	public virtual nint DrawableHeight { get; }
	public virtual GLKViewDrawableMultisample DrawableMultisample { get; set; }
	public virtual GLKViewDrawableStencilFormat DrawableStencilFormat { get; set; }
	public virtual nint DrawableWidth { get; }
	public virtual bool EnableSetNeedsDisplay { get; set; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// events
	public event System.EventHandler<GLKViewDrawEventArgs> DrawInRect;
	// methods
	public static GLKView.GLKViewAppearance AppearanceWhenContainedIn (System.Type[] containers);
	public virtual void BindDrawable ();
	public virtual void DeleteDrawable ();
	public virtual void Display ();
	protected override void Dispose (bool disposing);
	public static GLKView.GLKViewAppearance GetAppearance<T> ();
	public static GLKView.GLKViewAppearance GetAppearance<T> (UIKit.UITraitCollection traits);
	public static GLKView.GLKViewAppearance GetAppearance (UIKit.UITraitCollection traits);
	public static GLKView.GLKViewAppearance GetAppearance<T> (UIKit.UITraitCollection traits, System.Type[] containers);
	public static GLKView.GLKViewAppearance GetAppearance (UIKit.UITraitCollection traits, System.Type[] containers);
	public virtual UIKit.UIImage Snapshot ();

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

New Type: GLKit.GLKViewController

public class GLKViewController : UIKit.UIViewController, Foundation.INSCoding, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, IGLKViewDelegate, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearanceContainer, UIKit.IUIContentContainer, UIKit.IUIFocusEnvironment, UIKit.IUIPasteConfigurationSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public GLKViewController ();
	public GLKViewController (Foundation.NSCoder coder);
	protected GLKViewController (Foundation.NSObjectFlag t);
	protected GLKViewController (IntPtr handle);
	public GLKViewController (string nibName, Foundation.NSBundle bundle);
	// properties
	public override IntPtr ClassHandle { get; }
	public IGLKViewControllerDelegate Delegate { get; set; }
	public virtual nint FramesDisplayed { get; }
	public virtual nint FramesPerSecond { get; }
	public virtual bool PauseOnWillResignActive { get; set; }
	public virtual bool Paused { get; set; }
	public virtual nint PreferredFramesPerSecond { get; set; }
	public virtual bool ResumeOnDidBecomeActive { get; set; }
	public virtual double TimeSinceFirstResume { get; }
	public virtual double TimeSinceLastDraw { get; }
	public virtual double TimeSinceLastResume { get; }
	public virtual double TimeSinceLastUpdate { get; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	protected override void Dispose (bool disposing);
	public virtual void DrawInRect (GLKView view, CoreGraphics.CGRect rect);
	public virtual void Update ();
}

New Type: GLKit.GLKViewControllerDelegate

public abstract class GLKViewControllerDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, IGLKViewControllerDelegate, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected GLKViewControllerDelegate ();
	protected GLKViewControllerDelegate (Foundation.NSObjectFlag t);
	protected GLKViewControllerDelegate (IntPtr handle);
	// methods
	public virtual void Update (GLKViewController controller);
	public virtual void WillPause (GLKViewController controller, bool pause);
}

New Type: GLKit.GLKViewControllerDelegate_Extensions

public static class GLKViewControllerDelegate_Extensions {
	// methods
	public static void WillPause (this IGLKViewControllerDelegate This, GLKViewController controller, bool pause);
}

New Type: GLKit.GLKViewDelegate

public abstract class GLKViewDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, IGLKViewDelegate, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected GLKViewDelegate ();
	protected GLKViewDelegate (Foundation.NSObjectFlag t);
	protected GLKViewDelegate (IntPtr handle);
	// methods
	public virtual void DrawInRect (GLKView view, CoreGraphics.CGRect rect);
}

New Type: GLKit.GLKViewDrawEventArgs

public class GLKViewDrawEventArgs : System.EventArgs {
	// constructors
	public GLKViewDrawEventArgs (CoreGraphics.CGRect rect);
	// properties
	public CoreGraphics.CGRect Rect { get; set; }
}

New Type: GLKit.GLKViewDrawableColorFormat

[Serializable]
public enum GLKViewDrawableColorFormat {
	RGB565 = 1,
	RGBA8888 = 0,
	SRGBA8888 = 2,
}

New Type: GLKit.GLKViewDrawableDepthFormat

[Serializable]
public enum GLKViewDrawableDepthFormat {
	Format16 = 1,
	Format24 = 2,
	None = 0,
}

New Type: GLKit.GLKViewDrawableMultisample

[Serializable]
public enum GLKViewDrawableMultisample {
	None = 0,
	Sample4x = 1,
}

New Type: GLKit.GLKViewDrawableStencilFormat

[Serializable]
public enum GLKViewDrawableStencilFormat {
	Format8 = 1,
	FormatNone = 0,
}

New Type: GLKit.IGLKNamedEffect

public interface IGLKNamedEffect : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void PrepareToDraw ();
}

New Type: GLKit.IGLKViewControllerDelegate

public interface IGLKViewControllerDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void Update (GLKViewController controller);
}

New Type: GLKit.IGLKViewDelegate

public interface IGLKViewDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DrawInRect (GLKView view, CoreGraphics.CGRect rect);
}

New Namespace GameKit

New Type: GameKit.GKAchievementViewController

public class GKAchievementViewController : GameKit.GKGameCenterViewController, Foundation.INSCoding, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearance, UIKit.IUIAppearanceContainer, UIKit.IUIContentContainer, UIKit.IUIFocusEnvironment, UIKit.IUIPasteConfigurationSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public GKAchievementViewController ();
	public GKAchievementViewController (Foundation.NSCoder coder);
	protected GKAchievementViewController (Foundation.NSObjectFlag t);
	protected GKAchievementViewController (IntPtr handle);
	// properties
	public static GKAchievementViewController.GKAchievementViewControllerAppearance Appearance { get; }
	public override IntPtr ClassHandle { get; }
	public IGKAchievementViewControllerDelegate Delegate { get; set; }
	public override Foundation.NSObject WeakDelegate { get; set; }
	// events
	public event System.EventHandler DidFinish;
	// methods
	public static GKAchievementViewController.GKAchievementViewControllerAppearance AppearanceWhenContainedIn (System.Type[] containers);
	protected override void Dispose (bool disposing);
	public static GKAchievementViewController.GKAchievementViewControllerAppearance GetAppearance<T> ();
	public static GKAchievementViewController.GKAchievementViewControllerAppearance GetAppearance<T> (UIKit.UITraitCollection traits);
	public static GKAchievementViewController.GKAchievementViewControllerAppearance GetAppearance (UIKit.UITraitCollection traits);
	public static GKAchievementViewController.GKAchievementViewControllerAppearance GetAppearance<T> (UIKit.UITraitCollection traits, System.Type[] containers);
	public static GKAchievementViewController.GKAchievementViewControllerAppearance GetAppearance (UIKit.UITraitCollection traits, System.Type[] containers);

	// inner types
	public class GKAchievementViewControllerAppearance : UIKit.UIAppearance, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearance {
		// constructors
		protected GKAchievementViewController.GKAchievementViewControllerAppearance (IntPtr handle);
	}
}

New Type: GameKit.GKAchievementViewControllerDelegate

public abstract class GKAchievementViewControllerDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, IGKAchievementViewControllerDelegate, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected GKAchievementViewControllerDelegate ();
	protected GKAchievementViewControllerDelegate (Foundation.NSObjectFlag t);
	protected GKAchievementViewControllerDelegate (IntPtr handle);
	// methods
	public virtual void DidFinish (GKAchievementViewController viewController);
}

New Type: GameKit.GKAuthenticationType

[Serializable]
public enum GKAuthenticationType {
	AuthKitInvocation = 2,
	GreenBuddyUI = 1,
	WithoutUI = 0,
}

New Type: GameKit.GKFriendRequestComposeViewController

public class GKFriendRequestComposeViewController : UIKit.UINavigationController, Foundation.INSCoding, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearance, UIKit.IUIAppearanceContainer, UIKit.IUIContentContainer, UIKit.IUIFocusEnvironment, UIKit.IUIPasteConfigurationSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public GKFriendRequestComposeViewController ();
	public GKFriendRequestComposeViewController (Foundation.NSCoder coder);
	protected GKFriendRequestComposeViewController (Foundation.NSObjectFlag t);
	protected GKFriendRequestComposeViewController (IntPtr handle);
	// properties
	public static GKFriendRequestComposeViewController.GKFriendRequestComposeViewControllerAppearance Appearance { get; }
	public override IntPtr ClassHandle { get; }
	public IGKFriendRequestComposeViewControllerDelegate ComposeViewDelegate { get; set; }
	public static nint MaxNumberOfRecipients { get; }
	public virtual Foundation.NSObject WeakComposeViewDelegate { get; set; }
	// events
	public event System.EventHandler DidFinish;
	// methods
	public virtual void AddRecipientPlayers (GKPlayer[] players);
	public virtual void AddRecipientsFromEmails (string[] emailAddresses);
	public virtual void AddRecipientsFromPlayerIDs (string[] playerIDs);
	public static GKFriendRequestComposeViewController.GKFriendRequestComposeViewControllerAppearance AppearanceWhenContainedIn (System.Type[] containers);
	protected override void Dispose (bool disposing);
	public static GKFriendRequestComposeViewController.GKFriendRequestComposeViewControllerAppearance GetAppearance<T> ();
	public static GKFriendRequestComposeViewController.GKFriendRequestComposeViewControllerAppearance GetAppearance<T> (UIKit.UITraitCollection traits);
	public static GKFriendRequestComposeViewController.GKFriendRequestComposeViewControllerAppearance GetAppearance (UIKit.UITraitCollection traits);
	public static GKFriendRequestComposeViewController.GKFriendRequestComposeViewControllerAppearance GetAppearance<T> (UIKit.UITraitCollection traits, System.Type[] containers);
	public static GKFriendRequestComposeViewController.GKFriendRequestComposeViewControllerAppearance GetAppearance (UIKit.UITraitCollection traits, System.Type[] containers);
	public virtual void SetMessage (string message);

	// inner types
	public class GKFriendRequestComposeViewControllerAppearance : UIKit.UIAppearance, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearance {
		// constructors
		protected GKFriendRequestComposeViewController.GKFriendRequestComposeViewControllerAppearance (IntPtr handle);
	}
}

New Type: GameKit.GKFriendRequestComposeViewControllerDelegate

public abstract class GKFriendRequestComposeViewControllerDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, IGKFriendRequestComposeViewControllerDelegate, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected GKFriendRequestComposeViewControllerDelegate ();
	protected GKFriendRequestComposeViewControllerDelegate (Foundation.NSObjectFlag t);
	protected GKFriendRequestComposeViewControllerDelegate (IntPtr handle);
	// methods
	public virtual void DidFinish (GKFriendRequestComposeViewController viewController);
}

New Type: GameKit.GKLeaderboardViewController

public class GKLeaderboardViewController : GameKit.GKGameCenterViewController, Foundation.INSCoding, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearance, UIKit.IUIAppearanceContainer, UIKit.IUIContentContainer, UIKit.IUIFocusEnvironment, UIKit.IUIPasteConfigurationSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public GKLeaderboardViewController ();
	public GKLeaderboardViewController (Foundation.NSCoder coder);
	protected GKLeaderboardViewController (Foundation.NSObjectFlag t);
	protected GKLeaderboardViewController (IntPtr handle);
	// properties
	public static GKLeaderboardViewController.GKLeaderboardViewControllerAppearance Appearance { get; }
	public virtual string Category { get; set; }
	public override IntPtr ClassHandle { get; }
	public IGKLeaderboardViewControllerDelegate Delegate { get; set; }
	public virtual GKLeaderboardTimeScope TimeScope { get; set; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// events
	public event System.EventHandler DidFinish;
	// methods
	public static GKLeaderboardViewController.GKLeaderboardViewControllerAppearance AppearanceWhenContainedIn (System.Type[] containers);
	protected override void Dispose (bool disposing);
	public static GKLeaderboardViewController.GKLeaderboardViewControllerAppearance GetAppearance<T> ();
	public static GKLeaderboardViewController.GKLeaderboardViewControllerAppearance GetAppearance<T> (UIKit.UITraitCollection traits);
	public static GKLeaderboardViewController.GKLeaderboardViewControllerAppearance GetAppearance (UIKit.UITraitCollection traits);
	public static GKLeaderboardViewController.GKLeaderboardViewControllerAppearance GetAppearance<T> (UIKit.UITraitCollection traits, System.Type[] containers);
	public static GKLeaderboardViewController.GKLeaderboardViewControllerAppearance GetAppearance (UIKit.UITraitCollection traits, System.Type[] containers);

	// inner types
	public class GKLeaderboardViewControllerAppearance : UIKit.UIAppearance, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearance {
		// constructors
		protected GKLeaderboardViewController.GKLeaderboardViewControllerAppearance (IntPtr handle);
	}
}

New Type: GameKit.GKLeaderboardViewControllerDelegate

public abstract class GKLeaderboardViewControllerDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, IGKLeaderboardViewControllerDelegate, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected GKLeaderboardViewControllerDelegate ();
	protected GKLeaderboardViewControllerDelegate (Foundation.NSObjectFlag t);
	protected GKLeaderboardViewControllerDelegate (IntPtr handle);
	// methods
	public virtual void DidFinish (GKLeaderboardViewController viewController);
}

New Type: GameKit.IGKAchievementViewControllerDelegate

public interface IGKAchievementViewControllerDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DidFinish (GKAchievementViewController viewController);
}

New Type: GameKit.IGKFriendRequestComposeViewControllerDelegate

public interface IGKFriendRequestComposeViewControllerDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DidFinish (GKFriendRequestComposeViewController viewController);
}

New Type: GameKit.IGKLeaderboardViewControllerDelegate

public interface IGKLeaderboardViewControllerDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DidFinish (GKLeaderboardViewController viewController);
}

New Namespace HealthKit

New Type: HealthKit.HKActivityMoveMode

[Serializable]
public enum HKActivityMoveMode {
	ActiveEnergy = 1,
	AppleMoveTime = 2,
}

New Type: HealthKit.HKActivityMoveModeObject

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

New Type: HealthKit.HKActivitySummary

public class HKActivitySummary : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HKActivitySummary ();
	public HKActivitySummary (Foundation.NSCoder coder);
	protected HKActivitySummary (Foundation.NSObjectFlag t);
	protected HKActivitySummary (IntPtr handle);
	// properties
	public virtual HKQuantity ActiveEnergyBurned { get; set; }
	public virtual HKQuantity ActiveEnergyBurnedGoal { get; set; }
	public virtual HKActivityMoveMode ActivityMoveMode { get; set; }
	public virtual HKQuantity AppleExerciseTime { get; set; }
	public virtual HKQuantity AppleExerciseTimeGoal { get; set; }
	public virtual HKQuantity AppleMoveTime { get; set; }
	public virtual HKQuantity AppleMoveTimeGoal { get; set; }
	public virtual HKQuantity AppleStandHours { get; set; }
	public virtual HKQuantity AppleStandHoursGoal { get; set; }
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual Foundation.NSDateComponents DateComponentsForCalendar (Foundation.NSCalendar calendar);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: HealthKit.HKActivitySummaryQuery

public class HKActivitySummaryQuery : HealthKit.HKQuery, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected HKActivitySummaryQuery (Foundation.NSObjectFlag t);
	protected HKActivitySummaryQuery (IntPtr handle);
	public HKActivitySummaryQuery (Foundation.NSPredicate predicate, System.Action<HKActivitySummaryQuery,HealthKit.HKActivitySummary[],Foundation.NSError> handler);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual System.Action<HKActivitySummaryQuery,HealthKit.HKActivitySummary[],Foundation.NSError> UpdateHandler { get; set; }
}

New Type: HealthKit.HKActivitySummaryType

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

New Type: HealthKit.HKAnchoredObjectQuery

public class HKAnchoredObjectQuery : HealthKit.HKQuery, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected HKAnchoredObjectQuery (Foundation.NSObjectFlag t);
	protected HKAnchoredObjectQuery (IntPtr handle);
	public HKAnchoredObjectQuery (HKQueryDescriptor[] queryDescriptors, HKQueryAnchor anchor, nint limit, HKAnchoredObjectUpdateHandler resultsHandler);
	public HKAnchoredObjectQuery (HKSampleType type, Foundation.NSPredicate predicate, HKQueryAnchor anchor, nuint limit, HKAnchoredObjectUpdateHandler handler);
	public HKAnchoredObjectQuery (HKSampleType type, Foundation.NSPredicate predicate, nuint anchor, nuint limit, HKAnchoredObjectResultHandler completion);
	public HKAnchoredObjectQuery (HKSampleType type, Foundation.NSPredicate predicate, nuint anchor, nuint limit, HKAnchoredObjectResultHandler2 completion);
	// fields
	public static const uint NoAnchor;
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual HKAnchoredObjectUpdateHandler UpdateHandler { get; set; }
}

New Type: HealthKit.HKAnchoredObjectResultHandler

public sealed delegate HKAnchoredObjectResultHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public HKAnchoredObjectResultHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (HKAnchoredObjectQuery query, HKSampleType[] results, nuint newAnchor, Foundation.NSError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (HKAnchoredObjectQuery query, HKSampleType[] results, nuint newAnchor, Foundation.NSError error);
}

New Type: HealthKit.HKAnchoredObjectResultHandler2

public sealed delegate HKAnchoredObjectResultHandler2 : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public HKAnchoredObjectResultHandler2 (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (HKAnchoredObjectQuery query, HKSample[] results, nuint newAnchor, Foundation.NSError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (HKAnchoredObjectQuery query, HKSample[] results, nuint newAnchor, Foundation.NSError error);
}

New Type: HealthKit.HKAnchoredObjectUpdateHandler

public sealed delegate HKAnchoredObjectUpdateHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public HKAnchoredObjectUpdateHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (HKAnchoredObjectQuery query, HKSample[] addedObjects, HKDeletedObject[] deletedObjects, HKQueryAnchor newAnchor, Foundation.NSError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (HKAnchoredObjectQuery query, HKSample[] addedObjects, HKDeletedObject[] deletedObjects, HKQueryAnchor newAnchor, Foundation.NSError error);
}

New Type: HealthKit.HKAppleEcgAlgorithmVersion

[Serializable]
public enum HKAppleEcgAlgorithmVersion {
	Version1 = 1,
	Version2 = 2,
}

New Type: HealthKit.HKAppleWalkingSteadiness

public static class HKAppleWalkingSteadiness {
	// methods
	public static HKQuantity GetMaximumQuantity (HKAppleWalkingSteadinessClassification classification);
	public static HKQuantity GetMinimumQuantity (HKAppleWalkingSteadinessClassification classification);
	public static bool TryGetClassification (HKQuantity value, out HKAppleWalkingSteadinessClassification? classification, out Foundation.NSError error);
}

New Type: HealthKit.HKAppleWalkingSteadinessClassification

[Serializable]
public enum HKAppleWalkingSteadinessClassification {
	Low = 2,
	Ok = 1,
	VeryLow = 3,
}

New Type: HealthKit.HKAudiogramSample

public class HKAudiogramSample : HealthKit.HKSample, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HKAudiogramSample (Foundation.NSCoder coder);
	protected HKAudiogramSample (Foundation.NSObjectFlag t);
	protected HKAudiogramSample (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual HKAudiogramSensitivityPoint[] SensitivityPoints { get; }
	// methods
	public static HKAudiogramSample GetAudiogramSample (HKAudiogramSensitivityPoint[] sensitivityPoints, Foundation.NSDate startDate, Foundation.NSDate endDate, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> metadata);
}

New Type: HealthKit.HKAudiogramSampleType

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

New Type: HealthKit.HKAudiogramSensitivityPoint

public class HKAudiogramSensitivityPoint : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected HKAudiogramSensitivityPoint (Foundation.NSObjectFlag t);
	protected HKAudiogramSensitivityPoint (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual HKQuantity Frequency { get; }
	public virtual HKQuantity LeftEarSensitivity { get; }
	public virtual HKQuantity RightEarSensitivity { get; }
	// methods
	public static HKAudiogramSensitivityPoint GetSensitivityPoint (HKQuantity frequency, HKQuantity leftEarSensitivity, HKQuantity rightEarSensitivity, out Foundation.NSError error);
}

New Type: HealthKit.HKAuthorizationRequestStatus

[Serializable]
public enum HKAuthorizationRequestStatus {
	ShouldRequest = 1,
	Unknown = 0,
	Unnecessary = 2,
}

New Type: HealthKit.HKAuthorizationStatus

[Serializable]
public enum HKAuthorizationStatus {
	NotDetermined = 0,
	SharingAuthorized = 2,
	SharingDenied = 1,
}

New Type: HealthKit.HKBiologicalSex

[Serializable]
public enum HKBiologicalSex {
	Female = 1,
	Male = 2,
	NotSet = 0,
	Other = 3,
}

New Type: HealthKit.HKBiologicalSexObject

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

New Type: HealthKit.HKBloodGlucoseMealTime

[Serializable]
public enum HKBloodGlucoseMealTime {
	Ostprandial = 2,
	Postprandial = 2,
	Preprandial = 1,
	Reprandial = 1,
}

New Type: HealthKit.HKBloodType

[Serializable]
public enum HKBloodType {
	ABNegative = 6,
	ABPositive = 5,
	ANegative = 2,
	APositive = 1,
	BNegative = 4,
	BPositive = 3,
	NotSet = 0,
	ONegative = 8,
	OPositive = 7,
}

New Type: HealthKit.HKBloodTypeObject

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

New Type: HealthKit.HKBodyTemperatureSensorLocation

[Serializable]
public enum HKBodyTemperatureSensorLocation {
	Armpit = 1,
	Body = 2,
	Ear = 3,
	EarDrum = 9,
	Finger = 4,
	Forehead = 11,
	GastroIntestinal = 5,
	Mouth = 6,
	Other = 0,
	Rectum = 7,
	TemporalArtery = 10,
	Toe = 8,
}

New Type: HealthKit.HKCategorySample

public class HKCategorySample : HealthKit.HKSample, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HKCategorySample (Foundation.NSCoder coder);
	protected HKCategorySample (Foundation.NSObjectFlag t);
	protected HKCategorySample (IntPtr handle);
	// properties
	public virtual HKCategoryType CategoryType { get; }
	public override IntPtr ClassHandle { get; }
	public virtual nint Value { get; }
	// methods
	public static HKCategorySample FromType (HKCategoryType type, nint value, Foundation.NSDate startDate, Foundation.NSDate endDate);
	public static HKCategorySample FromType (HKCategoryType type, nint value, Foundation.NSDate startDate, Foundation.NSDate endDate, Foundation.NSDictionary metadata);
	public static HKCategorySample FromType (HKCategoryType type, nint value, Foundation.NSDate startDate, Foundation.NSDate endDate, HKMetadata metadata);
	public static HKCategorySample FromType (HKCategoryType type, nint value, Foundation.NSDate startDate, Foundation.NSDate endDate, HKDevice device, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> metadata);
}

New Type: HealthKit.HKCategoryType

public class HKCategoryType : HealthKit.HKSampleType, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HKCategoryType (Foundation.NSCoder coder);
	protected HKCategoryType (Foundation.NSObjectFlag t);
	protected HKCategoryType (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public static HKCategoryType Create (HKCategoryTypeIdentifier kind);
}

New Type: HealthKit.HKCategoryTypeIdentifier

[Serializable]
public enum HKCategoryTypeIdentifier {
	AbdominalCramps = 13,
	Acne = 14,
	AppetiteChanges = 15,
	AppleStandHour = 1,
	AppleWalkingSteadinessEvent = 59,
	AudioExposureEvent = 11,
	BladderIncontinence = 46,
	Bloating = 17,
	BreastPain = 18,
	CervicalMucusQuality = 2,
	ChestTightnessOrPain = 19,
	Chills = 20,
	Constipation = 21,
	Contraceptive = 57,
	Coughing = 22,
	Diarrhea = 23,
	Dizziness = 24,
	DrySkin = 47,
	EnvironmentalAudioExposureEvent = 52,
	Fainting = 25,
	Fatigue = 26,
	Fever = 27,
	GeneralizedBodyAche = 16,
	HairLoss = 48,
	HandwashingEvent = 53,
	Headache = 28,
	HeadphoneAudioExposureEvent = 54,
	Heartburn = 29,
	HighHeartRateEvent = 8,
	HotFlashes = 30,
	IntermenstrualBleeding = 5,
	IrregularHeartRhythmEvent = 10,
	Lactation = 56,
	LossOfSmell = 32,
	LossOfTaste = 33,
	LowCardioFitnessEvent = 58,
	LowHeartRateEvent = 9,
	LowerBackPain = 31,
	MemoryLapse = 50,
	MenstrualFlow = 4,
	MindfulSession = 7,
	MoodChanges = 34,
	Nausea = 35,
	NightSweats = 51,
	OvulationTestResult = 3,
	PelvicPain = 36,
	Pregnancy = 55,
	PregnancyTestResult = 60,
	ProgesteroneTestResult = 61,
	RapidPoundingOrFlutteringHeartbeat = 37,
	RunnyNose = 38,
	SexualActivity = 6,
	ShortnessOfBreath = 39,
	SinusCongestion = 40,
	SkippedHeartbeat = 41,
	SleepAnalysis = 0,
	SleepChanges = 42,
	SoreThroat = 43,
	ToothbrushingEvent = 12,
	VaginalDryness = 49,
	Vomiting = 44,
	Wheezing = 45,
}

New Type: HealthKit.HKCategoryTypeIdentifierExtensions

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

New Type: HealthKit.HKCategoryTypeIdentifierKey

public static class HKCategoryTypeIdentifierKey {
	// properties
	public static Foundation.NSString AppleStandHour { get; }
	public static Foundation.NSString CervicalMucusQuality { get; }
	public static Foundation.NSString IntermenstrualBleeding { get; }
	public static Foundation.NSString MenstrualFlow { get; }
	public static Foundation.NSString MindfulSession { get; }
	public static Foundation.NSString OvulationTestResult { get; }
	public static Foundation.NSString SexualActivity { get; }
	public static Foundation.NSString SleepAnalysis { get; }
}

New Type: HealthKit.HKCategoryValue

[Serializable]
public enum HKCategoryValue {
	NotApplicable = 0,
}

New Type: HealthKit.HKCategoryValueAppetiteChanges

[Serializable]
public enum HKCategoryValueAppetiteChanges {
	Decreased = 2,
	Increased = 3,
	NoChange = 1,
	Unspecified = 0,
}

New Type: HealthKit.HKCategoryValueAppleStandHour

[Serializable]
public enum HKCategoryValueAppleStandHour {
	Idle = 1,
	Stood = 0,
}

New Type: HealthKit.HKCategoryValueAppleWalkingSteadinessEvent

[Serializable]
public enum HKCategoryValueAppleWalkingSteadinessEvent {
	InitialLow = 1,
	InitialVeryLow = 2,
	RepeatLow = 3,
	RepeatVeryLow = 4,
}

New Type: HealthKit.HKCategoryValueAudioExposureEvent

[Serializable]
public enum HKCategoryValueAudioExposureEvent {
	LoudEnvironment = 1,
}

New Type: HealthKit.HKCategoryValueCervicalMucusQuality

[Serializable]
public enum HKCategoryValueCervicalMucusQuality {
	Creamy = 3,
	Dry = 1,
	EggWhite = 5,
	NotApplicable = 0,
	Sticky = 2,
	Watery = 4,
}

New Type: HealthKit.HKCategoryValueContraceptive

[Serializable]
public enum HKCategoryValueContraceptive {
	Implant = 2,
	Injection = 3,
	IntrauterineDevice = 4,
	IntravaginalRing = 5,
	Oral = 6,
	Patch = 7,
	Unspecified = 1,
}

New Type: HealthKit.HKCategoryValueEnvironmentalAudioExposureEvent

[Serializable]
public enum HKCategoryValueEnvironmentalAudioExposureEvent {
	MomentaryLimit = 1,
}

New Type: HealthKit.HKCategoryValueHeadphoneAudioExposureEvent

[Serializable]
public enum HKCategoryValueHeadphoneAudioExposureEvent {
	SevenDayLimit = 1,
}

New Type: HealthKit.HKCategoryValueLowCardioFitnessEvent

[Serializable]
public enum HKCategoryValueLowCardioFitnessEvent {
	LowFitness = 1,
}

New Type: HealthKit.HKCategoryValueMenstrualFlow

[Serializable]
public enum HKCategoryValueMenstrualFlow {
	Heavy = 4,
	Light = 2,
	Medium = 3,
	None = 5,
	NotApplicable = 0,
	Unspecified = 1,
}

New Type: HealthKit.HKCategoryValueOvulationTestResult

[Serializable]
public enum HKCategoryValueOvulationTestResult {
	EstrogenSurge = 4,
	Indeterminate = 3,
	LuteinizingHormoneSurge = 2,
	Negative = 1,
	NotApplicable = 0,
	Positive = 2,
}

New Type: HealthKit.HKCategoryValuePregnancyTestResult

[Serializable]
public enum HKCategoryValuePregnancyTestResult {
	Indeterminate = 3,
	Negative = 1,
	Positive = 2,
}

New Type: HealthKit.HKCategoryValuePresence

[Serializable]
public enum HKCategoryValuePresence {
	NotPresent = 1,
	Present = 0,
}

New Type: HealthKit.HKCategoryValueProgesteroneTestResult

[Serializable]
public enum HKCategoryValueProgesteroneTestResult {
	Indeterminate = 3,
	Negative = 1,
	Positive = 2,
}

New Type: HealthKit.HKCategoryValueSeverity

[Serializable]
public enum HKCategoryValueSeverity {
	Mild = 2,
	Moderate = 3,
	NotPresent = 1,
	Severe = 4,
	Unspecified = 0,
}

New Type: HealthKit.HKCategoryValueSleepAnalysis

[Serializable]
public enum HKCategoryValueSleepAnalysis {
	Asleep = 1,
	Awake = 2,
	InBed = 0,
}

New Type: HealthKit.HKCdaDocument

public class HKCdaDocument : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected HKCdaDocument (Foundation.NSObjectFlag t);
	protected HKCdaDocument (IntPtr handle);
	// properties
	public virtual string AuthorName { get; }
	public override IntPtr ClassHandle { get; }
	public virtual string CustodianName { get; }
	public virtual Foundation.NSData DocumentData { get; }
	public virtual string PatientName { get; }
	public virtual string Title { get; }
}

New Type: HealthKit.HKCdaDocumentSample

public class HKCdaDocumentSample : HealthKit.HKDocumentSample, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HKCdaDocumentSample (Foundation.NSCoder coder);
	protected HKCdaDocumentSample (Foundation.NSObjectFlag t);
	protected HKCdaDocumentSample (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual HKCdaDocument Document { get; }
	// methods
	public static HKCdaDocumentSample Create (Foundation.NSData documentData, Foundation.NSDate startDate, Foundation.NSDate endDate, Foundation.NSDictionary metadata, out Foundation.NSError validationError);
	public static HKCdaDocumentSample Create (Foundation.NSData documentData, Foundation.NSDate startDate, Foundation.NSDate endDate, HKMetadata metadata, out Foundation.NSError validationError);
}

New Type: HealthKit.HKCharacteristicType

public class HKCharacteristicType : HealthKit.HKObjectType, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HKCharacteristicType (Foundation.NSCoder coder);
	protected HKCharacteristicType (Foundation.NSObjectFlag t);
	protected HKCharacteristicType (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public static HKCharacteristicType Create (HKCharacteristicTypeIdentifier kind);
}

New Type: HealthKit.HKCharacteristicTypeIdentifier

[Serializable]
public enum HKCharacteristicTypeIdentifier {
	ActivityMoveMode = 5,
	BiologicalSex = 0,
	BloodType = 1,
	DateOfBirth = 2,
	FitzpatrickSkinType = 3,
	WheelchairUse = 4,
}

New Type: HealthKit.HKCharacteristicTypeIdentifierExtensions

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

New Type: HealthKit.HKCharacteristicTypeIdentifierKey

public static class HKCharacteristicTypeIdentifierKey {
	// properties
	public static Foundation.NSString BiologicalSex { get; }
	public static Foundation.NSString BloodType { get; }
	public static Foundation.NSString DateOfBirth { get; }
	public static Foundation.NSString FitzpatrickSkinType { get; }
	public static Foundation.NSString WheelchairUse { get; }
}

New Type: HealthKit.HKClinicalRecord

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

New Type: HealthKit.HKClinicalType

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

New Type: HealthKit.HKClinicalTypeIdentifier

[Serializable]
public enum HKClinicalTypeIdentifier {
	AllergyRecord = 0,
	ConditionRecord = 1,
	CoverageRecord = 7,
	ImmunizationRecord = 2,
	LabResultRecord = 3,
	MedicationRecord = 4,
	ProcedureRecord = 5,
	VitalSignRecord = 6,
}

New Type: HealthKit.HKClinicalTypeIdentifierExtensions

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

New Type: HealthKit.HKCorrelation

public class HKCorrelation : HealthKit.HKSample, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HKCorrelation (Foundation.NSCoder coder);
	protected HKCorrelation (Foundation.NSObjectFlag t);
	protected HKCorrelation (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual HKCorrelationType CorrelationType { get; }
	public virtual Foundation.NSSet Objects { get; }
	// methods
	public static HKCorrelation Create (HKCorrelationType correlationType, Foundation.NSDate startDate, Foundation.NSDate endDate, Foundation.NSSet objects);
	public static HKCorrelation Create (HKCorrelationType correlationType, Foundation.NSDate startDate, Foundation.NSDate endDate, Foundation.NSSet objects, Foundation.NSDictionary metadata);
	public static HKCorrelation Create (HKCorrelationType correlationType, Foundation.NSDate startDate, Foundation.NSDate endDate, Foundation.NSSet objects, HKMetadata metadata);
	public static HKCorrelation Create (HKCorrelationType correlationType, Foundation.NSDate startDate, Foundation.NSDate endDate, Foundation.NSSet<HKSample> objects, HKDevice device, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> metadata);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public virtual Foundation.NSSet GetObjects (HKObjectType objectType);
}

New Type: HealthKit.HKCorrelationQuery

public class HKCorrelationQuery : HealthKit.HKQuery, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected HKCorrelationQuery (Foundation.NSObjectFlag t);
	protected HKCorrelationQuery (IntPtr handle);
	public HKCorrelationQuery (HKCorrelationType correlationType, Foundation.NSPredicate predicate, Foundation.NSDictionary samplePredicates, HKCorrelationQueryResultHandler completion);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual HKCorrelationType CorrelationType { get; }
	public virtual Foundation.NSDictionary SamplePredicates { get; }
}

New Type: HealthKit.HKCorrelationQueryResultHandler

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

New Type: HealthKit.HKCorrelationType

public class HKCorrelationType : HealthKit.HKSampleType, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HKCorrelationType (Foundation.NSCoder coder);
	protected HKCorrelationType (Foundation.NSObjectFlag t);
	protected HKCorrelationType (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public static HKCorrelationType Create (HKCorrelationTypeIdentifier kind);
}

New Type: HealthKit.HKCorrelationTypeIdentifier

[Serializable]
public enum HKCorrelationTypeIdentifier {
	BloodPressure = 0,
	Food = 1,
}

New Type: HealthKit.HKCorrelationTypeIdentifierExtensions

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

New Type: HealthKit.HKCorrelationTypeKey

public static class HKCorrelationTypeKey {
	// properties
	public static Foundation.NSString IdentifierBloodPressure { get; }
	public static Foundation.NSString IdentifierFood { get; }
}

New Type: HealthKit.HKCumulativeQuantitySample

public class HKCumulativeQuantitySample : HealthKit.HKQuantitySample, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HKCumulativeQuantitySample (Foundation.NSCoder coder);
	protected HKCumulativeQuantitySample (Foundation.NSObjectFlag t);
	protected HKCumulativeQuantitySample (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual HKQuantity SumQuantity { get; }
}

New Type: HealthKit.HKCumulativeQuantitySeriesSample

public class HKCumulativeQuantitySeriesSample : HealthKit.HKCumulativeQuantitySample, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HKCumulativeQuantitySeriesSample (Foundation.NSCoder coder);
	protected HKCumulativeQuantitySeriesSample (Foundation.NSObjectFlag t);
	protected HKCumulativeQuantitySeriesSample (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual HKQuantity Sum { get; }
}

New Type: HealthKit.HKDataTypeIdentifier

[Serializable]
public enum HKDataTypeIdentifier {
	HeartbeatSeries = 0,
}

New Type: HealthKit.HKDataTypeIdentifierExtensions

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

New Type: HealthKit.HKDeletedObject

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

New Type: HealthKit.HKDetailedCdaErrors

public class HKDetailedCdaErrors : Foundation.DictionaryContainer {
	// constructors
	public HKDetailedCdaErrors ();
	public HKDetailedCdaErrors (Foundation.NSDictionary dictionary);
	// properties
	public Foundation.NSString ValidationError { get; }
}

New Type: HealthKit.HKDevice

public class HKDevice : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HKDevice (Foundation.NSCoder coder);
	protected HKDevice (Foundation.NSObjectFlag t);
	protected HKDevice (IntPtr handle);
	public HKDevice (string name, string manufacturer, string model, string hardwareVersion, string firmwareVersion, string softwareVersion, string localIdentifier, string udiDeviceIdentifier);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string FirmwareVersion { get; }
	public virtual string HardwareVersion { get; }
	public static HKDevice LocalDevice { get; }
	public virtual string LocalIdentifier { get; }
	public virtual string Manufacturer { get; }
	public virtual string Model { get; }
	public virtual string Name { get; }
	public virtual string SoftwareVersion { get; }
	public virtual string UdiDeviceIdentifier { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: HealthKit.HKDevicePlacementSide

[Serializable]
public enum HKDevicePlacementSide {
	Central = 3,
	Left = 1,
	Right = 2,
	Unknown = 0,
}

New Type: HealthKit.HKDevicePropertyKey

public static class HKDevicePropertyKey {
	// properties
	public static Foundation.NSString FirmwareVersion { get; }
	public static Foundation.NSString HardwareVersion { get; }
	public static Foundation.NSString LocalIdentifier { get; }
	public static Foundation.NSString Manufacturer { get; }
	public static Foundation.NSString Model { get; }
	public static Foundation.NSString Name { get; }
	public static Foundation.NSString SoftwareVersion { get; }
	public static Foundation.NSString UdiDeviceIdentifier { get; }
}

New Type: HealthKit.HKDiscreteQuantitySample

public class HKDiscreteQuantitySample : HealthKit.HKQuantitySample, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HKDiscreteQuantitySample (Foundation.NSCoder coder);
	protected HKDiscreteQuantitySample (Foundation.NSObjectFlag t);
	protected HKDiscreteQuantitySample (IntPtr handle);
	// properties
	public virtual HKQuantity Average { get; }
	public override IntPtr ClassHandle { get; }
	public virtual HKQuantity Maximum { get; }
	public virtual HKQuantity Minimum { get; }
	public virtual HKQuantity MostRecent { get; }
	public virtual Foundation.NSDateInterval MostRecentDateInterval { get; }
}

New Type: HealthKit.HKDocumentQuery

public class HKDocumentQuery : HealthKit.HKQuery, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected HKDocumentQuery (Foundation.NSObjectFlag t);
	protected HKDocumentQuery (IntPtr handle);
	public HKDocumentQuery (HKDocumentType documentType, Foundation.NSPredicate predicate, nuint limit, Foundation.NSSortDescriptor[] sortDescriptors, bool includeDocumentData, System.Action<HKDocumentQuery,HealthKit.HKDocumentSample[],System.Boolean,Foundation.NSError> resultsHandler);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool IncludeDocumentData { get; }
	public virtual nuint Limit { get; }
	public virtual Foundation.NSSortDescriptor[] SortDescriptors { get; }
}

New Type: HealthKit.HKDocumentSample

public abstract class HKDocumentSample : HealthKit.HKSample, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected HKDocumentSample (Foundation.NSCoder coder);
	protected HKDocumentSample (Foundation.NSObjectFlag t);
	protected HKDocumentSample (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual HKDocumentType DocumentType { get; }
}

New Type: HealthKit.HKDocumentType

public class HKDocumentType : HealthKit.HKSampleType, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HKDocumentType (Foundation.NSCoder coder);
	protected HKDocumentType (Foundation.NSObjectFlag t);
	protected HKDocumentType (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public static HKDocumentType Create (HKDocumentTypeIdentifier kind);
}

New Type: HealthKit.HKDocumentTypeIdentifier

[Serializable]
public enum HKDocumentTypeIdentifier {
	Cda = 0,
}

New Type: HealthKit.HKDocumentTypeIdentifierExtensions

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

New Type: HealthKit.HKElectrocardiogram

public class HKElectrocardiogram : HealthKit.HKSample, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HKElectrocardiogram (Foundation.NSCoder coder);
	protected HKElectrocardiogram (Foundation.NSObjectFlag t);
	protected HKElectrocardiogram (IntPtr handle);
	// properties
	public virtual HKQuantity AverageHeartRate { get; }
	public override IntPtr ClassHandle { get; }
	public virtual HKElectrocardiogramClassification Classification { get; }
	public virtual nint NumberOfVoltageMeasurements { get; }
	public virtual HKQuantity SamplingFrequency { get; }
	public virtual HKElectrocardiogramSymptomsStatus SymptomsStatus { get; }
}

New Type: HealthKit.HKElectrocardiogramClassification

[Serializable]
public enum HKElectrocardiogramClassification {
	AtrialFibrillation = 2,
	InconclusiveHighHeartRate = 4,
	InconclusiveLowHeartRate = 3,
	InconclusiveOther = 6,
	InconclusivePoorReading = 5,
	NotSet = 0,
	SinusRhythm = 1,
	Unrecognized = 100,
}

New Type: HealthKit.HKElectrocardiogramLead

[Serializable]
public enum HKElectrocardiogramLead {
	AppleWatchSimilarToLeadI = 1,
}

New Type: HealthKit.HKElectrocardiogramQuery

public class HKElectrocardiogramQuery : HealthKit.HKQuery, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected HKElectrocardiogramQuery (Foundation.NSObjectFlag t);
	protected HKElectrocardiogramQuery (IntPtr handle);
	public HKElectrocardiogramQuery (HKElectrocardiogram electrocardiogram, HKElectrocardiogramQueryDataHandler dataHandler);
	// properties
	public override IntPtr ClassHandle { get; }
}

New Type: HealthKit.HKElectrocardiogramQueryDataHandler

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

New Type: HealthKit.HKElectrocardiogramSymptomsStatus

[Serializable]
public enum HKElectrocardiogramSymptomsStatus {
	None = 1,
	NotSet = 0,
	Present = 2,
}

New Type: HealthKit.HKElectrocardiogramType

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

New Type: HealthKit.HKElectrocardiogramVoltageMeasurement

public class HKElectrocardiogramVoltageMeasurement : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected HKElectrocardiogramVoltageMeasurement (Foundation.NSObjectFlag t);
	protected HKElectrocardiogramVoltageMeasurement (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual double TimeSinceSampleStart { get; }
	// methods
	public virtual HKQuantity GetQuantity (HKElectrocardiogramLead lead);
}

New Type: HealthKit.HKErrorCode

[Serializable]
public enum HKErrorCode {
	AnotherWorkoutSessionStarted = 8,
	AuthorizationDenied = 4,
	AuthorizationNotDetermined = 5,
	DatabaseInaccessible = 6,
	HealthDataRestricted = 2,
	HealthDataUnavailable = 1,
	InvalidArgument = 3,
	NoData = 11,
	NoError = 0,
	RequiredAuthorizationDenied = 10,
	UserCanceled = 7,
	UserExitedWorkoutSession = 9,
}

New Type: HealthKit.HKErrorCodeExtensions

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

New Type: HealthKit.HKFhirRelease

[Serializable]
public enum HKFhirRelease {
	Dstu2 = 0,
	R4 = 1,
	Unknown = 2,
}

New Type: HealthKit.HKFhirReleaseExtensions

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

New Type: HealthKit.HKFhirResource

public class HKFhirResource : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HKFhirResource (Foundation.NSCoder coder);
	protected HKFhirResource (Foundation.NSObjectFlag t);
	protected HKFhirResource (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSData Data { get; }
	public virtual HKFhirVersion FhirVersion { get; }
	public virtual string Identifier { get; }
	public virtual HKFhirResourceType ResourceType { get; }
	public virtual Foundation.NSUrl SourceUrl { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: HealthKit.HKFhirResourceType

[Serializable]
public enum HKFhirResourceType {
	AllergyIntolerance = 0,
	Condition = 1,
	Coverage = 9,
	Immunization = 2,
	MedicationDispense = 3,
	MedicationOrder = 4,
	MedicationRequest = 8,
	MedicationStatement = 5,
	Observation = 6,
	Procedure = 7,
}

New Type: HealthKit.HKFhirResourceTypeExtensions

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

New Type: HealthKit.HKFhirVersion

public class HKFhirVersion : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HKFhirVersion (Foundation.NSCoder coder);
	protected HKFhirVersion (Foundation.NSObjectFlag t);
	protected HKFhirVersion (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string FhirRelease { get; }
	public virtual nint MajorVersion { get; }
	public virtual nint MinorVersion { get; }
	public virtual nint PatchVersion { get; }
	public static HKFhirVersion PrimaryDstu2Version { get; }
	public static HKFhirVersion PrimaryR4Version { get; }
	public virtual string StringRepresentation { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public static HKFhirVersion GetVersion (string versionString, out Foundation.NSError errorOut);
}

New Type: HealthKit.HKFitzpatrickSkinType

[Serializable]
public enum HKFitzpatrickSkinType {
	I = 1,
	II = 2,
	III = 3,
	IV = 4,
	NotSet = 0,
	V = 5,
	VI = 6,
}

New Type: HealthKit.HKFitzpatrickSkinTypeObject

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

New Type: HealthKit.HKHealthStore

public class HKHealthStore : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HKHealthStore ();
	protected HKHealthStore (Foundation.NSObjectFlag t);
	protected HKHealthStore (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSDate EarliestPermittedSampleDate { get; }
	public static bool IsHealthDataAvailable { get; }
	public virtual bool SupportsHealthRecords { get; }
	public static Foundation.NSString UserPreferencesDidChangeNotification { get; }
	// methods
	public virtual void AddSamples (HKSample[] samples, HKWorkout workout, HKStoreSampleAddedCallback callback);
	public virtual void DeleteObject (HKObject obj, System.Action<System.Boolean,Foundation.NSError> completion);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> DeleteObjectAsync (HKObject obj);
	public virtual void DeleteObjects (HKObject[] objects, System.Action<System.Boolean,Foundation.NSError> completion);
	public virtual void DeleteObjects (HKObjectType objectType, Foundation.NSPredicate predicate, System.Action<System.Boolean,System.nuint,Foundation.NSError> completion);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> DeleteObjectsAsync (HKObject[] objects);
	public virtual void DisableAllBackgroundDelivery (System.Action<System.Boolean,Foundation.NSError> completion);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> DisableAllBackgroundDeliveryAsync ();
	public virtual void DisableBackgroundDelivery (HKObjectType type, System.Action<System.Boolean,Foundation.NSError> completion);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> DisableBackgroundDeliveryAsync (HKObjectType type);
	public virtual void EnableBackgroundDelivery (HKObjectType type, HKUpdateFrequency frequency, System.Action<System.Boolean,Foundation.NSError> completion);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> EnableBackgroundDeliveryAsync (HKObjectType type, HKUpdateFrequency frequency);
	public virtual void ExecuteQuery (HKQuery query);
	public virtual HKActivityMoveModeObject GetActivityMoveMode (out Foundation.NSError error);
	public virtual HKAuthorizationStatus GetAuthorizationStatus (HKObjectType type);
	public virtual HKBiologicalSexObject GetBiologicalSex (out Foundation.NSError error);
	public virtual HKBloodTypeObject GetBloodType (out Foundation.NSError error);
	public virtual Foundation.NSDate GetDateOfBirth (out Foundation.NSError error);
	public virtual Foundation.NSDateComponents GetDateOfBirthComponents (out Foundation.NSError error);
	public virtual HKFitzpatrickSkinTypeObject GetFitzpatrickSkinType (out Foundation.NSError error);
	public virtual void GetPreferredUnits (Foundation.NSSet quantityTypes, System.Action<Foundation.NSDictionary,Foundation.NSError> completion);
	public virtual System.Threading.Tasks.Task<Foundation.NSDictionary> GetPreferredUnitsAsync (Foundation.NSSet quantityTypes);
	public virtual void GetRequestStatusForAuthorizationToShare (Foundation.NSSet<HKSampleType> typesToShare, Foundation.NSSet<HKObjectType> typesToRead, HKHealthStoreGetRequestStatusForAuthorizationToShareHandler completion);
	public virtual System.Threading.Tasks.Task<HKAuthorizationRequestStatus> GetRequestStatusForAuthorizationToShareAsync (Foundation.NSSet<HKSampleType> typesToShare, Foundation.NSSet<HKObjectType> typesToRead);
	public virtual HKWheelchairUseObject GetWheelchairUse (out Foundation.NSError error);
	public virtual void HandleAuthorizationForExtension (System.Action<System.Boolean,Foundation.NSError> completion);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> HandleAuthorizationForExtensionAsync ();
	public virtual void RecalibrateEstimates (HKSampleType sampleType, Foundation.NSDate date, System.Action<System.Boolean,Foundation.NSError> completion);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> RecalibrateEstimatesAsync (HKSampleType sampleType, Foundation.NSDate date);
	public virtual void RequestAuthorizationToShare (Foundation.NSSet typesToShare, Foundation.NSSet typesToRead, System.Action<System.Boolean,Foundation.NSError> completion);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> RequestAuthorizationToShareAsync (Foundation.NSSet typesToShare, Foundation.NSSet typesToRead);
	public virtual void SaveObject (HKObject obj, System.Action<System.Boolean,Foundation.NSError> completion);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> SaveObjectAsync (HKObject obj);
	public virtual void SaveObjects (HKObject[] objects, System.Action<System.Boolean,Foundation.NSError> completion);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> SaveObjectsAsync (HKObject[] objects);
	public virtual void SplitTotalEnergy (HKQuantity totalEnergy, Foundation.NSDate startDate, Foundation.NSDate endDate, System.Action<HKQuantity,HealthKit.HKQuantity,Foundation.NSError> resultsHandler);
	public virtual void StartWatchApp (HKWorkoutConfiguration workoutConfiguration, System.Action<System.Boolean,Foundation.NSError> completion);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> StartWatchAppAsync (HKWorkoutConfiguration workoutConfiguration);
	public virtual void StopQuery (HKQuery query);

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

New Type: HealthKit.HKHealthStoreGetRequestStatusForAuthorizationToShareHandler

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

New Type: HealthKit.HKHeartRateMotionContext

[Serializable]
public enum HKHeartRateMotionContext {
	Active = 2,
	NotSet = 0,
	Sedentary = 1,
}

New Type: HealthKit.HKHeartRateSensorLocation

[Serializable]
public enum HKHeartRateSensorLocation {
	Chest = 1,
	EarLobe = 5,
	Finger = 3,
	Foot = 6,
	Hand = 4,
	Other = 0,
	Wrist = 2,
}

New Type: HealthKit.HKHeartbeatSeriesBuilder

public class HKHeartbeatSeriesBuilder : HealthKit.HKSeriesBuilder, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HKHeartbeatSeriesBuilder (Foundation.NSCoder coder);
	protected HKHeartbeatSeriesBuilder (Foundation.NSObjectFlag t);
	protected HKHeartbeatSeriesBuilder (IntPtr handle);
	public HKHeartbeatSeriesBuilder (HKHealthStore healthStore, HKDevice device, Foundation.NSDate startDate);
	// properties
	public override IntPtr ClassHandle { get; }
	public static nuint MaximumCount { get; }
	// methods
	public virtual void AddHeartbeat (double timeInterval, bool precededByGap, HKHeartbeatSeriesBuilderCompletionHandler completion);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> AddHeartbeatAsync (double timeInterval, bool precededByGap);
	public virtual void AddMetadata (Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> metadata, HKHeartbeatSeriesBuilderCompletionHandler completion);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> AddMetadataAsync (Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> metadata);
	public virtual void FinishSeries (System.Action<HKHeartbeatSeriesSample,Foundation.NSError> completion);
	public virtual System.Threading.Tasks.Task<HKHeartbeatSeriesSample> FinishSeriesAsync ();
}

New Type: HealthKit.HKHeartbeatSeriesBuilderCompletionHandler

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

New Type: HealthKit.HKHeartbeatSeriesQuery

public class HKHeartbeatSeriesQuery : HealthKit.HKQuery, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HKHeartbeatSeriesQuery ();
	protected HKHeartbeatSeriesQuery (Foundation.NSObjectFlag t);
	protected HKHeartbeatSeriesQuery (IntPtr handle);
	public HKHeartbeatSeriesQuery (HKHeartbeatSeriesSample heartbeatSeries, HKHeartbeatSeriesQueryDataHandler dataHandler);
	// properties
	public override IntPtr ClassHandle { get; }
}

New Type: HealthKit.HKHeartbeatSeriesQueryDataHandler

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

New Type: HealthKit.HKHeartbeatSeriesSample

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

New Type: HealthKit.HKInsulinDeliveryReason

[Serializable]
public enum HKInsulinDeliveryReason {
	Asal = 1,
	Basal = 1,
	Bolus = 2,
	Olus = 2,
}

New Type: HealthKit.HKMetadata

public class HKMetadata : Foundation.DictionaryContainer {
	// constructors
	public HKMetadata ();
	public HKMetadata (Foundation.NSDictionary dictionary);
	// properties
	public HKQuantity AlpineSlopeGrade { get; set; }
	public HKQuantity AverageSpeed { get; set; }
	public HKBloodGlucoseMealTime? BloodGlucoseMealTime { get; }
	public HKBodyTemperatureSensorLocation? BodyTemperatureSensorLocation { get; set; }
	public bool? CoachedWorkout { get; set; }
	public HKQuantity CrossTrainerDistance { get; set; }
	public string DeviceManufacturerName { get; set; }
	public string DeviceName { get; set; }
	public string DeviceSerialNumber { get; set; }
	public string DigitalSignature { get; set; }
	public HKQuantity ElevationAscended { get; set; }
	public HKQuantity ElevationDescended { get; set; }
	public string ExternalUuid { get; set; }
	public HKQuantity FitnessMachineDuration { get; set; }
	public string FoodType { get; set; }
	public bool? GroupFitness { get; set; }
	public HKQuantity HeartRateEventThreshold { get; set; }
	public HKHeartRateMotionContext? HeartRateMotionContext { get; }
	public HKHeartRateSensorLocation? HeartRateSensorLocation { get; set; }
	public HKQuantity IndoorBikeDistance { get; set; }
	public bool? IndoorWorkout { get; set; }
	public HKInsulinDeliveryReason? InsulinDeliveryReason { get; }
	public Foundation.NSString LapLength { get; }
	public HKQuantity MaximumSpeed { get; set; }
	public bool? MenstrualCycleStart { get; set; }
	public Foundation.NSNumber ReferenceRangeLowerLimit { get; set; }
	public Foundation.NSNumber ReferenceRangeUpperLimit { get; set; }
	public bool? SexualActivityProtectionUsed { get; set; }
	public Foundation.NSString SwimmingLocationType { get; }
	public Foundation.NSString SwimmingStrokeStyle { get; }
	public string SyncIdentifier { get; }
	public int? SyncVersion { get; }
	public Foundation.NSTimeZone TimeZone { get; set; }
	public string UdiDeviceIdentifier { get; set; }
	public string UdiProductionIdentifier { get; set; }
	public HKVO2MaxTestType? VO2MaxTestType { get; }
	public bool? WasTakenInLab { get; set; }
	public bool? WasUserEntered { get; set; }
	public HKWeatherCondition? WeatherCondition { get; }
	public HKQuantity WeatherHumidity { get; }
	public HKQuantity WeatherTemperature { get; }
	public string WorkoutBrandName { get; set; }
}

New Type: HealthKit.HKMetadataKey

public static class HKMetadataKey {
	// properties
	public static Foundation.NSString AlpineSlopeGrade { get; }
	public static Foundation.NSString AppleDeviceCalibrated { get; }
	public static Foundation.NSString AppleEcgAlgorithmVersion { get; }
	public static Foundation.NSString AudioExposureDuration { get; }
	public static Foundation.NSString AudioExposureLevel { get; }
	public static Foundation.NSString AverageMets { get; }
	public static Foundation.NSString AverageSpeed { get; }
	public static Foundation.NSString BarometricPressure { get; }
	public static Foundation.NSString BloodGlucoseMealTime { get; }
	public static Foundation.NSString BodyTemperatureSensorLocation { get; }
	public static Foundation.NSString CoachedWorkout { get; }
	public static Foundation.NSString CrossTrainerDistance { get; }
	public static Foundation.NSString DateOfEarliestDataUsedForEstimate { get; }
	public static Foundation.NSString DeviceManufacturerName { get; }
	public static Foundation.NSString DeviceName { get; }
	public static Foundation.NSString DevicePlacementSide { get; }
	public static Foundation.NSString DeviceSerialNumber { get; }
	public static Foundation.NSString DigitalSignature { get; }
	public static Foundation.NSString ElevationAscended { get; }
	public static Foundation.NSString ElevationDescended { get; }
	public static Foundation.NSString ExternalUuid { get; }
	public static Foundation.NSString FitnessMachineDuration { get; }
	public static Foundation.NSString FoodType { get; }
	public static Foundation.NSString GroupFitness { get; }
	public static Foundation.NSString HeartRateEventThreshold { get; }
	public static Foundation.NSString HeartRateMotionContext { get; }
	public static Foundation.NSString HeartRateSensorLocation { get; }
	public static Foundation.NSString IndoorBikeDistance { get; }
	public static Foundation.NSString IndoorWorkout { get; }
	public static Foundation.NSString InsulinDeliveryReason { get; }
	public static Foundation.NSString LapLength { get; }
	public static Foundation.NSString LowCardioFitnessEventThreshold { get; }
	public static Foundation.NSString MaximumSpeed { get; }
	public static Foundation.NSString MenstrualCycleStart { get; }
	public static Foundation.NSString ReferenceRangeLowerLimit { get; }
	public static Foundation.NSString ReferenceRangeUpperLimit { get; }
	public static Foundation.NSString SexualActivityProtectionUsed { get; }
	public static Foundation.NSString SwimmingLocationType { get; }
	public static Foundation.NSString SwimmingStrokeStyle { get; }
	public static Foundation.NSString SyncIdentifier { get; }
	public static Foundation.NSString SyncVersion { get; }
	public static Foundation.NSString TimeZone { get; }
	public static Foundation.NSString UdiDeviceIdentifier { get; }
	public static Foundation.NSString UdiProductionIdentifier { get; }
	public static Foundation.NSString VO2MaxTestType { get; }
	public static Foundation.NSString VO2MaxValue { get; }
	public static Foundation.NSString WasTakenInLab { get; }
	public static Foundation.NSString WasUserEntered { get; }
	public static Foundation.NSString WeatherCondition { get; }
	public static Foundation.NSString WeatherHumidity { get; }
	public static Foundation.NSString WeatherTemperature { get; }
	public static Foundation.NSString WorkoutBrandName { get; }
}

New Type: HealthKit.HKMetricPrefix

[Serializable]
public enum HKMetricPrefix {
	Centi = 5,
	Deca = 7,
	Deci = 6,
	Femto = 13,
	Giga = 11,
	Hecto = 8,
	Kilo = 9,
	Mega = 10,
	Micro = 3,
	Milli = 4,
	Nano = 2,
	None = 0,
	Pico = 1,
	Tera = 12,
}

New Type: HealthKit.HKObject

public class HKObject : Foundation.NSObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HKObject (Foundation.NSCoder coder);
	protected HKObject (Foundation.NSObjectFlag t);
	protected HKObject (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual HKDevice Device { get; }
	public HKMetadata Metadata { get; }
	public virtual HKSource Source { get; }
	public virtual HKSourceRevision SourceRevision { get; }
	public virtual Foundation.NSUuid Uuid { get; }
	public virtual Foundation.NSDictionary WeakMetadata { get; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: HealthKit.HKObjectType

public class HKObjectType : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HKObjectType (Foundation.NSCoder coder);
	protected HKObjectType (Foundation.NSObjectFlag t);
	protected HKObjectType (IntPtr handle);
	// properties
	public static HKActivitySummaryType ActivitySummaryType { get; }
	public static HKAudiogramSampleType AudiogramSampleType { get; }
	public override IntPtr ClassHandle { get; }
	public static HKElectrocardiogramType ElectrocardiogramType { get; }
	public virtual Foundation.NSString Identifier { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public static HKCategoryType GetCategoryType (Foundation.NSString hkCategoryTypeIdentifier);
	public static HKCharacteristicType GetCharacteristicType (Foundation.NSString hkCharacteristicTypeIdentifier);
	public static HKClinicalType GetClinicalType (HKClinicalTypeIdentifier identifier);
	public static HKCorrelationType GetCorrelationType (Foundation.NSString hkCorrelationTypeIdentifier);
	public static HKQuantityType GetQuantityType (Foundation.NSString hkTypeIdentifier);
	public static HKSeriesType GetSeriesType (string identifier);
	public static HKWorkoutType GetWorkoutType ();
	public static HKWorkout WorkoutType ();
}

New Type: HealthKit.HKObserverQuery

public class HKObserverQuery : HealthKit.HKQuery, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected HKObserverQuery (Foundation.NSObjectFlag t);
	protected HKObserverQuery (IntPtr handle);
	public HKObserverQuery (HKQueryDescriptor[] queryDescriptors, HKObserverQueryDescriptorUpdateHandler updateHandler);
	public HKObserverQuery (HKSampleType sampleType, Foundation.NSPredicate predicate, HKObserverQueryUpdateHandler updateHandler);
	// properties
	public override IntPtr ClassHandle { get; }
}

New Type: HealthKit.HKObserverQueryDescriptorUpdateHandler

public sealed delegate HKObserverQueryDescriptorUpdateHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public HKObserverQueryDescriptorUpdateHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (HKObserverQuery query, Foundation.NSSet<HKSampleType> samples, System.Action completion, Foundation.NSError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (HKObserverQuery query, Foundation.NSSet<HKSampleType> samples, System.Action completion, Foundation.NSError error);
}

New Type: HealthKit.HKObserverQueryUpdateHandler

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

New Type: HealthKit.HKPredicateKeyPath

public static class HKPredicateKeyPath {
	// properties
	public static Foundation.NSString Average { get; }
	public static Foundation.NSString AverageHeartRate { get; }
	public static Foundation.NSString CategoryValue { get; }
	public static Foundation.NSString CdaAuthorName { get; }
	public static Foundation.NSString CdaCustodianName { get; }
	public static Foundation.NSString CdaPatientName { get; }
	public static Foundation.NSString CdaTitle { get; }
	public static Foundation.NSString ClinicalRecordFhirResourceIdentifier { get; }
	public static Foundation.NSString ClinicalRecordFhirResourceType { get; }
	public static Foundation.NSString Correlation { get; }
	public static Foundation.NSString DateComponents { get; }
	public static Foundation.NSString Device { get; }
	public static Foundation.NSString EcgClassification { get; }
	public static Foundation.NSString EcgSymptomsStatus { get; }
	public static Foundation.NSString EndDate { get; }
	public static Foundation.NSString Max { get; }
	public static Foundation.NSString Metadata { get; }
	public static Foundation.NSString Min { get; }
	public static Foundation.NSString MostRecent { get; }
	public static Foundation.NSString MostRecentDuration { get; }
	public static Foundation.NSString MostRecentEndDate { get; }
	public static Foundation.NSString MostRecentStartDate { get; }
	public static Foundation.NSString PathCount { get; }
	public static Foundation.NSString PathSum { get; }
	public static Foundation.NSString Quantity { get; }
	public static Foundation.NSString Source { get; }
	public static Foundation.NSString SourceRevision { get; }
	public static Foundation.NSString StartDate { get; }
	public static Foundation.NSString TotalFlightsClimbed { get; }
	public static Foundation.NSString Uuid { get; }
	public static Foundation.NSString Workout { get; }
	public static Foundation.NSString WorkoutDuration { get; }
	public static Foundation.NSString WorkoutTotalDistance { get; }
	public static Foundation.NSString WorkoutTotalEnergyBurned { get; }
	public static Foundation.NSString WorkoutTotalSwimmingStrokeCount { get; }
	public static Foundation.NSString WorkoutType { get; }
}

New Type: HealthKit.HKQuantity

public class HKQuantity : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HKQuantity (Foundation.NSCoder coder);
	protected HKQuantity (Foundation.NSObjectFlag t);
	protected HKQuantity (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual Foundation.NSComparisonResult Compare (HKQuantity quantity);
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public static HKQuantity FromQuantity (HKUnit unit, double value);
	public virtual double GetDoubleValue (HKUnit unit);
	public virtual bool IsCompatible (HKUnit unit);
}

New Type: HealthKit.HKQuantityAggregationStyle

[Serializable]
public enum HKQuantityAggregationStyle {
	Cumulative = 0,
	Discrete = 1,
	DiscreteArithmetic = 1,
	DiscreteEquivalentContinuousLevel = 3,
	DiscreteTemporallyWeighted = 2,
}

New Type: HealthKit.HKQuantitySample

public class HKQuantitySample : HealthKit.HKSample, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HKQuantitySample (Foundation.NSCoder coder);
	protected HKQuantitySample (Foundation.NSObjectFlag t);
	protected HKQuantitySample (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nint Count { get; }
	public virtual HKQuantity Quantity { get; }
	public virtual HKQuantityType QuantityType { get; }
	// methods
	public static HKQuantitySample FromType (HKQuantityType quantityType, HKQuantity quantity, Foundation.NSDate startDate, Foundation.NSDate endDate);
	public static HKQuantitySample FromType (HKQuantityType quantityType, HKQuantity quantity, Foundation.NSDate startDate, Foundation.NSDate endDate, Foundation.NSDictionary metadata);
	public static HKQuantitySample FromType (HKQuantityType quantityType, HKQuantity quantity, Foundation.NSDate startDate, Foundation.NSDate endDate, HKMetadata metadata);
	public static HKQuantitySample FromType (HKQuantityType quantityType, HKQuantity quantity, Foundation.NSDate startDate, Foundation.NSDate endDate, HKDevice device, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> metadata);
}

New Type: HealthKit.HKQuantitySeriesSampleBuilder

public class HKQuantitySeriesSampleBuilder : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected HKQuantitySeriesSampleBuilder (Foundation.NSObjectFlag t);
	protected HKQuantitySeriesSampleBuilder (IntPtr handle);
	public HKQuantitySeriesSampleBuilder (HKHealthStore healthStore, HKQuantityType quantityType, Foundation.NSDate startDate, HKDevice device);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual HKDevice Device { get; }
	public virtual HKQuantityType QuantityType { get; }
	public virtual Foundation.NSDate StartDate { get; }
	// methods
	public virtual void Discard ();
	protected virtual void FinishSeries (Foundation.NSDictionary metadata, HKQuantitySeriesSampleBuilderFinishSeriesDelegate completionHandler);
	public void FinishSeries (HKMetadata metadata, HKQuantitySeriesSampleBuilderFinishSeriesDelegate completionHandler);
	public virtual void FinishSeries (Foundation.NSDictionary metadata, Foundation.NSDate endDate, HKQuantitySeriesSampleBuilderFinishSeriesDelegate completionHandler);
	public void FinishSeries (HKMetadata metadata, Foundation.NSDate endDate, HKQuantitySeriesSampleBuilderFinishSeriesDelegate completionHandler);
	protected virtual System.Threading.Tasks.Task<HKQuantitySample[]> FinishSeriesAsync (Foundation.NSDictionary metadata);
	public System.Threading.Tasks.Task<HKQuantitySample[]> FinishSeriesAsync (HKMetadata metadata);
	public virtual System.Threading.Tasks.Task<HKQuantitySample[]> FinishSeriesAsync (Foundation.NSDictionary metadata, Foundation.NSDate endDate);
	public System.Threading.Tasks.Task<HKQuantitySample[]> FinishSeriesAsync (HKMetadata metadata, Foundation.NSDate endDate);
	public virtual bool Insert (HKQuantity quantity, Foundation.NSDate date, out Foundation.NSError error);
	public virtual bool Insert (HKQuantity quantity, Foundation.NSDateInterval dateInterval, out Foundation.NSError error);
}

New Type: HealthKit.HKQuantitySeriesSampleBuilderFinishSeriesDelegate

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

New Type: HealthKit.HKQuantitySeriesSampleQuery

public class HKQuantitySeriesSampleQuery : HealthKit.HKQuery, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HKQuantitySeriesSampleQuery ();
	protected HKQuantitySeriesSampleQuery (Foundation.NSObjectFlag t);
	protected HKQuantitySeriesSampleQuery (IntPtr handle);
	public HKQuantitySeriesSampleQuery (HKQuantitySample quantitySample, HKQuantitySeriesSampleQueryQuantityDelegate quantityHandler);
	public HKQuantitySeriesSampleQuery (HKQuantityType quantityType, Foundation.NSPredicate predicate, HKQuantitySeriesSampleQueryQuantityHandler quantityHandler);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool IncludeSample { get; set; }
	public virtual bool OrderByQuantitySampleStartDate { get; set; }
}

New Type: HealthKit.HKQuantitySeriesSampleQueryQuantityDelegate

public sealed delegate HKQuantitySeriesSampleQueryQuantityDelegate : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public HKQuantitySeriesSampleQueryQuantityDelegate (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (HKQuantitySeriesSampleQuery query, HKQuantity quantity, Foundation.NSDate date, bool done, Foundation.NSError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (HKQuantitySeriesSampleQuery query, HKQuantity quantity, Foundation.NSDate date, bool done, Foundation.NSError error);
}

New Type: HealthKit.HKQuantitySeriesSampleQueryQuantityHandler

public sealed delegate HKQuantitySeriesSampleQueryQuantityHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public HKQuantitySeriesSampleQueryQuantityHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (HKQuantitySeriesSampleQuery query, HKQuantity quantity, Foundation.NSDateInterval date, bool done, Foundation.NSError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (HKQuantitySeriesSampleQuery query, HKQuantity quantity, Foundation.NSDateInterval date, bool done, Foundation.NSError error);
}

New Type: HealthKit.HKQuantityType

public class HKQuantityType : HealthKit.HKSampleType, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HKQuantityType (Foundation.NSCoder coder);
	protected HKQuantityType (Foundation.NSObjectFlag t);
	protected HKQuantityType (IntPtr handle);
	// properties
	public virtual HKQuantityAggregationStyle AggregationStyle { get; }
	public override IntPtr ClassHandle { get; }
	// methods
	public static HKQuantityType Create (HKQuantityTypeIdentifier kind);
	public virtual bool IsCompatible (HKUnit unit);
}

New Type: HealthKit.HKQuantityTypeIdentifier

[Serializable]
public enum HKQuantityTypeIdentifier {
	ActiveEnergyBurned = 10,
	AppleExerciseTime = 68,
	AppleMoveTime = 90,
	AppleStandTime = 80,
	AppleWalkingSteadiness = 91,
	BasalBodyTemperature = 64,
	BasalEnergyBurned = 9,
	BloodAlcoholContent = 17,
	BloodGlucose = 14,
	BloodPressureDiastolic = 16,
	BloodPressureSystolic = 15,
	BodyFatPercentage = 1,
	BodyMass = 3,
	BodyMassIndex = 0,
	BodyTemperature = 25,
	DietaryBiotin = 50,
	DietaryCaffeine = 63,
	DietaryCalcium = 44,
	DietaryCarbohydrates = 32,
	DietaryChloride = 61,
	DietaryCholesterol = 30,
	DietaryChromium = 59,
	DietaryCopper = 57,
	DietaryEnergyConsumed = 35,
	DietaryFatMonounsaturated = 28,
	DietaryFatPolyunsaturated = 27,
	DietaryFatSaturated = 29,
	DietaryFatTotal = 26,
	DietaryFiber = 33,
	DietaryFolate = 49,
	DietaryIodine = 53,
	DietaryIron = 45,
	DietaryMagnesium = 54,
	DietaryManganese = 58,
	DietaryMolybdenum = 60,
	DietaryNiacin = 48,
	DietaryPantothenicAcid = 51,
	DietaryPhosphorus = 52,
	DietaryPotassium = 62,
	DietaryProtein = 36,
	DietaryRiboflavin = 47,
	DietarySelenium = 56,
	DietarySodium = 31,
	DietarySugar = 34,
	DietaryThiamin = 46,
	DietaryVitaminA = 37,
	DietaryVitaminB12 = 39,
	DietaryVitaminB6 = 38,
	DietaryVitaminC = 40,
	DietaryVitaminD = 41,
	DietaryVitaminE = 42,
	DietaryVitaminK = 43,
	DietaryWater = 65,
	DietaryZinc = 55,
	DistanceCycling = 8,
	DistanceDownhillSnowSports = 75,
	DistanceSwimming = 71,
	DistanceWalkingRunning = 7,
	DistanceWheelchair = 69,
	ElectrodermalActivity = 67,
	EnvironmentalAudioExposure = 81,
	FlightsClimbed = 11,
	ForcedExpiratoryVolume1 = 20,
	ForcedVitalCapacity = 19,
	HeadphoneAudioExposure = 82,
	HeartRate = 5,
	HeartRateVariabilitySdnn = 79,
	Height = 2,
	InhalerUsage = 23,
	InsulinDelivery = 76,
	LeanBodyMass = 4,
	NikeFuel = 12,
	NumberOfAlcoholicBeverages = 92,
	NumberOfTimesFallen = 22,
	OxygenSaturation = 13,
	PeakExpiratoryFlowRate = 21,
	PeripheralPerfusionIndex = 18,
	PushCount = 70,
	RespiratoryRate = 24,
	RestingHeartRate = 77,
	SixMinuteWalkTestDistance = 83,
	StairAscentSpeed = 84,
	StairDescentSpeed = 85,
	StepCount = 6,
	SwimmingStrokeCount = 72,
	UVExposure = 66,
	VO2Max = 74,
	WaistCircumference = 73,
	WalkingAsymmetryPercentage = 86,
	WalkingDoubleSupportPercentage = 87,
	WalkingHeartRateAverage = 78,
	WalkingSpeed = 88,
	WalkingStepLength = 89,
}

New Type: HealthKit.HKQuantityTypeIdentifierExtensions

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

New Type: HealthKit.HKQuantityTypeIdentifierKey

public static class HKQuantityTypeIdentifierKey {
	// properties
	public static Foundation.NSString ActiveEnergyBurned { get; }
	public static Foundation.NSString AppleExerciseTime { get; }
	public static Foundation.NSString BasalBodyTemperature { get; }
	public static Foundation.NSString BasalEnergyBurned { get; }
	public static Foundation.NSString BloodAlcoholContent { get; }
	public static Foundation.NSString BloodGlucose { get; }
	public static Foundation.NSString BloodPressureDiastolic { get; }
	public static Foundation.NSString BloodPressureSystolic { get; }
	public static Foundation.NSString BodyFatPercentage { get; }
	public static Foundation.NSString BodyMass { get; }
	public static Foundation.NSString BodyMassIndex { get; }
	public static Foundation.NSString BodyTemperature { get; }
	public static Foundation.NSString DietaryBiotin { get; }
	public static Foundation.NSString DietaryCaffeine { get; }
	public static Foundation.NSString DietaryCalcium { get; }
	public static Foundation.NSString DietaryCarbohydrates { get; }
	public static Foundation.NSString DietaryChloride { get; }
	public static Foundation.NSString DietaryCholesterol { get; }
	public static Foundation.NSString DietaryChromium { get; }
	public static Foundation.NSString DietaryCopper { get; }
	public static Foundation.NSString DietaryEnergyConsumed { get; }
	public static Foundation.NSString DietaryFatMonounsaturated { get; }
	public static Foundation.NSString DietaryFatPolyunsaturated { get; }
	public static Foundation.NSString DietaryFatSaturated { get; }
	public static Foundation.NSString DietaryFatTotal { get; }
	public static Foundation.NSString DietaryFiber { get; }
	public static Foundation.NSString DietaryFolate { get; }
	public static Foundation.NSString DietaryIodine { get; }
	public static Foundation.NSString DietaryIron { get; }
	public static Foundation.NSString DietaryMagnesium { get; }
	public static Foundation.NSString DietaryManganese { get; }
	public static Foundation.NSString DietaryMolybdenum { get; }
	public static Foundation.NSString DietaryNiacin { get; }
	public static Foundation.NSString DietaryPantothenicAcid { get; }
	public static Foundation.NSString DietaryPhosphorus { get; }
	public static Foundation.NSString DietaryPotassium { get; }
	public static Foundation.NSString DietaryProtein { get; }
	public static Foundation.NSString DietaryRiboflavin { get; }
	public static Foundation.NSString DietarySelenium { get; }
	public static Foundation.NSString DietarySodium { get; }
	public static Foundation.NSString DietarySugar { get; }
	public static Foundation.NSString DietaryThiamin { get; }
	public static Foundation.NSString DietaryVitaminA { get; }
	public static Foundation.NSString DietaryVitaminB12 { get; }
	public static Foundation.NSString DietaryVitaminB6 { get; }
	public static Foundation.NSString DietaryVitaminC { get; }
	public static Foundation.NSString DietaryVitaminD { get; }
	public static Foundation.NSString DietaryVitaminE { get; }
	public static Foundation.NSString DietaryVitaminK { get; }
	public static Foundation.NSString DietaryWater { get; }
	public static Foundation.NSString DietaryZinc { get; }
	public static Foundation.NSString DistanceCycling { get; }
	public static Foundation.NSString DistanceDownhillSnowSports { get; }
	public static Foundation.NSString DistanceSwimming { get; }
	public static Foundation.NSString DistanceWalkingRunning { get; }
	public static Foundation.NSString DistanceWheelchair { get; }
	public static Foundation.NSString ElectrodermalActivity { get; }
	public static Foundation.NSString FlightsClimbed { get; }
	public static Foundation.NSString ForcedExpiratoryVolume1 { get; }
	public static Foundation.NSString ForcedVitalCapacity { get; }
	public static Foundation.NSString HeartRate { get; }
	public static Foundation.NSString HeartRateVariabilitySdnn { get; }
	public static Foundation.NSString Height { get; }
	public static Foundation.NSString InhalerUsage { get; }
	public static Foundation.NSString InsulinDelivery { get; }
	public static Foundation.NSString LeanBodyMass { get; }
	public static Foundation.NSString NikeFuel { get; }
	public static Foundation.NSString NumberOfTimesFallen { get; }
	public static Foundation.NSString OxygenSaturation { get; }
	public static Foundation.NSString PeakExpiratoryFlowRate { get; }
	public static Foundation.NSString PeripheralPerfusionIndex { get; }
	public static Foundation.NSString PushCount { get; }
	public static Foundation.NSString RespiratoryRate { get; }
	public static Foundation.NSString RestingHeartRate { get; }
	public static Foundation.NSString StepCount { get; }
	public static Foundation.NSString SwimmingStrokeCount { get; }
	public static Foundation.NSString UVExposure { get; }
	public static Foundation.NSString VO2Max { get; }
	public static Foundation.NSString WaistCircumference { get; }
	public static Foundation.NSString WalkingHeartRateAverage { get; }
}

New Type: HealthKit.HKQuery

public class HKQuery : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected HKQuery (Foundation.NSObjectFlag t);
	protected HKQuery (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual HKObjectType ObjectType { get; }
	public virtual Foundation.NSPredicate Predicate { get; }
	public virtual HKSampleType SampleType { get; }
	// methods
	public static Foundation.NSPredicate GetPredicateForActivitySummariesBetween (Foundation.NSDateComponents startDateComponents, Foundation.NSDateComponents endDateComponents);
	public static Foundation.NSPredicate GetPredicateForActivitySummary (Foundation.NSDateComponents dateComponents);
	public static Foundation.NSPredicate GetPredicateForCategorySamples (Foundation.NSPredicateOperatorType operatorType, nint value);
	public static Foundation.NSPredicate GetPredicateForClinicalRecords (HKFhirResourceType resourceType);
	public static Foundation.NSPredicate GetPredicateForClinicalRecords (HKSource source, HKFhirResourceType resourceType, string identifier);
	public static Foundation.NSPredicate GetPredicateForDuration (Foundation.NSPredicateOperatorType operatorType, double duration);
	public static Foundation.NSPredicate GetPredicateForElectrocardiograms (HKElectrocardiogramClassification classification);
	public static Foundation.NSPredicate GetPredicateForElectrocardiograms (HKElectrocardiogramSymptomsStatus symptomsStatus);
	public static Foundation.NSPredicate GetPredicateForMetadataKey (Foundation.NSString metadataKey);
	public static Foundation.NSPredicate GetPredicateForMetadataKey (Foundation.NSString metadataKey, Foundation.NSObject[] allowedValues);
	public static Foundation.NSPredicate GetPredicateForMetadataKey (Foundation.NSString metadataKey, Foundation.NSPredicateOperatorType operatorType, Foundation.NSObject value);
	public static Foundation.NSPredicate GetPredicateForObject (Foundation.NSUuid objectUuid);
	public static Foundation.NSPredicate GetPredicateForObjects (Foundation.NSSet objectUuids);
	public static Foundation.NSPredicate GetPredicateForObjects (HKElectrocardiogram electrocardiogram);
	public static Foundation.NSPredicate GetPredicateForObjectsFromDevices (Foundation.NSSet<HKDevice> devices);
	public static Foundation.NSPredicate GetPredicateForObjectsFromSource (HKSource source);
	public static Foundation.NSPredicate GetPredicateForObjectsFromSourceRevisions (Foundation.NSSet<HKSourceRevision> sourceRevisions);
	public static Foundation.NSPredicate GetPredicateForObjectsFromSources (Foundation.NSSet sources);
	public static Foundation.NSPredicate GetPredicateForObjectsFromWorkout (HKWorkout workout);
	public static Foundation.NSPredicate GetPredicateForObjectsWithDeviceProperty (string key, Foundation.NSSet<Foundation.NSString> allowedValues);
	public static Foundation.NSPredicate GetPredicateForQuantitySamples (Foundation.NSPredicateOperatorType operatorType, HKQuantity quantity);
	public static Foundation.NSPredicate GetPredicateForSamples (Foundation.NSDate startDate, Foundation.NSDate endDate, HKQueryOptions options);
	public static Foundation.NSPredicate GetPredicateForTotalDistance (Foundation.NSPredicateOperatorType operatorType, HKQuantity totalDistance);
	public static Foundation.NSPredicate GetPredicateForTotalEnergyBurned (Foundation.NSPredicateOperatorType operatorType, HKQuantity totalEnergyBurned);
	public static Foundation.NSPredicate GetPredicateForTotalFlightsClimbed (Foundation.NSPredicateOperatorType operatorType, HKQuantity totalFlightsClimbed);
	public static Foundation.NSPredicate GetPredicateForTotalSwimmingStrokeCount (Foundation.NSPredicateOperatorType operatorType, HKQuantity totalSwimmingStrokeCount);
	public static Foundation.NSPredicate GetPredicateForVerifiableClinicalRecords (Foundation.NSDateInterval dateInterval);
	public static Foundation.NSPredicate GetPredicateForWorkouts (HKWorkoutActivityType workoutActivityType);
	public static Foundation.NSPredicate PredicateForObjectsWithNoCorrelation ();
}

New Type: HealthKit.HKQueryAnchor

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

New Type: HealthKit.HKQueryDescriptor

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

New Type: HealthKit.HKQueryOptions

[Serializable]
public enum HKQueryOptions {
	None = 0,
	StrictEndDate = 2,
	StrictStartDate = 1,
}

New Type: HealthKit.HKSample

public class HKSample : HealthKit.HKObject, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HKSample (Foundation.NSCoder coder);
	protected HKSample (Foundation.NSObjectFlag t);
	protected HKSample (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSDate EndDate { get; }
	public virtual bool HasUndeterminedDuration { get; }
	public virtual HKSampleType SampleType { get; }
	public static Foundation.NSString SortIdentifierEndDate { get; }
	public static Foundation.NSString SortIdentifierStartDate { get; }
	public virtual Foundation.NSDate StartDate { get; }
}

New Type: HealthKit.HKSampleQuery

public class HKSampleQuery : HealthKit.HKQuery, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected HKSampleQuery (Foundation.NSObjectFlag t);
	protected HKSampleQuery (IntPtr handle);
	public HKSampleQuery (HKQueryDescriptor[] queryDescriptors, nint limit, HKSampleQueryResultsHandler resultsHandler);
	public HKSampleQuery (HKQueryDescriptor[] queryDescriptors, nint limit, Foundation.NSSortDescriptor[] sortDescriptors, HKSampleQueryResultsHandler resultsHandler);
	public HKSampleQuery (HKSampleType sampleType, Foundation.NSPredicate predicate, nuint limit, Foundation.NSSortDescriptor[] sortDescriptors, HKSampleQueryResultsHandler resultsHandler);
	// fields
	public static const int NoLimit;
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nuint Limit { get; }
	public virtual Foundation.NSSortDescriptor[] SortDescriptors { get; }
}

New Type: HealthKit.HKSampleQueryResultsHandler

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

New Type: HealthKit.HKSampleType

public abstract class HKSampleType : HealthKit.HKObjectType, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected HKSampleType (Foundation.NSCoder coder);
	protected HKSampleType (Foundation.NSObjectFlag t);
	protected HKSampleType (IntPtr handle);
	// properties
	public virtual bool AllowsRecalibrationForEstimates { get; }
	public override IntPtr ClassHandle { get; }
	public virtual bool IsMaximumDurationRestricted { get; }
	public virtual bool IsMinimumDurationRestricted { get; }
	public virtual double MaximumAllowedDuration { get; }
	public virtual double MinimumAllowedDuration { get; }
}

New Type: HealthKit.HKSeriesBuilder

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

New Type: HealthKit.HKSeriesSample

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

New Type: HealthKit.HKSeriesType

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

New Type: HealthKit.HKSource

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

New Type: HealthKit.HKSourceQuery

public class HKSourceQuery : HealthKit.HKQuery, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected HKSourceQuery (Foundation.NSObjectFlag t);
	protected HKSourceQuery (IntPtr handle);
	public HKSourceQuery (HKSampleType sampleType, Foundation.NSPredicate objectPredicate, HKSourceQueryCompletionHandler completionHandler);
	// properties
	public override IntPtr ClassHandle { get; }
}

New Type: HealthKit.HKSourceQueryCompletionHandler

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

New Type: HealthKit.HKSourceRevision

public class HKSourceRevision : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HKSourceRevision (Foundation.NSCoder coder);
	protected HKSourceRevision (Foundation.NSObjectFlag t);
	protected HKSourceRevision (IntPtr handle);
	public HKSourceRevision (HKSource source, string version);
	public HKSourceRevision (HKSource source, string version, string productType, Foundation.NSOperatingSystemVersion operatingSystemVersion);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSOperatingSystemVersion OperatingSystemVersion { get; }
	public virtual string ProductType { get; }
	public virtual HKSource Source { get; }
	public virtual string Version { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: HealthKit.HKSourceRevisionInfo

public static class HKSourceRevisionInfo {
	// properties
	public static Foundation.NSString AnyProductType { get; }
	public static Foundation.NSString AnyVersion { get; }
}

New Type: HealthKit.HKStatistics

public class HKStatistics : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HKStatistics (Foundation.NSCoder coder);
	protected HKStatistics (Foundation.NSObjectFlag t);
	protected HKStatistics (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual HKQuantity Duration { get; }
	public virtual Foundation.NSDate EndDate { get; }
	public virtual HKQuantity MostRecentQuantity { get; }
	public virtual Foundation.NSDateInterval MostRecentQuantityDateInterval { get; }
	public virtual HKQuantityType QuantityType { get; }
	public virtual HKSource[] Sources { get; }
	public virtual Foundation.NSDate StartDate { get; }
	// methods
	public virtual HKQuantity AverageQuantity ();
	public virtual HKQuantity AverageQuantity (HKSource source);
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public virtual HKQuantity GetDuration (HKSource source);
	public virtual HKQuantity GetMostRecentQuantity (HKSource source);
	public virtual Foundation.NSDateInterval GetMostRecentQuantityDateInterval (HKSource source);
	public virtual HKQuantity MaximumQuantity ();
	public virtual HKQuantity MaximumQuantity (HKSource source);
	public virtual HKQuantity MinimumQuantity ();
	public virtual HKQuantity MinimumQuantity (HKSource source);
	public virtual HKQuantity SumQuantity ();
	public virtual HKQuantity SumQuantity (HKSource source);
}

New Type: HealthKit.HKStatisticsCollection

public class HKStatisticsCollection : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected HKStatisticsCollection (Foundation.NSObjectFlag t);
	protected HKStatisticsCollection (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSSet Sources { get; }
	public virtual HKStatistics[] Statistics { get; }
	// methods
	public virtual void EnumerateStatistics (Foundation.NSDate startDate, Foundation.NSDate endDate, HKStatisticsCollectionEnumerator handler);
	public virtual HKStatistics GetStatistics (Foundation.NSDate date);
}

New Type: HealthKit.HKStatisticsCollectionEnumerator

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

New Type: HealthKit.HKStatisticsCollectionQuery

public class HKStatisticsCollectionQuery : HealthKit.HKQuery, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected HKStatisticsCollectionQuery (Foundation.NSObjectFlag t);
	protected HKStatisticsCollectionQuery (IntPtr handle);
	public HKStatisticsCollectionQuery (HKQuantityType quantityType, Foundation.NSPredicate quantitySamplePredicate, HKStatisticsOptions options, Foundation.NSDate anchorDate, Foundation.NSDateComponents intervalComponents);
	// properties
	public virtual Foundation.NSDate AnchorDate { get; }
	public override IntPtr ClassHandle { get; }
	public virtual HKStatisticsCollectionQueryInitialResultsHandler InitialResultsHandler { get; set; }
	public virtual Foundation.NSDateComponents IntervalComponents { get; }
	public virtual HKStatisticsOptions Options { get; }
	public virtual HKStatisticsCollectionQueryInitialResultsHandler StatisticsUpdateHandler { get; set; }
	public virtual HKStatisticsCollectionQueryStatisticsUpdateHandler StatisticsUpdated { get; set; }
	// methods
	public virtual void SetInitialResultsHandler (HKStatisticsCollectionQueryInitialResultsHandler handler);
	public virtual void SetStatisticsUpdateHandler (HKStatisticsCollectionQueryInitialResultsHandler handler);
}

New Type: HealthKit.HKStatisticsCollectionQueryInitialResultsHandler

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

New Type: HealthKit.HKStatisticsCollectionQueryStatisticsUpdateHandler

public sealed delegate HKStatisticsCollectionQueryStatisticsUpdateHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public HKStatisticsCollectionQueryStatisticsUpdateHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (HKStatisticsCollectionQuery query, HKStatistics statistics, HKStatisticsCollection collection, Foundation.NSError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (HKStatisticsCollectionQuery query, HKStatistics statistics, HKStatisticsCollection collection, Foundation.NSError error);
}

New Type: HealthKit.HKStatisticsOptions

[Serializable]
public enum HKStatisticsOptions {
	CumulativeSum = 16,
	DiscreteAverage = 2,
	DiscreteMax = 8,
	DiscreteMin = 4,
	Duration = 64,
	MostRecent = 32,
	None = 0,
	SeparateBySource = 1,
}

New Type: HealthKit.HKStatisticsQuery

public class HKStatisticsQuery : HealthKit.HKQuery, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected HKStatisticsQuery (Foundation.NSObjectFlag t);
	protected HKStatisticsQuery (IntPtr handle);
	public HKStatisticsQuery (HKQuantityType quantityType, Foundation.NSPredicate quantitySamplePredicate, HKStatisticsOptions options, HKStatisticsQueryHandler handler);
	// properties
	public override IntPtr ClassHandle { get; }
}

New Type: HealthKit.HKStatisticsQueryHandler

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

New Type: HealthKit.HKStoreSampleAddedCallback

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

New Type: HealthKit.HKSwimmingStrokeStyle

[Serializable]
public enum HKSwimmingStrokeStyle {
	Backstroke = 3,
	Breaststroke = 4,
	Butterfly = 5,
	Freestyle = 2,
	Mixed = 1,
	Unknown = 0,
}

New Type: HealthKit.HKUnit

public class HKUnit : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HKUnit (Foundation.NSCoder coder);
	protected HKUnit (Foundation.NSObjectFlag t);
	protected HKUnit (IntPtr handle);
	// fields
	public static const double MolarMassBloodGlucose;
	// properties
	public static HKUnit Atmosphere { get; }
	public static HKUnit Calorie { get; }
	public static HKUnit CentimeterOfWater { get; }
	public override IntPtr ClassHandle { get; }
	public static HKUnit Count { get; }
	public static HKUnit CupImperialUnit { get; }
	public static HKUnit CupUSUnit { get; }
	public static HKUnit Day { get; }
	public static HKUnit DecibelAWeightedSoundPressureLevelUnit { get; }
	public static HKUnit DecibelHearingLevelUnit { get; }
	public static HKUnit DegreeCelsius { get; }
	public static HKUnit DegreeFahrenheit { get; }
	public static HKUnit FluidOunceImperialUnit { get; }
	public static HKUnit FluidOunceUSUnit { get; }
	public static HKUnit Foot { get; }
	public static HKUnit Gram { get; }
	public static HKUnit HertzUnit { get; }
	public static HKUnit Hour { get; }
	public static HKUnit Inch { get; }
	public static HKUnit InchesOfMercury { get; }
	public static HKUnit InternationalUnit { get; }
	public virtual bool IsNull { get; }
	public static HKUnit Joule { get; }
	public static HKUnit Kelvin { get; }
	public static HKUnit Kilocalorie { get; }
	public static HKUnit LargeCalorie { get; }
	public static HKUnit Liter { get; }
	public static HKUnit Meter { get; }
	public static HKUnit Mile { get; }
	public static HKUnit MillimeterOfMercury { get; }
	public static HKUnit Minute { get; }
	public static HKUnit Ounce { get; }
	public static HKUnit Pascal { get; }
	public static HKUnit Percent { get; }
	public static HKUnit PintImperialUnit { get; }
	public static HKUnit PintUSUnit { get; }
	public static HKUnit Pound { get; }
	public static HKUnit Second { get; }
	public static HKUnit Siemen { get; }
	public static HKUnit SmallCalorie { get; }
	public static HKUnit Stone { get; }
	public virtual string UnitString { get; }
	public static HKUnit Volt { get; }
	public static HKUnit Yard { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static HKUnit CreateJouleUnit (HKMetricPrefix prefix);
	public static HKUnit CreateLiterUnit (HKMetricPrefix prefix);
	public static HKUnit CreateMeterUnit (HKMetricPrefix prefix);
	public static HKUnit CreateMoleUnit (double gramsPerMole);
	public static HKUnit CreateMoleUnit (HKMetricPrefix prefix, double gramsPerMole);
	public static HKUnit CreatePascalUnit (HKMetricPrefix prefix);
	public static HKUnit CreateSecondUnit (HKMetricPrefix prefix);
	public static HKUnit CreateSiemenUnit (HKMetricPrefix prefix);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public static HKUnit FromEnergyFormatterUnit (Foundation.NSEnergyFormatterUnit energyFormatterUnit);
	public static HKUnit FromGramUnit (HKMetricPrefix prefix);
	public static HKUnit FromLengthFormatterUnit (Foundation.NSLengthFormatterUnit lengthFormatterUnit);
	public static HKUnit FromMassFormatterUnit (Foundation.NSMassFormatterUnit massFormatterUnit);
	public static HKUnit FromString (string aString);
	public static Foundation.NSEnergyFormatterUnit GetEnergyFormatterUnit (HKUnit unit);
	public static HKUnit GetHertzUnit (HKMetricPrefix prefix);
	public static Foundation.NSLengthFormatterUnit GetLengthFormatterUnit (HKUnit unit);
	public static Foundation.NSMassFormatterUnit GetMassFormatterUnit (HKUnit unit);
	public static HKUnit GetVolt (HKMetricPrefix prefix);
	public virtual HKUnit ReciprocalUnit ();
	public virtual HKUnit UnitDividedBy (HKUnit unit);
	public virtual HKUnit UnitMultipliedBy (HKUnit unit);
	public virtual HKUnit UnitRaisedToPower (nint power);
}

New Type: HealthKit.HKUpdateFrequency

[Serializable]
public enum HKUpdateFrequency {
	Daily = 3,
	Hourly = 2,
	Immediate = 1,
	Weekly = 4,
}

New Type: HealthKit.HKVO2MaxTestType

[Serializable]
public enum HKVO2MaxTestType {
	MaxExercise = 1,
	PredictionNonExercise = 3,
	PredictionSubMaxExercise = 2,
}

New Type: HealthKit.HKVerifiableClinicalRecord

public class HKVerifiableClinicalRecord : HealthKit.HKSample, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HKVerifiableClinicalRecord (Foundation.NSCoder coder);
	protected HKVerifiableClinicalRecord (Foundation.NSObjectFlag t);
	protected HKVerifiableClinicalRecord (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSDate ExpirationDate { get; }
	public virtual Foundation.NSDate IssuedDate { get; }
	public virtual string IssuerIdentifier { get; }
	public virtual string[] ItemNames { get; }
	public virtual Foundation.NSData JwsRepresentation { get; }
	public virtual string[] RecordTypes { get; }
	public virtual Foundation.NSDate RelevantDate { get; }
	public virtual HKVerifiableClinicalRecordSubject Subject { get; }
}

New Type: HealthKit.HKVerifiableClinicalRecordQuery

public class HKVerifiableClinicalRecordQuery : HealthKit.HKQuery, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected HKVerifiableClinicalRecordQuery (Foundation.NSObjectFlag t);
	protected HKVerifiableClinicalRecordQuery (IntPtr handle);
	public HKVerifiableClinicalRecordQuery (string[] recordTypes, Foundation.NSPredicate predicate, HKVerifiableClinicalRecordQueryResultHandler handler);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string[] RecordTypes { get; }
}

New Type: HealthKit.HKVerifiableClinicalRecordQueryResultHandler

public sealed delegate HKVerifiableClinicalRecordQueryResultHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public HKVerifiableClinicalRecordQueryResultHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (HKVerifiableClinicalRecordQuery query, Foundation.NSArray<HKVerifiableClinicalRecord> records, Foundation.NSError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (HKVerifiableClinicalRecordQuery query, Foundation.NSArray<HKVerifiableClinicalRecord> records, Foundation.NSError error);
}

New Type: HealthKit.HKVerifiableClinicalRecordSubject

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

New Type: HealthKit.HKWeatherCondition

[Serializable]
public enum HKWeatherCondition {
	Blustery = 9,
	Clear = 1,
	Cloudy = 5,
	Drizzle = 21,
	Dust = 11,
	Fair = 2,
	Foggy = 6,
	FreezingDrizzle = 15,
	FreezingRain = 16,
	Hail = 13,
	Haze = 7,
	Hurricane = 26,
	MixedRainAndHail = 17,
	MixedRainAndSleet = 19,
	MixedRainAndSnow = 18,
	MixedSnowAndSleet = 20,
	MostlyCloudy = 4,
	None = 0,
	PartlyCloudy = 3,
	ScatteredShowers = 22,
	Showers = 23,
	Sleet = 14,
	Smoky = 10,
	Snow = 12,
	Thunderstorms = 24,
	Tornado = 27,
	TropicalStorm = 25,
	Windy = 8,
}

New Type: HealthKit.HKWheelchairUse

[Serializable]
public enum HKWheelchairUse {
	No = 1,
	NotSet = 0,
	Yes = 2,
}

New Type: HealthKit.HKWheelchairUseObject

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

New Type: HealthKit.HKWorkout

public class HKWorkout : HealthKit.HKSample, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HKWorkout (Foundation.NSCoder coder);
	protected HKWorkout (Foundation.NSObjectFlag t);
	protected HKWorkout (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual double Duration { get; }
	public static Foundation.NSString SortIdentifierDuration { get; }
	public static Foundation.NSString SortIdentifierTotalDistance { get; }
	public static Foundation.NSString SortIdentifierTotalEnergyBurned { get; }
	public static Foundation.NSString SortIdentifierTotalFlightsClimbed { get; }
	public static Foundation.NSString SortIdentifierTotalSwimmingStrokeCount { get; }
	public virtual HKQuantity TotalDistance { get; }
	public virtual HKQuantity TotalEnergyBurned { get; }
	public virtual HKQuantity TotalFlightsClimbed { get; }
	public virtual HKQuantity TotalSwimmingStrokeCount { get; }
	public virtual HKWorkoutActivityType WorkoutActivityType { get; }
	public virtual HKWorkoutEvent[] WorkoutEvents { get; }
	// methods
	public static HKWorkout Create (HKWorkoutActivityType workoutActivityType, Foundation.NSDate startDate, Foundation.NSDate endDate);
	public static HKWorkout Create (HKWorkoutActivityType workoutActivityType, Foundation.NSDate startDate, Foundation.NSDate endDate, HKWorkoutEvent[] workoutEvents, HKQuantity totalEnergyBurned, HKQuantity totalDistance, Foundation.NSDictionary metadata);
	public static HKWorkout Create (HKWorkoutActivityType workoutActivityType, Foundation.NSDate startDate, Foundation.NSDate endDate, HKWorkoutEvent[] workoutEvents, HKQuantity totalEnergyBurned, HKQuantity totalDistance, HKMetadata metadata);
	public static HKWorkout Create (HKWorkoutActivityType workoutActivityType, Foundation.NSDate startDate, Foundation.NSDate endDate, double duration, HKQuantity totalEnergyBurned, HKQuantity totalDistance, Foundation.NSDictionary metadata);
	public static HKWorkout Create (HKWorkoutActivityType workoutActivityType, Foundation.NSDate startDate, Foundation.NSDate endDate, double duration, HKQuantity totalEnergyBurned, HKQuantity totalDistance, HKMetadata metadata);
	public static HKWorkout Create (HKWorkoutActivityType workoutActivityType, Foundation.NSDate startDate, Foundation.NSDate endDate, HKWorkoutEvent[] workoutEvents, HKQuantity totalEnergyBurned, HKQuantity totalDistance, HKDevice device, Foundation.NSDictionary metadata);
	public static HKWorkout Create (HKWorkoutActivityType workoutActivityType, Foundation.NSDate startDate, Foundation.NSDate endDate, HKWorkoutEvent[] workoutEvents, HKQuantity totalEnergyBurned, HKQuantity totalDistance, HKDevice device, HKMetadata metadata);
	public static HKWorkout Create (HKWorkoutActivityType workoutActivityType, Foundation.NSDate startDate, Foundation.NSDate endDate, double duration, HKQuantity totalEnergyBurned, HKQuantity totalDistance, HKDevice device, Foundation.NSDictionary metadata);
	public static HKWorkout Create (HKWorkoutActivityType workoutActivityType, Foundation.NSDate startDate, Foundation.NSDate endDate, double duration, HKQuantity totalEnergyBurned, HKQuantity totalDistance, HKDevice device, HKMetadata metadata);
	public static HKWorkout Create (HKWorkoutActivityType workoutActivityType, Foundation.NSDate startDate, Foundation.NSDate endDate, HKWorkoutEvent[] workoutEvents, HKQuantity totalEnergyBurned, HKQuantity totalDistance, HKQuantity totalSwimmingStrokeCount, HKDevice device, Foundation.NSDictionary metadata);
	public static HKWorkout Create (HKWorkoutActivityType workoutActivityType, Foundation.NSDate startDate, Foundation.NSDate endDate, HKWorkoutEvent[] workoutEvents, HKQuantity totalEnergyBurned, HKQuantity totalDistance, HKQuantity totalSwimmingStrokeCount, HKDevice device, HKMetadata metadata);
	public static HKWorkout CreateFlightsClimbedWorkout (HKWorkoutActivityType workoutActivityType, Foundation.NSDate startDate, Foundation.NSDate endDate, HKWorkoutEvent[] workoutEvents, HKQuantity totalEnergyBurned, HKQuantity totalDistance, HKQuantity totalFlightsClimbed, HKDevice device, Foundation.NSDictionary metadata);
	public static HKWorkout CreateFlightsClimbedWorkout (HKWorkoutActivityType workoutActivityType, Foundation.NSDate startDate, Foundation.NSDate endDate, HKWorkoutEvent[] workoutEvents, HKQuantity totalEnergyBurned, HKQuantity totalDistance, HKQuantity totalFlightsClimbed, HKDevice device, HKMetadata metadata);
}

New Type: HealthKit.HKWorkoutActivityType

[Serializable]
public enum HKWorkoutActivityType {
	AmericanFootball = 1,
	Archery = 2,
	AustralianFootball = 3,
	Badminton = 4,
	Barre = 58,
	Baseball = 5,
	Basketball = 6,
	Bowling = 7,
	Boxing = 8,
	CardioDance = 77,
	Climbing = 9,
	Cooldown = 80,
	CoreTraining = 59,
	Cricket = 10,
	CrossCountrySkiing = 60,
	CrossTraining = 11,
	Curling = 12,
	Cycling = 13,
	Dance = 14,
	DanceInspiredTraining = 15,
	DiscSports = 75,
	DownhillSkiing = 61,
	Elliptical = 16,
	EquestrianSports = 17,
	Fencing = 18,
	Fishing = 19,
	FitnessGaming = 76,
	Flexibility = 62,
	FunctionalStrengthTraining = 20,
	Golf = 21,
	Gymnastics = 22,
	HandCycling = 74,
	Handball = 23,
	HighIntensityIntervalTraining = 63,
	Hiking = 24,
	Hockey = 25,
	Hunting = 26,
	JumpRope = 64,
	Kickboxing = 65,
	Lacrosse = 27,
	MartialArts = 28,
	MindAndBody = 29,
	MixedCardio = 73,
	MixedMetabolicCardioTraining = 30,
	Other = 3000,
	PaddleSports = 31,
	Pickleball = 79,
	Pilates = 66,
	Play = 32,
	PreparationAndRecovery = 33,
	Racquetball = 34,
	Rowing = 35,
	Rugby = 36,
	Running = 37,
	Sailing = 38,
	SkatingSports = 39,
	SnowSports = 40,
	Snowboarding = 67,
	Soccer = 41,
	SocialDance = 78,
	Softball = 42,
	Squash = 43,
	StairClimbing = 44,
	Stairs = 68,
	StepTraining = 69,
	SurfingSports = 45,
	Swimming = 46,
	TableTennis = 47,
	TaiChi = 72,
	Tennis = 48,
	TrackAndField = 49,
	TraditionalStrengthTraining = 50,
	Volleyball = 51,
	Walking = 52,
	WaterFitness = 53,
	WaterPolo = 54,
	WaterSports = 55,
	WheelchairRunPace = 71,
	WheelchairWalkPace = 70,
	Wrestling = 56,
	Yoga = 57,
}

New Type: HealthKit.HKWorkoutBuilder

public class HKWorkoutBuilder : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected HKWorkoutBuilder (Foundation.NSObjectFlag t);
	protected HKWorkoutBuilder (IntPtr handle);
	public HKWorkoutBuilder (HKHealthStore healthStore, HKWorkoutConfiguration configuration, HKDevice device);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual HKDevice Device { get; }
	public virtual Foundation.NSDate EndDate { get; }
	public HKMetadata Metadata { get; }
	protected virtual Foundation.NSDictionary NativeMetadata { get; }
	public virtual Foundation.NSDate StartDate { get; }
	public virtual HKWorkoutConfiguration WorkoutConfiguration { get; }
	public virtual HKWorkoutEvent[] WorkoutEvents { get; }
	// methods
	protected virtual void Add (Foundation.NSDictionary metadata, HKWorkoutBuilderCompletionHandler completionHandler);
	public void Add (HKMetadata metadata, HKWorkoutBuilderCompletionHandler completionHandler);
	public virtual void Add (HKSample[] samples, HKWorkoutBuilderCompletionHandler completionHandler);
	public virtual void Add (HKWorkoutEvent[] workoutEvents, HKWorkoutBuilderCompletionHandler completionHandler);
	protected virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> AddAsync (Foundation.NSDictionary metadata);
	public System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> AddAsync (HKMetadata metadata);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> AddAsync (HKSample[] samples);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> AddAsync (HKWorkoutEvent[] workoutEvents);
	public virtual void BeginCollection (Foundation.NSDate startDate, HKWorkoutBuilderCompletionHandler completionHandler);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> BeginCollectionAsync (Foundation.NSDate startDate);
	public virtual void DiscardWorkout ();
	public virtual void EndCollection (Foundation.NSDate endDate, HKWorkoutBuilderCompletionHandler completionHandler);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> EndCollectionAsync (Foundation.NSDate endDate);
	public virtual void FinishWorkout (HKWorkoutBuilderCompletionHandler completionHandler);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> FinishWorkoutAsync ();
	public virtual double GetElapsedTime (Foundation.NSDate date);
	public virtual HKSeriesBuilder GetSeriesBuilder (HKSeriesType seriesType);
	public virtual HKStatistics GetStatistics (HKQuantityType quantityType);
}

New Type: HealthKit.HKWorkoutBuilderCompletionHandler

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

New Type: HealthKit.HKWorkoutConfiguration

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

New Type: HealthKit.HKWorkoutEvent

public class HKWorkoutEvent : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HKWorkoutEvent (Foundation.NSCoder coder);
	protected HKWorkoutEvent (Foundation.NSObjectFlag t);
	protected HKWorkoutEvent (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSDate Date { get; }
	public virtual Foundation.NSDateInterval DateInterval { get; }
	public HKMetadata Metadata { get; }
	public virtual HKWorkoutEventType Type { get; }
	public virtual Foundation.NSDictionary WeakMetadata { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static HKWorkoutEvent Create (HKWorkoutEventType type, Foundation.NSDate date);
	public static HKWorkoutEvent Create (HKWorkoutEventType type, Foundation.NSDate date, Foundation.NSDictionary metadata);
	public static HKWorkoutEvent Create (HKWorkoutEventType type, Foundation.NSDate date, HKMetadata metadata);
	public static HKWorkoutEvent Create (HKWorkoutEventType type, Foundation.NSDateInterval dateInterval, Foundation.NSDictionary metadata);
	public static HKWorkoutEvent Create (HKWorkoutEventType type, Foundation.NSDateInterval dateInterval, HKMetadata metadata);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: HealthKit.HKWorkoutEventType

[Serializable]
public enum HKWorkoutEventType {
	Lap = 3,
	Marker = 4,
	MotionPaused = 5,
	MotionResumed = 6,
	Pause = 1,
	PauseOrResumeRequest = 8,
	Resume = 2,
	Segment = 7,
}

New Type: HealthKit.HKWorkoutRoute

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

New Type: HealthKit.HKWorkoutRouteBuilder

public class HKWorkoutRouteBuilder : HealthKit.HKSeriesBuilder, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HKWorkoutRouteBuilder (Foundation.NSCoder coder);
	protected HKWorkoutRouteBuilder (Foundation.NSObjectFlag t);
	protected HKWorkoutRouteBuilder (IntPtr handle);
	public HKWorkoutRouteBuilder (HKHealthStore healthStore, HKDevice device);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	protected virtual void AddMetadata (Foundation.NSDictionary metadata, HKWorkoutRouteBuilderAddMetadataHandler completion);
	public void AddMetadata (HKMetadata metadata, HKWorkoutRouteBuilderAddMetadataHandler completion);
	protected virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> AddMetadataAsync (Foundation.NSDictionary metadata);
	public System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> AddMetadataAsync (HKMetadata metadata);
	protected virtual void FinishRoute (HKWorkout workout, Foundation.NSDictionary metadata, System.Action<HKWorkoutRoute,Foundation.NSError> completion);
	public void FinishRoute (HKWorkout workout, HKMetadata metadata, System.Action<HKWorkoutRoute,Foundation.NSError> completion);
	protected virtual System.Threading.Tasks.Task<HKWorkoutRoute> FinishRouteAsync (HKWorkout workout, Foundation.NSDictionary metadata);
	public System.Threading.Tasks.Task<HKWorkoutRoute> FinishRouteAsync (HKWorkout workout, HKMetadata metadata);
	public virtual void InsertRouteData (CoreLocation.CLLocation[] routeData, System.Action<System.Boolean,Foundation.NSError> completion);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> InsertRouteDataAsync (CoreLocation.CLLocation[] routeData);
}

New Type: HealthKit.HKWorkoutRouteBuilderAddMetadataHandler

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

New Type: HealthKit.HKWorkoutRouteBuilderDataHandler

public sealed delegate HKWorkoutRouteBuilderDataHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public HKWorkoutRouteBuilderDataHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (HKWorkoutRouteQuery query, CoreLocation.CLLocation[] routeData, bool done, Foundation.NSError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (HKWorkoutRouteQuery query, CoreLocation.CLLocation[] routeData, bool done, Foundation.NSError error);
}

New Type: HealthKit.HKWorkoutRouteQuery

public class HKWorkoutRouteQuery : HealthKit.HKQuery, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HKWorkoutRouteQuery ();
	protected HKWorkoutRouteQuery (Foundation.NSObjectFlag t);
	protected HKWorkoutRouteQuery (IntPtr handle);
	public HKWorkoutRouteQuery (HKWorkoutRoute workoutRoute, HKWorkoutRouteBuilderDataHandler dataHandler);
	// properties
	public override IntPtr ClassHandle { get; }
}

New Type: HealthKit.HKWorkoutSessionLocationType

[Serializable]
public enum HKWorkoutSessionLocationType {
	Indoor = 2,
	Outdoor = 3,
	Unknown = 1,
}

New Type: HealthKit.HKWorkoutSwimmingLocationType

[Serializable]
public enum HKWorkoutSwimmingLocationType {
	OpenWater = 2,
	Pool = 1,
	Unknown = 0,
}

New Type: HealthKit.HKWorkoutType

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

New Namespace HealthKitUI

New Type: HealthKitUI.HKActivityRingView

public class HKActivityRingView : UIKit.UIView, CoreAnimation.ICALayerDelegate, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAccessibilityIdentification, UIKit.IUIAppearance, UIKit.IUIAppearanceContainer, UIKit.IUICoordinateSpace, UIKit.IUIDynamicItem, UIKit.IUIFocusEnvironment, UIKit.IUIFocusItem, UIKit.IUIFocusItemContainer, UIKit.IUILargeContentViewerItem, UIKit.IUIPasteConfigurationSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public HKActivityRingView (CoreGraphics.CGRect frame);
	public HKActivityRingView (Foundation.NSCoder coder);
	protected HKActivityRingView (Foundation.NSObjectFlag t);
	protected HKActivityRingView (IntPtr handle);
	// properties
	public virtual HealthKit.HKActivitySummary ActivitySummary { get; set; }
	public static HKActivityRingView.HKActivityRingViewAppearance Appearance { get; }
	public override IntPtr ClassHandle { get; }
	// methods
	public static HKActivityRingView.HKActivityRingViewAppearance AppearanceWhenContainedIn (System.Type[] containers);
	public static HKActivityRingView.HKActivityRingViewAppearance GetAppearance<T> ();
	public static HKActivityRingView.HKActivityRingViewAppearance GetAppearance<T> (UIKit.UITraitCollection traits);
	public static HKActivityRingView.HKActivityRingViewAppearance GetAppearance (UIKit.UITraitCollection traits);
	public static HKActivityRingView.HKActivityRingViewAppearance GetAppearance<T> (UIKit.UITraitCollection traits, System.Type[] containers);
	public static HKActivityRingView.HKActivityRingViewAppearance GetAppearance (UIKit.UITraitCollection traits, System.Type[] containers);
	public virtual void SetActivitySummary (HealthKit.HKActivitySummary activitySummary, bool animated);

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

New Namespace HomeKit

New Type: HomeKit.HMAccessoryBrowser

public class HMAccessoryBrowser : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HMAccessoryBrowser ();
	protected HMAccessoryBrowser (Foundation.NSObjectFlag t);
	protected HMAccessoryBrowser (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public IHMAccessoryBrowserDelegate Delegate { get; set; }
	public virtual HMAccessory[] DiscoveredAccessories { get; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// events
	public event System.EventHandler<HMAccessoryBrowserEventArgs> DidFindNewAccessory;
	public event System.EventHandler<HMAccessoryBrowserEventArgs> DidRemoveNewAccessory;
	// methods
	protected override void Dispose (bool disposing);
	public virtual void StartSearchingForNewAccessories ();
	public virtual void StopSearchingForNewAccessories ();
}

New Type: HomeKit.HMAccessoryBrowserDelegate

public class HMAccessoryBrowserDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, IHMAccessoryBrowserDelegate, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HMAccessoryBrowserDelegate ();
	protected HMAccessoryBrowserDelegate (Foundation.NSObjectFlag t);
	protected HMAccessoryBrowserDelegate (IntPtr handle);
	// methods
	public virtual void DidFindNewAccessory (HMAccessoryBrowser browser, HMAccessory accessory);
	public virtual void DidRemoveNewAccessory (HMAccessoryBrowser browser, HMAccessory accessory);
}

New Type: HomeKit.HMAccessoryBrowserDelegate_Extensions

public static class HMAccessoryBrowserDelegate_Extensions {
	// methods
	public static void DidFindNewAccessory (this IHMAccessoryBrowserDelegate This, HMAccessoryBrowser browser, HMAccessory accessory);
	public static void DidRemoveNewAccessory (this IHMAccessoryBrowserDelegate This, HMAccessoryBrowser browser, HMAccessory accessory);
}

New Type: HomeKit.HMAccessoryBrowserEventArgs

public class HMAccessoryBrowserEventArgs : System.EventArgs {
	// constructors
	public HMAccessoryBrowserEventArgs (HMAccessory accessory);
	// properties
	public HMAccessory Accessory { get; set; }
}

New Type: HomeKit.HMAccessoryOwnershipToken

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

New Type: HomeKit.HMAccessorySetupManager

public class HMAccessorySetupManager : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HMAccessorySetupManager ();
	protected HMAccessorySetupManager (Foundation.NSObjectFlag t);
	protected HMAccessorySetupManager (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void AddAndSetUpAccessories (HMChipServiceTopology topology, HMErrorHandler completion);
	public virtual System.Threading.Tasks.Task AddAndSetUpAccessoriesAsync (HMChipServiceTopology topology);
}

New Type: HomeKit.HMAccessorySetupPayload

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

New Type: HomeKit.HMAddAccessoryRequest

public class HMAddAccessoryRequest : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected HMAddAccessoryRequest (Foundation.NSObjectFlag t);
	protected HMAddAccessoryRequest (IntPtr handle);
	// properties
	public virtual HMAccessoryCategory AccessoryCategory { get; }
	public virtual string AccessoryName { get; }
	public override IntPtr ClassHandle { get; }
	public virtual HMHome Home { get; }
	public virtual bool RequiresSetupPayloadUrl { get; }
	// methods
	public virtual HMAccessorySetupPayload GetPayload (HMAccessoryOwnershipToken ownershipToken);
	public virtual HMAccessorySetupPayload GetPayload (Foundation.NSUrl setupPayloadUrl, HMAccessoryOwnershipToken ownershipToken);
}

New Type: HomeKit.HMErrorHandler

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

New Type: HomeKit.HMHomeManagerAddAccessoryRequestEventArgs

public class HMHomeManagerAddAccessoryRequestEventArgs : System.EventArgs {
	// constructors
	public HMHomeManagerAddAccessoryRequestEventArgs (HMAddAccessoryRequest request);
	// properties
	public HMAddAccessoryRequest Request { get; set; }
}

New Type: HomeKit.IHMAccessoryBrowserDelegate

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

New Namespace IdentityLookupUI

New Type: IdentityLookupUI.ILClassificationUIExtensionContext

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

New Type: IdentityLookupUI.ILClassificationUIExtensionViewController

public class ILClassificationUIExtensionViewController : UIKit.UIViewController, Foundation.INSCoding, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearanceContainer, UIKit.IUIContentContainer, UIKit.IUIFocusEnvironment, UIKit.IUIPasteConfigurationSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public ILClassificationUIExtensionViewController ();
	public ILClassificationUIExtensionViewController (Foundation.NSCoder coder);
	protected ILClassificationUIExtensionViewController (Foundation.NSObjectFlag t);
	protected ILClassificationUIExtensionViewController (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual ILClassificationUIExtensionContext ExtensionContext { get; }
	// methods
	public virtual IdentityLookup.ILClassificationResponse GetClassificationResponse (IdentityLookup.ILClassificationRequest request);
	public virtual void Prepare (IdentityLookup.ILClassificationRequest request);
}

New Namespace IntentsUI

New Type: IntentsUI.IINUIAddVoiceShortcutButtonDelegate

public interface IINUIAddVoiceShortcutButtonDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void PresentAddVoiceShortcut (INUIAddVoiceShortcutViewController addVoiceShortcutViewController, INUIAddVoiceShortcutButton addVoiceShortcutButton);
	public virtual void PresentEditVoiceShortcut (INUIEditVoiceShortcutViewController editVoiceShortcutViewController, INUIAddVoiceShortcutButton addVoiceShortcutButton);
}

New Type: IntentsUI.IINUIAddVoiceShortcutViewControllerDelegate

public interface IINUIAddVoiceShortcutViewControllerDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DidCancel (INUIAddVoiceShortcutViewController controller);
	public virtual void DidFinish (INUIAddVoiceShortcutViewController controller, Intents.INVoiceShortcut voiceShortcut, Foundation.NSError error);
}

New Type: IntentsUI.IINUIEditVoiceShortcutViewControllerDelegate

public interface IINUIEditVoiceShortcutViewControllerDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DidCancel (INUIEditVoiceShortcutViewController controller);
	public virtual void DidDelete (INUIEditVoiceShortcutViewController controller, Foundation.NSUuid deletedVoiceShortcutIdentifier);
	public virtual void DidUpdate (INUIEditVoiceShortcutViewController controller, Intents.INVoiceShortcut voiceShortcut, Foundation.NSError error);
}

New Type: IntentsUI.IINUIHostedViewControlling

public interface IINUIHostedViewControlling : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void Configure (Intents.INInteraction interaction, INUIHostedViewContext context, System.Action<CoreGraphics.CGSize> completion);
}

New Type: IntentsUI.IINUIHostedViewSiriProviding

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

New Type: IntentsUI.INUIAddVoiceShortcutButton

public class INUIAddVoiceShortcutButton : UIKit.UIButton, CoreAnimation.ICALayerDelegate, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAccessibilityContentSizeCategoryImageAdjusting, UIKit.IUIAccessibilityIdentification, UIKit.IUIAppearance, UIKit.IUIAppearanceContainer, UIKit.IUIContextMenuInteractionDelegate, UIKit.IUICoordinateSpace, UIKit.IUIDynamicItem, UIKit.IUIFocusEnvironment, UIKit.IUIFocusItem, UIKit.IUIFocusItemContainer, UIKit.IUILargeContentViewerItem, UIKit.IUIPasteConfigurationSupporting, UIKit.IUISpringLoadedInteractionSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public INUIAddVoiceShortcutButton (Foundation.NSCoder coder);
	protected INUIAddVoiceShortcutButton (Foundation.NSObjectFlag t);
	public INUIAddVoiceShortcutButton (INUIAddVoiceShortcutButtonStyle style);
	protected INUIAddVoiceShortcutButton (IntPtr handle);
	// properties
	public static INUIAddVoiceShortcutButton.INUIAddVoiceShortcutButtonAppearance Appearance { get; }
	public override IntPtr ClassHandle { get; }
	public virtual nfloat CornerRadius { get; set; }
	public IINUIAddVoiceShortcutButtonDelegate Delegate { get; set; }
	public virtual Intents.INShortcut Shortcut { get; set; }
	public virtual INUIAddVoiceShortcutButtonStyle Style { get; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	public static INUIAddVoiceShortcutButton.INUIAddVoiceShortcutButtonAppearance AppearanceWhenContainedIn (System.Type[] containers);
	protected override void Dispose (bool disposing);
	public static INUIAddVoiceShortcutButton.INUIAddVoiceShortcutButtonAppearance GetAppearance<T> ();
	public static INUIAddVoiceShortcutButton.INUIAddVoiceShortcutButtonAppearance GetAppearance<T> (UIKit.UITraitCollection traits);
	public static INUIAddVoiceShortcutButton.INUIAddVoiceShortcutButtonAppearance GetAppearance (UIKit.UITraitCollection traits);
	public static INUIAddVoiceShortcutButton.INUIAddVoiceShortcutButtonAppearance GetAppearance<T> (UIKit.UITraitCollection traits, System.Type[] containers);
	public static INUIAddVoiceShortcutButton.INUIAddVoiceShortcutButtonAppearance GetAppearance (UIKit.UITraitCollection traits, System.Type[] containers);
	public virtual void SetStyle (INUIAddVoiceShortcutButtonStyle style);

	// inner types
	public class INUIAddVoiceShortcutButtonAppearance : UIKit.UIButton+UIButtonAppearance, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearance {
		// constructors
		protected INUIAddVoiceShortcutButton.INUIAddVoiceShortcutButtonAppearance (IntPtr handle);
	}
}

New Type: IntentsUI.INUIAddVoiceShortcutButtonDelegate

public abstract class INUIAddVoiceShortcutButtonDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, IINUIAddVoiceShortcutButtonDelegate, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected INUIAddVoiceShortcutButtonDelegate ();
	protected INUIAddVoiceShortcutButtonDelegate (Foundation.NSObjectFlag t);
	protected INUIAddVoiceShortcutButtonDelegate (IntPtr handle);
	// methods
	public virtual void PresentAddVoiceShortcut (INUIAddVoiceShortcutViewController addVoiceShortcutViewController, INUIAddVoiceShortcutButton addVoiceShortcutButton);
	public virtual void PresentEditVoiceShortcut (INUIEditVoiceShortcutViewController editVoiceShortcutViewController, INUIAddVoiceShortcutButton addVoiceShortcutButton);
}

New Type: IntentsUI.INUIAddVoiceShortcutButtonStyle

[Serializable]
public enum INUIAddVoiceShortcutButtonStyle {
	Automatic = 4,
	AutomaticOutLine = 5,
	Black = 2,
	BlackOutline = 3,
	White = 0,
	WhiteOutline = 1,
}

New Type: IntentsUI.INUIAddVoiceShortcutViewController

public class INUIAddVoiceShortcutViewController : UIKit.UIViewController, Foundation.INSCoding, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearanceContainer, UIKit.IUIContentContainer, UIKit.IUIFocusEnvironment, UIKit.IUIPasteConfigurationSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public INUIAddVoiceShortcutViewController (Foundation.NSCoder coder);
	protected INUIAddVoiceShortcutViewController (Foundation.NSObjectFlag t);
	public INUIAddVoiceShortcutViewController (Intents.INShortcut shortcut);
	protected INUIAddVoiceShortcutViewController (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public IINUIAddVoiceShortcutViewControllerDelegate Delegate { get; set; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	protected override void Dispose (bool disposing);
}

New Type: IntentsUI.INUIAddVoiceShortcutViewControllerDelegate

public abstract class INUIAddVoiceShortcutViewControllerDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, IINUIAddVoiceShortcutViewControllerDelegate, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected INUIAddVoiceShortcutViewControllerDelegate ();
	protected INUIAddVoiceShortcutViewControllerDelegate (Foundation.NSObjectFlag t);
	protected INUIAddVoiceShortcutViewControllerDelegate (IntPtr handle);
	// methods
	public virtual void DidCancel (INUIAddVoiceShortcutViewController controller);
	public virtual void DidFinish (INUIAddVoiceShortcutViewController controller, Intents.INVoiceShortcut voiceShortcut, Foundation.NSError error);
}

New Type: IntentsUI.INUIEditVoiceShortcutViewController

public class INUIEditVoiceShortcutViewController : UIKit.UIViewController, Foundation.INSCoding, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearanceContainer, UIKit.IUIContentContainer, UIKit.IUIFocusEnvironment, UIKit.IUIPasteConfigurationSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public INUIEditVoiceShortcutViewController (Foundation.NSCoder coder);
	protected INUIEditVoiceShortcutViewController (Foundation.NSObjectFlag t);
	public INUIEditVoiceShortcutViewController (Intents.INVoiceShortcut voiceShortcut);
	protected INUIEditVoiceShortcutViewController (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public IINUIEditVoiceShortcutViewControllerDelegate Delegate { get; set; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	protected override void Dispose (bool disposing);
}

New Type: IntentsUI.INUIEditVoiceShortcutViewControllerDelegate

public abstract class INUIEditVoiceShortcutViewControllerDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, IINUIEditVoiceShortcutViewControllerDelegate, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected INUIEditVoiceShortcutViewControllerDelegate ();
	protected INUIEditVoiceShortcutViewControllerDelegate (Foundation.NSObjectFlag t);
	protected INUIEditVoiceShortcutViewControllerDelegate (IntPtr handle);
	// methods
	public virtual void DidCancel (INUIEditVoiceShortcutViewController controller);
	public virtual void DidDelete (INUIEditVoiceShortcutViewController controller, Foundation.NSUuid deletedVoiceShortcutIdentifier);
	public virtual void DidUpdate (INUIEditVoiceShortcutViewController controller, Intents.INVoiceShortcut voiceShortcut, Foundation.NSError error);
}

New Type: IntentsUI.INUIHostedViewContext

[Serializable]
public enum INUIHostedViewContext {
	MapsCard = 1,
	SiriSnippet = 0,
}

New Type: IntentsUI.INUIHostedViewControllingConfigureViewHandler

public sealed delegate INUIHostedViewControllingConfigureViewHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public INUIHostedViewControllingConfigureViewHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (bool success, Foundation.NSSet<Intents.INParameter> configuredParameters, CoreGraphics.CGSize desiredSize, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (bool success, Foundation.NSSet<Intents.INParameter> configuredParameters, CoreGraphics.CGSize desiredSize);
}

New Type: IntentsUI.INUIHostedViewControlling_Extensions

public static class INUIHostedViewControlling_Extensions {
	// methods
	public static void ConfigureView (this IINUIHostedViewControlling This, Foundation.NSSet<Intents.INParameter> parameters, Intents.INInteraction interaction, INUIInteractiveBehavior interactiveBehavior, INUIHostedViewContext context, INUIHostedViewControllingConfigureViewHandler completionHandler);
}

New Type: IntentsUI.INUIHostedViewSiriProviding_Extensions

public static class INUIHostedViewSiriProviding_Extensions {
	// methods
	public static bool GetDisplaysMap (this IINUIHostedViewSiriProviding This);
	public static bool GetDisplaysMessage (this IINUIHostedViewSiriProviding This);
	public static bool GetDisplaysPaymentTransaction (this IINUIHostedViewSiriProviding This);
}

New Type: IntentsUI.INUIInteractiveBehavior

[Serializable]
public enum INUIInteractiveBehavior {
	GenericAction = 3,
	Launch = 2,
	NextView = 1,
	None = 0,
}

New Type: IntentsUI.NSExtensionContext_INUIHostedViewControlling

public static class NSExtensionContext_INUIHostedViewControlling {
	// methods
	public static CoreGraphics.CGSize GetHostedViewMaximumAllowedSize (this Foundation.NSExtensionContext This);
	public static CoreGraphics.CGSize GetHostedViewMinimumAllowedSize (this Foundation.NSExtensionContext This);
	public static string GetInterfaceParametersDescription (this Foundation.NSExtensionContext This);
}

New Namespace MediaSetup

New Type: MediaSetup.IMSAuthenticationPresentationContext

public interface IMSAuthenticationPresentationContext : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual UIKit.UIWindow PresentationAnchor { get; }
}

New Type: MediaSetup.MSServiceAccount

public class MSServiceAccount : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MSServiceAccount (Foundation.NSObjectFlag t);
	protected MSServiceAccount (IntPtr handle);
	public MSServiceAccount (string serviceName, string accountName);
	// properties
	public virtual string AccountName { get; }
	public virtual string AuthorizationScope { get; set; }
	public virtual Foundation.NSUrl AuthorizationTokenUrl { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual string ClientId { get; set; }
	public virtual string ClientSecret { get; set; }
	public virtual Foundation.NSUrl ConfigurationUrl { get; set; }
	public virtual string ServiceName { get; }
}

New Type: MediaSetup.MSSetupSession

public class MSSetupSession : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MSSetupSession (Foundation.NSObjectFlag t);
	public MSSetupSession (MSServiceAccount serviceAccount);
	protected MSSetupSession (IntPtr handle);
	// properties
	public virtual MSServiceAccount Account { get; }
	public override IntPtr ClassHandle { get; }
	public virtual IMSAuthenticationPresentationContext PresentationContext { get; set; }
	// methods
	protected override void Dispose (bool disposing);
	public virtual bool Start (out Foundation.NSError error);
}

New Namespace MessageUI

New Type: MessageUI.IMFMailComposeViewControllerDelegate

public interface IMFMailComposeViewControllerDelegate : ObjCRuntime.INativeObject, System.IDisposable, UIKit.IUINavigationControllerDelegate {
}

New Type: MessageUI.IMFMessageComposeViewControllerDelegate

public interface IMFMessageComposeViewControllerDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void Finished (MFMessageComposeViewController controller, MessageComposeResult result);
}

New Type: MessageUI.MFComposeResultEventArgs

public class MFComposeResultEventArgs : System.EventArgs {
	// constructors
	public MFComposeResultEventArgs (MFMailComposeViewController controller, MFMailComposeResult result, Foundation.NSError error);
	// properties
	public MFMailComposeViewController Controller { get; }
	public Foundation.NSError Error { get; }
	public MFMailComposeResult Result { get; }
}

New Type: MessageUI.MFMailComposeErrorCode

[Serializable]
public enum MFMailComposeErrorCode {
	SaveFailed = 0,
	SendFailed = 1,
}

New Type: MessageUI.MFMailComposeErrorCodeExtensions

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

New Type: MessageUI.MFMailComposeResult

[Serializable]
public enum MFMailComposeResult {
	Cancelled = 0,
	Failed = 3,
	Saved = 1,
	Sent = 2,
}

New Type: MessageUI.MFMailComposeViewController

public class MFMailComposeViewController : UIKit.UINavigationController, Foundation.INSCoding, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearance, UIKit.IUIAppearanceContainer, UIKit.IUIContentContainer, UIKit.IUIFocusEnvironment, UIKit.IUIPasteConfigurationSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public MFMailComposeViewController ();
	public MFMailComposeViewController (Foundation.NSCoder coder);
	protected MFMailComposeViewController (Foundation.NSObjectFlag t);
	protected MFMailComposeViewController (IntPtr handle);
	// properties
	public static MFMailComposeViewController.MFMailComposeViewControllerAppearance Appearance { get; }
	public static bool CanSendMail { get; }
	public override IntPtr ClassHandle { get; }
	public IMFMailComposeViewControllerDelegate MailComposeDelegate { get; set; }
	public virtual Foundation.NSObject WeakMailComposeDelegate { get; set; }
	// events
	public event System.EventHandler<MFComposeResultEventArgs> Finished;
	// methods
	public virtual void AddAttachmentData (Foundation.NSData attachment, string mimeType, string fileName);
	public static MFMailComposeViewController.MFMailComposeViewControllerAppearance AppearanceWhenContainedIn (System.Type[] containers);
	protected override void Dispose (bool disposing);
	public static MFMailComposeViewController.MFMailComposeViewControllerAppearance GetAppearance<T> ();
	public static MFMailComposeViewController.MFMailComposeViewControllerAppearance GetAppearance<T> (UIKit.UITraitCollection traits);
	public static MFMailComposeViewController.MFMailComposeViewControllerAppearance GetAppearance (UIKit.UITraitCollection traits);
	public static MFMailComposeViewController.MFMailComposeViewControllerAppearance GetAppearance<T> (UIKit.UITraitCollection traits, System.Type[] containers);
	public static MFMailComposeViewController.MFMailComposeViewControllerAppearance GetAppearance (UIKit.UITraitCollection traits, System.Type[] containers);
	public virtual void SetBccRecipients (string[] bccRecipients);
	public virtual void SetCcRecipients (string[] ccRecipients);
	public virtual void SetMessageBody (string body, bool isHtml);
	public virtual void SetPreferredSendingEmailAddress (string emailAddress);
	public virtual void SetSubject (string subject);
	public virtual void SetToRecipients (string[] recipients);

	// inner types
	public class MFMailComposeViewControllerAppearance : UIKit.UIAppearance, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearance {
		// constructors
		protected MFMailComposeViewController.MFMailComposeViewControllerAppearance (IntPtr handle);
	}
}

New Type: MessageUI.MFMailComposeViewControllerDelegate

public class MFMailComposeViewControllerDelegate : UIKit.UINavigationControllerDelegate, Foundation.INSObjectProtocol, IMFMailComposeViewControllerDelegate, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUINavigationControllerDelegate {
	// constructors
	public MFMailComposeViewControllerDelegate ();
	protected MFMailComposeViewControllerDelegate (Foundation.NSObjectFlag t);
	protected MFMailComposeViewControllerDelegate (IntPtr handle);
	// methods
	public virtual void Finished (MFMailComposeViewController controller, MFMailComposeResult result, Foundation.NSError error);
}

New Type: MessageUI.MFMailComposeViewControllerDelegate_Extensions

public static class MFMailComposeViewControllerDelegate_Extensions {
	// methods
	public static void Finished (this IMFMailComposeViewControllerDelegate This, MFMailComposeViewController controller, MFMailComposeResult result, Foundation.NSError error);
}

New Type: MessageUI.MFMessageAvailabilityChangedEventArgs

public class MFMessageAvailabilityChangedEventArgs : Foundation.NSNotificationEventArgs {
	// constructors
	public MFMessageAvailabilityChangedEventArgs (Foundation.NSNotification notification);
	// properties
	public bool TextMessageAvailability { get; }
}

New Type: MessageUI.MFMessageComposeResultEventArgs

public class MFMessageComposeResultEventArgs : System.EventArgs {
	// constructors
	public MFMessageComposeResultEventArgs (MFMessageComposeViewController controller, MessageComposeResult result);
	// properties
	public MFMessageComposeViewController Controller { get; }
	public MessageComposeResult Result { get; }
}

New Type: MessageUI.MFMessageComposeViewController

public class MFMessageComposeViewController : UIKit.UINavigationController, Foundation.INSCoding, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearance, UIKit.IUIAppearanceContainer, UIKit.IUIContentContainer, UIKit.IUIFocusEnvironment, UIKit.IUIPasteConfigurationSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public MFMessageComposeViewController ();
	public MFMessageComposeViewController (Foundation.NSCoder coder);
	protected MFMessageComposeViewController (Foundation.NSObjectFlag t);
	protected MFMessageComposeViewController (IntPtr handle);
	// properties
	public static MFMessageComposeViewController.MFMessageComposeViewControllerAppearance Appearance { get; }
	public static Foundation.NSString AttachmentAlternateFilename { get; }
	public static Foundation.NSString AttachmentURL { get; }
	public virtual string Body { get; set; }
	public static bool CanSendAttachments { get; }
	public static bool CanSendSubject { get; }
	public static bool CanSendText { get; }
	public override IntPtr ClassHandle { get; }
	public virtual Messages.MSMessage Message { get; set; }
	public IMFMessageComposeViewControllerDelegate MessageComposeDelegate { get; set; }
	public virtual string[] Recipients { get; set; }
	public virtual string Subject { get; set; }
	public static Foundation.NSString TextMessageAvailabilityDidChangeNotification { get; }
	public static Foundation.NSString TextMessageAvailabilityKey { get; }
	public virtual Foundation.NSObject WeakMessageComposeDelegate { get; set; }
	// events
	public event System.EventHandler<MFMessageComposeResultEventArgs> Finished;
	// methods
	public virtual bool AddAttachment (Foundation.NSUrl attachmentURL, string alternateFilename);
	public virtual bool AddAttachment (Foundation.NSData attachmentData, string uti, string filename);
	public static MFMessageComposeViewController.MFMessageComposeViewControllerAppearance AppearanceWhenContainedIn (System.Type[] containers);
	public virtual void DisableUserAttachments ();
	protected override void Dispose (bool disposing);
	public static MFMessageComposeViewController.MFMessageComposeViewControllerAppearance GetAppearance<T> ();
	public static MFMessageComposeViewController.MFMessageComposeViewControllerAppearance GetAppearance<T> (UIKit.UITraitCollection traits);
	public static MFMessageComposeViewController.MFMessageComposeViewControllerAppearance GetAppearance (UIKit.UITraitCollection traits);
	public static MFMessageComposeViewController.MFMessageComposeViewControllerAppearance GetAppearance<T> (UIKit.UITraitCollection traits, System.Type[] containers);
	public static MFMessageComposeViewController.MFMessageComposeViewControllerAppearance GetAppearance (UIKit.UITraitCollection traits, System.Type[] containers);
	public virtual Foundation.NSDictionary[] GetAttachments ();
	public static bool IsSupportedAttachment (string uti);

	// inner types
	public class MFMessageComposeViewControllerAppearance : UIKit.UIAppearance, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearance {
		// constructors
		protected MFMessageComposeViewController.MFMessageComposeViewControllerAppearance (IntPtr handle);
	}
	public static class Notifications {
		// methods
		public static Foundation.NSObject ObserveTextMessageAvailabilityDidChange (System.EventHandler<MFMessageAvailabilityChangedEventArgs> handler);
		public static Foundation.NSObject ObserveTextMessageAvailabilityDidChange (Foundation.NSObject objectToObserve, System.EventHandler<MFMessageAvailabilityChangedEventArgs> handler);
	}
}

New Type: MessageUI.MFMessageComposeViewControllerDelegate

public abstract class MFMessageComposeViewControllerDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, IMFMessageComposeViewControllerDelegate, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MFMessageComposeViewControllerDelegate ();
	protected MFMessageComposeViewControllerDelegate (Foundation.NSObjectFlag t);
	protected MFMessageComposeViewControllerDelegate (IntPtr handle);
	// methods
	public virtual void Finished (MFMessageComposeViewController controller, MessageComposeResult result);
}

New Type: MessageUI.MessageComposeResult

[Serializable]
public enum MessageComposeResult {
	Cancelled = 0,
	Failed = 2,
	Sent = 1,
}

New Namespace Messages

New Type: Messages.IMSMessagesAppTranscriptPresentation

public interface IMSMessagesAppTranscriptPresentation : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual CoreGraphics.CGSize GetContentSizeThatFits (CoreGraphics.CGSize size);
}

New Type: Messages.IMSStickerBrowserViewDataSource

public interface IMSStickerBrowserViewDataSource : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual nint GetNumberOfStickers (MSStickerBrowserView stickerBrowserView);
	public virtual MSSticker GetSticker (MSStickerBrowserView stickerBrowserView, nint index);
}

New Type: Messages.MSConversation

public class MSConversation : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MSConversation ();
	protected MSConversation (Foundation.NSObjectFlag t);
	protected MSConversation (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSUuid LocalParticipantIdentifier { get; }
	public virtual Foundation.NSUuid[] RemoteParticipantIdentifiers { get; }
	public virtual MSMessage SelectedMessage { get; }
	// methods
	public virtual void InsertAttachment (Foundation.NSUrl url, string filename, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task InsertAttachmentAsync (Foundation.NSUrl url, string filename);
	public virtual void InsertMessage (MSMessage message, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task InsertMessageAsync (MSMessage message);
	public virtual void InsertSticker (MSSticker sticker, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task InsertStickerAsync (MSSticker sticker);
	public virtual void InsertText (string text, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task InsertTextAsync (string text);
	public virtual void SendAttachment (Foundation.NSUrl url, string filename, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task SendAttachmentAsync (Foundation.NSUrl url, string filename);
	public virtual void SendMessage (MSMessage message, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task SendMessageAsync (MSMessage message);
	public virtual void SendSticker (MSSticker sticker, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task SendStickerAsync (MSSticker sticker);
	public virtual void SendText (string text, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task SendTextAsync (string text);
}

New Type: Messages.MSMessage

public class MSMessage : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MSMessage ();
	public MSMessage (Foundation.NSCoder coder);
	protected MSMessage (Foundation.NSObjectFlag t);
	public MSMessage (MSSession session);
	protected MSMessage (IntPtr handle);
	// properties
	public virtual string AccessibilityLabel { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSError Error { get; set; }
	public virtual MSMessageLayout Layout { get; set; }
	public virtual bool Pending { get; }
	public virtual Foundation.NSUuid SenderParticipantIdentifier { get; }
	public virtual MSSession Session { get; }
	public virtual bool ShouldExpire { get; set; }
	public virtual string SummaryText { get; set; }
	public virtual Foundation.NSUrl Url { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Messages.MSMessageErrorCode

[Serializable]
public enum MSMessageErrorCode {
	APIUnavailableInPresentationContext = 11,
	FileNotFound = 1,
	FileUnreadable = 2,
	ImproperFileType = 3,
	ImproperFileUrl = 4,
	SendWhileNotVisible = 10,
	SendWithoutRecentInteraction = 9,
	StickerFileImproperFileAttributes = 5,
	StickerFileImproperFileFormat = 7,
	StickerFileImproperFileSize = 6,
	Unknown = -1,
	UrlExceedsMaxSize = 8,
}

New Type: Messages.MSMessageErrorCodeExtensions

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

New Type: Messages.MSMessageLayout

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

New Type: Messages.MSMessageLiveLayout

public class MSMessageLiveLayout : Messages.MSMessageLayout, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MSMessageLiveLayout (Foundation.NSObjectFlag t);
	public MSMessageLiveLayout (MSMessageTemplateLayout alternateLayout);
	protected MSMessageLiveLayout (IntPtr handle);
	// properties
	public virtual MSMessageTemplateLayout AlternateLayout { get; }
	public override IntPtr ClassHandle { get; }
}

New Type: Messages.MSMessageTemplateLayout

public class MSMessageTemplateLayout : Messages.MSMessageLayout, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MSMessageTemplateLayout ();
	protected MSMessageTemplateLayout (Foundation.NSObjectFlag t);
	protected MSMessageTemplateLayout (IntPtr handle);
	// properties
	public virtual string Caption { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual UIKit.UIImage Image { get; set; }
	public virtual string ImageSubtitle { get; set; }
	public virtual string ImageTitle { get; set; }
	public virtual Foundation.NSUrl MediaFileUrl { get; set; }
	public virtual string Subcaption { get; set; }
	public virtual string TrailingCaption { get; set; }
	public virtual string TrailingSubcaption { get; set; }
}

New Type: Messages.MSMessagesAppPresentationContext

[Serializable]
public enum MSMessagesAppPresentationContext {
	Media = 1,
	Messages = 0,
}

New Type: Messages.MSMessagesAppPresentationStyle

[Serializable]
public enum MSMessagesAppPresentationStyle {
	Compact = 0,
	Expanded = 1,
	Transcript = 2,
}

New Type: Messages.MSMessagesAppViewController

public class MSMessagesAppViewController : UIKit.UIViewController, Foundation.INSCoding, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, IMSMessagesAppTranscriptPresentation, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearanceContainer, UIKit.IUIContentContainer, UIKit.IUIFocusEnvironment, UIKit.IUIPasteConfigurationSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public MSMessagesAppViewController ();
	public MSMessagesAppViewController (Foundation.NSCoder coder);
	protected MSMessagesAppViewController (Foundation.NSObjectFlag t);
	protected MSMessagesAppViewController (IntPtr handle);
	public MSMessagesAppViewController (string nibName, Foundation.NSBundle bundle);
	// properties
	public virtual MSConversation ActiveConversation { get; }
	public override IntPtr ClassHandle { get; }
	public virtual MSMessagesAppPresentationContext PresentationContext { get; }
	public virtual MSMessagesAppPresentationStyle PresentationStyle { get; }
	// methods
	public virtual void DidBecomeActive (MSConversation conversation);
	public virtual void DidCancelSendingMessage (MSMessage message, MSConversation conversation);
	public virtual void DidReceiveMessage (MSMessage message, MSConversation conversation);
	public virtual void DidResignActive (MSConversation conversation);
	public virtual void DidSelectMessage (MSMessage message, MSConversation conversation);
	public virtual void DidStartSendingMessage (MSMessage message, MSConversation conversation);
	public virtual void DidTransition (MSMessagesAppPresentationStyle presentationStyle);
	public virtual void Dismiss ();
	public virtual CoreGraphics.CGSize GetContentSizeThatFits (CoreGraphics.CGSize size);
	public virtual void Request (MSMessagesAppPresentationStyle presentationStyle);
	public virtual void WillBecomeActive (MSConversation conversation);
	public virtual void WillResignActive (MSConversation conversation);
	public virtual void WillSelectMessage (MSMessage message, MSConversation conversation);
	public virtual void WillTransition (MSMessagesAppPresentationStyle presentationStyle);
}

New Type: Messages.MSSession

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

New Type: Messages.MSSticker

public class MSSticker : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MSSticker (Foundation.NSObjectFlag t);
	protected MSSticker (IntPtr handle);
	public MSSticker (Foundation.NSUrl fileUrl, string localizedDescription, out Foundation.NSError error);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSUrl ImageFileUrl { get; }
	public virtual string LocalizedDescription { get; }
}

New Type: Messages.MSStickerBrowserView

public class MSStickerBrowserView : UIKit.UIView, CoreAnimation.ICALayerDelegate, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAccessibilityIdentification, UIKit.IUIAppearance, UIKit.IUIAppearanceContainer, UIKit.IUICoordinateSpace, UIKit.IUIDynamicItem, UIKit.IUIFocusEnvironment, UIKit.IUIFocusItem, UIKit.IUIFocusItemContainer, UIKit.IUILargeContentViewerItem, UIKit.IUIPasteConfigurationSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public MSStickerBrowserView ();
	public MSStickerBrowserView (CoreGraphics.CGRect frame);
	public MSStickerBrowserView (Foundation.NSCoder coder);
	protected MSStickerBrowserView (Foundation.NSObjectFlag t);
	protected MSStickerBrowserView (IntPtr handle);
	public MSStickerBrowserView (CoreGraphics.CGRect frame, MSStickerSize stickerSize);
	// properties
	public static MSStickerBrowserView.MSStickerBrowserViewAppearance Appearance { get; }
	public override IntPtr ClassHandle { get; }
	public virtual UIKit.UIEdgeInsets ContentInset { get; set; }
	public virtual CoreGraphics.CGPoint ContentOffset { get; set; }
	public virtual IMSStickerBrowserViewDataSource DataSource { get; set; }
	public virtual MSStickerSize StickerSize { get; }
	// methods
	public static MSStickerBrowserView.MSStickerBrowserViewAppearance AppearanceWhenContainedIn (System.Type[] containers);
	protected override void Dispose (bool disposing);
	public static MSStickerBrowserView.MSStickerBrowserViewAppearance GetAppearance<T> ();
	public static MSStickerBrowserView.MSStickerBrowserViewAppearance GetAppearance<T> (UIKit.UITraitCollection traits);
	public static MSStickerBrowserView.MSStickerBrowserViewAppearance GetAppearance (UIKit.UITraitCollection traits);
	public static MSStickerBrowserView.MSStickerBrowserViewAppearance GetAppearance<T> (UIKit.UITraitCollection traits, System.Type[] containers);
	public static MSStickerBrowserView.MSStickerBrowserViewAppearance GetAppearance (UIKit.UITraitCollection traits, System.Type[] containers);
	public virtual void ReloadData ();
	public virtual void SetContentOffset (CoreGraphics.CGPoint contentOffset, bool animated);

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

New Type: Messages.MSStickerBrowserViewController

public class MSStickerBrowserViewController : UIKit.UIViewController, Foundation.INSCoding, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, IMSStickerBrowserViewDataSource, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearanceContainer, UIKit.IUIContentContainer, UIKit.IUIFocusEnvironment, UIKit.IUIPasteConfigurationSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public MSStickerBrowserViewController ();
	public MSStickerBrowserViewController (Foundation.NSCoder coder);
	protected MSStickerBrowserViewController (Foundation.NSObjectFlag t);
	public MSStickerBrowserViewController (MSStickerSize stickerSize);
	protected MSStickerBrowserViewController (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual MSStickerBrowserView StickerBrowserView { get; }
	public virtual MSStickerSize StickerSize { get; }
	// methods
	public virtual nint GetNumberOfStickers (MSStickerBrowserView stickerBrowserView);
	public virtual MSSticker GetSticker (MSStickerBrowserView stickerBrowserView, nint index);
}

New Type: Messages.MSStickerBrowserViewDataSource

public abstract class MSStickerBrowserViewDataSource : Foundation.NSObject, Foundation.INSObjectProtocol, IMSStickerBrowserViewDataSource, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MSStickerBrowserViewDataSource ();
	protected MSStickerBrowserViewDataSource (Foundation.NSObjectFlag t);
	protected MSStickerBrowserViewDataSource (IntPtr handle);
	// methods
	public virtual nint GetNumberOfStickers (MSStickerBrowserView stickerBrowserView);
	public virtual MSSticker GetSticker (MSStickerBrowserView stickerBrowserView, nint index);
}

New Type: Messages.MSStickerSize

[Serializable]
public enum MSStickerSize {
	Large = 2,
	Regular = 1,
	Small = 0,
}

New Type: Messages.MSStickerView

public class MSStickerView : UIKit.UIView, CoreAnimation.ICALayerDelegate, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAccessibilityIdentification, UIKit.IUIAppearance, UIKit.IUIAppearanceContainer, UIKit.IUICoordinateSpace, UIKit.IUIDynamicItem, UIKit.IUIFocusEnvironment, UIKit.IUIFocusItem, UIKit.IUIFocusItemContainer, UIKit.IUILargeContentViewerItem, UIKit.IUIPasteConfigurationSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public MSStickerView ();
	public MSStickerView (CoreGraphics.CGRect frame);
	public MSStickerView (Foundation.NSCoder coder);
	protected MSStickerView (Foundation.NSObjectFlag t);
	protected MSStickerView (IntPtr handle);
	public MSStickerView (CoreGraphics.CGRect frame, MSSticker sticker);
	// properties
	public virtual double AnimationDuration { get; }
	public static MSStickerView.MSStickerViewAppearance Appearance { get; }
	public override IntPtr ClassHandle { get; }
	public virtual bool IsAnimating { get; }
	public virtual MSSticker Sticker { get; set; }
	// methods
	public static MSStickerView.MSStickerViewAppearance AppearanceWhenContainedIn (System.Type[] containers);
	public static MSStickerView.MSStickerViewAppearance GetAppearance<T> ();
	public static MSStickerView.MSStickerViewAppearance GetAppearance<T> (UIKit.UITraitCollection traits);
	public static MSStickerView.MSStickerViewAppearance GetAppearance (UIKit.UITraitCollection traits);
	public static MSStickerView.MSStickerViewAppearance GetAppearance<T> (UIKit.UITraitCollection traits, System.Type[] containers);
	public static MSStickerView.MSStickerViewAppearance GetAppearance (UIKit.UITraitCollection traits, System.Type[] containers);
	public virtual void StartAnimating ();
	public virtual void StopAnimating ();

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

New Namespace NewsstandKit

New Type: NewsstandKit.NKAssetDownload

public class NKAssetDownload : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NKAssetDownload (Foundation.NSObjectFlag t);
	protected NKAssetDownload (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string Identifier { get; }
	public virtual NKIssue Issue { get; }
	public virtual Foundation.NSUrlRequest UrlRequest { get; }
	public virtual Foundation.NSDictionary UserInfo { get; set; }
	// methods
	protected override void Dispose (bool disposing);
	public virtual Foundation.NSUrlConnection DownloadWithDelegate (Foundation.INSUrlConnectionDownloadDelegate downloadDelegate);
}

New Type: NewsstandKit.NKIssue

public class NKIssue : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NKIssue (Foundation.NSObjectFlag t);
	protected NKIssue (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSUrl ContentUrl { get; }
	public virtual Foundation.NSDate Date { get; }
	public static Foundation.NSString DownloadCompletedNotification { get; }
	public virtual NKAssetDownload[] DownloadingAssets { get; }
	public virtual string Name { get; }
	public virtual NKIssueContentStatus Status { get; }
	// methods
	public virtual NKAssetDownload AddAsset (Foundation.NSUrlRequest request);

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

New Type: NewsstandKit.NKIssueContentStatus

[Serializable]
public enum NKIssueContentStatus {
	Available = 2,
	Downloading = 1,
	None = 0,
}

New Type: NewsstandKit.NKLibrary

public class NKLibrary : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NKLibrary (Foundation.NSObjectFlag t);
	protected NKLibrary (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual NKIssue CurrentlyReadingIssue { get; set; }
	public virtual NKAssetDownload[] DownloadingAssets { get; }
	public virtual NKIssue[] Issues { get; }
	public static NKLibrary SharedLibrary { get; }
	// methods
	public virtual NKIssue AddIssue (string name, Foundation.NSDate date);
	public virtual NKIssue GetIssue (string name);
	public virtual void RemoveIssue (NKIssue issue);
}

New Namespace NotificationCenter

New Type: NotificationCenter.INCWidgetProviding

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

New Type: NotificationCenter.NCUpdateResult

[Serializable]
public enum NCUpdateResult {
	Failed = 2,
	NewData = 0,
	NoData = 1,
}

New Type: NotificationCenter.NCWidgetController

public class NCWidgetController : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NCWidgetController (Foundation.NSObjectFlag t);
	protected NCWidgetController (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public static NCWidgetController GetWidgetController ();
	public virtual void SetHasContent (bool flag, string bundleID);
}

New Type: NotificationCenter.NCWidgetDisplayMode

[Serializable]
public enum NCWidgetDisplayMode {
	Compact = 0,
	Expanded = 1,
}

New Type: NotificationCenter.NCWidgetProviding

public class NCWidgetProviding : Foundation.NSObject, Foundation.INSObjectProtocol, INCWidgetProviding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NCWidgetProviding ();
	protected NCWidgetProviding (Foundation.NSObjectFlag t);
	protected NCWidgetProviding (IntPtr handle);
	// methods
	public virtual UIKit.UIEdgeInsets GetWidgetMarginInsets (UIKit.UIEdgeInsets defaultMarginInsets);
	public virtual void WidgetActiveDisplayModeDidChange (NCWidgetDisplayMode activeDisplayMode, CoreGraphics.CGSize maxSize);
	public virtual void WidgetPerformUpdate (System.Action<NCUpdateResult> completionHandler);
}

New Type: NotificationCenter.NCWidgetProviding_Extensions

public static class NCWidgetProviding_Extensions {
	// methods
	public static UIKit.UIEdgeInsets GetWidgetMarginInsets (this INCWidgetProviding This, UIKit.UIEdgeInsets defaultMarginInsets);
	public static void WidgetActiveDisplayModeDidChange (this INCWidgetProviding This, NCWidgetDisplayMode activeDisplayMode, CoreGraphics.CGSize maxSize);
	public static void WidgetPerformUpdate (this INCWidgetProviding This, System.Action<NCUpdateResult> completionHandler);
}

New Type: NotificationCenter.NSExtensionContext_NCWidgetAdditions

public static class NSExtensionContext_NCWidgetAdditions {
	// methods
	public static NCWidgetDisplayMode GetWidgetActiveDisplayMode (this Foundation.NSExtensionContext This);
	public static NCWidgetDisplayMode GetWidgetLargestAvailableDisplayMode (this Foundation.NSExtensionContext This);
	public static CoreGraphics.CGSize GetWidgetMaximumSize (this Foundation.NSExtensionContext This, NCWidgetDisplayMode displayMode);
	public static void SetWidgetLargestAvailableDisplayMode (this Foundation.NSExtensionContext This, NCWidgetDisplayMode mode);
}

New Type: NotificationCenter.UIVibrancyEffect_NotificationCenter

public static class UIVibrancyEffect_NotificationCenter {
}

New Namespace OpenGLES

New Type: OpenGLES.EAGLColorFormat

public static class EAGLColorFormat {
	// fields
	public static Foundation.NSString RGB565;
	public static Foundation.NSString RGBA8;
}

New Type: OpenGLES.EAGLContext

public class EAGLContext : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public EAGLContext ();
	protected EAGLContext (Foundation.NSObjectFlag t);
	public EAGLContext (EAGLRenderingAPI api);
	protected EAGLContext (IntPtr handle);
	public EAGLContext (EAGLRenderingAPI api, EAGLSharegroup sharegroup);
	// properties
	public virtual EAGLRenderingAPI API { get; }
	public override IntPtr ClassHandle { get; }
	public static EAGLContext CurrentContext { get; }
	public virtual string DebugLabel { get; set; }
	public virtual bool IsMultiThreaded { get; set; }
	public virtual EAGLSharegroup ShareGroup { get; }
	// methods
	public static void EAGLGetVersion (out nuint major, out nuint minor);
	public virtual bool PresentRenderBuffer (nuint target);
	public virtual bool PresentRenderBuffer (nuint target, double presentationTime);
	public virtual bool PresentRenderBuffer (nuint target, double presentationTime, EAGLContext.PresentationMode mode);
	public virtual bool RenderBufferStorage (nuint target, CoreAnimation.CAEAGLLayer drawable);
	public static bool SetCurrentContext (EAGLContext context);
	public virtual bool TexImage (IOSurface.IOSurface ioSurface, nuint target, nuint internalFormat, uint width, uint height, nuint format, nuint type, uint plane);

	// inner types
	[Serializable]
	public enum PresentationMode {
		AfterMinimumDuration = 1,
		AtTime = 0,
	}
}

New Type: OpenGLES.EAGLDrawableProperty

public static class EAGLDrawableProperty {
	// fields
	public static Foundation.NSString ColorFormat;
	public static Foundation.NSString RetainedBacking;
}

New Type: OpenGLES.EAGLRenderingAPI

[Serializable]
public enum EAGLRenderingAPI {
	OpenGLES1 = 1,
	OpenGLES2 = 2,
	OpenGLES3 = 3,
}

New Type: OpenGLES.EAGLSharegroup

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

New Type: OpenGLES.IEAGLDrawable

public interface IEAGLDrawable : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual Foundation.NSDictionary DrawableProperties { get; set; }
}

New Namespace PassKit

New Type: PassKit.PKIssuerProvisioningExtensionHandler

public class PKIssuerProvisioningExtensionHandler : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected PKIssuerProvisioningExtensionHandler (Foundation.NSObjectFlag t);
	protected PKIssuerProvisioningExtensionHandler (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void GenerateAddPaymentPassRequest (string identifier, PKAddPaymentPassRequestConfiguration configuration, Foundation.NSData[] certificates, Foundation.NSData nonce, Foundation.NSData nonceSignature, System.Action<PKAddPaymentPassRequest> completion);
	public virtual System.Threading.Tasks.Task<PKAddPaymentPassRequest> GenerateAddPaymentPassRequestAsync (string identifier, PKAddPaymentPassRequestConfiguration configuration, Foundation.NSData[] certificates, Foundation.NSData nonce, Foundation.NSData nonceSignature);
	public virtual void GetStatus (System.Action<PKIssuerProvisioningExtensionStatus> completion);
	public virtual System.Threading.Tasks.Task<PKIssuerProvisioningExtensionStatus> GetStatusAsync ();
	public virtual void PassEntries (System.Action<PKIssuerProvisioningExtensionPassEntry[]> completion);
	public virtual System.Threading.Tasks.Task<PKIssuerProvisioningExtensionPassEntry[]> PassEntriesAsync ();
	public virtual void RemotePassEntries (System.Action<PKIssuerProvisioningExtensionPassEntry[]> completion);
	public virtual System.Threading.Tasks.Task<PKIssuerProvisioningExtensionPassEntry[]> RemotePassEntriesAsync ();
}

New Type: PassKit.PKPaymentShippingAddressSelectedEventArgs

public class PKPaymentShippingAddressSelectedEventArgs : System.EventArgs {
	// constructors
	public PKPaymentShippingAddressSelectedEventArgs (AddressBook.ABRecord address, PKPaymentShippingAddressSelected completion);
	// properties
	public AddressBook.ABRecord Address { get; set; }
	public PKPaymentShippingAddressSelected Completion { get; set; }
}

New Namespace PdfKit

New Type: PdfKit.PdfPrintScalingMode

[Serializable]
public enum PdfPrintScalingMode {
	DownToFit = 2,
	None = 0,
	ToFit = 1,
}

New Namespace PhotosUI

New Type: PhotosUI.PHEditingExtensionContext

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

New Namespace Twitter

New Type: Twitter.TWRequest

public class TWRequest : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public TWRequest ();
	protected TWRequest (Foundation.NSObjectFlag t);
	protected TWRequest (IntPtr handle);
	public TWRequest (Foundation.NSUrl url, Foundation.NSDictionary parameters, TWRequestMethod requestMethod);
	// properties
	public virtual Accounts.ACAccount Account { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSDictionary Parameters { get; }
	public virtual TWRequestMethod RequestMethod { get; }
	public virtual Foundation.NSUrlRequest SignedUrlRequest { get; }
	public virtual Foundation.NSUrl Url { get; }
	// methods
	public virtual void AddMultiPartData (Foundation.NSData data, string name, string type);
	public virtual void PerformRequest (TWRequestHandler handler);
	public virtual System.Threading.Tasks.Task<TWRequestResult> PerformRequestAsync ();
}

New Type: Twitter.TWRequestHandler

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

New Type: Twitter.TWRequestMethod

[Serializable]
public enum TWRequestMethod {
	Delete = 2,
	Get = 0,
	Post = 1,
}

New Type: Twitter.TWRequestResult

public class TWRequestResult {
	// constructors
	public TWRequestResult (Foundation.NSData responseData, Foundation.NSHttpUrlResponse urlResponse);
	// properties
	public Foundation.NSData ResponseData { get; set; }
	public Foundation.NSHttpUrlResponse UrlResponse { get; set; }
}

New Type: Twitter.TWTweetComposeViewController

public class TWTweetComposeViewController : UIKit.UIViewController, Foundation.INSCoding, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearanceContainer, UIKit.IUIContentContainer, UIKit.IUIFocusEnvironment, UIKit.IUIPasteConfigurationSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public TWTweetComposeViewController ();
	public TWTweetComposeViewController (Foundation.NSCoder coder);
	protected TWTweetComposeViewController (Foundation.NSObjectFlag t);
	protected TWTweetComposeViewController (IntPtr handle);
	public TWTweetComposeViewController (string nibName, Foundation.NSBundle bundle);
	// properties
	public static bool CanSendTweet { get; }
	public override IntPtr ClassHandle { get; }
	public virtual System.Action<TWTweetComposeViewControllerResult> CompletionHandler { get; set; }
	// methods
	public virtual bool AddImage (UIKit.UIImage image);
	public virtual bool AddUrl (Foundation.NSUrl url);
	public virtual bool RemoveAllImages ();
	public virtual bool RemoveAllUrls ();
	public virtual void SetCompletionHandler (System.Action<TWTweetComposeViewControllerResult> handler);
	public virtual bool SetInitialText (string text);
}

New Type: Twitter.TWTweetComposeViewControllerResult

[Serializable]
public enum TWTweetComposeViewControllerResult {
	Cancelled = 0,
	Done = 1,
}

New Namespace UIKit

New Type: UIKit.IUISearchDisplayDelegate

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

New Type: UIKit.IUIWebViewDelegate

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

New Type: UIKit.NSFileProviderExtension

public class NSFileProviderExtension : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSFileProviderExtension ();
	protected NSFileProviderExtension (Foundation.NSObjectFlag t);
	protected NSFileProviderExtension (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSUrl DocumentStorageUrl { get; }
	public virtual FileProvider.NSFileProviderDomain Domain { get; }
	public virtual string ProviderIdentifier { get; }
	// methods
	public virtual void CreateDirectory (string directoryName, string parentItemIdentifier, System.Action<FileProvider.INSFileProviderItem,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<FileProvider.INSFileProviderItem> CreateDirectoryAsync (string directoryName, string parentItemIdentifier);
	public virtual void DeleteItem (string itemIdentifier, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task DeleteItemAsync (string itemIdentifier);
	public virtual Foundation.NSProgress FetchThumbnails (Foundation.NSString[] itemIdentifiers, CoreGraphics.CGSize size, NSFileProviderExtensionFetchThumbnailsHandler perThumbnailCompletionHandler, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task FetchThumbnailsAsync (Foundation.NSString[] itemIdentifiers, CoreGraphics.CGSize size, NSFileProviderExtensionFetchThumbnailsHandler perThumbnailCompletionHandler);
	public virtual System.Threading.Tasks.Task FetchThumbnailsAsync (Foundation.NSString[] itemIdentifiers, CoreGraphics.CGSize size, NSFileProviderExtensionFetchThumbnailsHandler perThumbnailCompletionHandler, out Foundation.NSProgress result);
	public virtual FileProvider.INSFileProviderEnumerator GetEnumerator (string containerItemIdentifier, out Foundation.NSError error);
	public virtual FileProvider.INSFileProviderItem GetItem (Foundation.NSString identifier, out Foundation.NSError error);
	public virtual string GetPersistentIdentifier (Foundation.NSUrl itemUrl);
	public static Foundation.NSUrl GetPlaceholderUrl (Foundation.NSUrl url);
	public virtual FileProvider.INSFileProviderServiceSource[] GetSupportedServiceSources (string itemIdentifier, out Foundation.NSError error);
	public virtual Foundation.NSUrl GetUrlForItem (string persistentIdentifier);
	public virtual void ImportDocument (Foundation.NSUrl fileUrl, string parentItemIdentifier, System.Action<FileProvider.INSFileProviderItem,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<FileProvider.INSFileProviderItem> ImportDocumentAsync (Foundation.NSUrl fileUrl, string parentItemIdentifier);
	public virtual void ItemChangedAtUrl (Foundation.NSUrl url);
	public virtual void ProvidePlaceholderAtUrl (Foundation.NSUrl url, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task ProvidePlaceholderAtUrlAsync (Foundation.NSUrl url);
	public virtual void RenameItem (string itemIdentifier, string itemName, System.Action<FileProvider.INSFileProviderItem,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<FileProvider.INSFileProviderItem> RenameItemAsync (string itemIdentifier, string itemName);
	public virtual void ReparentItem (string itemIdentifier, string parentItemIdentifier, string newName, System.Action<FileProvider.INSFileProviderItem,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<FileProvider.INSFileProviderItem> ReparentItemAsync (string itemIdentifier, string parentItemIdentifier, string newName);
	public virtual void SetFavoriteRank (Foundation.NSNumber favoriteRank, string itemIdentifier, System.Action<FileProvider.INSFileProviderItem,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<FileProvider.INSFileProviderItem> SetFavoriteRankAsync (Foundation.NSNumber favoriteRank, string itemIdentifier);
	public virtual void SetLastUsedDate (Foundation.NSDate lastUsedDate, string itemIdentifier, System.Action<FileProvider.INSFileProviderItem,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<FileProvider.INSFileProviderItem> SetLastUsedDateAsync (Foundation.NSDate lastUsedDate, string itemIdentifier);
	public virtual void SetTagData (Foundation.NSData tagData, string itemIdentifier, System.Action<FileProvider.INSFileProviderItem,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<FileProvider.INSFileProviderItem> SetTagDataAsync (Foundation.NSData tagData, string itemIdentifier);
	public virtual void StartProvidingItemAtUrl (Foundation.NSUrl url, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task StartProvidingItemAtUrlAsync (Foundation.NSUrl url);
	public virtual void StopProvidingItemAtUrl (Foundation.NSUrl url);
	public virtual void TrashItem (string itemIdentifier, System.Action<FileProvider.INSFileProviderItem,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<FileProvider.INSFileProviderItem> TrashItemAsync (string itemIdentifier);
	public virtual void UntrashItem (string itemIdentifier, string parentItemIdentifier, System.Action<FileProvider.INSFileProviderItem,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<FileProvider.INSFileProviderItem> UntrashItemAsync (string itemIdentifier, string parentItemIdentifier);
	public static bool WritePlaceholder (Foundation.NSUrl placeholderUrl, Foundation.NSDictionary metadata, ref Foundation.NSError error);
}

New Type: UIKit.NSFileProviderExtensionFetchThumbnailsHandler

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

New Type: UIKit.UISearchDisplayController

public class UISearchDisplayController : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public UISearchDisplayController ();
	protected UISearchDisplayController (Foundation.NSObjectFlag t);
	protected UISearchDisplayController (IntPtr handle);
	public UISearchDisplayController (UISearchBar searchBar, UIViewController viewController);
	// properties
	public virtual bool Active { get; set; }
	public override IntPtr ClassHandle { get; }
	public IUISearchDisplayDelegate Delegate { get; set; }
	public virtual bool DisplaysSearchBarInNavigationBar { get; set; }
	public virtual UINavigationItem NavigationItem { get; }
	public virtual UISearchBar SearchBar { get; }
	public virtual UIViewController SearchContentsController { get; }
	public IUITableViewDataSource SearchResultsDataSource { get; set; }
	public IUITableViewDelegate SearchResultsDelegate { get; set; }
	public UITableViewSource SearchResultsSource { get; set; }
	public virtual UITableView SearchResultsTableView { get; }
	public virtual string SearchResultsTitle { get; set; }
	public virtual Foundation.NSObject SearchResultsWeakDataSource { get; set; }
	public virtual Foundation.NSObject SearchResultsWeakDelegate { get; set; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	protected override void Dispose (bool disposing);
	public virtual void SetActive (bool visible, bool animated);
}

New Type: UIKit.UISearchDisplayDelegate

public class UISearchDisplayDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, IUISearchDisplayDelegate {
	// constructors
	public UISearchDisplayDelegate ();
	protected UISearchDisplayDelegate (Foundation.NSObjectFlag t);
	protected UISearchDisplayDelegate (IntPtr handle);
	// methods
	public virtual void DidBeginSearch (UISearchDisplayController controller);
	public virtual void DidEndSearch (UISearchDisplayController controller);
	public virtual void DidHideSearchResults (UISearchDisplayController controller, UITableView tableView);
	public virtual void DidLoadSearchResults (UISearchDisplayController controller, UITableView tableView);
	public virtual void DidShowSearchResults (UISearchDisplayController controller, UITableView tableView);
	public virtual bool ShouldReloadForSearchScope (UISearchDisplayController controller, nint forSearchOption);
	public virtual bool ShouldReloadForSearchString (UISearchDisplayController controller, string forSearchString);
	public virtual void WillBeginSearch (UISearchDisplayController controller);
	public virtual void WillEndSearch (UISearchDisplayController controller);
	public virtual void WillHideSearchResults (UISearchDisplayController controller, UITableView tableView);
	public virtual void WillShowSearchResults (UISearchDisplayController controller, UITableView tableView);
	public virtual void WillUnloadSearchResults (UISearchDisplayController controller, UITableView tableView);
}

New Type: UIKit.UISearchDisplayDelegate_Extensions

public static class UISearchDisplayDelegate_Extensions {
	// methods
	public static void DidBeginSearch (this IUISearchDisplayDelegate This, UISearchDisplayController controller);
	public static void DidEndSearch (this IUISearchDisplayDelegate This, UISearchDisplayController controller);
	public static void DidHideSearchResults (this IUISearchDisplayDelegate This, UISearchDisplayController controller, UITableView tableView);
	public static void DidLoadSearchResults (this IUISearchDisplayDelegate This, UISearchDisplayController controller, UITableView tableView);
	public static void DidShowSearchResults (this IUISearchDisplayDelegate This, UISearchDisplayController controller, UITableView tableView);
	public static bool ShouldReloadForSearchScope (this IUISearchDisplayDelegate This, UISearchDisplayController controller, nint forSearchOption);
	public static bool ShouldReloadForSearchString (this IUISearchDisplayDelegate This, UISearchDisplayController controller, string forSearchString);
	public static void WillBeginSearch (this IUISearchDisplayDelegate This, UISearchDisplayController controller);
	public static void WillEndSearch (this IUISearchDisplayDelegate This, UISearchDisplayController controller);
	public static void WillHideSearchResults (this IUISearchDisplayDelegate This, UISearchDisplayController controller, UITableView tableView);
	public static void WillShowSearchResults (this IUISearchDisplayDelegate This, UISearchDisplayController controller, UITableView tableView);
	public static void WillUnloadSearchResults (this IUISearchDisplayDelegate This, UISearchDisplayController controller, UITableView tableView);
}

New Type: UIKit.UIWebErrorArgs

public class UIWebErrorArgs : System.EventArgs {
	// constructors
	public UIWebErrorArgs (Foundation.NSError error);
	// properties
	public Foundation.NSError Error { get; set; }
}

New Type: UIKit.UIWebLoaderControl

public sealed delegate UIWebLoaderControl : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public UIWebLoaderControl (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (UIWebView webView, Foundation.NSUrlRequest request, UIWebViewNavigationType navigationType, System.AsyncCallback callback, object object);
	public virtual bool EndInvoke (System.IAsyncResult result);
	public virtual bool Invoke (UIWebView webView, Foundation.NSUrlRequest request, UIWebViewNavigationType navigationType);
}

New Type: UIKit.UIWebView

public class UIWebView : UIKit.UIView, CoreAnimation.ICALayerDelegate, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, IUIAccessibilityIdentification, IUIAppearance, IUIAppearanceContainer, IUICoordinateSpace, IUIDynamicItem, IUIFocusEnvironment, IUIFocusItem, IUIFocusItemContainer, IUILargeContentViewerItem, IUIPasteConfigurationSupporting, IUIScrollViewDelegate, IUITraitEnvironment, IUIUserActivityRestoring {
	// constructors
	public UIWebView ();
	public UIWebView (CoreGraphics.CGRect frame);
	public UIWebView (Foundation.NSCoder coder);
	protected UIWebView (Foundation.NSObjectFlag t);
	protected UIWebView (IntPtr handle);
	// properties
	public virtual bool AllowsInlineMediaPlayback { get; set; }
	public virtual bool AllowsLinkPreview { get; set; }
	public virtual bool AllowsPictureInPictureMediaPlayback { get; set; }
	public static UIWebView.UIWebViewAppearance Appearance { get; }
	public virtual bool CanGoBack { get; }
	public virtual bool CanGoForward { get; }
	public override IntPtr ClassHandle { get; }
	public virtual UIDataDetectorType DataDetectorTypes { get; set; }
	public IUIWebViewDelegate Delegate { get; set; }
	public virtual nfloat GapBetweenPages { get; set; }
	public virtual bool IsLoading { get; }
	public virtual bool KeyboardDisplayRequiresUserAction { get; set; }
	public virtual bool MediaPlaybackAllowsAirPlay { get; set; }
	public virtual bool MediaPlaybackRequiresUserAction { get; set; }
	public virtual nint PageCount { get; }
	public virtual nfloat PageLength { get; set; }
	public virtual UIWebPaginationBreakingMode PaginationBreakingMode { get; set; }
	public virtual UIWebPaginationMode PaginationMode { get; set; }
	public virtual Foundation.NSUrlRequest Request { get; }
	public virtual bool ScalesPageToFit { get; set; }
	public virtual UIScrollView ScrollView { get; }
	public UIWebLoaderControl ShouldStartLoad { get; set; }
	public virtual bool SuppressesIncrementalRendering { get; set; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// events
	public event System.EventHandler<UIWebErrorArgs> LoadError;
	public event System.EventHandler LoadFinished;
	public event System.EventHandler LoadStarted;
	// methods
	public static UIWebView.UIWebViewAppearance AppearanceWhenContainedIn (System.Type[] containers);
	public virtual void DecelerationEnded (UIScrollView scrollView);
	public virtual void DecelerationStarted (UIScrollView scrollView);
	public virtual void DidChangeAdjustedContentInset (UIScrollView scrollView);
	public virtual void DidZoom (UIScrollView scrollView);
	protected override void Dispose (bool disposing);
	public virtual void DraggingEnded (UIScrollView scrollView, bool willDecelerate);
	public virtual void DraggingStarted (UIScrollView scrollView);
	public virtual string EvaluateJavascript (string script);
	public static UIWebView.UIWebViewAppearance GetAppearance<T> ();
	public static UIWebView.UIWebViewAppearance GetAppearance<T> (UITraitCollection traits);
	public static UIWebView.UIWebViewAppearance GetAppearance (UITraitCollection traits);
	public static UIWebView.UIWebViewAppearance GetAppearance<T> (UITraitCollection traits, System.Type[] containers);
	public static UIWebView.UIWebViewAppearance GetAppearance (UITraitCollection traits, System.Type[] containers);
	public virtual void GoBack ();
	public virtual void GoForward ();
	public virtual void LoadData (Foundation.NSData data, string mimeType, string textEncodingName, Foundation.NSUrl baseUrl);
	public virtual void LoadHtmlString (string s, Foundation.NSUrl baseUrl);
	public virtual void LoadRequest (Foundation.NSUrlRequest r);
	public virtual void Reload ();
	public virtual void ScrollAnimationEnded (UIScrollView scrollView);
	public virtual void Scrolled (UIScrollView scrollView);
	public virtual void ScrolledToTop (UIScrollView scrollView);
	public virtual bool ShouldScrollToTop (UIScrollView scrollView);
	public virtual void StopLoading ();
	public virtual UIView ViewForZoomingInScrollView (UIScrollView scrollView);
	public virtual void WillEndDragging (UIScrollView scrollView, CoreGraphics.CGPoint velocity, ref CoreGraphics.CGPoint targetContentOffset);
	public virtual void ZoomingEnded (UIScrollView scrollView, UIView withView, nfloat atScale);
	public virtual void ZoomingStarted (UIScrollView scrollView, UIView view);

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

New Type: UIKit.UIWebViewDelegate

public class UIWebViewDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, IUIWebViewDelegate {
	// constructors
	public UIWebViewDelegate ();
	protected UIWebViewDelegate (Foundation.NSObjectFlag t);
	protected UIWebViewDelegate (IntPtr handle);
	// methods
	public virtual void LoadFailed (UIWebView webView, Foundation.NSError error);
	public virtual void LoadStarted (UIWebView webView);
	public virtual void LoadingFinished (UIWebView webView);
	public virtual bool ShouldStartLoad (UIWebView webView, Foundation.NSUrlRequest request, UIWebViewNavigationType navigationType);
}

New Type: UIKit.UIWebViewDelegate_Extensions

public static class UIWebViewDelegate_Extensions {
	// methods
	public static void LoadFailed (this IUIWebViewDelegate This, UIWebView webView, Foundation.NSError error);
	public static void LoadStarted (this IUIWebViewDelegate This, UIWebView webView);
	public static void LoadingFinished (this IUIWebViewDelegate This, UIWebView webView);
	public static bool ShouldStartLoad (this IUIWebViewDelegate This, UIWebView webView, Foundation.NSUrlRequest request, UIWebViewNavigationType navigationType);
}

New Namespace VideoSubscriberAccount

New Type: VideoSubscriberAccount.IVSAccountManagerDelegate

public interface IVSAccountManagerDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DismissViewController (VSAccountManager accountManager, UIKit.UIViewController viewController);
	public virtual void PresentViewController (VSAccountManager accountManager, UIKit.UIViewController viewController);
}

New Type: VideoSubscriberAccount.VSAccountAccessStatus

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

New Type: VideoSubscriberAccount.VSAccountApplicationProvider

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

New Type: VideoSubscriberAccount.VSAccountManager

public class VSAccountManager : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public VSAccountManager ();
	protected VSAccountManager (Foundation.NSObjectFlag t);
	protected VSAccountManager (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual IVSAccountManagerDelegate Delegate { get; set; }
	public static Foundation.NSString OpenTVProviderSettingsUrl { get; }
	// methods
	public virtual void CheckAccessStatus (Foundation.NSDictionary options, System.Action<VSAccountAccessStatus,Foundation.NSError> completionHandler);
	public void CheckAccessStatus (VSAccountManagerAccessOptions accessOptions, System.Action<VSAccountAccessStatus,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<VSAccountAccessStatus> CheckAccessStatusAsync (Foundation.NSDictionary options);
	public System.Threading.Tasks.Task<VSAccountAccessStatus> CheckAccessStatusAsync (VSAccountManagerAccessOptions accessOptions);
	protected override void Dispose (bool disposing);
	public virtual VSAccountManagerResult Enqueue (VSAccountMetadataRequest accountMetadataRequest, System.Action<VSAccountMetadata,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<VSAccountMetadata> EnqueueAsync (VSAccountMetadataRequest accountMetadataRequest);
	public virtual System.Threading.Tasks.Task<VSAccountMetadata> EnqueueAsync (VSAccountMetadataRequest accountMetadataRequest, out VSAccountManagerResult result);
}

New Type: VideoSubscriberAccount.VSAccountManagerAccessOptions

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

New Type: VideoSubscriberAccount.VSAccountManagerDelegate

public abstract class VSAccountManagerDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, IVSAccountManagerDelegate {
	// constructors
	protected VSAccountManagerDelegate ();
	protected VSAccountManagerDelegate (Foundation.NSObjectFlag t);
	protected VSAccountManagerDelegate (IntPtr handle);
	// methods
	public virtual void DismissViewController (VSAccountManager accountManager, UIKit.UIViewController viewController);
	public virtual void PresentViewController (VSAccountManager accountManager, UIKit.UIViewController viewController);
	public virtual bool ShouldAuthenticateAccountProvider (VSAccountManager accountManager, string accountProviderIdentifier);
}

New Type: VideoSubscriberAccount.VSAccountManagerDelegate_Extensions

public static class VSAccountManagerDelegate_Extensions {
	// methods
	public static bool ShouldAuthenticateAccountProvider (this IVSAccountManagerDelegate This, VSAccountManager accountManager, string accountProviderIdentifier);
}

New Type: VideoSubscriberAccount.VSAccountManagerResult

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

New Type: VideoSubscriberAccount.VSAccountMetadata

public class VSAccountMetadata : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public VSAccountMetadata ();
	protected VSAccountMetadata (Foundation.NSObjectFlag t);
	protected VSAccountMetadata (IntPtr handle);
	// properties
	public virtual string AccountProviderIdentifier { get; }
	public virtual VSAccountProviderResponse AccountProviderResponse { get; }
	public virtual Foundation.NSDate AuthenticationExpirationDate { get; }
	public override IntPtr ClassHandle { get; }
	public virtual string SamlAttributeQueryResponse { get; }
	public virtual Foundation.NSData VerificationData { get; }
}

New Type: VideoSubscriberAccount.VSAccountMetadataRequest

public class VSAccountMetadataRequest : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public VSAccountMetadataRequest ();
	protected VSAccountMetadataRequest (Foundation.NSObjectFlag t);
	protected VSAccountMetadataRequest (IntPtr handle);
	// properties
	public virtual string AccountProviderAuthenticationToken { get; set; }
	public virtual VSAccountApplicationProvider[] ApplicationAccountProviders { get; set; }
	public virtual string[] AttributeNames { get; set; }
	public virtual string ChannelIdentifier { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual string[] FeaturedAccountProviderIdentifiers { get; set; }
	public virtual bool ForceAuthentication { get; set; }
	public virtual bool IncludeAccountProviderIdentifier { get; set; }
	public virtual bool IncludeAuthenticationExpirationDate { get; set; }
	public virtual bool InterruptionAllowed { get; set; }
	public virtual string LocalizedVideoTitle { get; set; }
	public virtual string[] SupportedAccountProviderIdentifiers { get; set; }
	public VSAccountProviderAuthenticationScheme[] SupportedAuthenticationSchemes { get; set; }
	protected virtual Foundation.NSString[] SupportedAuthenticationSchemesString { get; set; }
	public virtual string VerificationToken { get; set; }
}

New Type: VideoSubscriberAccount.VSAccountProviderAuthenticationScheme

[Serializable]
public enum VSAccountProviderAuthenticationScheme {
	Api = 1,
	Saml = 0,
}

New Type: VideoSubscriberAccount.VSAccountProviderAuthenticationSchemeExtensions

public static class VSAccountProviderAuthenticationSchemeExtensions {
	// methods
	public static Foundation.NSString GetConstant (this VSAccountProviderAuthenticationScheme self);
	public static Foundation.NSString[] GetConstants (this VSAccountProviderAuthenticationScheme[] self);
	public static VSAccountProviderAuthenticationScheme GetValue (Foundation.NSString constant);
	public static VSAccountProviderAuthenticationScheme[] GetValues (Foundation.NSString[] constants);
}

New Type: VideoSubscriberAccount.VSAccountProviderResponse

public class VSAccountProviderResponse : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public VSAccountProviderResponse ();
	protected VSAccountProviderResponse (Foundation.NSObjectFlag t);
	protected VSAccountProviderResponse (IntPtr handle);
	// properties
	public VSAccountProviderAuthenticationScheme AuthenticationScheme { get; }
	protected virtual Foundation.NSString AuthenticationSchemeString { get; }
	public virtual string Body { get; }
	public override IntPtr ClassHandle { get; }
	public virtual string Status { get; }
}

New Type: VideoSubscriberAccount.VSErrorCode

[Serializable]
public enum VSErrorCode {
	AccessNotGranted = 0,
	InvalidVerificationToken = 5,
	ProviderRejected = 4,
	Rejected = 6,
	ServiceTemporarilyUnavailable = 3,
	Unsupported = 7,
	UnsupportedProvider = 1,
	UserCancelled = 2,
}

New Type: VideoSubscriberAccount.VSErrorCodeExtensions

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

New Type: VideoSubscriberAccount.VSErrorInfo

public class VSErrorInfo : Foundation.DictionaryContainer {
	// constructors
	public VSErrorInfo ();
	public VSErrorInfo (Foundation.NSDictionary dictionary);
	// properties
	public string AccountProviderResponse { get; }
	public string SamlResponse { get; }
	public string SamlResponseStatus { get; }
	public string UnsupportedProviderIdentifier { get; }
}

New Type: VideoSubscriberAccount.VSSubscription

public class VSSubscription : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public VSSubscription ();
	protected VSSubscription (Foundation.NSObjectFlag t);
	protected VSSubscription (IntPtr handle);
	// properties
	public virtual VSSubscriptionAccessLevel AccessLevel { get; set; }
	public virtual string BillingIdentifier { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSDate ExpirationDate { get; set; }
	public virtual string[] TierIdentifiers { get; set; }
}

New Type: VideoSubscriberAccount.VSSubscriptionAccessLevel

[Serializable]
public enum VSSubscriptionAccessLevel {
	FreeWithAccount = 1,
	Paid = 2,
	Unknown = 0,
}

New Type: VideoSubscriberAccount.VSSubscriptionRegistrationCenter

public class VSSubscriptionRegistrationCenter : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected VSSubscriptionRegistrationCenter (Foundation.NSObjectFlag t);
	protected VSSubscriptionRegistrationCenter (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static VSSubscriptionRegistrationCenter Default { get; }
	// methods
	public virtual void SetCurrentSubscription (VSSubscription currentSubscription);
}

New Namespace VisionKit

New Type: VisionKit.IVNDocumentCameraViewControllerDelegate

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

New Type: VisionKit.VNDocumentCameraScan

public class VNDocumentCameraScan : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected VNDocumentCameraScan (Foundation.NSObjectFlag t);
	protected VNDocumentCameraScan (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nuint PageCount { get; }
	public virtual string Title { get; }
	// methods
	public virtual UIKit.UIImage GetImage (nuint pageIndex);
}

New Type: VisionKit.VNDocumentCameraViewController

public class VNDocumentCameraViewController : UIKit.UIViewController, Foundation.INSCoding, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearanceContainer, UIKit.IUIContentContainer, UIKit.IUIFocusEnvironment, UIKit.IUIPasteConfigurationSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public VNDocumentCameraViewController ();
	public VNDocumentCameraViewController (Foundation.NSCoder coder);
	protected VNDocumentCameraViewController (Foundation.NSObjectFlag t);
	protected VNDocumentCameraViewController (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public IVNDocumentCameraViewControllerDelegate Delegate { get; set; }
	public static bool Supported { get; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	protected override void Dispose (bool disposing);
}

New Type: VisionKit.VNDocumentCameraViewControllerDelegate

public class VNDocumentCameraViewControllerDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, IVNDocumentCameraViewControllerDelegate {
	// constructors
	public VNDocumentCameraViewControllerDelegate ();
	protected VNDocumentCameraViewControllerDelegate (Foundation.NSObjectFlag t);
	protected VNDocumentCameraViewControllerDelegate (IntPtr handle);
	// methods
	public virtual void DidCancel (VNDocumentCameraViewController controller);
	public virtual void DidFail (VNDocumentCameraViewController controller, Foundation.NSError error);
	public virtual void DidFinish (VNDocumentCameraViewController controller, VNDocumentCameraScan scan);
}

New Type: VisionKit.VNDocumentCameraViewControllerDelegate_Extensions

public static class VNDocumentCameraViewControllerDelegate_Extensions {
	// methods
	public static void DidCancel (this IVNDocumentCameraViewControllerDelegate This, VNDocumentCameraViewController controller);
	public static void DidFail (this IVNDocumentCameraViewControllerDelegate This, VNDocumentCameraViewController controller, Foundation.NSError error);
	public static void DidFinish (this IVNDocumentCameraViewControllerDelegate This, VNDocumentCameraViewController controller, VNDocumentCameraScan scan);
}

New Namespace WatchConnectivity

New Type: WatchConnectivity.IWCSessionDelegate

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

New Type: WatchConnectivity.WCErrorCode

[Serializable]
public enum WCErrorCode {
	CompanionAppNotInstalled = 7018,
	DeliveryFailed = 7014,
	DeviceNotPaired = 7005,
	FileAccessDenied = 7013,
	GenericError = 7001,
	InsufficientSpace = 7015,
	InvalidParameter = 7008,
	MessageReplyFailed = 7011,
	MessageReplyTimedOut = 7012,
	NotReachable = 7007,
	PayloadTooLarge = 7009,
	PayloadUnsupportedTypes = 7010,
	SessionInactive = 7016,
	SessionMissingDelegate = 7003,
	SessionNotActivated = 7004,
	SessionNotSupported = 7002,
	TransferTimedOut = 7017,
	WatchAppNotInstalled = 7006,
	WatchOnlyApp = 7019,
}

New Type: WatchConnectivity.WCSession

public class WCSession : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected WCSession (Foundation.NSObjectFlag t);
	protected WCSession (IntPtr handle);
	// properties
	public virtual WCSessionActivationState ActivationState { get; }
	public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> ApplicationContext { get; }
	public override IntPtr ClassHandle { get; }
	public virtual bool ComplicationEnabled { get; }
	public static WCSession DefaultSession { get; }
	public virtual IWCSessionDelegate Delegate { get; set; }
	public static Foundation.NSString ErrorDomain { get; }
	public virtual bool HasContentPending { get; }
	public static bool IsSupported { get; }
	public virtual WCSessionFileTransfer[] OutstandingFileTransfers { get; }
	public virtual WCSessionUserInfoTransfer[] OutstandingUserInfoTransfers { get; }
	public virtual bool Paired { get; }
	public virtual bool Reachable { get; }
	public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> ReceivedApplicationContext { get; }
	public virtual nuint RemainingComplicationUserInfoTransfers { get; }
	public virtual bool WatchAppInstalled { get; }
	public virtual Foundation.NSUrl WatchDirectoryUrl { get; }
	// methods
	public virtual void ActivateSession ();
	protected override void Dispose (bool disposing);
	public virtual void SendMessage (Foundation.NSData data, WCSessionReplyDataHandler replyHandler, System.Action<Foundation.NSError> errorHandler);
	public virtual void SendMessage (Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> message, WCSessionReplyHandler replyHandler, System.Action<Foundation.NSError> errorHandler);
	public virtual WCSessionUserInfoTransfer TransferCurrentComplicationUserInfo (Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> userInfo);
	public virtual WCSessionFileTransfer TransferFile (Foundation.NSUrl file, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> metadata);
	public virtual WCSessionUserInfoTransfer TransferUserInfo (Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> userInfo);
	public virtual bool UpdateApplicationContext (Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> applicationContext, out Foundation.NSError error);
}

New Type: WatchConnectivity.WCSessionActivationState

[Serializable]
public enum WCSessionActivationState {
	Activated = 2,
	Inactive = 1,
	NotActivated = 0,
}

New Type: WatchConnectivity.WCSessionDelegate

public class WCSessionDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, IWCSessionDelegate {
	// constructors
	public WCSessionDelegate ();
	protected WCSessionDelegate (Foundation.NSObjectFlag t);
	protected WCSessionDelegate (IntPtr handle);
	// methods
	public virtual void ActivationDidComplete (WCSession session, WCSessionActivationState activationState, Foundation.NSError error);
	public virtual void DidBecomeInactive (WCSession session);
	public virtual void DidDeactivate (WCSession session);
	public virtual void DidFinishFileTransfer (WCSession session, WCSessionFileTransfer fileTransfer, Foundation.NSError error);
	public virtual void DidFinishUserInfoTransfer (WCSession session, WCSessionUserInfoTransfer userInfoTransfer, Foundation.NSError error);
	public virtual void DidReceiveApplicationContext (WCSession session, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> applicationContext);
	public virtual void DidReceiveFile (WCSession session, WCSessionFile file);
	public virtual void DidReceiveMessage (WCSession session, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> message);
	public virtual void DidReceiveMessage (WCSession session, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> message, WCSessionReplyHandler replyHandler);
	public virtual void DidReceiveMessageData (WCSession session, Foundation.NSData messageData);
	public virtual void DidReceiveMessageData (WCSession session, Foundation.NSData messageData, WCSessionReplyDataHandler replyHandler);
	public virtual void DidReceiveUserInfo (WCSession session, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> userInfo);
	public virtual void SessionReachabilityDidChange (WCSession session);
	public virtual void SessionWatchStateDidChange (WCSession session);
}

New Type: WatchConnectivity.WCSessionDelegate_Extensions

public static class WCSessionDelegate_Extensions {
	// methods
	public static void ActivationDidComplete (this IWCSessionDelegate This, WCSession session, WCSessionActivationState activationState, Foundation.NSError error);
	public static void DidBecomeInactive (this IWCSessionDelegate This, WCSession session);
	public static void DidDeactivate (this IWCSessionDelegate This, WCSession session);
	public static void DidFinishFileTransfer (this IWCSessionDelegate This, WCSession session, WCSessionFileTransfer fileTransfer, Foundation.NSError error);
	public static void DidFinishUserInfoTransfer (this IWCSessionDelegate This, WCSession session, WCSessionUserInfoTransfer userInfoTransfer, Foundation.NSError error);
	public static void DidReceiveApplicationContext (this IWCSessionDelegate This, WCSession session, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> applicationContext);
	public static void DidReceiveFile (this IWCSessionDelegate This, WCSession session, WCSessionFile file);
	public static void DidReceiveMessage (this IWCSessionDelegate This, WCSession session, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> message);
	public static void DidReceiveMessage (this IWCSessionDelegate This, WCSession session, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> message, WCSessionReplyHandler replyHandler);
	public static void DidReceiveMessageData (this IWCSessionDelegate This, WCSession session, Foundation.NSData messageData);
	public static void DidReceiveMessageData (this IWCSessionDelegate This, WCSession session, Foundation.NSData messageData, WCSessionReplyDataHandler replyHandler);
	public static void DidReceiveUserInfo (this IWCSessionDelegate This, WCSession session, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> userInfo);
	public static void SessionReachabilityDidChange (this IWCSessionDelegate This, WCSession session);
	public static void SessionWatchStateDidChange (this IWCSessionDelegate This, WCSession session);
}

New Type: WatchConnectivity.WCSessionFile

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

New Type: WatchConnectivity.WCSessionFileTransfer

public class WCSessionFileTransfer : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected WCSessionFileTransfer (Foundation.NSObjectFlag t);
	protected WCSessionFileTransfer (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual WCSessionFile File { get; }
	public virtual Foundation.NSProgress Progress { get; }
	public virtual bool Transferring { get; }
	// methods
	public virtual void Cancel ();
}

New Type: WatchConnectivity.WCSessionReplyDataHandler

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

New Type: WatchConnectivity.WCSessionReplyHandler

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

New Type: WatchConnectivity.WCSessionUserInfoTransfer

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

New Namespace WatchKit

New Type: WatchKit.IWKImageAnimatable

public interface IWKImageAnimatable : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void StartAnimating ();
	public virtual void StartAnimating (Foundation.NSRange imageRange, double duration, nint repeatCount);
	public virtual void StopAnimating ();
}

New Type: WatchKit.WKAccessibility

public static class WKAccessibility {
	// methods
	public static void SetAccessibilityHint (this WKInterfaceObject This, string accessibilityHint);
	public static void SetAccessibilityIdentifier (this WKInterfaceObject This, string accessibilityIdentifier);
	public static void SetAccessibilityImageRegions (this WKInterfaceObject This, WKAccessibilityImageRegion[] accessibilityImageRegions);
	public static void SetAccessibilityLabel (this WKInterfaceObject This, string accessibilityLabel);
	public static void SetAccessibilityTraits (this WKInterfaceObject This, UIKit.UIAccessibilityTrait accessibilityTraits);
	public static void SetAccessibilityValue (this WKInterfaceObject This, string accessibilityValue);
	public static void SetIsAccessibilityElement (this WKInterfaceObject This, bool isAccessibilityElement);
}

New Type: WatchKit.WKAccessibilityImageRegion

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

New Type: WatchKit.WKErrorCode

[Serializable]
public enum WKErrorCode {
	DownloadError = 5,
	InvalidArgumentError = 3,
	MediaPlayerError = 4,
	None = 0,
	RecordingFailedError = 6,
	RequestReplyNotCalledError = 2,
	UnknownError = 1,
}

New Type: WatchKit.WKErrorCodeExtensions

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

New Type: WatchKit.WKInterfaceButton

public class WKInterfaceButton : WatchKit.WKInterfaceObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected WKInterfaceButton (Foundation.NSObjectFlag t);
	protected WKInterfaceButton (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void SetBackgroundColor (UIKit.UIColor color);
	public virtual void SetBackgroundImage (Foundation.NSData imageData);
	public virtual void SetBackgroundImage (string imageName);
	public virtual void SetBackgroundImage (UIKit.UIImage image);
	public virtual void SetEnabled (bool enabled);
	public virtual void SetTitle (Foundation.NSAttributedString attributedTitle);
	public virtual void SetTitle (string title);
}

New Type: WatchKit.WKInterfaceController

public abstract class WKInterfaceController : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public WKInterfaceController ();
	protected WKInterfaceController (Foundation.NSObjectFlag t);
	protected WKInterfaceController (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual CoreGraphics.CGRect ContentFrame { get; }
	public static Foundation.NSString ErrorDomain { get; }
	// methods
	public virtual void AddMenuItem (string imageName, string title, ObjCRuntime.Selector action);
	public void AddMenuItem (string imageName, string title, System.Action action);
	public virtual void AddMenuItem (UIKit.UIImage image, string title, ObjCRuntime.Selector action);
	public void AddMenuItem (UIKit.UIImage image, string title, System.Action action);
	public virtual void AddMenuItem (WKMenuItemIcon itemIcon, string title, ObjCRuntime.Selector action);
	public void AddMenuItem (WKMenuItemIcon itemIcon, string title, System.Action action);
	public virtual void Awake (Foundation.NSObject context);
	public virtual void BecomeCurrentPage ();
	public virtual void ClearAllMenuItems ();
	public virtual void DidDeactivate ();
	public virtual void DidSelectRow (WKInterfaceTable table, nint rowIndex);
	public virtual void DismissController ();
	public virtual void DismissTextInputController ();
	public virtual Foundation.NSObject GetContextForSegue (string segueIdentifier);
	public virtual Foundation.NSObject GetContextForSegue (string segueIdentifier, WKInterfaceTable table, nint rowIndex);
	public virtual Foundation.NSObject[] GetContextsForSegue (string segueIdentifier);
	public virtual Foundation.NSObject[] GetContextsForSegue (string segueIdentifier, WKInterfaceTable table, nint rowIndex);
	public virtual void HandleAction (string identifier, UserNotifications.UNNotification notification);
	public virtual void HandleLocalNotificationAction (string identifier, UIKit.UILocalNotification localNotification);
	public virtual void HandleRemoteNotificationAction (string identifier, Foundation.NSDictionary remoteNotification);
	public virtual void HandleUserActivity (Foundation.NSDictionary userActivity);
	public virtual void InvalidateUserActivity ();
	public static bool OpenParentApplication (Foundation.NSDictionary userInfo, System.Action<Foundation.NSDictionary,Foundation.NSError> reply);
	public virtual void PopController ();
	public virtual void PopToRootController ();
	public virtual void PresentController (string name, Foundation.NSObject context);
	public void PresentController (string name, string context);
	public virtual void PresentController (string[] names, Foundation.NSObject[] contexts);
	public void PresentController (string[] names, string[] contexts);
	public virtual void PresentTextInputController (System.Func<Foundation.NSString,Foundation.NSArray> suggestionsHandler, WKTextInputMode inputMode, System.Action<Foundation.NSArray> completion);
	public virtual void PresentTextInputController (string[] suggestions, WKTextInputMode inputMode, System.Action<Foundation.NSArray> completion);
	public virtual System.Threading.Tasks.Task<Foundation.NSArray> PresentTextInputControllerAsync (System.Func<Foundation.NSString,Foundation.NSArray> suggestionsHandler, WKTextInputMode inputMode);
	public virtual System.Threading.Tasks.Task<Foundation.NSArray> PresentTextInputControllerAsync (string[] suggestions, WKTextInputMode inputMode);
	public virtual void PushController (string name, Foundation.NSObject context);
	public void PushController (string name, string context);
	public static void ReloadRootControllers (string[] names, Foundation.NSObject[] contexts);
	public virtual void SetTitle (string title);
	public virtual void UpdateUserActivity (string type, Foundation.NSDictionary userInfo, Foundation.NSUrl webpageURL);
	public virtual void WillActivate ();
}

New Type: WatchKit.WKInterfaceDate

public class WKInterfaceDate : WatchKit.WKInterfaceObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected WKInterfaceDate (Foundation.NSObjectFlag t);
	protected WKInterfaceDate (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void SetCalendar (Foundation.NSCalendar calendar);
	public virtual void SetTextColor (UIKit.UIColor color);
	public virtual void SetTimeZone (Foundation.NSTimeZone timeZone);
}

New Type: WatchKit.WKInterfaceDevice

public class WKInterfaceDevice : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected WKInterfaceDevice (Foundation.NSObjectFlag t);
	protected WKInterfaceDevice (IntPtr handle);
	// properties
	public System.Collections.Generic.IReadOnlyDictionary<System.String,System.Int64> CachedImages { get; }
	public override IntPtr ClassHandle { get; }
	public static WKInterfaceDevice CurrentDevice { get; }
	public virtual string LocalizedModel { get; }
	public virtual string Model { get; }
	public virtual string Name { get; }
	public UIKit.UIContentSizeCategory PreferredContentSizeCategory { get; }
	public string PreferredContentSizeCategoryString { get; }
	public virtual CoreGraphics.CGRect ScreenBounds { get; }
	public virtual nfloat ScreenScale { get; }
	public virtual string SystemName { get; }
	public virtual string SystemVersion { get; }
	public virtual Foundation.NSDictionary WeakCachedImages { get; }
	// methods
	public virtual bool AddCachedImage (Foundation.NSData imageData, string name);
	public virtual bool AddCachedImage (UIKit.UIImage image, string name);
	public bool CheckSystemVersion (int major, int minor);
	public virtual void RemoveAllCachedImages ();
	public virtual void RemoveCachedImage (string name);
}

New Type: WatchKit.WKInterfaceGroup

public class WKInterfaceGroup : WatchKit.WKInterfaceObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, IWKImageAnimatable {
	// constructors
	protected WKInterfaceGroup (Foundation.NSObjectFlag t);
	protected WKInterfaceGroup (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void SetBackgroundColor (UIKit.UIColor color);
	public virtual void SetBackgroundImage (Foundation.NSData imageData);
	public virtual void SetBackgroundImage (string imageName);
	public virtual void SetBackgroundImage (UIKit.UIImage image);
	public virtual void SetCornerRadius (nfloat cornerRadius);
	public virtual void StartAnimating ();
	public virtual void StartAnimating (Foundation.NSRange imageRange, double duration, nint repeatCount);
	public virtual void StopAnimating ();
}

New Type: WatchKit.WKInterfaceImage

public class WKInterfaceImage : WatchKit.WKInterfaceObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, IWKImageAnimatable {
	// constructors
	protected WKInterfaceImage (Foundation.NSObjectFlag t);
	protected WKInterfaceImage (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void SetImage (Foundation.NSData imageData);
	public virtual void SetImage (string imageName);
	public virtual void SetImage (UIKit.UIImage image);
	public virtual void SetTintColor (UIKit.UIColor color);
	public virtual void StartAnimating ();
	public virtual void StartAnimating (Foundation.NSRange imageRange, double duration, nint repeatCount);
	public virtual void StopAnimating ();
}

New Type: WatchKit.WKInterfaceLabel

public class WKInterfaceLabel : WatchKit.WKInterfaceObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected WKInterfaceLabel (Foundation.NSObjectFlag t);
	protected WKInterfaceLabel (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void SetText (Foundation.NSAttributedString attributedText);
	public virtual void SetText (string text);
	public virtual void SetTextColor (UIKit.UIColor color);
}

New Type: WatchKit.WKInterfaceMap

public class WKInterfaceMap : WatchKit.WKInterfaceObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected WKInterfaceMap (Foundation.NSObjectFlag t);
	protected WKInterfaceMap (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void AddAnnotation (CoreLocation.CLLocationCoordinate2D location, WKInterfaceMapPinColor pinColor);
	public virtual void AddAnnotation (CoreLocation.CLLocationCoordinate2D location, string name, CoreGraphics.CGPoint offset);
	public virtual void AddAnnotation (CoreLocation.CLLocationCoordinate2D location, UIKit.UIImage image, CoreGraphics.CGPoint offset);
	public virtual void RemoveAllAnnotations ();
	public virtual void SetRegion (MapKit.MKCoordinateRegion coordinateRegion);
	public virtual void SetVisible (MapKit.MKMapRect mapRect);
}

New Type: WatchKit.WKInterfaceMapPinColor

[Serializable]
public enum WKInterfaceMapPinColor {
	Green = 1,
	Purple = 2,
	Red = 0,
}

New Type: WatchKit.WKInterfaceObject

public class WKInterfaceObject : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected WKInterfaceObject (Foundation.NSObjectFlag t);
	protected WKInterfaceObject (IntPtr handle);
	// properties
	public virtual CoreGraphics.CGPoint AccessibilityActivationPoint { get; set; }
	public virtual Foundation.NSAttributedString AccessibilityAttributedHint { get; set; }
	public virtual Foundation.NSAttributedString AccessibilityAttributedLabel { get; set; }
	public virtual Foundation.NSAttributedString AccessibilityAttributedValue { get; set; }
	public virtual bool AccessibilityElementsHidden { get; set; }
	public virtual CoreGraphics.CGRect AccessibilityFrame { get; set; }
	public virtual string AccessibilityHint { get; set; }
	public virtual string AccessibilityLabel { get; set; }
	public virtual string AccessibilityLanguage { get; set; }
	public virtual UIKit.UIAccessibilityNavigationStyle AccessibilityNavigationStyle { get; set; }
	public virtual UIKit.UIBezierPath AccessibilityPath { get; set; }
	public virtual UIKit.UIAccessibilityTrait AccessibilityTraits { get; set; }
	public virtual string AccessibilityValue { get; set; }
	public virtual bool AccessibilityViewIsModal { get; set; }
	public static Foundation.NSString AnnouncementDidFinishNotification { get; }
	public static int AnnouncementNotification { get; }
	public static Foundation.NSString AssistiveTechnologyKey { get; }
	public static Foundation.NSString AssistiveTouchStatusDidChangeNotification { get; }
	public static Foundation.NSString BoldTextStatusDidChangeNotification { get; }
	public override IntPtr ClassHandle { get; }
	public static Foundation.NSString ClosedCaptioningStatusDidChangeNotification { get; }
	public static Foundation.NSString DarkerSystemColorsStatusDidChangeNotification { get; }
	public static Foundation.NSString ElementFocusedNotification { get; }
	public static Foundation.NSString FocusedElementKey { get; }
	public static Foundation.NSString GrayscaleStatusDidChangeNotification { get; }
	public static Foundation.NSString GuidedAccessStatusDidChangeNotification { get; }
	public static Foundation.NSString HearingDevicePairedEarDidChangeNotification { get; }
	public virtual string InterfaceProperty { get; }
	public static Foundation.NSString InvertColorsStatusDidChangeNotification { get; }
	public virtual bool IsAccessibilityElement { get; set; }
	public static int LayoutChangedNotification { get; }
	public static Foundation.NSString MonoAudioStatusDidChangeNotification { get; }
	public static Foundation.NSString NotificationSwitchControlIdentifier { get; }
	public static Foundation.NSString NotificationVoiceOverIdentifier { get; }
	public static int PageScrolledNotification { get; }
	public static int PauseAssistiveTechnologyNotification { get; }
	public static Foundation.NSString ReduceMotionStatusDidChangeNotification { get; }
	public static Foundation.NSString ReduceTransparencyStatusDidChangeNotification { get; }
	public static int ResumeAssistiveTechnologyNotification { get; }
	public static int ScreenChangedNotification { get; }
	public static Foundation.NSString ShakeToUndoDidChangeNotification { get; }
	public virtual bool ShouldGroupAccessibilityChildren { get; set; }
	public static Foundation.NSString SpeakScreenStatusDidChangeNotification { get; }
	public static Foundation.NSString SpeakSelectionStatusDidChangeNotification { get; }
	public static Foundation.NSString SpeechAttributeIpaNotation { get; }
	public static Foundation.NSString SpeechAttributeLanguage { get; }
	public static Foundation.NSString SpeechAttributePitch { get; }
	public static Foundation.NSString SpeechAttributePunctuation { get; }
	public static Foundation.NSString SpeechAttributeQueueAnnouncement { get; }
	public static Foundation.NSString SwitchControlStatusDidChangeNotification { get; }
	public static Foundation.NSString TextAttributeCustom { get; }
	public static Foundation.NSString TextAttributeHeadingLevel { get; }
	public static long TraitAdjustable { get; }
	public static long TraitAllowsDirectInteraction { get; }
	public static long TraitButton { get; }
	public static long TraitCausesPageTurn { get; }
	public static long TraitHeader { get; }
	public static long TraitImage { get; }
	public static long TraitKeyboardKey { get; }
	public static long TraitLink { get; }
	public static long TraitNone { get; }
	public static long TraitNotEnabled { get; }
	public static long TraitPlaysSound { get; }
	public static long TraitSearchField { get; }
	public static long TraitSelected { get; }
	public static long TraitStartsMediaSession { get; }
	public static long TraitStaticText { get; }
	public static long TraitSummaryElement { get; }
	public static long TraitTabBar { get; }
	public static long TraitUpdatesFrequently { get; }
	public static Foundation.NSString UnfocusedElementKey { get; }
	public static Foundation.NSString VoiceOverStatusChanged { get; }
	public static Foundation.NSString VoiceOverStatusDidChangeNotification { get; }
	// methods
	public virtual bool AccessibilityActivate ();
	public virtual void SetAlpha (nfloat alpha);
	public virtual void SetHeight (nfloat height);
	public virtual void SetHidden (bool hidden);
	public virtual void SetWidth (nfloat width);

	// inner types
	public static class Notifications {
		// methods
		public static Foundation.NSObject ObserveAnnouncementDidFinish (System.EventHandler<UIKit.UIAccessibilityAnnouncementFinishedEventArgs> handler);
		public static Foundation.NSObject ObserveAnnouncementDidFinish (Foundation.NSObject objectToObserve, System.EventHandler<UIKit.UIAccessibilityAnnouncementFinishedEventArgs> handler);
		public static Foundation.NSObject ObserveAssistiveTechnologyKey (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveAssistiveTechnologyKey (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveAssistiveTouchStatusDidChange (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveAssistiveTouchStatusDidChange (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveBoldTextStatusDidChange (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveBoldTextStatusDidChange (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveClosedCaptioningStatusDidChange (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveClosedCaptioningStatusDidChange (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveDarkerSystemColorsStatusDidChange (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveDarkerSystemColorsStatusDidChange (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveElementFocused (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveElementFocused (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveFocusedElementKey (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveFocusedElementKey (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveGrayscaleStatusDidChange (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveGrayscaleStatusDidChange (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveGuidedAccessStatusDidChange (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveGuidedAccessStatusDidChange (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveHearingDevicePairedEarDidChange (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveHearingDevicePairedEarDidChange (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveInvertColorsStatusDidChange (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveInvertColorsStatusDidChange (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveMonoAudioStatusDidChange (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveMonoAudioStatusDidChange (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveReduceMotionStatusDidChange (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveReduceMotionStatusDidChange (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveReduceTransparencyStatusDidChange (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveReduceTransparencyStatusDidChange (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveShakeToUndoDidChange (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveShakeToUndoDidChange (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveSpeakScreenStatusDidChange (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveSpeakScreenStatusDidChange (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveSpeakSelectionStatusDidChange (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveSpeakSelectionStatusDidChange (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveSwitchControlStatusDidChange (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveSwitchControlStatusDidChange (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveUnfocusedElementKey (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveUnfocusedElementKey (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveVoiceOverStatusDidChange (System.EventHandler<Foundation.NSNotificationEventArgs> handler);
		public static Foundation.NSObject ObserveVoiceOverStatusDidChange (Foundation.NSObject objectToObserve, System.EventHandler<Foundation.NSNotificationEventArgs> handler);
	}
}

New Type: WatchKit.WKInterfaceSeparator

public class WKInterfaceSeparator : WatchKit.WKInterfaceObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected WKInterfaceSeparator (Foundation.NSObjectFlag t);
	protected WKInterfaceSeparator (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void SetColor (UIKit.UIColor color);
}

New Type: WatchKit.WKInterfaceSlider

public class WKInterfaceSlider : WatchKit.WKInterfaceObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected WKInterfaceSlider (Foundation.NSObjectFlag t);
	protected WKInterfaceSlider (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void SetColor (UIKit.UIColor color);
	public virtual void SetEnabled (bool enabled);
	public virtual void SetNumberOfSteps (nint numberOfSteps);
	public virtual void SetValue (float value);
}

New Type: WatchKit.WKInterfaceSwitch

public class WKInterfaceSwitch : WatchKit.WKInterfaceObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected WKInterfaceSwitch (Foundation.NSObjectFlag t);
	protected WKInterfaceSwitch (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void SetColor (UIKit.UIColor color);
	public virtual void SetEnabled (bool enabled);
	public virtual void SetOn (bool on);
	public virtual void SetTitle (Foundation.NSAttributedString attributedTitle);
	public virtual void SetTitle (string title);
}

New Type: WatchKit.WKInterfaceTable

public class WKInterfaceTable : WatchKit.WKInterfaceObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected WKInterfaceTable (Foundation.NSObjectFlag t);
	protected WKInterfaceTable (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual nint NumberOfRows { get; }
	// methods
	public virtual Foundation.NSObject GetRowController (nint index);
	public virtual void InsertRows (Foundation.NSIndexSet rowIndexes, string rowType);
	public virtual void RemoveRows (Foundation.NSIndexSet rowIndexes);
	public virtual void ScrollToRow (nint index);
	public virtual void SetNumberOfRows (nint numberOfRows, string rowType);
	public virtual void SetRowTypes (string[] rowTypes);
}

New Type: WatchKit.WKInterfaceTimer

public class WKInterfaceTimer : WatchKit.WKInterfaceObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected WKInterfaceTimer (Foundation.NSObjectFlag t);
	protected WKInterfaceTimer (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void SetDate (Foundation.NSDate date);
	public virtual void SetTextColor (UIKit.UIColor color);
	public virtual void Start ();
	public virtual void Stop ();
}

New Type: WatchKit.WKMenuItemIcon

[Serializable]
public enum WKMenuItemIcon {
	Accept = 0,
	Add = 1,
	Block = 2,
	Decline = 3,
	Info = 4,
	Maybe = 5,
	More = 6,
	Mute = 7,
	Pause = 8,
	Play = 9,
	Repeat = 10,
	Resume = 11,
	Share = 12,
	Shuffle = 13,
	Speaker = 14,
	Trash = 15,
}

New Type: WatchKit.WKPresentMediaPlayerResult

public class WKPresentMediaPlayerResult {
	// constructors
	public WKPresentMediaPlayerResult (bool didPlayToEnd, double endTime);
	// properties
	public bool DidPlayToEnd { get; set; }
	public double EndTime { get; set; }
}

New Type: WatchKit.WKTextInputMode

[Serializable]
public enum WKTextInputMode {
	AllowAnimatedEmoji = 2,
	AllowEmoji = 1,
	Plain = 0,
}

New Type: WatchKit.WKUserNotificationInterfaceController

public class WKUserNotificationInterfaceController : WatchKit.WKInterfaceController, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public WKUserNotificationInterfaceController ();
	protected WKUserNotificationInterfaceController (Foundation.NSObjectFlag t);
	protected WKUserNotificationInterfaceController (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void DidReceiveLocalNotification (UIKit.UILocalNotification localNotification, System.Action<WKUserNotificationInterfaceType> completionHandler);
	public virtual void DidReceiveNotification (UserNotifications.UNNotification notification, System.Action<WKUserNotificationInterfaceType> completionHandler);
	public virtual void DidReceiveRemoteNotification (Foundation.NSDictionary remoteNotification, System.Action<WKUserNotificationInterfaceType> completionHandler);
	public virtual void DismissController ();
}

New Type: WatchKit.WKUserNotificationInterfaceType

[Serializable]
public enum WKUserNotificationInterfaceType {
	Custom = 1,
	Default = 0,
}

New Namespace iAd

New Type: iAd.ADAdType

[Serializable]
public enum ADAdType {
	Banner = 0,
	MediumRectangle = 1,
}

New Type: iAd.ADBannerView

public class ADBannerView : UIKit.UIView, CoreAnimation.ICALayerDelegate, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAccessibilityIdentification, UIKit.IUIAppearance, UIKit.IUIAppearanceContainer, UIKit.IUICoordinateSpace, UIKit.IUIDynamicItem, UIKit.IUIFocusEnvironment, UIKit.IUIFocusItem, UIKit.IUIFocusItemContainer, UIKit.IUILargeContentViewerItem, UIKit.IUIPasteConfigurationSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public ADBannerView ();
	public ADBannerView (CoreGraphics.CGRect frame);
	public ADBannerView (Foundation.NSCoder coder);
	protected ADBannerView (Foundation.NSObjectFlag t);
	protected ADBannerView (IntPtr handle);
	public ADBannerView (ADAdType type);
	// properties
	public AdAction ActionShouldBegin { get; set; }
	public virtual ADAdType AdType { get; }
	public virtual string AdvertisingSection { get; set; }
	public static ADBannerView.ADBannerViewAppearance Appearance { get; }
	public virtual bool BannerLoaded { get; }
	public virtual bool BannerViewActionInProgress { get; }
	public override IntPtr ClassHandle { get; }
	public virtual string CurrentContentSizeIdentifier { get; set; }
	public IADBannerViewDelegate Delegate { get; set; }
	public virtual Foundation.NSSet RequiredContentSizeIdentifiers { get; set; }
	public static Foundation.NSString SizeIdentifier320x50 { get; }
	public static Foundation.NSString SizeIdentifier480x32 { get; }
	public static Foundation.NSString SizeIdentifierLandscape { get; }
	public static Foundation.NSString SizeIdentifierPortrait { get; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// events
	public event System.EventHandler ActionFinished;
	public event System.EventHandler AdLoaded;
	public event System.EventHandler<AdErrorEventArgs> FailedToReceiveAd;
	public event System.EventHandler WillLoad;
	// methods
	public static ADBannerView.ADBannerViewAppearance AppearanceWhenContainedIn (System.Type[] containers);
	public virtual void CancelBannerViewAction ();
	protected override void Dispose (bool disposing);
	public static ADBannerView.ADBannerViewAppearance GetAppearance<T> ();
	public static ADBannerView.ADBannerViewAppearance GetAppearance<T> (UIKit.UITraitCollection traits);
	public static ADBannerView.ADBannerViewAppearance GetAppearance (UIKit.UITraitCollection traits);
	public static ADBannerView.ADBannerViewAppearance GetAppearance<T> (UIKit.UITraitCollection traits, System.Type[] containers);
	public static ADBannerView.ADBannerViewAppearance GetAppearance (UIKit.UITraitCollection traits, System.Type[] containers);
	public static CoreGraphics.CGSize GetClampedBannerSize (CoreGraphics.CGSize size);
	public static CoreGraphics.CGSize SizeFromContentSizeIdentifier (string sizeIdentifier);

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

New Type: iAd.ADBannerViewDelegate

public class ADBannerViewDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, IADBannerViewDelegate {
	// constructors
	public ADBannerViewDelegate ();
	protected ADBannerViewDelegate (Foundation.NSObjectFlag t);
	protected ADBannerViewDelegate (IntPtr handle);
	// methods
	public virtual void ActionFinished (ADBannerView banner);
	public virtual bool ActionShouldBegin (ADBannerView banner, bool willLeaveApplication);
	public virtual void AdLoaded (ADBannerView banner);
	public virtual void FailedToReceiveAd (ADBannerView banner, Foundation.NSError error);
	public virtual void WillLoad (ADBannerView bannerView);
}

New Type: iAd.ADBannerViewDelegate_Extensions

public static class ADBannerViewDelegate_Extensions {
	// methods
	public static void ActionFinished (this IADBannerViewDelegate This, ADBannerView banner);
	public static bool ActionShouldBegin (this IADBannerViewDelegate This, ADBannerView banner, bool willLeaveApplication);
	public static void AdLoaded (this IADBannerViewDelegate This, ADBannerView banner);
	public static void FailedToReceiveAd (this IADBannerViewDelegate This, ADBannerView banner, Foundation.NSError error);
	public static void WillLoad (this IADBannerViewDelegate This, ADBannerView bannerView);
}

New Type: iAd.ADClient

public class ADClient : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ADClient (Foundation.NSObjectFlag t);
	protected ADClient (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static Foundation.NSString ErrorDomain { get; }
	public static ADClient SharedClient { get; }
	// methods
	public virtual void AddClientToSegments (string[] segmentIdentifiers, bool replaceExisting);
	public virtual void DetermineAppInstallationAttribution (AttributedToiAdCompletionHandler completionHandler);
	public virtual void LookupAdConversionDetails (ADConversionDetails onCompleted);
	public virtual System.Threading.Tasks.Task<ADClientConversionDetailsResult> LookupAdConversionDetailsAsync ();
	public virtual void RequestAttributionDetails (System.Action<Foundation.NSDictionary,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<Foundation.NSDictionary> RequestAttributionDetailsAsync ();
}

New Type: iAd.ADClientConversionDetailsResult

public class ADClientConversionDetailsResult {
	// constructors
	public ADClientConversionDetailsResult (Foundation.NSDate appPurchaseDate, Foundation.NSDate iAdImpressionDate);
	// properties
	public Foundation.NSDate AppPurchaseDate { get; set; }
	public Foundation.NSDate IAdImpressionDate { get; set; }
}

New Type: iAd.ADClientError

[Serializable]
public enum ADClientError {
	CorruptResponse = 3,
	LimitAdTracking = 1,
	MissingData = 2,
	RequestClientError = 4,
	RequestNetworkError = 6,
	RequestServerError = 5,
	TrackingRestrictedOrDenied = 1,
	Unknown = 0,
	UnsupportedPlatform = 7,
}

New Type: iAd.ADClientErrorExtensions

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

New Type: iAd.ADConversionDetails

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

New Type: iAd.ADError

[Serializable]
public enum ADError {
	AdAssetLoadPending = 10,
	AdResponseValidateFailure = 9,
	AdUnloaded = 7,
	ApplicationInactive = 6,
	AssetLoadFailure = 8,
	BannerVisibleWithoutContent = 5,
	ConfigurationError = 4,
	InventoryUnavailable = 3,
	LoadingThrottled = 2,
	ServerFailure = 1,
	Unknown = 0,
}

New Type: iAd.ADErrorEventArgs

public class ADErrorEventArgs : System.EventArgs {
	// constructors
	public ADErrorEventArgs (Foundation.NSError error);
	// properties
	public Foundation.NSError Error { get; set; }
}

New Type: iAd.ADErrorExtensions

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

New Type: iAd.ADInterstitialAd

public class ADInterstitialAd : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ADInterstitialAd ();
	protected ADInterstitialAd (Foundation.NSObjectFlag t);
	protected ADInterstitialAd (IntPtr handle);
	// properties
	public virtual bool ActionInProgress { get; }
	public ADPredicate ActionShouldBegin { get; set; }
	public override IntPtr ClassHandle { get; }
	public IADInterstitialAdDelegate Delegate { get; set; }
	public virtual bool Loaded { get; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// events
	public event System.EventHandler ActionFinished;
	public event System.EventHandler AdLoaded;
	public event System.EventHandler AdUnloaded;
	public event System.EventHandler<ADErrorEventArgs> FailedToReceiveAd;
	public event System.EventHandler WillLoad;
	// methods
	public virtual void CancelAction ();
	protected override void Dispose (bool disposing);
	public virtual void PresentFromViewController (UIKit.UIViewController viewController);
	public virtual bool PresentInView (UIKit.UIView containerView);
}

New Type: iAd.ADInterstitialAdDelegate

public abstract class ADInterstitialAdDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, IADInterstitialAdDelegate {
	// constructors
	protected ADInterstitialAdDelegate ();
	protected ADInterstitialAdDelegate (Foundation.NSObjectFlag t);
	protected ADInterstitialAdDelegate (IntPtr handle);
	// methods
	public virtual void ActionFinished (ADInterstitialAd interstitialAd);
	public virtual bool ActionShouldBegin (ADInterstitialAd interstitialAd, bool willLeaveApplication);
	public virtual void AdLoaded (ADInterstitialAd interstitialAd);
	public virtual void AdUnloaded (ADInterstitialAd interstitialAd);
	public virtual void FailedToReceiveAd (ADInterstitialAd interstitialAd, Foundation.NSError error);
	public virtual void WillLoad (ADInterstitialAd interstitialAd);
}

New Type: iAd.ADInterstitialAdDelegate_Extensions

public static class ADInterstitialAdDelegate_Extensions {
	// methods
	public static void WillLoad (this IADInterstitialAdDelegate This, ADInterstitialAd interstitialAd);
}

New Type: iAd.ADInterstitialAdPresentationViewController

public class ADInterstitialAdPresentationViewController : UIKit.UIViewController, Foundation.INSCoding, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.Collections.IEnumerable, System.IDisposable, System.IEquatable<Foundation.NSObject>, UIKit.IUIAppearanceContainer, UIKit.IUIContentContainer, UIKit.IUIFocusEnvironment, UIKit.IUIPasteConfigurationSupporting, UIKit.IUITraitEnvironment, UIKit.IUIUserActivityRestoring {
	// constructors
	public ADInterstitialAdPresentationViewController (Foundation.NSCoder coder);
	protected ADInterstitialAdPresentationViewController (Foundation.NSObjectFlag t);
	protected ADInterstitialAdPresentationViewController (IntPtr handle);
	public ADInterstitialAdPresentationViewController (ADInterstitialAd interstitialAd);
	public ADInterstitialAdPresentationViewController (string nibName, Foundation.NSBundle bundle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual bool ShouldTestVisibility (CoreGraphics.CGPoint point);
}

New Type: iAd.ADInterstitialPresentationPolicy

[Serializable]
public enum ADInterstitialPresentationPolicy {
	Automatic = 1,
	Manual = 2,
	None = 0,
}

New Type: iAd.ADPredicate

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

New Type: iAd.AdAction

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

New Type: iAd.AdErrorEventArgs

public class AdErrorEventArgs : System.EventArgs {
	// constructors
	public AdErrorEventArgs (Foundation.NSError error);
	// properties
	public Foundation.NSError Error { get; set; }
}

New Type: iAd.AttributedToiAdCompletionHandler

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

New Type: iAd.IADBannerViewDelegate

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

New Type: iAd.IADInterstitialAdDelegate

public interface IADInterstitialAdDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void ActionFinished (ADInterstitialAd interstitialAd);
	public virtual bool ActionShouldBegin (ADInterstitialAd interstitialAd, bool willLeaveApplication);
	public virtual void AdLoaded (ADInterstitialAd interstitialAd);
	public virtual void AdUnloaded (ADInterstitialAd interstitialAd);
	public virtual void FailedToReceiveAd (ADInterstitialAd interstitialAd, Foundation.NSError error);
}

New Type: iAd.IAdAdditions

public static class IAdAdditions {
	// methods
	public static bool DisplayingBannerAd (this UIKit.UIViewController This);
	public static bool GetCanDisplayBannerAds (this UIKit.UIViewController This);
	public static ADInterstitialPresentationPolicy GetInterstitialPresentationPolicy (this UIKit.UIViewController This);
	public static UIKit.UIView GetOriginalContentView (this UIKit.UIViewController This);
	public static bool PresentingFullScreenAd (this UIKit.UIViewController This);
	public static bool RequestInterstitialAdPresentation (this UIKit.UIViewController This);
	public static void SetCanDisplayBannerAds (this UIKit.UIViewController This, bool value);
	public static void SetInterstitialPresentationPolicy (this UIKit.UIViewController This, ADInterstitialPresentationPolicy policy);
	public static bool ShouldPresentInterstitialAd (this UIKit.UIViewController This);
}

New Type: iAd.IAdPreroll

public static class IAdPreroll {
	// methods
	public static void CancelPreroll (this MediaPlayer.MPMoviePlayerController This);
	public static void PlayPrerollAd (this MediaPlayer.MPMoviePlayerController This, System.Action<Foundation.NSError> completionHandler);
}

New Type: iAd.iAdPreroll_AVPlayerViewController

public static class iAdPreroll_AVPlayerViewController {
	// methods
	public static void CancelPreroll (this AVKit.AVPlayerViewController This);
	public static void PlayPrerollAd (this AVKit.AVPlayerViewController This, System.Action<Foundation.NSError> completionHandler);
}

Namespace AVFoundation

Type Changed: AVFoundation.AVAsset

Added method:

[Obsolete ("Use 'GetChapterMetadataGroups'.")]
public virtual AVMetadataItem[] ChapterMetadataGroups (Foundation.NSLocale forLocale, AVMetadataItem[] commonKeys);

Type Changed: AVFoundation.AVAssetDownloadTask

Removed property:

public virtual Foundation.NSUrl DestinationUrl { get; }

Type Changed: AVFoundation.AVAssetTrack

Added method:

[Obsolete ("Use 'GetAssociatedTracks'.")]
public virtual Foundation.NSString GetAssociatedTracksOfType (Foundation.NSString avAssetTrackTrackAssociationType);

Type Changed: AVFoundation.AVAudioSessionPortDescription

Added property:

[Obsolete ("Use 'DataSourceDescriptions' instead.")]
public virtual AVAudioSessionChannelDescription[] DataSources { get; }

Type Changed: AVFoundation.AVCaptureAudioDataOutputSampleBufferDelegate

Added method:

[Obsolete ("This member only exists for 'AVCaptureVideoDataOutputSampleBufferDelegate'.")]
public virtual void DidDropSampleBuffer (AVCaptureOutput captureOutput, CoreMedia.CMSampleBuffer sampleBuffer, AVCaptureConnection connection);

Type Changed: AVFoundation.AVCaptureAudioDataOutputSampleBufferDelegate_Extensions

Added method:

[Obsolete ("This member only exists for 'AVCaptureVideoDataOutputSampleBufferDelegate'.")]
public static void DidDropSampleBuffer (IAVCaptureAudioDataOutputSampleBufferDelegate This, AVCaptureOutput captureOutput, CoreMedia.CMSampleBuffer sampleBuffer, AVCaptureConnection connection);

Type Changed: AVFoundation.AVCaptureAutoExposureBracketedStillImageSettings

Obsoleted constructors:

 [Obsolete ("Use the static 'Create' method to create a working instance of this type.")]
 public AVCaptureAutoExposureBracketedStillImageSettings ();

Type Changed: AVFoundation.AVCaptureManualExposureBracketedStillImageSettings

Obsoleted constructors:

 [Obsolete ("Use the static 'Create' method to create a working instance of this type.")]
 public AVCaptureManualExposureBracketedStillImageSettings ();

Type Changed: AVFoundation.AVMediaType

Removed property:

public static Foundation.NSString TimedMetadata { get; }

Type Changed: AVFoundation.AVMutableCompositionTrack

Added method:

[Obsolete ("Use 'InsertTimeRanges' overload accepting an 'NSValue' array.")]
public virtual bool InsertTimeRanges (Foundation.NSValue cmTimeRanges, AVAssetTrack[] tracks, CoreMedia.CMTime startTime, out Foundation.NSError error);

Type Changed: AVFoundation.AVPlayerInterstitialEvent

Obsoleted properties:

 [Obsolete ("Use 'TemplateItems' instead.")]
 public virtual AVPlayerItem[] InterstitialTemplateItems { get; }

Removed methods:

public static AVPlayerInterstitialEvent GetInterstitialEvent (AVPlayerItem primaryItem, CoreMedia.CMTime time, AVPlayerItem[] templateItems, AVPlayerInterstitialEventRestrictions restrictions, CoreMedia.CMTime resumptionOffset);
public static AVPlayerInterstitialEvent GetInterstitialEvent (AVPlayerItem primaryItem, Foundation.NSDate date, AVPlayerItem[] templateItems, AVPlayerInterstitialEventRestrictions restrictions, CoreMedia.CMTime resumptionOffset);
public static AVPlayerInterstitialEvent GetPlayerInterstitialEvent (AVPlayerItem primaryItem, CoreMedia.CMTime time, AVPlayerItem[] interstitialTemplateItems, AVPlayerInterstitialEventRestrictions restrictions, CoreMedia.CMTime resumptionOffset);
public static AVPlayerInterstitialEvent GetPlayerInterstitialEvent (AVPlayerItem primaryItem, Foundation.NSDate date, AVPlayerItem[] interstitialTemplateItems, AVPlayerInterstitialEventRestrictions restrictions, CoreMedia.CMTime resumptionOffset);

Type Changed: AVFoundation.AVPlayerInterstitialEventController

Modified base type:

-AVFoundation.AVPlayerInterstitialEventObserver
+AVFoundation.AVPlayerInterstitialEventMonitor

Obsoleted properties:

 [Obsolete ("Use 'Events' instead.")]
 public virtual AVPlayerInterstitialEvent[] InterstitialEvents { get; set; }

Obsoleted methods:

 [Obsolete ("Use 'GetInterstitialEventController' instead.")]
 public static AVPlayerInterstitialEventController GetPlayerInterstitialEventController (AVPlayer primaryPlayer);

Type Changed: AVFoundation.AVPlayerInterstitialEventObserver

Removed methods:

protected override void Dispose (bool disposing);
public static AVPlayerInterstitialEventObserver GetInterstitialEventObserver (AVPlayer primaryPlayer);
public static AVPlayerInterstitialEventObserver GetPlayerInterstitialEventObserver (AVPlayer primaryPlayer);

Type Changed: AVFoundation.AVTextStyleRule

Added constructor:

[Obsolete ("iOS9 does not allow creating an empty instance")]
public AVTextStyleRule ();

New Type: AVFoundation.AVPlayerInterstitialEventMonitor

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

Namespace AVKit

Type Changed: AVKit.AVPictureInPictureController

Removed property:

public virtual bool CanStartPictureInPictureAutomaticallyFromInline { get; set; }

Type Changed: AVKit.AVPlayerViewController

Removed property:

public virtual bool CanStartPictureInPictureAutomaticallyFromInline { get; set; }

Removed method:

public static void PrepareForPrerollAds ();

New Type: AVKit.AVPlayerViewControlsStyle

[Serializable]
public enum AVPlayerViewControlsStyle {
	Default = 1,
	Floating = 2,
	Inline = 1,
	Minimal = 3,
	None = 0,
}

Namespace Accessibility

New Type: Accessibility.AXCategoricalDataAxisDescriptor

public class AXCategoricalDataAxisDescriptor : Foundation.NSObject, IAXDataAxisDescriptor, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected AXCategoricalDataAxisDescriptor (Foundation.NSObjectFlag t);
	protected AXCategoricalDataAxisDescriptor (IntPtr handle);
	public AXCategoricalDataAxisDescriptor (Foundation.NSAttributedString attributedTitle, string[] categoryOrder);
	public AXCategoricalDataAxisDescriptor (string title, string[] categoryOrder);
	// properties
	public virtual Foundation.NSAttributedString AttributedTitle { get; set; }
	public virtual string[] CategoryOrder { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual string Title { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: Accessibility.AXChartDescriptor

public class AXChartDescriptor : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected AXChartDescriptor (Foundation.NSObjectFlag t);
	protected AXChartDescriptor (IntPtr handle);
	public AXChartDescriptor (Foundation.NSAttributedString attributedTitle, string summary, IAXDataAxisDescriptor xAxis, AXNumericDataAxisDescriptor yAxis, AXDataSeriesDescriptor[] series);
	public AXChartDescriptor (string title, string summary, IAXDataAxisDescriptor xAxis, AXNumericDataAxisDescriptor yAxis, AXDataSeriesDescriptor[] series);
	public AXChartDescriptor (Foundation.NSAttributedString attributedTitle, string summary, IAXDataAxisDescriptor xAxis, AXNumericDataAxisDescriptor yAxis, IAXDataAxisDescriptor[] additionalAxes, AXDataSeriesDescriptor[] series);
	public AXChartDescriptor (string title, string summary, IAXDataAxisDescriptor xAxis, AXNumericDataAxisDescriptor yAxis, IAXDataAxisDescriptor[] additionalAxes, AXDataSeriesDescriptor[] series);
	// properties
	public virtual IAXDataAxisDescriptor[] AdditionalAxes { get; set; }
	public virtual Foundation.NSAttributedString AttributedTitle { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual AXChartDescriptorContentDirection ContentDirection { get; set; }
	public virtual CoreGraphics.CGRect ContentFrame { get; set; }
	public virtual AXDataSeriesDescriptor[] Series { get; set; }
	public virtual string Summary { get; set; }
	public virtual string Title { get; set; }
	public virtual IAXDataAxisDescriptor XAxis { get; set; }
	public virtual AXNumericDataAxisDescriptor YAxis { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: Accessibility.AXChartDescriptorContentDirection

[Serializable]
public enum AXChartDescriptorContentDirection {
	BottomToTop = 3,
	LeftToRight = 0,
	RadialClockwise = 4,
	RadialCounterClockwise = 5,
	RightToLeft = 1,
	TopToBottom = 2,
}

New Type: Accessibility.AXDataPoint

public class AXDataPoint : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected AXDataPoint (Foundation.NSObjectFlag t);
	protected AXDataPoint (IntPtr handle);
	public AXDataPoint (AXDataPointValue xValue, AXDataPointValue yValue);
	public AXDataPoint (AXDataPointValue xValue, AXDataPointValue yValue, AXDataPointValue[] additionalValues);
	public AXDataPoint (AXDataPointValue xValue, AXDataPointValue yValue, AXDataPointValue[] additionalValues, string label);
	// properties
	public virtual AXDataPointValue[] AdditionalValues { get; set; }
	public virtual Foundation.NSAttributedString AttributedLabel { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual string Label { get; set; }
	public virtual AXDataPointValue XValue { get; set; }
	public virtual AXDataPointValue YValue { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: Accessibility.AXDataPointValue

public class AXDataPointValue : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected AXDataPointValue (Foundation.NSObjectFlag t);
	protected AXDataPointValue (IntPtr handle);
	// properties
	public virtual string Category { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual double Number { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static AXDataPointValue CreateValueWithCategory (string category);
	public static AXDataPointValue CreateValueWithNumber (double number);
}

New Type: Accessibility.AXDataSeriesDescriptor

public class AXDataSeriesDescriptor : Foundation.NSObject, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected AXDataSeriesDescriptor (Foundation.NSObjectFlag t);
	protected AXDataSeriesDescriptor (IntPtr handle);
	public AXDataSeriesDescriptor (Foundation.NSAttributedString attributedName, bool isContinuous, AXDataPoint[] dataPoints);
	public AXDataSeriesDescriptor (string name, bool isContinuous, AXDataPoint[] dataPoints);
	// properties
	public virtual Foundation.NSAttributedString AttributedName { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual AXDataPoint[] DataPoints { get; set; }
	public virtual bool IsContinuous { get; set; }
	public virtual string Name { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: Accessibility.AXHearingDeviceEar

[Serializable]
[Flags]
public enum AXHearingDeviceEar {
	Both = 6,
	Left = 2,
	None = 0,
	Right = 4,
}

New Type: Accessibility.AXHearingUtilities

public static class AXHearingUtilities {
	// properties
	public static Foundation.NSString PairedUUIDsDidChangeNotification { get; }
	public static Foundation.NSString StreamingEarDidChangeNotification { get; }
	// methods
	public static Foundation.NSUuid[] GetMFiHearingDevicePairedUuids ();
	public static AXHearingDeviceEar GetMFiHearingDeviceStreamingEar ();
	public static bool SupportsBidirectionalStreaming ();

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

New Type: Accessibility.AXLiveAudioGraph

public class AXLiveAudioGraph : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected AXLiveAudioGraph (Foundation.NSObjectFlag t);
	protected AXLiveAudioGraph (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public static void Start ();
	public static void Stop ();
	public static void Update (double value);
}

New Type: Accessibility.AXNumericDataAxisDescriptor

public class AXNumericDataAxisDescriptor : Foundation.NSObject, IAXDataAxisDescriptor, Foundation.INSCopying, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected AXNumericDataAxisDescriptor (Foundation.NSObjectFlag t);
	protected AXNumericDataAxisDescriptor (IntPtr handle);
	public AXNumericDataAxisDescriptor (Foundation.NSAttributedString attributedTitle, double lowerBound, double upperBound, Foundation.NSNumber[] gridlinePositions, System.Func<System.Double,Foundation.NSString> valueDescriptionProvider);
	public AXNumericDataAxisDescriptor (string title, double lowerBound, double upperBound, Foundation.NSNumber[] gridlinePositions, System.Func<System.Double,Foundation.NSString> valueDescriptionProvider);
	// properties
	public virtual Foundation.NSAttributedString AttributedTitle { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSNumber[] GridlinePositions { get; set; }
	public virtual double LowerBound { get; set; }
	public virtual AXNumericDataAxisDescriptorScale ScaleType { get; set; }
	public virtual string Title { get; set; }
	public virtual double UpperBound { get; set; }
	public virtual ValueDescriptionProviderHandler ValueDescriptionProvider { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: Accessibility.AXNumericDataAxisDescriptorScale

[Serializable]
public enum AXNumericDataAxisDescriptorScale {
	Linear = 0,
	Ln = 2,
	Log10 = 1,
}

New Type: Accessibility.IAXChart

public interface IAXChart : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual AXChartDescriptor AccessibilityChartDescriptor { get; set; }
}

New Type: Accessibility.IAXDataAxisDescriptor

public interface IAXDataAxisDescriptor : Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual Foundation.NSAttributedString AttributedTitle { get; set; }
	public virtual string Title { get; set; }
}

New Type: Accessibility.ValueDescriptionProviderHandler

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

Namespace Accounts

Type Changed: Accounts.ACAccount

Added property:

public static Foundation.NSString ErrorDomain { get; }

Type Changed: Accounts.ACErrorCode

Added value:

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

Namespace AddressBook

Type Changed: AddressBook.ABPropertyType

Added value:

MultiMask = 256,

Namespace AudioToolbox

Type Changed: AudioToolbox.AudioChannelLabel

Added values:

HoaN3d = 196608,
HoaSn3d = 131072,

Type Changed: AudioToolbox.AudioChannelLayoutTag

Added values:

Atmos_5_1_4 = 12779530,
Atmos_7_1_2 = 12845066,
Logic_4_0_A = 7536644,
Logic_4_0_B = 7602180,
Logic_4_0_C = 12910596,
Logic_5_0_A = 7667717,
Logic_5_0_B = 7733253,
Logic_5_0_C = 7798789,
Logic_5_0_D = 7864325,
Logic_5_1_A = 7929862,
Logic_5_1_B = 7995398,
Logic_5_1_C = 8060934,
Logic_5_1_D = 8126470,
Logic_6_0_A = 9240582,
Logic_6_0_B = 12976134,
Logic_6_0_C = 9109510,
Logic_6_1_A = 9306119,
Logic_6_1_B = 13041671,
Logic_6_1_C = 8192007,
Logic_6_1_D = 13107207,
Logic_7_1_A = 8388616,
Logic_7_1_B = 13172744,
Logic_7_1_C = 8388616,
Logic_7_1_SDDS_A = 8257544,
Logic_7_1_SDDS_B = 8323080,
Logic_7_1_SDDS_C = 8454152,
Logic_Atmos_5_1_2 = 12713992,
Logic_Atmos_5_1_4 = 12779530,
Logic_Atmos_7_1_2 = 12845066,
Logic_Atmos_7_1_4_A = 12582924,
Logic_Atmos_7_1_4_B = 13238284,
Logic_Atmos_7_1_6 = 13303822,
Logic_Mono = 6553601,
Logic_Quadraphonic = 7077892,
Logic_Stereo = 6619138,

Type Changed: AudioToolbox.AudioQueue

Added property:

[Obsolete ("Use 'AudioStreamDescription' instead.")]
public AudioStreamBasicDescription AudioStreamPacketDescription { get; }

New Type: AudioToolbox.AccessoryInfo

public class AccessoryInfo {
	// properties
	public string Description { get; }
	public int ID { get; }
}

New Type: AudioToolbox.AudioSession

public static class AudioSession {
	// properties
	public static bool AudioInputAvailable { get; }
	public static string AudioRoute { get; }
	public static bool AudioShouldDuck { get; set; }
	public static AudioSessionCategory Category { get; set; }
	public static float CurrentHardwareIOBufferDuration { get; }
	public static float CurrentHardwareInputLatency { get; }
	public static int CurrentHardwareInputNumberChannels { get; }
	public static float CurrentHardwareOutputLatency { get; }
	public static int CurrentHardwareOutputNumberChannels { get; }
	public static float CurrentHardwareOutputVolume { get; }
	public static double CurrentHardwareSampleRate { get; }
	public static bool InputGainAvailable { get; }
	public static float InputGainScalar { get; set; }
	public static AudioSessionInputRouteKind InputRoute { get; }
	public static AccessoryInfo[] InputSources { get; }
	public static AudioSessionInterruptionType InterruptionType { get; }
	public static AudioSessionMode Mode { get; set; }
	public static bool OtherAudioIsPlaying { get; }
	public static AccessoryInfo[] OutputDestinations { get; }
	public static AudioSessionOutputRouteKind[] OutputRoutes { get; }
	public static bool OverrideCategoryDefaultToSpeaker { get; set; }
	public static bool OverrideCategoryEnableBluetoothInput { get; set; }
	public static bool OverrideCategoryMixWithOthers { get; set; }
	public static float PreferredHardwareIOBufferDuration { get; set; }
	public static double PreferredHardwareSampleRate { get; set; }
	public static AudioSessionRoutingOverride RoutingOverride { set; }
	// events
	public event System.Action<bool> AudioInputBecameAvailable;
	public event System.EventHandler<AudioSessionRouteChangeEventArgs> AudioRouteChanged;
	public event System.Action<float> CurrentHardwareOutputVolumeChanged;
	public event System.Action<bool> InputGainBecameAvailable;
	public event System.Action<float> InputGainScalarChanged;
	public event System.Action<AccessoryInfo[]> InputSourcesChanged;
	public event System.EventHandler Interrupted;
	public event System.Action<AccessoryInfo[]> OutputDestinationsChanged;
	public event System.EventHandler Resumed;
	public event System.Action<bool> ServerDied;
	// methods
	public static AudioSessionErrors AddListener (AudioSessionProperty property, AudioSession.PropertyListener listener);
	public static void Initialize ();
	public static void Initialize (CoreFoundation.CFRunLoop runLoop, string runMode);
	public static void RemoveListener (AudioSessionProperty property, AudioSession.PropertyListener listener);
	public static void SetActive (bool active);
	public static AudioSessionErrors SetActive (bool active, AudioSessionActiveFlags flags);

	// inner types
	public sealed delegate PropertyListener : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
		// constructors
		public AudioSession.PropertyListener (object object, IntPtr method);
		// methods
		public virtual System.IAsyncResult BeginInvoke (AudioSessionProperty prop, int size, IntPtr data, System.AsyncCallback callback, object object);
		public virtual void EndInvoke (System.IAsyncResult result);
		public virtual void Invoke (AudioSessionProperty prop, int size, IntPtr data);
	}
}

New Type: AudioToolbox.AudioSessionException

public class AudioSessionException : System.Exception, System.Runtime.Serialization.ISerializable {
	// properties
	public AudioSessionErrors ErrorCode { get; }
}

New Type: AudioToolbox.AudioSessionPropertyEventArgs

public class AudioSessionPropertyEventArgs : System.EventArgs {
	// constructors
	public AudioSessionPropertyEventArgs (AudioSessionProperty prop, int size, IntPtr data);
	// properties
	public IntPtr Data { get; set; }
	public AudioSessionProperty Property { get; set; }
	public int Size { get; set; }
}

New Type: AudioToolbox.AudioSessionRouteChangeEventArgs

public class AudioSessionRouteChangeEventArgs : System.EventArgs {
	// constructors
	public AudioSessionRouteChangeEventArgs (IntPtr dictHandle);
	// properties
	public AudioSessionInputRouteKind CurrentInputRoute { get; }
	public AudioSessionOutputRouteKind[] CurrentOutputRoutes { get; }
	public Foundation.NSDictionary Dictionary { get; }
	public AudioSessionInputRouteKind PreviousInputRoute { get; }
	public AudioSessionOutputRouteKind[] PreviousOutputRoutes { get; }
	public AudioSessionRouteChangeReason Reason { get; }
}

New Type: AudioToolbox.InputSourceInfo

public class InputSourceInfo {
	// constructors
	public InputSourceInfo ();
	// properties
	public string Description { get; }
	public int ID { get; }
}

Namespace AudioUnit

Type Changed: AudioUnit.AudioComponent

Removed method:

public UIKit.UIImage GetIcon (float desiredPointSize);

Type Changed: AudioUnit.AudioUnit

Added methods:

[Obsolete ("This API is not available on iOS.")]
public static uint GetCurrentInputDevice ();

[Obsolete ("Use 'SetFormat' instead as it has the ability of returning a status code.")]
public void SetAudioFormat (AudioToolbox.AudioStreamBasicDescription audioFormat, AudioUnitScopeType scope, uint audioUnitElement);

New Type: AudioUnit.AudioObjectPropertyElement

[Serializable]
public enum AudioObjectPropertyElement {
	Master = 0,
}

New Type: AudioUnit.AudioObjectPropertyScope

[Serializable]
public enum AudioObjectPropertyScope {
	Global = 1735159650,
	Input = 1768845428,
	Output = 1869968496,
	PlayThrough = 1886679669,
}

New Type: AudioUnit.AudioObjectPropertySelector

[Serializable]
public enum AudioObjectPropertySelector {
	ActualSampleRate = 1634955892,
	BoxList = 1651472419,
	ClockDevice = 1634755428,
	ClockDeviceList = 1668049699,
	DefaultInputDevice = 1682533920,
	DefaultOutputDevice = 1682929012,
	DefaultSystemOutputDevice = 1934587252,
	Devices = 1684370979,
	HogModeIsAllowed = 1752131442,
	IOThreadOSWorkgroup = 1869838183,
	IsInitingOrExiting = 1768845172,
	MixStereoToMono = 1937010031,
	PlugInList = 1886152483,
	PowerHint = 1886353256,
	ProcessIsAudible = 1886221684,
	ProcessIsMaster = 1835103092,
	PropertyDevices = 1684370979,
	ServiceRestarted = 1936880500,
	SleepingIsAllowed = 1936483696,
	TranslateBundleIDToPlugIn = 1651074160,
	TranslateBundleIDToTransportManager = 1953325673,
	TranslateUIDToBox = 1969841250,
	TranslateUIDToDevice = 1969841252,
	TranslateUidToClockDevice = 1969841251,
	TransportManagerList = 1953326883,
	UnloadingIsAllowed = 1970170980,
	UserIDChanged = 1702193508,
	UserSessionIsActiveOrHeadless = 1970496882,
}

New Type: AudioUnit.AudioUnitPropertyIDType

[Serializable]
public enum AudioUnitPropertyIDType {
	AttenuationCurve = 3013,
	AudioChannelLayout = 19,
	BankName = 1007,
	BiquadCoefficients = 2203,
	BypassEffect = 21,
	BypassVoiceProcessing = 2100,
	CPULoad = 6,
	ChannelMap = 2002,
	ClassInfo = 0,
	ClassInfoFromDocument = 50,
	ContextName = 25,
	CurrentDevice = 2000,
	CurrentPlayTime = 3302,
	DeferredRendererExtraLatency = 3321,
	DeferredRendererPullSize = 3320,
	DeferredRendererWaitFrames = 3322,
	DependentParameters = 45,
	DistanceParams = 3010,
	ElementCount = 11,
	ElementName = 30,
	EnableIO = 2003,
	FactoryPresets = 24,
	FrequencyResponse = 52,
	HasIO = 2006,
	HostCallbacks = 27,
	HostReceivesRemoteControlEvents = 2011,
	HostTransportState = 2013,
	InPlaceProcessing = 29,
	InputAnchorTimeStamp = 3016,
	InputSampleInOutput = 49,
	InstrumentCount = 1000,
	InstrumentName = 1001,
	InstrumentNumber = 1004,
	IsInterAppConnected = 101,
	IsRunning = 2001,
	LastRenderError = 22,
	Latency = 12,
	LoadAudioFiles = 4101,
	LoadInstrument = 4102,
	LoadedOutOfProcess = 62,
	MIDICallbacks = 2010,
	MakeConnection = 1,
	MatrixDimensions = 3009,
	MatrixLevels = 3006,
	MaxNumberOfBands = 2201,
	MaximumFramesPerSlice = 14,
	MeterClipping = 3011,
	MeteringMode = 3007,
	MidiSynthEnablePreload = 4119,
	MuteOutput = 2104,
	Nickname = 54,
	NodeComponentDescription = 2014,
	NumberOfBands = 2200,
	OfflineRender = 37,
	ParameterClumpName = 35,
	ParameterHistoryInfo = 53,
	ParameterIDName = 34,
	ParameterInfo = 4,
	ParameterList = 3,
	ParameterStringFromValue = 33,
	ParameterValueFromString = 38,
	ParameterValueStrings = 16,
	ParametersForOverview = 57,
	PeerURL = 102,
	PresentPreset = 36,
	PresentationLatency = 40,
	RemoteControlEventListener = 100,
	RemoteControlToHost = 2012,
	RenderQuality = 26,
	RenderingFlags = 3003,
	RequestViewController = 56,
	ReverbRoomType = 10,
	SampleRate = 2,
	SampleRateConverterComplexity = 3014,
	ScheduleAudioSlice = 3300,
	ScheduleStartTimeStamp = 3301,
	ScheduledFileBufferSizeFrames = 3313,
	ScheduledFileIDs = 3310,
	ScheduledFileNumberBuffers = 3314,
	ScheduledFilePrime = 3312,
	ScheduledFileRegion = 3311,
	SetInputCallback = 2005,
	SetRenderCallback = 23,
	ShouldAllocateBuffer = 51,
	SoundBankURL = 1100,
	SpatializationAlgorithm = 3000,
	StartTime = 2004,
	StartTimestampsAtZero = 2007,
	StreamFormat = 8,
	SupportedChannelLayoutTags = 32,
	SupportedNumChannels = 13,
	SupportsMpe = 58,
	TailTime = 20,
	UsesInternalReverb = 1005,
	VoiceProcessingEnableAGC = 2101,
}

Namespace AuthenticationServices

Type Changed: AuthenticationServices.ASAuthorizationError

Added value:

NotInteractive = 1005,

Type Changed: AuthenticationServices.ASAuthorizationProviderExtensionAuthorizationRequest

Added method:

public virtual void Complete (ASAuthorizationProviderExtensionAuthorizationResult authorizationResult);

Type Changed: AuthenticationServices.ASAuthorizationSingleSignOnCredential

Added property:

public virtual Security.SecKey[] PrivateKeys { get; }

Type Changed: AuthenticationServices.ASAuthorizationSingleSignOnRequest

Added property:

public virtual bool UserInterfaceEnabled { get; set; }

New Type: AuthenticationServices.ASAuthorizationPlatformPublicKeyCredentialAssertion

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

New Type: AuthenticationServices.ASAuthorizationPlatformPublicKeyCredentialAssertionRequest

public class ASAuthorizationPlatformPublicKeyCredentialAssertionRequest : AuthenticationServices.ASAuthorizationRequest, IASAuthorizationPublicKeyCredentialAssertionRequest, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ASAuthorizationPlatformPublicKeyCredentialAssertionRequest (Foundation.NSCoder coder);
	protected ASAuthorizationPlatformPublicKeyCredentialAssertionRequest (Foundation.NSObjectFlag t);
	protected ASAuthorizationPlatformPublicKeyCredentialAssertionRequest (IntPtr handle);
	// properties
	public virtual IASAuthorizationPublicKeyCredentialDescriptor[] AllowedCredentials { get; set; }
	public virtual Foundation.NSData Challenge { get; set; }
	public override IntPtr ClassHandle { get; }
	public ASAuthorizationPlatformPublicKeyCredentialDescriptor[] PlatformAllowedCredentials { get; set; }
	public virtual string RelyingPartyIdentifier { get; set; }
	public virtual Foundation.NSString UserVerificationPreference { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: AuthenticationServices.ASAuthorizationPlatformPublicKeyCredentialDescriptor

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

New Type: AuthenticationServices.ASAuthorizationPlatformPublicKeyCredentialProvider

public class ASAuthorizationPlatformPublicKeyCredentialProvider : Foundation.NSObject, IASAuthorizationProvider, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ASAuthorizationPlatformPublicKeyCredentialProvider (Foundation.NSObjectFlag t);
	protected ASAuthorizationPlatformPublicKeyCredentialProvider (IntPtr handle);
	public ASAuthorizationPlatformPublicKeyCredentialProvider (string relyingPartyIdentifier);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string RelyingPartyIdentifier { get; }
	// methods
	public virtual ASAuthorizationPlatformPublicKeyCredentialAssertionRequest CreateCredentialAssertionRequest (Foundation.NSData challenge);
	public virtual ASAuthorizationPlatformPublicKeyCredentialRegistrationRequest CreateCredentialRegistrationRequest (Foundation.NSData challenge, string name, Foundation.NSData userId);
}

New Type: AuthenticationServices.ASAuthorizationPlatformPublicKeyCredentialRegistration

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

New Type: AuthenticationServices.ASAuthorizationPlatformPublicKeyCredentialRegistrationRequest

public class ASAuthorizationPlatformPublicKeyCredentialRegistrationRequest : AuthenticationServices.ASAuthorizationRequest, IASAuthorizationPublicKeyCredentialRegistrationRequest, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ASAuthorizationPlatformPublicKeyCredentialRegistrationRequest (Foundation.NSCoder coder);
	protected ASAuthorizationPlatformPublicKeyCredentialRegistrationRequest (Foundation.NSObjectFlag t);
	protected ASAuthorizationPlatformPublicKeyCredentialRegistrationRequest (IntPtr handle);
	// properties
	public virtual Foundation.NSString AttestationPreference { get; set; }
	public virtual Foundation.NSData Challenge { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual string DisplayName { get; set; }
	public virtual string Name { get; set; }
	public virtual string RelyingPartyIdentifier { get; }
	public virtual Foundation.NSData UserId { get; set; }
	public virtual Foundation.NSString UserVerificationPreference { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: AuthenticationServices.ASAuthorizationProviderExtensionAuthorizationResult

public class ASAuthorizationProviderExtensionAuthorizationResult : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ASAuthorizationProviderExtensionAuthorizationResult (Foundation.NSDictionary<Foundation.NSString,Foundation.NSString> httpAuthorizationHeaders);
	protected ASAuthorizationProviderExtensionAuthorizationResult (Foundation.NSObjectFlag t);
	protected ASAuthorizationProviderExtensionAuthorizationResult (IntPtr handle);
	public ASAuthorizationProviderExtensionAuthorizationResult (Foundation.NSHttpUrlResponse httpResponse, Foundation.NSData httpBody);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSString> HttpAuthorizationHeaders { get; set; }
	public virtual Foundation.NSData HttpBody { get; set; }
	public virtual Foundation.NSHttpUrlResponse HttpResponse { get; set; }
	public virtual Security.SecKey[] PrivateKeys { get; set; }
	// methods
	protected override void Dispose (bool disposing);
}

New Type: AuthenticationServices.ASAuthorizationPublicKeyCredentialAttestationKind

public static class ASAuthorizationPublicKeyCredentialAttestationKind {
	// properties
	public static Foundation.NSString Direct { get; }
	public static Foundation.NSString Enterprise { get; }
	public static Foundation.NSString Indirect { get; }
	public static Foundation.NSString None { get; }
}

New Type: AuthenticationServices.ASAuthorizationPublicKeyCredentialParameters

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

New Type: AuthenticationServices.ASAuthorizationPublicKeyCredentialResidentKeyPreference

[Serializable]
public enum ASAuthorizationPublicKeyCredentialResidentKeyPreference {
	Discouraged = 0,
	Preferred = 1,
	Required = 2,
}

New Type: AuthenticationServices.ASAuthorizationPublicKeyCredentialResidentKeyPreferenceExtensions

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

New Type: AuthenticationServices.ASAuthorizationPublicKeyCredentialUserVerificationPreference

public static class ASAuthorizationPublicKeyCredentialUserVerificationPreference {
	// properties
	public static Foundation.NSString Discouraged { get; }
	public static Foundation.NSString Preferred { get; }
	public static Foundation.NSString Required { get; }
}

New Type: AuthenticationServices.ASAuthorizationSecurityKeyPublicKeyCredentialAssertion

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

New Type: AuthenticationServices.ASAuthorizationSecurityKeyPublicKeyCredentialAssertionRequest

public class ASAuthorizationSecurityKeyPublicKeyCredentialAssertionRequest : AuthenticationServices.ASAuthorizationRequest, IASAuthorizationPublicKeyCredentialAssertionRequest, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ASAuthorizationSecurityKeyPublicKeyCredentialAssertionRequest (Foundation.NSCoder coder);
	protected ASAuthorizationSecurityKeyPublicKeyCredentialAssertionRequest (Foundation.NSObjectFlag t);
	protected ASAuthorizationSecurityKeyPublicKeyCredentialAssertionRequest (IntPtr handle);
	// properties
	public virtual IASAuthorizationPublicKeyCredentialDescriptor[] AllowedCredentials { get; set; }
	public virtual Foundation.NSData Challenge { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual string RelyingPartyIdentifier { get; set; }
	public ASAuthorizationSecurityKeyPublicKeyCredentialDescriptor[] SecurityAllowedCredentials { get; set; }
	public virtual Foundation.NSString UserVerificationPreference { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: AuthenticationServices.ASAuthorizationSecurityKeyPublicKeyCredentialDescriptor

public class ASAuthorizationSecurityKeyPublicKeyCredentialDescriptor : Foundation.NSObject, IASAuthorizationPublicKeyCredentialDescriptor, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ASAuthorizationSecurityKeyPublicKeyCredentialDescriptor (Foundation.NSCoder coder);
	protected ASAuthorizationSecurityKeyPublicKeyCredentialDescriptor (Foundation.NSObjectFlag t);
	protected ASAuthorizationSecurityKeyPublicKeyCredentialDescriptor (IntPtr handle);
	public ASAuthorizationSecurityKeyPublicKeyCredentialDescriptor (Foundation.NSData credentialId, ASAuthorizationSecurityKeyPublicKeyCredentialDescriptorTransport[] allowedTransports);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSData CredentialId { get; set; }
	public virtual ASAuthorizationSecurityKeyPublicKeyCredentialDescriptorTransport[] Transports { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	protected override void Dispose (bool disposing);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: AuthenticationServices.ASAuthorizationSecurityKeyPublicKeyCredentialDescriptorTransport

[Serializable]
public enum ASAuthorizationSecurityKeyPublicKeyCredentialDescriptorTransport {
	Bluetooth = 2,
	Nfc = 1,
	Usb = 0,
}

New Type: AuthenticationServices.ASAuthorizationSecurityKeyPublicKeyCredentialDescriptorTransportExtensions

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

New Type: AuthenticationServices.ASAuthorizationSecurityKeyPublicKeyCredentialProvider

public class ASAuthorizationSecurityKeyPublicKeyCredentialProvider : Foundation.NSObject, IASAuthorizationProvider, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ASAuthorizationSecurityKeyPublicKeyCredentialProvider (Foundation.NSObjectFlag t);
	protected ASAuthorizationSecurityKeyPublicKeyCredentialProvider (IntPtr handle);
	public ASAuthorizationSecurityKeyPublicKeyCredentialProvider (string relyingPartyIdentifier);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string RelyingPartyIdentifier { get; }
	// methods
	public virtual ASAuthorizationSecurityKeyPublicKeyCredentialAssertionRequest Create (Foundation.NSData challenge);
	public virtual ASAuthorizationSecurityKeyPublicKeyCredentialRegistrationRequest Create (Foundation.NSData challenge, string displayName, string name, Foundation.NSData userId);
}

New Type: AuthenticationServices.ASAuthorizationSecurityKeyPublicKeyCredentialRegistration

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

New Type: AuthenticationServices.ASAuthorizationSecurityKeyPublicKeyCredentialRegistrationRequest

public class ASAuthorizationSecurityKeyPublicKeyCredentialRegistrationRequest : AuthenticationServices.ASAuthorizationRequest, IASAuthorizationPublicKeyCredentialRegistrationRequest, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ASAuthorizationSecurityKeyPublicKeyCredentialRegistrationRequest (Foundation.NSCoder coder);
	protected ASAuthorizationSecurityKeyPublicKeyCredentialRegistrationRequest (Foundation.NSObjectFlag t);
	protected ASAuthorizationSecurityKeyPublicKeyCredentialRegistrationRequest (IntPtr handle);
	// properties
	public virtual Foundation.NSString AttestationPreference { get; set; }
	public virtual Foundation.NSData Challenge { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual ASAuthorizationPublicKeyCredentialParameters[] CredentialParameters { get; set; }
	public virtual string DisplayName { get; set; }
	public virtual ASAuthorizationSecurityKeyPublicKeyCredentialDescriptor[] ExcludedCredentials { get; set; }
	public virtual string Name { get; set; }
	public virtual string RelyingPartyIdentifier { get; }
	public virtual ASAuthorizationPublicKeyCredentialResidentKeyPreference ResidentKeyPreference { get; set; }
	public virtual Foundation.NSData UserId { get; set; }
	public virtual Foundation.NSString UserVerificationPreference { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: AuthenticationServices.ASCoseAlgorithmIdentifier

[Serializable]
public enum ASCoseAlgorithmIdentifier {
	ES256 = -7,
}

New Type: AuthenticationServices.IASAuthorizationPublicKeyCredentialAssertion

public interface IASAuthorizationPublicKeyCredentialAssertion : IASAuthorizationCredential, IASPublicKeyCredential, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual Foundation.NSData RawAuthenticatorData { get; }
	public virtual Foundation.NSData Signature { get; }
	public virtual Foundation.NSData UserId { get; }
}

New Type: AuthenticationServices.IASAuthorizationPublicKeyCredentialAssertionRequest

public interface IASAuthorizationPublicKeyCredentialAssertionRequest : Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual IASAuthorizationPublicKeyCredentialDescriptor[] AllowedCredentials { get; set; }
	public virtual Foundation.NSData Challenge { get; set; }
	public virtual string RelyingPartyIdentifier { get; set; }
	public virtual Foundation.NSString UserVerificationPreference { get; set; }
}

New Type: AuthenticationServices.IASAuthorizationPublicKeyCredentialDescriptor

public interface IASAuthorizationPublicKeyCredentialDescriptor : Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual Foundation.NSData CredentialId { get; set; }
}

New Type: AuthenticationServices.IASAuthorizationPublicKeyCredentialRegistration

public interface IASAuthorizationPublicKeyCredentialRegistration : IASAuthorizationCredential, IASPublicKeyCredential, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual Foundation.NSData RawAttestationObject { get; }
}

New Type: AuthenticationServices.IASAuthorizationPublicKeyCredentialRegistrationRequest

public interface IASAuthorizationPublicKeyCredentialRegistrationRequest : Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual Foundation.NSString AttestationPreference { get; set; }
	public virtual Foundation.NSData Challenge { get; set; }
	public virtual string DisplayName { get; set; }
	public virtual string Name { get; set; }
	public virtual string RelyingPartyIdentifier { get; }
	public virtual Foundation.NSData UserId { get; set; }
	public virtual Foundation.NSString UserVerificationPreference { get; set; }
}

New Type: AuthenticationServices.IASPublicKeyCredential

public interface IASPublicKeyCredential : IASAuthorizationCredential, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual Foundation.NSData CredentialId { get; }
	public virtual Foundation.NSData RawClientDataJson { get; }
}

New Type: AuthenticationServices.PublicPrivateKeyAuthentication

public static class PublicPrivateKeyAuthentication {
	// methods
	public static ASAuthorizationSecurityKeyPublicKeyCredentialDescriptorTransport[] GetAllSupportedPublicKeyCredentialDescriptorTransports ();
}

Namespace ClassKit

Type Changed: ClassKit.CLSErrorUserInfoKeys

Added property:

public static Foundation.NSString SuccessfulObjectsKey { get; }

Namespace CloudKit

Type Changed: CloudKit.CKAccountStatus

Added value:

TemporarilyUnavailable = 4,

Type Changed: CloudKit.CKErrorCode

Added value:

TemporarilyUnavailable = 36,

Type Changed: CloudKit.CKErrorFields

Added properties:

public static Foundation.NSString ErrorDomain { get; }
public static Foundation.NSString UserDidResetEncryptedDataKey { get; }

Type Changed: CloudKit.CKFetchDatabaseChangesOperation

Added property:

public virtual System.Action<CKRecordZoneID> RecordZoneWithIdWasDeletedDueToUserEncryptedDataReset { get; set; }

Type Changed: CloudKit.CKFetchRecordZoneChangesOperation

Added property:

public virtual CKFetchRecordZoneChangesRecordWasChangedHandler RecordWasChangedHandler { get; set; }

Type Changed: CloudKit.CKFetchRecordZonesOperation

Added property:

public virtual CKRecordZonePerRecordZoneCompletionHandler PerRecordZoneCompletionHandler { get; set; }

Type Changed: CloudKit.CKFetchShareParticipantsOperation

Added property:

public virtual CKFetchShareParticipantsOperationPerShareParticipantCompletionHandler PerShareParticipantCompletionBlock { get; set; }

Type Changed: CloudKit.CKFetchSubscriptionsOperation

Added property:

public virtual CKFetchSubscriptionsPerSubscriptionCompletionHandler PerSubscriptionCompletionHandler { get; set; }

Type Changed: CloudKit.CKModifyRecordZonesOperation

Added properties:

public virtual CKModifyRecordZonesPerRecordZoneDeleteHandler PerRecordZoneDeleteHandler { get; set; }
public virtual CKModifyRecordZonesPerRecordZoneSaveHandler PerRecordZoneSaveHandler { get; set; }

Type Changed: CloudKit.CKModifyRecordsOperation

Added properties:

public virtual CKModifyRecordsOperationPerRecordDeleteHandler PerRecordDeleteHandler { get; set; }
public virtual CKModifyRecordsOperationPerRecordSaveHandler PerRecordSaveHandler { get; set; }

Type Changed: CloudKit.CKModifySubscriptionsOperation

Added properties:

public virtual CKModifySubscriptionsPerSubscriptionDeleteHandler PerSubscriptionDeleteHandler { get; set; }
public virtual CKModifySubscriptionsPerSubscriptionSaveHandler PerSubscriptionSaveHandler { get; set; }

Type Changed: CloudKit.CKQueryOperation

Added property:

public virtual CKQueryOperationRecordMatchedHandler RecordMatchedHandler { get; set; }

Type Changed: CloudKit.CKRecord

Added property:

public static Foundation.NSString NameZoneWideShare { get; }

Type Changed: CloudKit.CKRecordID

Added constructor:

[Obsolete ("iOS9 does not allow creating an empty instance")]
public CKRecordID ();

Type Changed: CloudKit.CKRecordZone

Added property:

public virtual CKReference Share { get; }

Type Changed: CloudKit.CKRecordZoneCapabilities

Added value:

ZoneWideSharing = 8,

Type Changed: CloudKit.CKRecordZoneID

Added constructor:

[Obsolete ("iOS9 does not allow creating an empty instance")]
public CKRecordZoneID ();

Type Changed: CloudKit.CKShare

Added constructor:

public CKShare (CKRecordZoneID recordZoneId);

Type Changed: CloudKit.CKShareMetadata

Added property:

public virtual CKRecordID HierarchicalRootRecordId { get; }

Type Changed: CloudKit.CKSubscription

Removed property:

public virtual CKRecordZoneID ZoneID { get; set; }

New Type: CloudKit.CKFetchRecordZoneChangesRecordWasChangedHandler

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

New Type: CloudKit.CKFetchShareParticipantsOperationPerShareParticipantCompletionHandler

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

New Type: CloudKit.CKFetchSubscriptionsPerSubscriptionCompletionHandler

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

New Type: CloudKit.CKModifyRecordZonesPerRecordZoneDeleteHandler

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

New Type: CloudKit.CKModifyRecordZonesPerRecordZoneSaveHandler

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

New Type: CloudKit.CKModifyRecordsOperationPerRecordDeleteHandler

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

New Type: CloudKit.CKModifyRecordsOperationPerRecordSaveHandler

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

New Type: CloudKit.CKModifySubscriptionsPerSubscriptionDeleteHandler

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

New Type: CloudKit.CKModifySubscriptionsPerSubscriptionSaveHandler

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

New Type: CloudKit.CKQueryOperationRecordMatchedHandler

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

New Type: CloudKit.CKRecordZonePerRecordZoneCompletionHandler

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

Namespace Contacts

Type Changed: Contacts.CNContact

Added property:

public static Foundation.NSString ErrorDomain { get; }

Type Changed: Contacts.CNErrorCode

Added value:

ChangeHistoryInvalidFetchRequest = 605,

Type Changed: Contacts.CNGroup_PredicatesExtension

Added method:

[Obsolete ("This API is only available on macOS 10.11+.")]
public static Foundation.NSPredicate GetPredicateForSubgroupsInGroup (CNGroup This, string parentGroupIdentifier);

Type Changed: Contacts.CNSaveRequest

Added property:

public virtual string TransactionAuthor { get; set; }

Namespace CoreBluetooth

Type Changed: CoreBluetooth.CBCentralManager

Removed events:

public event System.EventHandler<CBPeripheralsEventArgs> RetrievedConnectedPeripherals;
public event System.EventHandler<CBPeripheralsEventArgs> RetrievedPeripherals;

Type Changed: CoreBluetooth.CBCentralManagerDelegate

Removed methods:

public virtual void RetrievedConnectedPeripherals (CBCentralManager central, CBPeripheral[] peripherals);
public virtual void RetrievedPeripherals (CBCentralManager central, CBPeripheral[] peripherals);

Type Changed: CoreBluetooth.CBCentralManagerDelegate_Extensions

Removed methods:

public static void RetrievedConnectedPeripherals (this ICBCentralManagerDelegate This, CBCentralManager central, CBPeripheral[] peripherals);
public static void RetrievedPeripherals (this ICBCentralManagerDelegate This, CBCentralManager central, CBPeripheral[] peripherals);

Type Changed: CoreBluetooth.CBPeer

Added constructor:

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

Type Changed: CoreBluetooth.CBPeripheral

Removed event:

public event System.EventHandler InvalidatedService;

Type Changed: CoreBluetooth.CBPeripheralDelegate

Removed method:

public virtual void InvalidatedService (CBPeripheral peripheral);

Type Changed: CoreBluetooth.CBPeripheralDelegate_Extensions

Removed method:

public static void InvalidatedService (this ICBPeripheralDelegate This, CBPeripheral peripheral);

Type Changed: CoreBluetooth.CBUUID

Added properties:

public static Foundation.NSString AppearanceString { get; }
public static Foundation.NSString DeviceNameString { get; }
public static Foundation.NSString GenericAccessProfileString { get; }
public static Foundation.NSString GenericAttributeProfileString { get; }
public static Foundation.NSString PeripheralPreferredConnectionParametersString { get; }
public static Foundation.NSString PeripheralPrivacyFlagString { get; }
public static Foundation.NSString ReconnectionAddressString { get; }
public static Foundation.NSString ServiceChangedString { get; }

Removed Type CoreBluetooth.CBPeripheralsEventArgs

Namespace CoreData

Type Changed: CoreData.NSAttributeDescription

Added property:

public virtual bool AllowsCloudEncryption { get; set; }

Type Changed: CoreData.NSBatchInsertRequest

Removed constructor:

public NSBatchInsertRequest ();

Type Changed: CoreData.NSCoreDataCoreSpotlightDelegate

Added constructor:

public NSCoreDataCoreSpotlightDelegate (NSPersistentStoreDescription description, NSPersistentStoreCoordinator psc);

Added properties:

public static Foundation.NSString IndexDidUpdateNotification { get; }
public virtual bool IndexingEnabled { get; }

Added methods:

public virtual void DeleteSpotlightIndex (System.Action<Foundation.NSError> completionHandler);
public virtual System.Threading.Tasks.Task DeleteSpotlightIndexAsync ();
public virtual void StartSpotlightIndexing ();
public virtual void StopSpotlightIndexing ();

Type Changed: CoreData.NSMergeConflict

Added constructor:

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

Type Changed: CoreData.NSMergePolicy

Added constructor:

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

Type Changed: CoreData.NSPersistentCloudKitContainer

Added methods:

public virtual void AcceptShareInvitations (CloudKit.CKShareMetadata[] metadata, NSPersistentStore persistentStore, NSPersistentCloudKitContainerAcceptShareInvitationsHandler handler);
public virtual System.Threading.Tasks.Task<Foundation.NSArray<CloudKit.CKShareMetadata>> AcceptShareInvitationsAsync (CloudKit.CKShareMetadata[] metadata, NSPersistentStore persistentStore);
public virtual void FetchParticipantsMatchingLookupInfos (CloudKit.CKUserIdentityLookupInfo[] lookupInfos, NSPersistentStore persistentStore, NSPersistentCloudKitContainerFetchParticipantsMatchingLookupInfosHandler handler);
public virtual System.Threading.Tasks.Task<Foundation.NSArray<CloudKit.CKShareParticipant>> FetchParticipantsMatchingLookupInfosAsync (CloudKit.CKUserIdentityLookupInfo[] lookupInfos, NSPersistentStore persistentStore);
public virtual CloudKit.CKShare[] FetchSharesInPersistentStore (NSPersistentStore persistentStore, out Foundation.NSError error);
public virtual Foundation.NSDictionary<NSManagedObjectID,CloudKit.CKShare> FetchSharesMatchingObjectIds (NSManagedObjectID[] objectIDs, out Foundation.NSError error);
public virtual void PersistUpdatedShare (CloudKit.CKShare share, NSPersistentStore persistentStore, NSPersistentCloudKitContainerPersistUpdatedShareHandler handler);
public virtual System.Threading.Tasks.Task<CloudKit.CKShare> PersistUpdatedShareAsync (CloudKit.CKShare share, NSPersistentStore persistentStore);
public virtual void PurgeObjectsAndRecordsInZone (CloudKit.CKRecordZoneID zoneId, NSPersistentStore persistentStore, NSPersistentCloudKitContainerPurgeObjectsAndRecordsInZoneHandler handler);
public virtual System.Threading.Tasks.Task<CloudKit.CKRecordZoneID> PurgeObjectsAndRecordsInZoneAsync (CloudKit.CKRecordZoneID zoneId, NSPersistentStore persistentStore);
public virtual void ShareManagedObjects (NSManagedObject[] managedObjects, CloudKit.CKShare share, NSPersistentCloudKitContainerShareManagedObjectsHandler handler);
public virtual System.Threading.Tasks.Task<NSPersistentCloudKitContainerShareManagedObjectsResult> ShareManagedObjectsAsync (NSManagedObject[] managedObjects, CloudKit.CKShare share);

Type Changed: CoreData.NSPersistentStore

Added constructor:

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

New Type: CoreData.NSPersistentCloudKitContainerAcceptShareInvitationsHandler

public sealed delegate NSPersistentCloudKitContainerAcceptShareInvitationsHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public NSPersistentCloudKitContainerAcceptShareInvitationsHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (Foundation.NSArray<CloudKit.CKShareMetadata> acceptedShareMetadatas, Foundation.NSError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (Foundation.NSArray<CloudKit.CKShareMetadata> acceptedShareMetadatas, Foundation.NSError error);
}

New Type: CoreData.NSPersistentCloudKitContainerAcceptShareInvitationsResult

public class NSPersistentCloudKitContainerAcceptShareInvitationsResult {
	// constructors
	public NSPersistentCloudKitContainerAcceptShareInvitationsResult (Foundation.NSArray<CloudKit.CKShareMetadata> acceptedShareMetadatas);
	// properties
	public Foundation.NSArray<CloudKit.CKShareMetadata> AcceptedShareMetadatas { get; set; }
}

New Type: CoreData.NSPersistentCloudKitContainerFetchParticipantsMatchingLookupInfosHandler

public sealed delegate NSPersistentCloudKitContainerFetchParticipantsMatchingLookupInfosHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public NSPersistentCloudKitContainerFetchParticipantsMatchingLookupInfosHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (Foundation.NSArray<CloudKit.CKShareParticipant> fetchedParticipants, Foundation.NSError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (Foundation.NSArray<CloudKit.CKShareParticipant> fetchedParticipants, Foundation.NSError error);
}

New Type: CoreData.NSPersistentCloudKitContainerFetchParticipantsMatchingLookupInfosResult

public class NSPersistentCloudKitContainerFetchParticipantsMatchingLookupInfosResult {
	// constructors
	public NSPersistentCloudKitContainerFetchParticipantsMatchingLookupInfosResult (Foundation.NSArray<CloudKit.CKShareParticipant> fetchedParticipants);
	// properties
	public Foundation.NSArray<CloudKit.CKShareParticipant> FetchedParticipants { get; set; }
}

New Type: CoreData.NSPersistentCloudKitContainerPersistUpdatedShareHandler

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

New Type: CoreData.NSPersistentCloudKitContainerPersistUpdatedShareResult

public class NSPersistentCloudKitContainerPersistUpdatedShareResult {
	// constructors
	public NSPersistentCloudKitContainerPersistUpdatedShareResult (CloudKit.CKShare persistedShare);
	// properties
	public CloudKit.CKShare PersistedShare { get; set; }
}

New Type: CoreData.NSPersistentCloudKitContainerPurgeObjectsAndRecordsInZone

public class NSPersistentCloudKitContainerPurgeObjectsAndRecordsInZone {
	// constructors
	public NSPersistentCloudKitContainerPurgeObjectsAndRecordsInZone (CloudKit.CKRecordZoneID purgedZoneId);
	// properties
	public CloudKit.CKRecordZoneID PurgedZoneId { get; set; }
}

New Type: CoreData.NSPersistentCloudKitContainerPurgeObjectsAndRecordsInZoneHandler

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

New Type: CoreData.NSPersistentCloudKitContainerShareManagedObjectsHandler

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

New Type: CoreData.NSPersistentCloudKitContainerShareManagedObjectsResult

public class NSPersistentCloudKitContainerShareManagedObjectsResult {
	// constructors
	public NSPersistentCloudKitContainerShareManagedObjectsResult (Foundation.NSSet<NSManagedObjectID> sharedObjectIds, CloudKit.CKShare share, CloudKit.CKContainer container);
	// properties
	public CloudKit.CKContainer Container { get; set; }
	public CloudKit.CKShare Share { get; set; }
	public Foundation.NSSet<NSManagedObjectID> SharedObjectIds { get; set; }
}

Namespace CoreFoundation

Type Changed: CoreFoundation.CFBundle

Type Changed: CoreFoundation.CFBundle.Architecture

Modified fields:

-ARM = 18
+ARM = 12
-ARM64 = 16777234
+ARM64 = 16777228
-PPC = 24
+PPC = 18
-PPC64 = 16777240
+PPC64 = 16777234

Type Changed: CoreFoundation.CFString

Added methods:

public static IntPtr CreateNative (string value);
public static string FromHandle (IntPtr handle);
public static string FromHandle (IntPtr handle, bool releaseHandle);
public static void ReleaseNative (IntPtr handle);

New Type: CoreFoundation.CFArray

public class CFArray : CoreFoundation.NativeObject, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public nint Count { get; }
	// methods
	public IntPtr GetValue (nint index);
}

Namespace CoreGraphics

Type Changed: CoreGraphics.CGColorSpace

Added field:

[Obsolete ("Use a real 'null' value instead of this managed wrapper over a null native instance.")]
public static CGColorSpace Null;

Added method:

[Obsolete ("This method has been renamed 'CreateDeviceCmyk'.")]
public static CGColorSpace CreateDeviceCMYK ();

Type Changed: CoreGraphics.CGSize

Added methods:

[Obsolete ("Use 'ToCGPoint' instead.")]
public CGPoint ToPointF ();

[Obsolete ("Use 'ToRoundedCGSize' instead.")]
public CGSize ToSize ();

Namespace CoreHaptics

Type Changed: CoreHaptics.CHHapticErrorCode

Added values:

FileNotFound = -4851,
InsufficientPower = -4897,
InvalidEngineParameter = -4816,

Type Changed: CoreHaptics.CHHapticPatternDefinition

Added property:

public bool? EventWaveformUseVolumeEnvelope { get; set; }

New Type: CoreHaptics.CHHapticAudioResourceDefinition

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

Namespace CoreImage

Type Changed: CoreImage.CIFormat

Added values:

[Obsolete ("This value can not be shared across Mac/iOS binaries, future proof with kBGRA8 instead.")]
BGRA8 = 2,

[Obsolete ("This value can not be shared across Mac/iOS binaries, future proof with kRGBA8 instead.")]
RGBA8 = 3,

Type Changed: CoreImage.CISunbeamsGenerator

Added property:

public float CropAmount { get; set; }

New Type: CoreImage.CIConvolutionRGB3X3

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

New Type: CoreImage.CIConvolutionRGB5X5

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

New Type: CoreImage.CIConvolutionRGB7X7

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

New Type: CoreImage.CIConvolutionRGB9Horizontal

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

New Type: CoreImage.CIConvolutionRGB9Vertical

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

New Type: CoreImage.CILinearLightBlendMode

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

New Type: CoreImage.CIPersonSegmentation

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

New Type: CoreImage.CIVividLightBlendMode

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

Namespace CoreLocation

Type Changed: CoreLocation.CLLocation

Added constructor:

public CLLocation (CLLocationCoordinate2D coordinate, double altitude, double horizontalAccuracy, double verticalAccuracy, double course, double courseAccuracy, double speed, double speedAccuracy, Foundation.NSDate timestamp, CLLocationSourceInformation sourceInfo);

Added properties:

public virtual double EllipsoidalAltitude { get; }
public virtual CLLocationSourceInformation SourceInformation { get; }

New Type: CoreLocation.CLLocationPushServiceError

[Serializable]
public enum CLLocationPushServiceError {
	MissingEntitlement = 3,
	MissingPushExtension = 1,
	MissingPushServerEnvironment = 2,
	Unknown = 0,
}

New Type: CoreLocation.CLLocationPushServiceErrorExtensions

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

New Type: CoreLocation.CLLocationPushServiceExtension_Extensions

public static class CLLocationPushServiceExtension_Extensions {
	// methods
	public static void ServiceExtensionWillTerminate (this ICLLocationPushServiceExtension This);
}

New Type: CoreLocation.CLLocationSourceInformation

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

New Type: CoreLocation.ICLLocationPushServiceExtension

public interface ICLLocationPushServiceExtension : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DidReceiveLocationPushPayload (Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> payload, System.Action completion);
}

Namespace CoreMedia

Type Changed: CoreMedia.CMTimeRange

Added field:

[Obsolete ("Use 'InvalidRange'.")]
public static CMTimeRange Invalid;

Namespace CoreMidi

Type Changed: CoreMidi.MidiCISession

Obsoleted constructors:

 [Obsolete ("Always throws 'NotSupportedException' (not a public API).")]
 public MidiCISession (uint entity, System.Action handler);

Type Changed: CoreMidi.MidiNetworkConnection

Removed constructor:

public MidiNetworkConnection ();

Type Changed: CoreMidi.MidiNetworkHost

Removed constructor:

public MidiNetworkHost ();

Namespace CoreMotion

Type Changed: CoreMotion.CMSensorRecorder

Added method:

[Obsolete ("Apple removed this API in iOS 9.3.")]
public virtual CMSensorDataList GetAccelerometerDataSince (ulong identifier);

New Type: CoreMotion.CMAbsoluteAltitudeData

public class CMAbsoluteAltitudeData : CoreMotion.CMLogItem, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CMAbsoluteAltitudeData (Foundation.NSCoder coder);
	protected CMAbsoluteAltitudeData (Foundation.NSObjectFlag t);
	protected CMAbsoluteAltitudeData (IntPtr handle);
	// properties
	public virtual double Accuracy { get; }
	public virtual double Altitude { get; }
	public override IntPtr ClassHandle { get; }
	public virtual double Precision { get; }
}

Namespace CoreSpotlight

Type Changed: CoreSpotlight.CSSearchableItemAttributeSet

Added properties:

public static Foundation.NSString ActionIdentifier { get; }
public virtual Foundation.NSUrl DarkThumbnailUrl { get; set; }

New Type: CoreSpotlight.CSImportExtension

public abstract class CSImportExtension : Foundation.NSObject, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected CSImportExtension ();
	protected CSImportExtension (Foundation.NSObjectFlag t);
	protected CSImportExtension (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void BeginRequestWithExtensionContext (Foundation.NSExtensionContext context);
	public virtual bool Update (CSSearchableItemAttributeSet attributes, Foundation.NSUrl contentUrl, out Foundation.NSError error);
}

Namespace CoreText

Type Changed: CoreText.CTFontManager

Added field:

public static Foundation.NSString ErrorDomain;

Added method:

[Obsolete ("API not available on iOS, it will always return false.")]
public static bool IsFontSupported (Foundation.NSUrl url);

Type Changed: CoreText.CTRunDelegate

Modified base type:

-System.Object
+CoreFoundation.NativeObject

Removed property:

public virtual IntPtr Handle { get; }

Removed methods:

public virtual void Dispose ();
protected virtual void Dispose (bool disposing);
protected override void ~CTRunDelegate ();

Type Changed: CoreText.CTRunDelegateOperations

Added property:

public IntPtr Handle { get; }

Namespace CoreVideo

Type Changed: CoreVideo.CVImageBuffer

Added properties:

public static Foundation.NSString AmbientViewingEnvironmentKey { get; }

[Obsolete ("This API is not available on this platform.")]
public CoreGraphics.CGColorSpace ColorSpace { get; }
public static Foundation.NSString RegionOfInterestKey { get; }

Type Changed: CoreVideo.CVPixelBuffer

Removed properties:

public static Foundation.NSString OpenGLESCompatibilityKey { get; }
public static Foundation.NSString OpenGLESTextureCacheCompatibilityKey { get; }

Added properties:

public static Foundation.NSString OpenGLTextureCacheCompatibilityKey { get; }
public static Foundation.NSString ProResRawKey_BlackLevel { get; }
public static Foundation.NSString ProResRawKey_ColorMatrix { get; }
public static Foundation.NSString ProResRawKey_GainFactor { get; }
public static Foundation.NSString ProResRawKey_RecommendedCrop { get; }
public static Foundation.NSString ProResRawKey_SenselSitingOffsets { get; }
public static Foundation.NSString ProResRawKey_WhiteBalanceBlueFactor { get; }
public static Foundation.NSString ProResRawKey_WhiteBalanceCct { get; }
public static Foundation.NSString ProResRawKey_WhiteBalanceRedFactor { get; }
public static Foundation.NSString ProResRawKey_WhiteLevel { get; }
public static Foundation.NSString VersatileBayerKey_BayerPattern { get; }

Added methods:

public CVPixelBufferAttributes GetPixelBufferCreationAttributes ();

[Obsolete ("Use 'Lock (CVPixelBufferLock)' instead.")]
public CVReturn Lock (CVOptionFlags lockFlags);

[Obsolete ("Use 'Unlock (CVPixelBufferLock)'.")]
public CVReturn Unlock (CVOptionFlags unlockFlags);

Type Changed: CoreVideo.CVPixelBufferAttributes

Removed property:

public bool? OpenGLESCompatibility { get; set; }

Type Changed: CoreVideo.CVPixelBufferPool

Added properties:

public static Foundation.NSString AlphaChannelIsOpaque { get; }
public static Foundation.NSString AlphaChannelModeKey { get; }
public static Foundation.NSString AmbientViewingEnvironmentKey { get; }
public static Foundation.NSString CGColorSpaceKey { get; }
public static Foundation.NSString ChromaLocationBottomFieldKey { get; }
public static Foundation.NSString ChromaLocationTopFieldKey { get; }
public static Foundation.NSString ChromaLocation_Bottom { get; }
public static Foundation.NSString ChromaLocation_BottomLeft { get; }
public static Foundation.NSString ChromaLocation_Center { get; }
public static Foundation.NSString ChromaLocation_DV420 { get; }
public static Foundation.NSString ChromaLocation_Left { get; }
public static Foundation.NSString ChromaLocation_Top { get; }
public static Foundation.NSString ChromaLocation_TopLeft { get; }
public static Foundation.NSString ChromaSubsamplingKey { get; }
public static Foundation.NSString ChromaSubsampling_411 { get; }
public static Foundation.NSString ChromaSubsampling_420 { get; }
public static Foundation.NSString ChromaSubsampling_422 { get; }
public static Foundation.NSString CleanApertureHeightKey { get; }
public static Foundation.NSString CleanApertureHorizontalOffsetKey { get; }
public static Foundation.NSString CleanApertureKey { get; }
public static Foundation.NSString CleanApertureVerticalOffsetKey { get; }
public static Foundation.NSString CleanApertureWidthKey { get; }
public static Foundation.NSString ColorPrimariesKey { get; }
public static Foundation.NSString ColorPrimaries_DCI_P3 { get; }
public static Foundation.NSString ColorPrimaries_EBU_3213 { get; }
public static Foundation.NSString ColorPrimaries_ITU_R_2020 { get; }
public static Foundation.NSString ColorPrimaries_ITU_R_709_2 { get; }
public static Foundation.NSString ColorPrimaries_P22 { get; }
public static Foundation.NSString ColorPrimaries_P3_D65 { get; }
public static Foundation.NSString ColorPrimaries_SMPTE_C { get; }
public static Foundation.NSString ContentLightLevelInfoKey { get; }
public static Foundation.NSString DisplayDimensionsKey { get; }
public static Foundation.NSString DisplayHeightKey { get; }
public static Foundation.NSString DisplayWidthKey { get; }
public static Foundation.NSString FieldCountKey { get; }
public static Foundation.NSString FieldDetailKey { get; }
public static Foundation.NSString FieldDetailSpatialFirstLineEarly { get; }
public static Foundation.NSString FieldDetailSpatialFirstLineLate { get; }
public static Foundation.NSString FieldDetailTemporalBottomFirst { get; }
public static Foundation.NSString FieldDetailTemporalTopFirst { get; }
public static Foundation.NSString GammaLevelKey { get; }
public static Foundation.NSString MasteringDisplayColorVolumeKey { get; }
public static Foundation.NSString MovieTimeKey { get; }
public static Foundation.NSString NonPropagatedAttachmentsKey { get; }
public static Foundation.NSString PixelAspectRatioHorizontalSpacingKey { get; }
public static Foundation.NSString PixelAspectRatioKey { get; }
public static Foundation.NSString PixelAspectRatioVerticalSpacingKey { get; }
public static Foundation.NSString PreferredCleanApertureKey { get; }
public static Foundation.NSString PropagatedAttachmentsKey { get; }
public static Foundation.NSString RegionOfInterestKey { get; }
public static Foundation.NSString TimeScaleKey { get; }
public static Foundation.NSString TimeValueKey { get; }
public static Foundation.NSString TransferFunctionKey { get; }
public static Foundation.NSString TransferFunction_ITU_R_2020 { get; }
public static Foundation.NSString TransferFunction_ITU_R_2100_HLG { get; }
public static Foundation.NSString TransferFunction_ITU_R_709_2 { get; }
public static Foundation.NSString TransferFunction_SMPTE_240M_1995 { get; }
public static Foundation.NSString TransferFunction_SMPTE_ST_2084_PQ { get; }
public static Foundation.NSString TransferFunction_SMPTE_ST_428_1 { get; }
public static Foundation.NSString TransferFunction_UseGamma { get; }
public static Foundation.NSString TransferFunction_sRGB { get; }
public static Foundation.NSString YCbCrMatrixKey { get; }
public static Foundation.NSString YCbCrMatrix_DCI_P3 { get; }
public static Foundation.NSString YCbCrMatrix_ITU_R_2020 { get; }
public static Foundation.NSString YCbCrMatrix_ITU_R_601_4 { get; }
public static Foundation.NSString YCbCrMatrix_ITU_R_709_2 { get; }
public static Foundation.NSString YCbCrMatrix_P3_D65 { get; }
public static Foundation.NSString YCbCrMatrix_SMPTE_240M_1995 { get; }

Type Changed: CoreVideo.CVPixelFormatDescription

Added methods:

public static Foundation.NSDictionary Create (int pixelFormat);
public static void Register (Foundation.NSDictionary description, int pixelFormat);

New Type: CoreVideo.CVImageBufferAlphaChannelModeExtensions

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

New Type: CoreVideo.CVPixelFormatTypeExtensions

public static class CVPixelFormatTypeExtensions {
	// methods
	public static bool IsCompressedPixelFormatAvailable (this CVPixelFormatType type);
}

Namespace EventKit

Type Changed: EventKit.EKCalendar

Removed method:

public static EKCalendar FromEventStore (EKEventStore eventStore);

Type Changed: EventKit.EKErrorCode

Added value:

ReminderAlarmContainsEmailOrUrl = 36,

Type Changed: EventKit.EKParticipant

Added constructor:

public EKParticipant ();

New Type: EventKit.EKVirtualConferenceDescriptor

public class EKVirtualConferenceDescriptor : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected EKVirtualConferenceDescriptor (Foundation.NSObjectFlag t);
	protected EKVirtualConferenceDescriptor (IntPtr handle);
	public EKVirtualConferenceDescriptor (string title, EKVirtualConferenceUrlDescriptor[] urlDescriptors, string conferenceDetails);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string ConferenceDetails { get; }
	public virtual string Title { get; }
	public virtual EKVirtualConferenceUrlDescriptor[] UrlDescriptors { get; }
}

New Type: EventKit.EKVirtualConferenceProvider

public class EKVirtualConferenceProvider : Foundation.NSObject, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public EKVirtualConferenceProvider ();
	protected EKVirtualConferenceProvider (Foundation.NSObjectFlag t);
	protected EKVirtualConferenceProvider (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void BeginRequestWithExtensionContext (Foundation.NSExtensionContext context);
	public virtual void FetchAvailableRoomTypes (VirtualConferenceRoomTypeHandler handler);
	public virtual System.Threading.Tasks.Task<Foundation.NSArray<EKVirtualConferenceRoomTypeDescriptor>> FetchAvailableRoomTypesAsync ();
	public virtual void FetchVirtualConference (string identifier, VirtualConferenceHandler handler);
	public virtual System.Threading.Tasks.Task<EKVirtualConferenceDescriptor> FetchVirtualConferenceAsync (string identifier);
}

New Type: EventKit.EKVirtualConferenceRoomTypeDescriptor

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

New Type: EventKit.EKVirtualConferenceUrlDescriptor

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

New Type: EventKit.VirtualConferenceHandler

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

New Type: EventKit.VirtualConferenceRoomTypeHandler

public sealed delegate VirtualConferenceRoomTypeHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public VirtualConferenceRoomTypeHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (Foundation.NSArray<EKVirtualConferenceRoomTypeDescriptor> virtualConferenceRoomTypeDescriptor, Foundation.NSError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (Foundation.NSArray<EKVirtualConferenceRoomTypeDescriptor> virtualConferenceRoomTypeDescriptor, Foundation.NSError error);
}

Namespace ExternalAccessory

Type Changed: ExternalAccessory.EAAccessoryManager

Added property:

public static Foundation.NSString BluetoothAccessoryPickerErrorDomain { get; }

Removed methods:

public virtual void ShowBluetoothAccessoryPicker (Foundation.NSPredicate predicate, System.Action<Foundation.NSError> completion);
public virtual System.Threading.Tasks.Task ShowBluetoothAccessoryPickerAsync (Foundation.NSPredicate predicate);

Namespace Foundation

Type Changed: Foundation.NSAttributedString

Added method:

public static NSAttributedString CreateFrom (UIKit.NSTextAttachment attachment);

Type Changed: Foundation.NSDocumentType

Added values:

DocFormat = 5,
MacSimpleText = 4,
OfficeOpenXml = 7,
OpenDocument = 9,
WebArchive = 8,
WordML = 6,

Type Changed: Foundation.NSError

Added properties:

public static NSString EABluetoothAccessoryPickerErrorDomain { get; }
public static NSString MapKitErrorDomain { get; }

Type Changed: Foundation.NSFileManagerDelegate

Added method:

[Obsolete ("API removed after iOS 2.0 / macOS 10.5. It will never be called by the OS.")]
public virtual bool ShouldProceedAfterError (NSFileManager fm, NSDictionary errorInfo);

Type Changed: Foundation.NSFileManagerDelegate_Extensions

Added method:

[Obsolete ("API removed after iOS 2.0 / macOS 10.5. It will never be called by the OS.")]
public static bool ShouldProceedAfterError (INSFileManagerDelegate This, NSFileManager fm, NSDictionary errorInfo);

Type Changed: Foundation.NSNetService

Added constructor:

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

Type Changed: Foundation.NSObject

Added methods:

[Obsolete ("Do not use; this API does not properly retain/release existing/new values, so leaks and/or crashes may occur.")]
public NSObject GetNativeField (string name);
public static bool IsNewRefcountEnabled ();

[Obsolete ("Do not use; this API does not properly retain/release existing/new values, so leaks and/or crashes may occur.")]
public void SetNativeField (string name, NSObject value);

Type Changed: Foundation.NSOperation

Added method:

[Obsolete ("Use 'WaitUntilFinished' method.")]
public virtual void WaitUntilFinishedNS ();

Type Changed: Foundation.NSPortDelegate

Removed method:

public virtual void MessageReceived (NSPortMessage message);

Type Changed: Foundation.NSString

Obsoleted methods:

 [Obsolete ("Use of 'CFString.CreateNative' offers better performance.")]
 public static IntPtr CreateNative (string str);
 [Obsolete ("Use of 'CFString.FromHandle' offers better performance.")]
 public static string FromHandle (IntPtr usrhandle);
 [Obsolete ("Use of 'CFString.FromHandle' offers better performance.")]
 public static string FromHandle (IntPtr handle, bool owns);

Type Changed: Foundation.NSStringDrawingContext

Removed property:

public virtual nfloat MinimumTrackingAdjustment { get; set; }

Type Changed: Foundation.NSUrlSession

Added methods:

[Obsolete ("Use GetTasks2 instead. This method may throw spurious InvalidCastExceptions, in particular for backgrounded tasks.")]
public virtual void GetTasks (NSUrlSessionPendingTasks completionHandler);

[Obsolete ("Use GetTasks2 instead. This method may throw spurious InvalidCastExceptions, in particular for backgrounded tasks.")]
public virtual System.Threading.Tasks.Task<NSUrlSessionActiveTasks> GetTasksAsync ();

Type Changed: Foundation.NSUrl_PromisedItems

Added method:

[Obsolete ("Use overload with an 'out NSObject value' parameter.")]
public static bool GetPromisedItemResourceValue (NSUrl This, NSObject value, NSString key, out NSError error);

Type Changed: Foundation.NSUserActivity

Removed property:

public virtual AppClip.APActivationPayload AppClipActivationPayload { get; }

Removed Type Foundation.NSPortDelegate_Extensions

Removed Type Foundation.NSPortMessage

New Type: Foundation.AEEventClass

[Serializable]
public enum AEEventClass {
	Accessibility = 1633903461,
	Appearance = 1634758765,
	AppleEvent = 1634039412,
	Application = 1634758764,
	Command = 1668113523,
	Control = 1668183148,
	HIObject = 1751740258,
	Internet = 1196773964,
	Keyboard = 1801812322,
	Menu = 1835363957,
	Mouse = 1836021107,
	RemoteAppleEvent = 1701867619,
	Service = 1936028278,
	Tablet = 1952607348,
	TextInput = 1952807028,
	Toolbar = 1952604530,
	ToolbarItem = 1952606580,
	Volume = 1987013664,
	Window = 2003398244,
}

New Type: Foundation.AEEventID

[Serializable]
public enum AEEventID {
	ApplicationDied = 1868720500,
	GetUrl = 1196773964,
	OpenApplication = 1868656752,
	OpenContents = 1868787566,
	OpenDocuments = 1868853091,
	PrintDocuments = 188563030,
	QuitApplication = 1903520116,
	ReopenApplication = 1918988400,
	ShowPreferences = 1886545254,
}

New Type: Foundation.NSAffineTransform

public class NSAffineTransform : Foundation.NSObject, INSCoding, INSCopying, INSObjectProtocol, INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSAffineTransform ();
	public NSAffineTransform (NSAffineTransform transform);
	public NSAffineTransform (NSCoder coder);
	protected NSAffineTransform (NSObjectFlag t);
	protected NSAffineTransform (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual CoreGraphics.CGAffineTransform TransformStruct { get; set; }
	// methods
	public virtual void AppendTransform (NSAffineTransform transform);
	public virtual void Concat ();
	public virtual NSObject Copy (NSZone zone);
	public virtual void EncodeTo (NSCoder encoder);
	public virtual void Invert ();
	public virtual void PrependTransform (NSAffineTransform transform);
	public virtual void RotateByDegrees (nfloat angle);
	public virtual void RotateByRadians (nfloat angle);
	public virtual void Scale (nfloat scale);
	public virtual void Scale (nfloat scaleX, nfloat scaleY);
	public virtual void Set ();
	public virtual CoreGraphics.CGPoint TransformPoint (CoreGraphics.CGPoint aPoint);
	public virtual CoreGraphics.CGSize TransformSize (CoreGraphics.CGSize aSize);
	public virtual void Translate (nfloat deltaX, nfloat deltaY);
}

New Type: Foundation.NSAppleEventDescriptor

public class NSAppleEventDescriptor : Foundation.NSObject, INSCoding, INSCopying, INSObjectProtocol, INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSAppleEventDescriptor ();
	public NSAppleEventDescriptor (NSCoder coder);
	protected NSAppleEventDescriptor (NSObjectFlag t);
	protected NSAppleEventDescriptor (IntPtr handle);
	// properties
	public virtual bool BooleanValue { get; }
	public override IntPtr ClassHandle { get; }
	public static NSAppleEventDescriptor CurrentProcessDescriptor { get; }
	public virtual NSData Data { get; }
	public virtual NSDate DateValue { get; }
	public virtual double DoubleValue { get; }
	public virtual AEEventClass EventClass { get; }
	public virtual AEEventID EventID { get; }
	public virtual NSUrl FileURLValue { get; }
	public virtual int Int32Value { get; }
	public virtual bool IsRecordDescriptor { get; }
	public static NSAppleEventDescriptor ListDescriptor { get; }
	public static NSAppleEventDescriptor NullDescriptor { get; }
	public virtual nint NumberOfItems { get; }
	public static NSAppleEventDescriptor RecordDescriptor { get; }
	public virtual string StringValue { get; }
	public virtual uint TypeCodeValue { get; }
	// methods
	public virtual NSAppleEventDescriptor AttributeDescriptorForKeyword (uint keyword);
	public virtual NSObject Copy (NSZone zone);
	public virtual NSAppleEventDescriptor DescriptorAtIndex (nint index);
	public virtual NSAppleEventDescriptor DescriptorForKeyword (uint keyword);
	public static NSAppleEventDescriptor DescriptorWithBoolean (bool boolean);
	public static NSAppleEventDescriptor DescriptorWithEnumCode (uint enumerator);
	public static NSAppleEventDescriptor DescriptorWithInt32 (int signedInt);
	public static NSAppleEventDescriptor DescriptorWithString (string str);
	public static NSAppleEventDescriptor DescriptorWithTypeCode (uint typeCode);
	public virtual void EncodeTo (NSCoder encoder);
	public virtual uint EnumCodeValue ();
	public static NSAppleEventDescriptor FromApplicationURL (NSUrl applicationURL);
	public static NSAppleEventDescriptor FromBundleIdentifier (string bundleIdentifier);
	public static NSAppleEventDescriptor FromDate (NSDate date);
	public static NSAppleEventDescriptor FromDouble (double doubleValue);
	public static NSAppleEventDescriptor FromFileURL (NSUrl fileURL);
	public static NSAppleEventDescriptor FromProcessIdentifier (int processIdentifier);

	[Obsolete ("Use the constructor instead.")]
public virtual NSObject InitListDescriptor ();

	[Obsolete ("Use the constructor instead.")]
public virtual NSObject InitRecordDescriptor ();
	public virtual void InsertDescriptoratIndex (NSAppleEventDescriptor descriptor, nint index);
	public virtual uint KeywordForDescriptorAtIndex (nint index);
	public virtual NSAppleEventDescriptor ParamDescriptorForKeyword (uint keyword);
	public virtual void RemoveDescriptorAtIndex (nint index);
	public virtual void RemoveDescriptorWithKeyword (uint keyword);
	public virtual void RemoveParamDescriptorWithKeyword (uint keyword);
	public virtual void SetAttributeDescriptorforKeyword (NSAppleEventDescriptor descriptor, uint keyword);
	public virtual void SetDescriptorforKeyword (NSAppleEventDescriptor descriptor, uint keyword);
	public virtual void SetParamDescriptorforKeyword (NSAppleEventDescriptor descriptor, uint keyword);
}

New Type: Foundation.NSAppleEventManager

public class NSAppleEventManager : Foundation.NSObject, INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSAppleEventManager ();
	protected NSAppleEventManager (NSObjectFlag t);
	protected NSAppleEventManager (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual NSAppleEventDescriptor CurrentAppleEvent { get; }
	public virtual NSAppleEventDescriptor CurrentReplyAppleEvent { get; }
	public static NSAppleEventManager SharedAppleEventManager { get; }
	// methods
	public virtual NSAppleEventDescriptor AppleEventForSuspensionID (IntPtr suspensionID);
	public virtual void RemoveEventHandler (AEEventClass eventClass, AEEventID eventID);
	public virtual NSAppleEventDescriptor ReplyAppleEventForSuspensionID (IntPtr suspensionID);
	public virtual void ResumeWithSuspensionID (IntPtr suspensionID);
	public virtual void SetCurrentAppleEventAndReplyEventWithSuspensionID (IntPtr suspensionID);
	public virtual void SetEventHandler (NSObject handler, ObjCRuntime.Selector handleEventSelector, AEEventClass eventClass, AEEventID eventID);
	public virtual IntPtr SuspendCurrentAppleEvent ();
}

New Type: Foundation.NSAppleScript

public class NSAppleScript : Foundation.NSObject, INSCopying, INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	protected NSAppleScript (NSObjectFlag t);
	protected NSAppleScript (IntPtr handle);
	public NSAppleScript (string source);
	public NSAppleScript (NSUrl url, out NSDictionary errorInfo);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool Compiled { get; }
	public virtual NSAttributedString RichTextSource { get; }
	public virtual string Source { get; }
	// methods
	public virtual bool CompileAndReturnError (out NSDictionary errorInfo);
	public virtual NSObject Copy (NSZone zone);
	public virtual NSAppleEventDescriptor ExecuteAndReturnError (out NSDictionary errorInfo);
	public virtual NSAppleEventDescriptor ExecuteAppleEvent (NSAppleEventDescriptor eventDescriptor, out NSDictionary errorInfo);
}

New Type: Foundation.NSBundleExecutableArchitecture

[Serializable]
public enum NSBundleExecutableArchitecture {
	ARM64 = 16777228,
	I386 = 7,
	PPC = 18,
	PPC64 = 16777234,
	X86_64 = 16777223,
}

New Type: Foundation.NSDistributedNotificationCenter

public class NSDistributedNotificationCenter {
	// constructors
	public NSDistributedNotificationCenter ();
	// methods

	[Obsolete ("This is not available in iOS.")]
public void AddObserver (NSObject observer, ObjCRuntime.Selector aSelector, string aName, string anObject);

	[Obsolete ("This is not available in iOS.")]
public void RemoveObserver (NSObject observer, string aName, string anObject);
}

New Type: Foundation.NSTask

public class NSTask : Foundation.NSObject, INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSTask ();
	protected NSTask (NSObjectFlag t);
	protected NSTask (IntPtr handle);
	// properties
	public virtual string[] Arguments { get; set; }
	public override IntPtr ClassHandle { get; }
	public static NSString DidTerminateNotification { get; }
	public virtual NSDictionary Environment { get; set; }
	public virtual bool IsRunning { get; }
	public virtual int ProcessIdentifier { get; }
	public virtual NSObject StandardError { get; set; }
	public virtual NSObject StandardInput { get; set; }
	public virtual NSObject StandardOutput { get; set; }
	public virtual int TerminationStatus { get; }
	// methods
	public virtual void Interrupt ();
	public static NSTask LaunchFromPath (string path, string[] arguments);
	public virtual bool Resume ();
	public virtual bool Suspend ();
	public virtual void Terminate ();
	public virtual void WaitUntilExit ();

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

New Type: Foundation.NSTextWritingDirection

[Serializable]
[Flags]
public enum NSTextWritingDirection {
	Embedding = 0,
	Override = 2,
}

New Type: Foundation.NSUrlSessionActiveTasks

public class NSUrlSessionActiveTasks {
	// constructors
	public NSUrlSessionActiveTasks (NSUrlSessionDataTask[] dataTasks, NSUrlSessionUploadTask[] uploadTasks, NSUrlSessionDownloadTask[] downloadTasks);
	// properties
	public NSUrlSessionDataTask[] DataTasks { get; set; }
	public NSUrlSessionDownloadTask[] DownloadTasks { get; set; }
	public NSUrlSessionUploadTask[] UploadTasks { get; set; }
}

New Type: Foundation.NSUrlSessionPendingTasks

public sealed delegate NSUrlSessionPendingTasks : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public NSUrlSessionPendingTasks (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (NSUrlSessionDataTask[] dataTasks, NSUrlSessionUploadTask[] uploadTasks, NSUrlSessionDownloadTask[] downloadTasks, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (NSUrlSessionDataTask[] dataTasks, NSUrlSessionUploadTask[] uploadTasks, NSUrlSessionDownloadTask[] downloadTasks);
}

Namespace GameController

Type Changed: GameController.GCInputDirectional

Added values:

CenterButton = 2,
TouchSurfaceButton = 3,

Type Changed: GameController.GCKey

Added properties:

public static Foundation.NSString F13 { get; }
public static Foundation.NSString F14 { get; }
public static Foundation.NSString F15 { get; }
public static Foundation.NSString F16 { get; }
public static Foundation.NSString F17 { get; }
public static Foundation.NSString F18 { get; }
public static Foundation.NSString F19 { get; }
public static Foundation.NSString F20 { get; }

Type Changed: GameController.GCKeyCode

Added properties:

public static nint F13 { get; }
public static nint F14 { get; }
public static nint F15 { get; }
public static nint F16 { get; }
public static nint F17 { get; }
public static nint F18 { get; }
public static nint F19 { get; }
public static nint F20 { get; }

Type Changed: GameController.GCPhysicalInputProfile

Added properties:

public virtual Foundation.NSSet<GCControllerTouchpad> AllTouchpads { get; }
public virtual Foundation.NSDictionary<Foundation.NSString,GameController.GCControllerTouchpad> Touchpads { get; }

New Type: GameController.GCInputMicroGamepad

[Serializable]
public enum GCInputMicroGamepad {
	ButtonA = 1,
	ButtonX = 2,
	Dpad = 0,
}

New Type: GameController.GCInputMicroGamepadExtensions

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

New Type: GameController.GCVirtualController

public class GCVirtualController : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected GCVirtualController (Foundation.NSObjectFlag t);
	public GCVirtualController (GCVirtualControllerConfiguration configuration);
	protected GCVirtualController (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual GCController Controller { get; }
	// methods
	public virtual void Connect (System.Action<Foundation.NSError> reply);
	public virtual System.Threading.Tasks.Task ConnectAsync ();
	public static GCVirtualController Create (GCVirtualControllerConfiguration configuration);
	public virtual void Disconnect ();
	protected override void Dispose (bool disposing);
	public virtual void UpdateConfiguration (string element, GCVirtualControllerElementUpdateBlock configuration);
}

New Type: GameController.GCVirtualControllerConfiguration

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

New Type: GameController.GCVirtualControllerElementConfiguration

public class GCVirtualControllerElementConfiguration : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GCVirtualControllerElementConfiguration ();
	protected GCVirtualControllerElementConfiguration (Foundation.NSObjectFlag t);
	protected GCVirtualControllerElementConfiguration (IntPtr handle);
	// properties
	public virtual bool ActsAsTouchpad { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual bool Hidden { get; set; }
	public virtual UIKit.UIBezierPath Path { get; set; }
}

New Type: GameController.GCVirtualControllerElementUpdateBlock

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

Namespace GameKit

Type Changed: GameKit.GKError

Added value:

FriendRequestNotAvailable = 103,

Type Changed: GameKit.GKGameCenterViewControllerState

Added value:

LocalPlayerFriendsList = 5,

Type Changed: GameKit.GKLeaderboardSet

Removed methods:

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

Type Changed: GameKit.GKMatch

Added method:

public virtual bool SendData (Foundation.NSData data, string[] players, GKMatchSendDataMode mode, Foundation.NSError error);

Type Changed: GameKit.GKMatchRequest

Added method:

[Obsolete ("Use 'RecipientResponseHandler' property.")]
public virtual void SetRecipientResponseHandler (System.Action<GKPlayer,GameKit.GKInviteRecipientResponse> handler);

Type Changed: GameKit.GKMatchmaker

Added method:

[Obsolete ("Use 'InviteHandler' property.")]
public virtual void SetInviteHandler (GKInviteHandler handler);

Type Changed: GameKit.GKMatchmakerViewController

Added property:

public virtual bool CanStartWithMinimumPlayers { get; set; }

Type Changed: GameKit.GKMatchmakingMode

Added value:

InviteOnly = 3,

Type Changed: GameKit.GKTurnBasedMatchmakerViewController

Added property:

public virtual GKMatchmakingMode MatchmakingMode { get; set; }

Type Changed: GameKit.GKVoiceChat

Added method:

[Obsolete ("Use 'SetMute (bool, string)' method.")]
public virtual void SetMute (bool isMuted, GKPlayer player);

Removed Type GameKit.GKAchievementViewController

Removed Type GameKit.GKAchievementViewControllerDelegate

Removed Type GameKit.GKAuthenticationType

Removed Type GameKit.GKLeaderboardViewController

Removed Type GameKit.GKLeaderboardViewControllerDelegate

Removed Type GameKit.IGKAchievementViewControllerDelegate

Removed Type GameKit.IGKLeaderboardViewControllerDelegate

Namespace GameplayKit

Type Changed: GameplayKit.GKQuadTree

Removed constructor:

public GKQuadTree (OpenTK.Vector2 min, OpenTK.Vector2 max, float minCellSize);

Removed methods:

public virtual GKQuadTreeNode AddData (Foundation.NSObject data, OpenTK.Vector2 point);
public virtual GKQuadTreeNode AddData (Foundation.NSObject data, OpenTK.Vector2 quadOrigin, OpenTK.Vector2 quadSize);

[Obsolete ("Use the constructor with the same signature.")]
public static GKQuadTree QuadTreeWithMinPosition (OpenTK.Vector2 min, OpenTK.Vector2 max, float minCellSize);
public virtual Foundation.NSObject[] QueryData (OpenTK.Vector2 point);
public virtual Foundation.NSObject[] QueryData (OpenTK.Vector2 quadOrigin, OpenTK.Vector2 quadSize);
public virtual bool RemoveData (Foundation.NSObject data);
public virtual bool RemoveData (Foundation.NSObject data, GKQuadTreeNode node);

Type Changed: GameplayKit.GKQuadTreeNode

Removed constructor:

[Obsolete ("A valid instance of this type cannot be directly created.")]
public GKQuadTreeNode ();

Namespace HomeKit

Type Changed: HomeKit.HMCharacteristicWriteAction

Removed constructor:

public HMCharacteristicWriteAction (HMCharacteristic characteristic, Foundation.INSCopying targetValue);

Added constructor:

public HMCharacteristicWriteAction (HMCharacteristic characteristic, Foundation.NSObject targetValue);

Modified properties:

-public virtual Foundation.INSCopying TargetValue { get; }
+public virtual Foundation.NSObject TargetValue { get; }

Removed methods:

public virtual void UpdateTargetValue (Foundation.INSCopying targetValue, System.Action<Foundation.NSError> completion);
public virtual System.Threading.Tasks.Task UpdateTargetValueAsync (Foundation.INSCopying targetValue);

Added methods:

public virtual void UpdateTargetValue (Foundation.NSObject targetValue, System.Action<Foundation.NSError> completion);
public virtual System.Threading.Tasks.Task UpdateTargetValueAsync (Foundation.NSObject targetValue);

Type Changed: HomeKit.HMError

Added value:

AccessoryIsSuspended = 103,

Type Changed: HomeKit.HMHome

Removed methods:

public virtual void AddAndSetupAccessories (HMAccessorySetupPayload payload, System.Action<HMAccessory[],Foundation.NSError> completion);
public virtual System.Threading.Tasks.Task<HMAccessory[]> AddAndSetupAccessoriesAsync (HMAccessorySetupPayload payload);

Type Changed: HomeKit.HMService

Added method:

[Obsolete]
public System.Threading.Tasks.Task UpdateNameAsync (HMServiceType serviceType);

Removed Type HomeKit.HMAccessoryOwnershipToken

Removed Type HomeKit.HMAccessorySetupPayload

New Type: HomeKit.FetchRoomHandler

public sealed delegate FetchRoomHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public FetchRoomHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (Foundation.NSArray<HMChipServiceRoom> rooms, Foundation.NSError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (Foundation.NSArray<HMChipServiceRoom> rooms, Foundation.NSError error);
}

New Type: HomeKit.HMChipServiceHome

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

New Type: HomeKit.HMChipServiceRequestHandler

public class HMChipServiceRequestHandler : Foundation.NSObject, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public HMChipServiceRequestHandler ();
	protected HMChipServiceRequestHandler (Foundation.NSObjectFlag t);
	protected HMChipServiceRequestHandler (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void BeginRequestWithExtensionContext (Foundation.NSExtensionContext context);
	public virtual void ConfigureAccessory (string accessoryName, HMChipServiceRoom accessoryRoom, System.Action<Foundation.NSError> completion);
	public virtual System.Threading.Tasks.Task ConfigureAccessoryAsync (string accessoryName, HMChipServiceRoom accessoryRoom);
	public virtual void FetchRooms (HMChipServiceHome home, FetchRoomHandler completion);
	public virtual System.Threading.Tasks.Task<Foundation.NSArray<HMChipServiceRoom>> FetchRoomsAsync (HMChipServiceHome home);
	public virtual void PairAccessory (HMChipServiceHome home, string onboardingPayload, System.Action<Foundation.NSError> completion);
	public virtual System.Threading.Tasks.Task PairAccessoryAsync (HMChipServiceHome home, string onboardingPayload);
}

New Type: HomeKit.HMChipServiceRoom

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

New Type: HomeKit.HMChipServiceTopology

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

Namespace ImageIO

Type Changed: ImageIO.CGImageProperties

Added properties:

public static Foundation.NSString GroupImageIndexLeft { get; }
public static Foundation.NSString GroupImageIndexRight { get; }
public static Foundation.NSString GroupImageIsAlternateImage { get; }
public static Foundation.NSString GroupImageIsLeftImage { get; }
public static Foundation.NSString GroupImageIsRightImage { get; }
public static Foundation.NSString GroupImagesAlternate { get; }
public static Foundation.NSString GroupIndex { get; }
public static Foundation.NSString GroupType { get; }
public static Foundation.NSString GroupTypeAlternate { get; }
public static Foundation.NSString GroupTypeStereoPair { get; }
public static Foundation.NSString Groups { get; }
public static Foundation.NSString ImageIndex { get; }
public static Foundation.NSString PNGPixelsAspectRatio { get; }

Namespace Intents

Type Changed: Intents.INImage

Removed methods:

public virtual void FetchImage (System.Action<UIKit.UIImage> completion);
public virtual System.Threading.Tasks.Task<UIKit.UIImage> FetchImageAsync ();
public static INImage FromImage (CoreGraphics.CGImage image);
public static INImage FromImage (UIKit.UIImage image);
public static CoreGraphics.CGSize GetImageSize (INIntentResponse response);

Type Changed: Intents.INPreferences

Removed constructor:

public INPreferences ();

Namespace JavaScriptCore

Type Changed: JavaScriptCore.JSManagedValue

Added constructor:

public JSManagedValue ();

Namespace LinkPresentation

Type Changed: LinkPresentation.LPMetadataProvider

Added methods:

public virtual void StartFetchingMetadata (Foundation.NSUrlRequest request, System.Action<LPLinkMetadata,Foundation.NSError> completionHandler);
public virtual System.Threading.Tasks.Task<LPLinkMetadata> StartFetchingMetadataAsync (Foundation.NSUrlRequest request);

Namespace LocalAuthentication

Type Changed: LocalAuthentication.LAStatus

Added value:

InvalidDimension = -14,

Namespace MapKit

Type Changed: MapKit.MKAnnotationView

Added properties:

public virtual CoreGraphics.CGPoint LeftCalloutOffset { get; set; }
public virtual CoreGraphics.CGPoint RightCallpoutOffset { get; set; }

Type Changed: MapKit.MKDirections

Added constructor:

[Obsolete ("iOS9 does not allow creating an empty instance")]
public MKDirections ();

Type Changed: MapKit.MKLocalSearchCompletion

Added constructor:

public MKLocalSearchCompletion ();

Type Changed: MapKit.MKMapItem

Modified methods:

 public bool OpenMaps (MKMapItem[] mapItems--- = NULL---, MKLaunchOptions launchOptions = NULL)

Type Changed: MapKit.MKMapView

Added property:

public virtual bool ShowsZoomControls { get; set; }

Namespace MediaPlayer

Type Changed: MediaPlayer.MPMediaItemArtwork

Added constructor:

[Obsolete ("Use the (UIImage) constructor instead, iOS9 does not allow creating an empty instance.")]
public MPMediaItemArtwork ();

Type Changed: MediaPlayer.MPMediaItemCollection

Added property:

public static Foundation.NSString PropertyPersistentID { get; }

Added methods:

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

Type Changed: MediaPlayer.MPMoviePlayerController

Removed method:

public static void PrepareForPrerollAds ();

Type Changed: MediaPlayer.MPNowPlayingInfoCenter

Removed property:

public virtual MPNowPlayingPlaybackState PlaybackState { get; set; }

Type Changed: MediaPlayer.MPPlayableContentDataSource

Added method:

[Obsolete ("Use 'MPPlayableContentDataSource_Extensions.GetContentItemAsync' instead.")]
public virtual System.Threading.Tasks.Task<MPContentItem> GetContentItemAsync (string identifier);

Type Changed: MediaPlayer.MPPlayableContentDelegate

Added method:

[Obsolete ("Use 'InitiatePlaybackOfContentItem' instead.")]
public virtual void PlayableContentManager (MPPlayableContentManager contentManager, Foundation.NSIndexPath indexPath, System.Action<Foundation.NSError> completionHandler);

Type Changed: MediaPlayer.MPPlayableContentDelegate_Extensions

Added method:

[Obsolete ("Use 'InitiatePlaybackOfContentItem' instead.")]
public static void PlayableContentManager (this IMPPlayableContentDelegate This, MPPlayableContentManager contentManager, Foundation.NSIndexPath indexPath, System.Action<Foundation.NSError> completionHandler);

Type Changed: MediaPlayer.MPTimedMetadata

Removed property:

public virtual Foundation.NSObject Value { get; }

Added property:

public virtual Foundation.NSObject value { get; }

Namespace MetricKit

Type Changed: MetricKit.MXSignpostIntervalData

Added property:

public virtual Foundation.NSMeasurement<Foundation.NSUnit> CumulativeHitchTimeRatio { get; }

Namespace MultipeerConnectivity

Type Changed: MultipeerConnectivity.MCAdvertiserAssistant

Added constructor:

[Obsolete ("This constructor does not create a valid instance")]
public MCAdvertiserAssistant ();

Type Changed: MultipeerConnectivity.MCPeerID

Added constructor:

[Obsolete ("This constructor does not create a valid instance")]
public MCPeerID ();

Namespace NearbyInteraction

Type Changed: NearbyInteraction.NISessionDelegate

Added method:

public virtual void DidGenerateShareableConfigurationData (NISession session, Foundation.NSData shareableConfigurationData, NINearbyObject object);

Type Changed: NearbyInteraction.NISessionDelegate_Extensions

Added method:

public static void DidGenerateShareableConfigurationData (this INISessionDelegate This, NISession session, Foundation.NSData shareableConfigurationData, NINearbyObject object);

New Type: NearbyInteraction.NINearbyAccessoryConfiguration

public class NINearbyAccessoryConfiguration : NearbyInteraction.NIConfiguration, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NINearbyAccessoryConfiguration (Foundation.NSCoder coder);
	protected NINearbyAccessoryConfiguration (Foundation.NSObjectFlag t);
	protected NINearbyAccessoryConfiguration (IntPtr handle);
	public NINearbyAccessoryConfiguration (Foundation.NSData data, out Foundation.NSError error);
	// properties
	public virtual NIDiscoveryToken AccessoryDiscoveryToken { get; }
	public override IntPtr ClassHandle { get; }
}

Namespace ObjCRuntime

Type Changed: ObjCRuntime.Constants

Removed fields:

public static const string ARKitLibrary = "/System/Library/Frameworks/ARKit.framework/ARKit";
public static const string AddressBookUILibrary = "/System/Library/Frameworks/AddressBookUI.framework/AddressBookUI";
public static const string AppClipLibrary = "/System/Library/Frameworks/AppClip.framework/AppClip";
public static const string AssetsLibraryLibrary = "/System/Library/Frameworks/AssetsLibrary.framework/AssetsLibrary";
public static const string CarPlayLibrary = "/System/Library/Frameworks/CarPlay.framework/CarPlay";
public static const string CoreTelephonyLibrary = "/System/Library/Frameworks/CoreTelephony.framework/CoreTelephony";
public static const string EventKitUILibrary = "/System/Library/Frameworks/EventKitUI.framework/EventKitUI";
public static const string HealthKitLibrary = "/System/Library/Frameworks/HealthKit.framework/HealthKit";
public static const string HealthKitUILibrary = "/System/Library/Frameworks/HealthKitUI.framework/HealthKitUI";
public static const string IdentityLookupUILibrary = "/System/Library/Frameworks/IdentityLookupUI.framework/IdentityLookupUI";
public static const string MessageUILibrary = "/System/Library/Frameworks/MessageUI.framework/MessageUI";
public static const string MessagesLibrary = "/System/Library/Frameworks/Messages.framework/Messages";
public static const string VisionKitLibrary = "/System/Library/Frameworks/VisionKit.framework/VisionKit";
public static const string WatchConnectivityLibrary = "/System/Library/Frameworks/WatchConnectivity.framework/WatchConnectivity";
public static const string iAdLibrary = "/System/Library/Frameworks/iAd.framework/iAd";

Modified fields:

-public const string SdkVersion = "@IOS_SDK_VERSION@";
+public const string SdkVersion = "15.0";
-public const string Version = "14.16.0";
+public const string Version = "14.99.0";

Added fields:

public static const string AppKitLibrary = "/System/Library/Frameworks/AppKit.framework/AppKit";
public static const string ChipLibrary = "/System/Library/Frameworks/CHIP.framework/CHIP";
public static const string CoreLocationUILibrary = "/System/Library/Frameworks/CoreLocationUI.framework/CoreLocationUI";
public static const string CoreWlanLibrary = "/System/Library/Frameworks/CoreWLAN.framework/CoreWLAN";

Type Changed: ObjCRuntime.PlatformName

Obsoleted fields:

 [Obsolete ("Use 'MacCatalyst' instead.")]
 UIKitForMac = 5,

Type Changed: ObjCRuntime.Runtime

Added method:

public static void ThrowException (IntPtr gchandle);

New Type: ObjCRuntime.AvailabilityAttribute

public class AvailabilityAttribute : System.Attribute {
	// constructors
	public AvailabilityAttribute ();
	public AvailabilityAttribute (Platform introduced, Platform deprecated, Platform obsoleted, Platform unavailable);
	// properties
	public bool AlwaysAvailable { get; }
	public Platform Deprecated { get; set; }
	public Platform DeprecatedArchitecture { get; }
	public Platform DeprecatedVersion { get; }
	public Platform Introduced { get; set; }
	public Platform IntroducedArchitecture { get; }
	public Platform IntroducedVersion { get; }
	public string Message { get; set; }
	public Platform Obsoleted { get; set; }
	public Platform ObsoletedArchitecture { get; }
	public Platform ObsoletedVersion { get; }
	public Platform Unavailable { get; set; }
	// methods
	public static AvailabilityAttribute Get (System.Reflection.MemberInfo member);
	public static AvailabilityAttribute Merge (System.Collections.Generic.IEnumerable<object> attrs);
	public override string ToString ();
}

New Type: ObjCRuntime.BlockFlags

[Serializable]
[Flags]
public enum BlockFlags {
	BLOCK_HAS_COPY_DISPOSE = 33554432,
	BLOCK_HAS_CTOR = 67108864,
	BLOCK_HAS_DESCRIPTOR = 536870912,
	BLOCK_HAS_SIGNATURE = 1073741824,
	BLOCK_HAS_STRET = 536870912,
	BLOCK_IS_GC = 134217728,
	BLOCK_IS_GLOBAL = 268435456,
	BLOCK_NEEDS_FREE = 16777216,
	BLOCK_REFCOUNT_MASK = 65535,
}

New Type: ObjCRuntime.MacAttribute

public sealed class MacAttribute : ObjCRuntime.AvailabilityAttribute {
	// constructors
	public MacAttribute (byte major, byte minor);
	public MacAttribute (byte major, byte minor, PlatformArchitecture arch);

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

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

New Type: ObjCRuntime.Platform

[Serializable]
[Flags]
public enum Platform {
	Mac_10_0 = 2814749767106560,
	Mac_10_1 = 2815849278734336,
	Mac_10_10 = 2825744883384320,
	Mac_10_10_3 = 2825757768286208,
	Mac_10_11 = 2826844395012096,
	Mac_10_11_3 = 2826857279913984,
	Mac_10_12 = 2827943906639872,
	Mac_10_2 = 2816948790362112,
	Mac_10_3 = 2818048301989888,
	Mac_10_4 = 2819147813617664,
	Mac_10_5 = 2820247325245440,
	Mac_10_6 = 2821346836873216,
	Mac_10_7 = 2822446348500992,
	Mac_10_8 = 2823545860128768,
	Mac_10_9 = 2824645371756544,
	Mac_Arch = 18374686479671623680,
	Mac_Arch32 = 72057594037927936,
	Mac_Arch64 = 144115188075855872,
	Mac_Version = 72057589742960640,
	None = 0,
	iOS_2_0 = 131072,
	iOS_2_2 = 131584,
	iOS_3_0 = 196608,
	iOS_3_1 = 196864,
	iOS_3_2 = 197120,
	iOS_4_0 = 262144,
	iOS_4_1 = 262400,
	iOS_4_2 = 262656,
	iOS_4_3 = 262912,
	iOS_5_0 = 327680,
	iOS_5_1 = 327936,
	iOS_6_0 = 393216,
	iOS_6_1 = 393472,
	iOS_7_0 = 458752,
	iOS_7_1 = 459008,
	iOS_8_0 = 524288,
	iOS_8_1 = 524544,
	iOS_8_2 = 524800,
	iOS_8_3 = 525056,
	iOS_8_4 = 525312,
	iOS_9_0 = 589824,
	iOS_9_1 = 590080,
	iOS_9_2 = 590336,
	iOS_9_3 = 590592,
	iOS_Arch = 4278190080,
	iOS_Arch32 = 16777216,
	iOS_Arch64 = 33554432,
	iOS_Version = 16777215,
}

New Type: ObjCRuntime.PlatformHelper

public static class PlatformHelper {
	// methods
	public static bool CheckSystemVersion (int major, int minor);
	public static int CompareIosVersion (this Platform a, Platform b);
	public static int CompareMacVersion (this Platform a, Platform b);
	public static Platform GetHostApiPlatform ();
	public static bool Is64BitOnlyOnCurrentPlatform (this Platform platform);
	public static bool IsIos (this Platform platform);
	public static bool IsMac (this Platform platform);
	public static bool IsValid (this Platform platform);
	public static Platform ParseApiPlatform (string productName, string productVersion);
	public static Platform ToArch (this Platform platform);
	public static Platform ToIosArch (this Platform platform);
	public static Platform ToIosVersion (this Platform platform);
	public static Platform ToMacArch (this Platform platform);
	public static Platform ToMacVersion (this Platform platform);
	public static Platform ToVersion (this Platform platform);
}

New Type: ObjCRuntime.iOSAttribute

public sealed class iOSAttribute : ObjCRuntime.AvailabilityAttribute {
	// constructors
	public iOSAttribute (byte major, byte minor);

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

	[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 PassKit

Type Changed: PassKit.PKPass

Removed property:

public virtual UIKit.UIImage Icon { get; }

Type Changed: PassKit.PKPassLibrary

Added methods:

public virtual void GetServiceProviderData (PKSecureElementPass secureElementPass, System.Action<Foundation.NSData,Foundation.NSError> completion);
public virtual System.Threading.Tasks.Task<Foundation.NSData> GetServiceProviderDataAsync (PKSecureElementPass secureElementPass);

Type Changed: PassKit.PKPaymentAuthorizationControllerDelegate

Added method:

public virtual void DidChangeCouponCode (PKPaymentAuthorizationController controller, string couponCode, System.Action<PKPaymentRequestCouponCodeUpdate> completion);

Type Changed: PassKit.PKPaymentAuthorizationControllerDelegate_Extensions

Added method:

public static void DidChangeCouponCode (this IPKPaymentAuthorizationControllerDelegate This, PKPaymentAuthorizationController controller, string couponCode, System.Action<PKPaymentRequestCouponCodeUpdate> completion);

Type Changed: PassKit.PKPaymentAuthorizationViewController

Obsoleted constructors:

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

Added event:

public event System.EventHandler<PKPaymentRequestCouponCodeUpdateEventArgs> DidChangeCouponCode;

Type Changed: PassKit.PKPaymentAuthorizationViewControllerDelegate

Added method:

public virtual void DidChangeCouponCode (PKPaymentAuthorizationViewController controller, string couponCode, System.Action<PKPaymentRequestCouponCodeUpdate> completion);

Type Changed: PassKit.PKPaymentAuthorizationViewControllerDelegate_Extensions

Added method:

public static void DidChangeCouponCode (this IPKPaymentAuthorizationViewControllerDelegate This, PKPaymentAuthorizationViewController controller, string couponCode, System.Action<PKPaymentRequestCouponCodeUpdate> completion);

Type Changed: PassKit.PKPaymentButtonType

Added value:

Continue = 16,

Type Changed: PassKit.PKPaymentErrorCode

Added values:

CouponCodeExpired = 5,
CouponCodeInvalid = 4,

Type Changed: PassKit.PKPaymentMethodType

Added value:

EMoney = 5,

Type Changed: PassKit.PKPaymentRequest

Added properties:

public virtual string CouponCode { get; set; }
public virtual PKShippingContactEditingMode ShippingContactEditingMode { get; set; }
public virtual bool SupportsCouponCode { get; set; }

Added methods:

public static Foundation.NSError GetCouponCodeExpiredError (string localizedDescription);
public static Foundation.NSError GetCouponCodeInvalidError (string localizedDescription);

Type Changed: PassKit.PKPaymentRequestUpdate

Added property:

public virtual PKShippingMethod[] ShippingMethods { get; set; }

Type Changed: PassKit.PKShareablePassMetadata

Added constructor:

public PKShareablePassMetadata (string credentialIdentifier, string sharingInstanceIdentifier, CoreGraphics.CGImage passThumbnailImage, string ownerDisplayName, string localizedDescription, string accountHash, string templateIdentifier, string relyingPartyIdentifier, bool requiresUnifiedAccessCapableDevice);

Added properties:

public virtual string AccountHash { get; }
public virtual string RelyingPartyIdentifier { get; }
public virtual bool RequiresUnifiedAccessCapableDevice { get; }
public virtual string TemplateIdentifier { get; }

Type Changed: PassKit.PKShippingMethod

Added property:

public virtual PKDateComponentsRange DateComponentsRange { get; set; }

Type Changed: PassKit.PKTransitPassProperties

Modified base type:

-Foundation.NSObject
+PassKit.PKStoredValuePassProperties

Removed Type PassKit.PKIssuerProvisioningExtensionHandler

New Type: PassKit.PKDateComponentsRange

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

New Type: PassKit.PKDeferredPaymentSummaryItem

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

New Type: PassKit.PKPaymentRequestCouponCodeUpdate

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

New Type: PassKit.PKPaymentRequestCouponCodeUpdateEventArgs

public class PKPaymentRequestCouponCodeUpdateEventArgs : System.EventArgs {
	// constructors
	public PKPaymentRequestCouponCodeUpdateEventArgs (string couponCode, System.Action<PKPaymentRequestCouponCodeUpdate> completion);
	// properties
	public System.Action<PKPaymentRequestCouponCodeUpdate> Completion { get; set; }
	public string CouponCode { get; set; }
}

New Type: PassKit.PKRecurringPaymentSummaryItem

public class PKRecurringPaymentSummaryItem : PassKit.PKPaymentSummaryItem, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected PKRecurringPaymentSummaryItem (Foundation.NSObjectFlag t);
	protected PKRecurringPaymentSummaryItem (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSDate EndDate { get; set; }
	public virtual nint IntervalCount { get; set; }
	public virtual Foundation.NSCalendarUnit IntervalUnit { get; set; }
	public virtual Foundation.NSDate StartDate { get; set; }
}

New Type: PassKit.PKServiceProviderDataCompletionResult

public class PKServiceProviderDataCompletionResult {
	// constructors
	public PKServiceProviderDataCompletionResult (Foundation.NSData arg1);
	// properties
	public Foundation.NSData Arg1 { get; set; }
}

New Type: PassKit.PKShippingContactEditingMode

[Serializable]
public enum PKShippingContactEditingMode {
	Enabled = 1,
	StorePickup = 2,
}

New Type: PassKit.PKStoredValuePassBalance

public class PKStoredValuePassBalance : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected PKStoredValuePassBalance (Foundation.NSObjectFlag t);
	protected PKStoredValuePassBalance (IntPtr handle);
	// properties
	public virtual Foundation.NSDecimalNumber Amount { get; }
	public virtual string BalanceType { get; }
	public override IntPtr ClassHandle { get; }
	public virtual string CurrencyCode { get; }
	public virtual Foundation.NSDate ExpiryDate { get; }
	// methods
	public virtual bool IsEqual (PKStoredValuePassBalance balance);
}

New Type: PassKit.PKStoredValuePassBalanceType

[Serializable]
public enum PKStoredValuePassBalanceType {
	Cash = 0,
	LoyaltyPoints = 1,
}

New Type: PassKit.PKStoredValuePassBalanceTypeExtensions

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

New Type: PassKit.PKStoredValuePassProperties

public class PKStoredValuePassProperties : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected PKStoredValuePassProperties (Foundation.NSObjectFlag t);
	protected PKStoredValuePassProperties (IntPtr handle);
	// properties
	public virtual PKStoredValuePassBalance[] Balances { get; }
	public virtual bool Blocked { get; }
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSDate ExpirationDate { get; }
	// methods
	public static PKStoredValuePassProperties GetPassProperties (PKPass pass);
}

Namespace PdfKit

Type Changed: PdfKit.PdfAnnotation

Removed constructor:

public PdfAnnotation (CoreGraphics.CGRect bounds);

Type Changed: PdfKit.PdfBorder

Added property:

public nfloat[] DashPattern { get; set; }

Type Changed: PdfKit.PdfDocument

Added properties:

public virtual PdfAccessPermissions AccessPermissions { get; }
public static Foundation.NSString FoundSelectionKey { get; }
public static Foundation.NSString PageIndexKey { get; }

Type Changed: PdfKit.PdfDocumentWriteOptions

Added property:

public string AccessPermissions { get; set; }

Removed Type PdfKit.PdfPrintScalingMode

New Type: PdfKit.PdfAccessPermissions

[Serializable]
public enum PdfAccessPermissions {
	Commenting = 64,
	ContentAccessibility = 32,
	ContentCopying = 16,
	DocumentAssembly = 8,
	DocumentChanges = 4,
	FormFieldEntry = 128,
	HighQualityPrinting = 2,
	LowQualityPrinting = 1,
}

Namespace Photos

Type Changed: Photos.PHAsset

Added property:

public virtual string AdjustmentFormatIdentifier { get; }

Type Changed: Photos.PHAssetChangeRequest

Added constructor:

[Obsolete ("iOS9 does not allow creating an empty instance")]
public PHAssetChangeRequest ();

Type Changed: Photos.PHAssetCollectionSubtype

Added value:

SmartAlbumRAW = 217,

Type Changed: Photos.PHCollectionListSubtype

Added values:

[Obsolete ("Incorrect value (exists in 'PHAssetCollectionSubtype').")]
SmartAlbumScreenshots = 211,

[Obsolete ("Incorrect value (exists in 'PHAssetCollectionSubtype').")]
SmartAlbumSelfPortraits = 210,

Type Changed: Photos.PHContentEditingInputRequestOptions

Added methods:

[Obsolete ("Use 'CanHandleAdjustmentData' property.")]
public virtual void SetCanHandleAdjustmentDataHandler (System.Func<PHAdjustmentData,System.Boolean> canHandleAdjustmentDataPredicate);

[Obsolete ("Use 'ProgressHandler' property.")]
public virtual void SetProgressHandler (PHProgressHandler progressHandler);

Type Changed: Photos.PHPhotoLibrary

Added property:

public static Foundation.NSString LocalIdentifiersErrorKey { get; }

Type Changed: Photos.PHPhotosError

Added values:

AccessRestricted = 3310,
AccessUserDenied = 3311,
ChangeNotSupported = 3300,
IdentifierNotFound = 3201,
InternalError = -1,
InvalidResource = 3302,
MissingResource = 3303,
MultipleIdentifiersFound = 3202,
NotEnoughSpace = 3305,
OperationInterrupted = 3301,
RequestNotSupportedForAsset = 3306,

New Type: Photos.PHCloudIdentifier

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

New Type: Photos.PHCloudIdentifierMapping

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

New Type: Photos.PHLocalIdentifierMapping

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

New Type: Photos.PHPhotoLibrary_CloudIdentifiers

public static class PHPhotoLibrary_CloudIdentifiers {
	// methods
	public static Foundation.NSDictionary<Foundation.NSString,Photos.PHCloudIdentifierMapping> GetCloudIdentifierMappings (this PHPhotoLibrary This, string[] localIdentifiers);
	public static Foundation.NSDictionary<PHCloudIdentifier,Photos.PHLocalIdentifierMapping> GetLocalIdentifierMappings (this PHPhotoLibrary This, PHCloudIdentifier[] cloudIdentifiers);
}

Namespace PhotosUI

Type Changed: PhotosUI.PHLivePhotoViewDelegate

Added method:

public virtual bool CanBeginPlayback (PHLivePhotoView livePhotoView, PHLivePhotoViewPlaybackStyle playbackStyle);

Type Changed: PhotosUI.PHLivePhotoViewDelegate_Extensions

Added method:

public static bool CanBeginPlayback (this IPHLivePhotoViewDelegate This, PHLivePhotoView livePhotoView, PHLivePhotoViewPlaybackStyle playbackStyle);

Type Changed: PhotosUI.PHPhotoLibrary_PhotosUISupport

Added methods:

public static void PresentLimitedLibraryPicker (this Photos.PHPhotoLibrary This, UIKit.UIViewController controller, System.Action<System.String[]> completionHandler);
public static System.Threading.Tasks.Task<System.String[]> PresentLimitedLibraryPickerAsync (this Photos.PHPhotoLibrary This, UIKit.UIViewController controller);

Type Changed: PhotosUI.PHPickerConfiguration

Added properties:

public virtual string[] PreselectedAssetIdentifiers { get; set; }
public virtual PHPickerConfigurationSelection Selection { get; set; }

New Type: PhotosUI.IPHContentEditingController

public interface IPHContentEditingController : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual bool ShouldShowCancelConfirmation { get; }
	// methods
	public virtual bool CanHandleAdjustmentData (Photos.PHAdjustmentData adjustmentData);
	public virtual void CancelContentEditing ();
	public virtual void FinishContentEditing (System.Action<Photos.PHContentEditingOutput> completionHandler);
	public virtual void StartContentEditing (Photos.PHContentEditingInput contentEditingInput, UIKit.UIImage placeholderImage);
}

New Type: PhotosUI.PHContentEditingController

public abstract class PHContentEditingController : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, IPHContentEditingController, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected PHContentEditingController ();
	protected PHContentEditingController (Foundation.NSObjectFlag t);
	protected PHContentEditingController (IntPtr handle);
	// properties
	public virtual bool ShouldShowCancelConfirmation { get; }
	// methods
	public virtual bool CanHandleAdjustmentData (Photos.PHAdjustmentData adjustmentData);
	public virtual void CancelContentEditing ();
	public virtual void FinishContentEditing (System.Action<Photos.PHContentEditingOutput> completionHandler);
	public virtual void StartContentEditing (Photos.PHContentEditingInput contentEditingInput, UIKit.UIImage placeholderImage);
}

New Type: PhotosUI.PHPickerConfigurationSelection

[Serializable]
public enum PHPickerConfigurationSelection {
	Default = 0,
	Ordered = 1,
}

Namespace PushKit

Type Changed: PushKit.PKPushType

Removed property:

public static Foundation.NSString Complication { get; }

Namespace QuickLook

Type Changed: QuickLook.QLThumbnailReply

Added property:

public virtual string ExtensionBadge { get; set; }

Namespace QuickLookThumbnailing

Type Changed: QuickLookThumbnailing.QLThumbnailRepresentation

Added property:

public virtual CoreGraphics.CGRect ContentRect { get; }

Namespace ReplayKit

Type Changed: ReplayKit.RPRecordingError

Added value:

ExportClipToUrlInProgress = -5836,

Type Changed: ReplayKit.RPScreenRecorder

Added methods:

public virtual void ExportClip (Foundation.NSUrl url, double duration, System.Action<Foundation.NSError> completionHandler);
public virtual System.Threading.Tasks.Task ExportClipAsync (Foundation.NSUrl url, double duration);
public virtual void StartClipBuffering (System.Action<Foundation.NSError> completionHandler);
public virtual System.Threading.Tasks.Task StartClipBufferingAsync ();
public virtual void StopClipBuffering (System.Action<Foundation.NSError> completionHandler);
public virtual System.Threading.Tasks.Task StopClipBufferingAsync ();

Namespace SafariServices

Type Changed: SafariServices.SFSafariViewController

Added method:

public static SFSafariViewControllerPrewarmingToken PrewarmConnections (Foundation.NSUrl[] urls);

Type Changed: SafariServices.SFSafariViewControllerConfiguration

Added property:

public virtual SFSafariViewControllerActivityButton ActivityButton { get; set; }

New Type: SafariServices.SFContentBlockerErrorCode

[Serializable]
public enum SFContentBlockerErrorCode {
	LoadingInterrupted = 3,
	NoAttachmentFound = 2,
	NoExtensionFound = 1,
	Ok = 0,
}

New Type: SafariServices.SFContentBlockerErrorCodeExtensions

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

New Type: SafariServices.SFExtension

public static class SFExtension {
	// properties
	public static Foundation.NSString MessageKey { get; }
}

New Type: SafariServices.SFSafariViewControllerActivityButton

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

New Type: SafariServices.SFSafariViewControllerPrewarmingToken

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

New Type: SafariServices.SSReadingListError

[Serializable]
public enum SSReadingListError {
	UrlSchemeNotAllowed = 1,
}

New Type: SafariServices.SSReadingListErrorExtensions

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

Namespace SceneKit

Type Changed: SceneKit.ISCNSceneRenderer

Removed property:

public virtual IntPtr Context { get; }

Type Changed: SceneKit.SCNAction

Added method:

[Obsolete ("Use 'TimingFunction2' property.")]
public virtual void SetTimingFunction (System.Action<float> timingFunction);

Type Changed: SceneKit.SCNAnimatable

Added method:

public virtual void RemoveAllAnimationsWithBlendOutDuration (nfloat duration);

Type Changed: SceneKit.SCNAnimatable_Extensions

Added method:

public static void RemoveAllAnimationsWithBlendOutDuration (this ISCNAnimatable This, nfloat duration);

Type Changed: SceneKit.SCNAnimationPlayer

Added method:

public virtual void RemoveAllAnimationsWithBlendOutDuration (nfloat duration);

Type Changed: SceneKit.SCNAntialiasingMode

Added values:

Multisampling16X = 4,
Multisampling8X = 3,

Type Changed: SceneKit.SCNCamera

Added method:

public virtual void RemoveAllAnimationsWithBlendOutDuration (nfloat duration);

Type Changed: SceneKit.SCNConstraint

Added method:

public virtual void RemoveAllAnimationsWithBlendOutDuration (nfloat duration);

Type Changed: SceneKit.SCNGeometry

Added property:

public virtual Foundation.NSNumber MinimumLanguageVersion { get; set; }

Added methods:

[Obsolete ("Use the 'Create (SCNGeometrySource[], SCNGeometryElement[])' method instead, as it has a strongly typed return.")]
public static Foundation.NSObject FromSources (SCNGeometrySource[] sources, SCNGeometryElement[] elements);
public virtual void RemoveAllAnimationsWithBlendOutDuration (nfloat duration);

Type Changed: SceneKit.SCNLight

Added methods:

[Obsolete ("Do not use; this method only exist in macOS, not in iOS.")]
public virtual Foundation.NSObject GetAttribute (Foundation.NSString lightAttribute);
public virtual void RemoveAllAnimationsWithBlendOutDuration (nfloat duration);

[Obsolete ("Do not use; this method only exist in macOS, not in iOS.")]
public virtual void SetAttribute (Foundation.NSObject value, Foundation.NSString attribuetKey);

Type Changed: SceneKit.SCNMaterial

Added property:

public virtual Foundation.NSNumber MinimumLanguageVersion { get; set; }

Added method:

public virtual void RemoveAllAnimationsWithBlendOutDuration (nfloat duration);

Type Changed: SceneKit.SCNMaterialProperty

Added method:

public virtual void RemoveAllAnimationsWithBlendOutDuration (nfloat duration);

Type Changed: SceneKit.SCNMorpher

Added method:

public virtual void RemoveAllAnimationsWithBlendOutDuration (nfloat duration);

Type Changed: SceneKit.SCNNode

Added method:

public virtual void RemoveAllAnimationsWithBlendOutDuration (nfloat duration);

Type Changed: SceneKit.SCNParticleSystem

Added property:

public virtual bool WritesToDepthBuffer { get; set; }

Added method:

public virtual void RemoveAllAnimationsWithBlendOutDuration (nfloat duration);

Type Changed: SceneKit.SCNRenderer

Removed property:

public virtual IntPtr Context { get; }

Removed method:

public static SCNRenderer FromContext (IntPtr context, Foundation.NSDictionary options);

Type Changed: SceneKit.SCNSceneRenderer

Removed property:

public virtual IntPtr Context { get; }

Type Changed: SceneKit.SCNSceneRenderer_Extensions

Added method:

public static SCNHitTestResult[] HitTest (ISCNSceneRenderer This, CoreGraphics.CGPoint thePoint, SCNHitTestOptions options);

Type Changed: SceneKit.SCNShadable

Added property:

public virtual Foundation.NSNumber MinimumLanguageVersion { get; set; }

Type Changed: SceneKit.SCNShadable_Extensions

Added methods:

public static Foundation.NSNumber GetMinimumLanguageVersion (this ISCNShadable This);
public static void SetMinimumLanguageVersion (this ISCNShadable This, Foundation.NSNumber value);

Type Changed: SceneKit.SCNTechnique

Added method:

public virtual void RemoveAllAnimationsWithBlendOutDuration (nfloat duration);

Type Changed: SceneKit.SCNView

Removed property:

public virtual IntPtr Context { get; }

Namespace Security

Type Changed: Security.SecCertificate

Removed method:

public SecKey GetPublicKey ();

Namespace SensorKit

Type Changed: SensorKit.SRApplicationUsage

Added properties:

public virtual string ReportApplicationIdentifier { get; }
public virtual SRTextInputSession[] TextInputSessions { get; }

Type Changed: SensorKit.SRKeyboardMetrics

Added properties:

public virtual string[] InputModes { get; }
public virtual double PathTypingSpeed { get; }
public virtual nint TotalPathPauses { get; }
public virtual nint TotalPauses { get; }
public virtual nint TotalTypingEpisodes { get; }
public virtual double TypingSpeed { get; }

Added methods:

public virtual nint EmojiCount (SRKeyboardMetricsSentimentCategory category);
public virtual nint WordCount (SRKeyboardMetricsSentimentCategory category);

Type Changed: SensorKit.SRSensor

Added values:

SiriSpeechMetrics = 10,
TelephonySpeechMetrics = 11,

New Type: SensorKit.SRKeyboardMetricsSentimentCategory

[Serializable]
public enum SRKeyboardMetricsSentimentCategory {
	Absolutist = 0,
	Anger = 4,
	Anxiety = 3,
	Confused = 9,
	Death = 2,
	Down = 1,
	Health = 5,
	LowEnergy = 8,
	Positive = 6,
	Sad = 7,
}

New Type: SensorKit.SRTextInputSession

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

New Type: SensorKit.SRTextInputSessionType

[Serializable]
public enum SRTextInputSessionType {
	Dictation = 4,
	Keyboard = 1,
	Pencil = 3,
	ThirdPartyKeyboard = 2,
}

Namespace Social

Type Changed: Social.SLComposeSheetConfigurationItem

Added method:

[Obsolete ("Use the 'TapHandler' property.")]
public virtual void SetTapHandler (System.Action tapHandler);

Namespace SoundAnalysis

Type Changed: SoundAnalysis.SNClassificationResult

Added method:

public virtual SNClassification GetClassification (string identifier);

Type Changed: SoundAnalysis.SNClassifySoundRequest

Added constructor:

public SNClassifySoundRequest (string classifierIdentifier, out Foundation.NSError error);

Added properties:

public virtual string[] KnownClassifications { get; }
public virtual CoreMedia.CMTime WindowDuration { get; set; }
public virtual SNTimeDurationConstraint WindowDurationConstraint { get; }

New Type: SoundAnalysis.SNClassifierIdentifier

[Serializable]
public enum SNClassifierIdentifier {
	Version1 = 0,
}

New Type: SoundAnalysis.SNClassifierIdentifierExtensions

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

New Type: SoundAnalysis.SNTimeDurationConstraint

public class SNTimeDurationConstraint : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public SNTimeDurationConstraint (CoreMedia.CMTimeRange durationRange);
	public SNTimeDurationConstraint (CoreMedia.CMTime[] enumeratedDurations);
	protected SNTimeDurationConstraint (Foundation.NSObjectFlag t);
	protected SNTimeDurationConstraint (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual CoreMedia.CMTimeRange DurationRange {
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment