Skip to content

Instantly share code, notes, and snippets.

@vs-mobiletools-engineering-service2
Created September 11, 2024 12:55
Show Gist options
  • Save vs-mobiletools-engineering-service2/4f91cf641de97e5e3629e1c39acde6d2 to your computer and use it in GitHub Desktop.
Save vs-mobiletools-engineering-service2/4f91cf641de97e5e3629e1c39acde6d2 to your computer and use it in GitHub Desktop.
stable-api-comparison/diff/dotnet/Microsoft.MacCatalyst.Ref/ref/net8.0/Microsoft.MacCatalyst.md

API diff: Microsoft.MacCatalyst.dll

Microsoft.MacCatalyst.dll

Assembly Version Changed: 17.2.0.0 -> 18.0.0.0

Namespace AVFoundation

Type Changed: AVFoundation.AVAssetDownloadDelegate

Added methods:

public virtual void DidReceiveInformationalResponse (Foundation.NSUrlSession session, Foundation.NSUrlSessionTask task, Foundation.NSHttpUrlResponse response);
public virtual void NeedNewBodyStream (Foundation.NSUrlSession session, Foundation.NSUrlSessionTask task, long offset, System.Action<Foundation.NSInputStream> completionHandler);

Type Changed: AVFoundation.AVAudioEnvironmentNode

Added property:

public virtual bool ListenerHeadTrackingEnabled { get; set; }

Type Changed: AVFoundation.AVAudioFile

Added property:

public virtual bool IsOpen { get; }

Added method:

public virtual void Close ();

Type Changed: AVFoundation.AVAudioSessionInterruptionReason

Added value:

RouteDisconnected = 4,

Type Changed: AVFoundation.AVAudioSourceNode

Obsoleted constructors:

 [Obsolete ("Use the overload that takes a delegate that does not take a 'ref AudioBuffers' instead. Assigning a value to the 'inputData' parameter in the callback has no effect.")]
 public AVAudioSourceNode (AVAudioSourceNodeRenderHandler renderHandler);
 [Obsolete ("Use the overload that takes a delegate that does not take a 'ref AudioBuffers' instead. Assigning a value to the 'inputData' parameter in the callback has no effect.")]
 public AVAudioSourceNode (AVAudioFormat format, AVAudioSourceNodeRenderHandler renderHandler);

Added constructors:

public AVAudioSourceNode (AVAudioSourceNodeRenderHandler3 renderHandler);
public AVAudioSourceNode (AVAudioSourceNodeRenderHandlerRaw renderHandler);
public AVAudioSourceNode (AVAudioFormat format, AVAudioSourceNodeRenderHandler3 renderHandler);
public AVAudioSourceNode (AVAudioFormat format, AVAudioSourceNodeRenderHandlerRaw renderHandler);

Type Changed: AVFoundation.AVPlayerItemErrorLogEvent

Added property:

public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSString> AllHttpResponseHeaderFields { get; }

Type Changed: AVFoundation.AVSpeechSynthesizer

Obsoleted methods:

 [Obsolete ("Do not use this API, it doesn't work correctly. Use the non-Async version (WriteUtterance) instead.")]
 public virtual System.Threading.Tasks.Task<AVAudioBuffer> WriteUtteranceAsync (AVSpeechUtterance utterance);

Type Changed: AVFoundation.IAVAssetDownloadDelegate

Added methods:

public virtual void DidCompleteForMediaSelection (Foundation.NSUrlSession session, AVAggregateAssetDownloadTask aggregateAssetDownloadTask, AVMediaSelection mediaSelection);
public virtual void DidFinishDownloadingToUrl (Foundation.NSUrlSession session, AVAssetDownloadTask assetDownloadTask, Foundation.NSUrl location);
public virtual void DidLoadTimeRange (Foundation.NSUrlSession session, AVAssetDownloadTask assetDownloadTask, CoreMedia.CMTimeRange timeRange, Foundation.NSValue[] loadedTimeRanges, CoreMedia.CMTimeRange timeRangeExpectedToLoad);
public virtual void DidLoadTimeRange (Foundation.NSUrlSession session, AVAggregateAssetDownloadTask aggregateAssetDownloadTask, CoreMedia.CMTimeRange timeRange, Foundation.NSValue[] loadedTimeRanges, CoreMedia.CMTimeRange timeRangeExpectedToLoad, AVMediaSelection mediaSelection);
public virtual void DidResolveMediaSelection (Foundation.NSUrlSession session, AVAssetDownloadTask assetDownloadTask, AVMediaSelection resolvedMediaSelection);
public virtual void WillDownloadToUrl (Foundation.NSUrlSession session, AVAggregateAssetDownloadTask aggregateAssetDownloadTask, Foundation.NSUrl location);
public virtual void WillDownloadVariants (Foundation.NSUrlSession session, AVAssetDownloadTask assetDownloadTask, AVAssetVariant[] variants);

Type Changed: AVFoundation.IAVAssetResourceLoaderDelegate

Added methods:

public virtual void DidCancelAuthenticationChallenge (AVAssetResourceLoader resourceLoader, Foundation.NSUrlAuthenticationChallenge authenticationChallenge);
public virtual void DidCancelLoadingRequest (AVAssetResourceLoader resourceLoader, AVAssetResourceLoadingRequest loadingRequest);
public virtual bool ShouldWaitForLoadingOfRequestedResource (AVAssetResourceLoader resourceLoader, AVAssetResourceLoadingRequest loadingRequest);
public virtual bool ShouldWaitForRenewalOfRequestedResource (AVAssetResourceLoader resourceLoader, AVAssetResourceRenewalRequest renewalRequest);
public virtual bool ShouldWaitForResponseToAuthenticationChallenge (AVAssetResourceLoader resourceLoader, Foundation.NSUrlAuthenticationChallenge authenticationChallenge);

Type Changed: AVFoundation.IAVAssetWriterDelegate

Added methods:

public virtual void DidOutputSegmentData (AVAssetWriter writer, Foundation.NSData segmentData, AVAssetSegmentType segmentType);
public virtual void DidOutputSegmentData (AVAssetWriter writer, Foundation.NSData segmentData, AVAssetSegmentType segmentType, AVAssetSegmentReport segmentReport);

Type Changed: AVFoundation.IAVAsynchronousKeyValueLoading

Modified methods:

-public abstract AVKeyValueStatus GetStatusOfValue (string forKey, out Foundation.NSError error)
+public virtual AVKeyValueStatus GetStatusOfValue (string forKey, out Foundation.NSError error)
-public abstract void LoadValuesAsynchronously (string[] keys, System.Action handler)
+public virtual void LoadValuesAsynchronously (string[] keys, System.Action handler)

Type Changed: AVFoundation.IAVAudio3DMixing

Modified properties:

-public abstract float Obstruction { get; set; }
+public virtual float Obstruction { get; set; }
-public abstract float Occlusion { get; set; }
+public virtual float Occlusion { get; set; }
-public abstract AVAudio3DMixingPointSourceInHeadMode PointSourceInHeadMode { get; set; }
+public virtual AVAudio3DMixingPointSourceInHeadMode PointSourceInHeadMode { get; set; }
-public abstract System.Numerics.Vector3 Position { get; set; }
+public virtual System.Numerics.Vector3 Position { get; set; }
-public abstract float Rate { get; set; }
+public virtual float Rate { get; set; }
-public abstract AVAudio3DMixingRenderingAlgorithm RenderingAlgorithm { get; set; }
+public virtual AVAudio3DMixingRenderingAlgorithm RenderingAlgorithm { get; set; }
-public abstract float ReverbBlend { get; set; }
+public virtual float ReverbBlend { get; set; }
-public abstract AVAudio3DMixingSourceMode SourceMode { get; set; }
+public virtual AVAudio3DMixingSourceMode SourceMode { get; set; }

Type Changed: AVFoundation.IAVAudioMixing

Modified properties:

-public abstract float Volume { get; set; }
+public virtual float Volume { get; set; }

Modified methods:

-public abstract AVAudioMixingDestination DestinationForMixer (AVAudioNode mixer, UIntPtr bus)
+public virtual AVAudioMixingDestination DestinationForMixer (AVAudioNode mixer, UIntPtr bus)

Type Changed: AVFoundation.IAVAudioPlayerDelegate

Added methods:

public virtual void BeginInterruption (AVAudioPlayer player);
public virtual void DecoderError (AVAudioPlayer player, Foundation.NSError error);
public virtual void EndInterruption (AVAudioPlayer player);
public virtual void EndInterruption (AVAudioPlayer player, AVAudioSessionInterruptionOptions flags);
public virtual void FinishedPlaying (AVAudioPlayer player, bool flag);

Type Changed: AVFoundation.IAVAudioRecorderDelegate

Added methods:

public virtual void BeginInterruption (AVAudioRecorder recorder);
public virtual void EncoderError (AVAudioRecorder recorder, Foundation.NSError error);
public virtual void EndInterruption (AVAudioRecorder recorder);
public virtual void EndInterruption (AVAudioRecorder recorder, AVAudioSessionInterruptionOptions flags);
public virtual void FinishedRecording (AVAudioRecorder recorder, bool flag);

Type Changed: AVFoundation.IAVAudioSessionDelegate

Added methods:

public virtual void BeginInterruption ();
public virtual void EndInterruption ();
public virtual void EndInterruption (AVAudioSessionInterruptionOptions flags);
public virtual void InputIsAvailableChanged (bool isInputAvailable);

Type Changed: AVFoundation.IAVAudioStereoMixing

Modified properties:

-public abstract float Pan { get; set; }
+public virtual float Pan { get; set; }

Type Changed: AVFoundation.IAVCaptureAudioDataOutputSampleBufferDelegate

Added method:

public virtual void DidOutputSampleBuffer (AVCaptureOutput captureOutput, CoreMedia.CMSampleBuffer sampleBuffer, AVCaptureConnection connection);

Type Changed: AVFoundation.IAVCaptureDataOutputSynchronizerDelegate

Modified methods:

-public abstract void DidOutputSynchronizedDataCollection (AVCaptureDataOutputSynchronizer synchronizer, AVCaptureSynchronizedDataCollection synchronizedDataCollection)
+public virtual void DidOutputSynchronizedDataCollection (AVCaptureDataOutputSynchronizer synchronizer, AVCaptureSynchronizedDataCollection synchronizedDataCollection)

Type Changed: AVFoundation.IAVCaptureDepthDataOutputDelegate

Added methods:

public virtual void DidDropDepthData (AVCaptureDepthDataOutput output, AVDepthData depthData, CoreMedia.CMTime timestamp, AVCaptureConnection connection, AVCaptureOutputDataDroppedReason reason);
public virtual void DidOutputDepthData (AVCaptureDepthDataOutput output, AVDepthData depthData, CoreMedia.CMTime timestamp, AVCaptureConnection connection);

Type Changed: AVFoundation.IAVCaptureFileOutputRecordingDelegate

Modified methods:

-public abstract void FinishedRecording (AVCaptureFileOutput captureOutput, Foundation.NSUrl outputFileUrl, Foundation.NSObject[] connections, Foundation.NSError error)
+public virtual void FinishedRecording (AVCaptureFileOutput captureOutput, Foundation.NSUrl outputFileUrl, Foundation.NSObject[] connections, Foundation.NSError error)

Added method:

public virtual void DidStartRecording (AVCaptureFileOutput captureOutput, Foundation.NSUrl outputFileUrl, Foundation.NSObject[] connections);

Type Changed: AVFoundation.IAVCaptureMetadataOutputObjectsDelegate

Added method:

public virtual void DidOutputMetadataObjects (AVCaptureMetadataOutput captureOutput, AVMetadataObject[] metadataObjects, AVCaptureConnection connection);

Type Changed: AVFoundation.IAVCapturePhotoCaptureDelegate

Added methods:

public virtual void DidCapturePhoto (AVCapturePhotoOutput captureOutput, AVCaptureResolvedPhotoSettings resolvedSettings);
public virtual void DidFinishCapture (AVCapturePhotoOutput captureOutput, AVCaptureResolvedPhotoSettings resolvedSettings, Foundation.NSError error);
public virtual void DidFinishProcessingLivePhotoMovie (AVCapturePhotoOutput captureOutput, Foundation.NSUrl outputFileUrl, CoreMedia.CMTime duration, CoreMedia.CMTime photoDisplayTime, AVCaptureResolvedPhotoSettings resolvedSettings, Foundation.NSError error);
public virtual void DidFinishProcessingPhoto (AVCapturePhotoOutput output, AVCapturePhoto photo, Foundation.NSError error);
public virtual void DidFinishProcessingPhoto (AVCapturePhotoOutput captureOutput, CoreMedia.CMSampleBuffer photoSampleBuffer, CoreMedia.CMSampleBuffer previewPhotoSampleBuffer, AVCaptureResolvedPhotoSettings resolvedSettings, AVCaptureBracketedStillImageSettings bracketSettings, Foundation.NSError error);
public virtual void DidFinishProcessingRawPhoto (AVCapturePhotoOutput captureOutput, CoreMedia.CMSampleBuffer rawSampleBuffer, CoreMedia.CMSampleBuffer previewPhotoSampleBuffer, AVCaptureResolvedPhotoSettings resolvedSettings, AVCaptureBracketedStillImageSettings bracketSettings, Foundation.NSError error);
public virtual void DidFinishRecordingLivePhotoMovie (AVCapturePhotoOutput captureOutput, Foundation.NSUrl outputFileUrl, AVCaptureResolvedPhotoSettings resolvedSettings);
public virtual void WillBeginCapture (AVCapturePhotoOutput captureOutput, AVCaptureResolvedPhotoSettings resolvedSettings);
public virtual void WillCapturePhoto (AVCapturePhotoOutput captureOutput, AVCaptureResolvedPhotoSettings resolvedSettings);

Type Changed: AVFoundation.IAVCapturePhotoFileDataRepresentationCustomizer

Added methods:

public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> GetReplacementAppleProRawCompressionSettings (AVCapturePhoto photo, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> defaultSettings, IntPtr maximumBitDepth);
public virtual AVDepthData GetReplacementDepthData (AVCapturePhoto photo);
public virtual CoreVideo.CVPixelBuffer GetReplacementEmbeddedThumbnail (out Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> replacementEmbeddedThumbnailPhotoFormatOut, AVCapturePhoto photo);
public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> GetReplacementMetadata (AVCapturePhoto photo);
public virtual AVPortraitEffectsMatte GetReplacementPortraitEffectsMatte (AVCapturePhoto photo);
public virtual AVSemanticSegmentationMatte GetReplacementSemanticSegmentationMatte (Foundation.NSString semanticSegmentationMatteType, AVCapturePhoto photo);

Type Changed: AVFoundation.IAVCaptureVideoDataOutputSampleBufferDelegate

Added methods:

public virtual void DidDropSampleBuffer (AVCaptureOutput captureOutput, CoreMedia.CMSampleBuffer sampleBuffer, AVCaptureConnection connection);
public virtual void DidOutputSampleBuffer (AVCaptureOutput captureOutput, CoreMedia.CMSampleBuffer sampleBuffer, AVCaptureConnection connection);

Type Changed: AVFoundation.IAVContentKeyRecipient

Modified properties:

-public abstract bool MayRequireContentKeysForMediaDataProcessing { get; }
+public virtual bool MayRequireContentKeysForMediaDataProcessing { get; }

Added method:

public virtual void DidProvideContentKey (AVContentKeySession contentKeySession, AVContentKey contentKey);

Type Changed: AVFoundation.IAVContentKeySessionDelegate

Modified methods:

-public abstract void DidProvideContentKeyRequest (AVContentKeySession session, AVContentKeyRequest keyRequest)
+public virtual void DidProvideContentKeyRequest (AVContentKeySession session, AVContentKeyRequest keyRequest)

Added methods:

public virtual void DidChange (AVContentKeySession session);
public virtual void DidFail (AVContentKeySession session, AVContentKeyRequest keyRequest, Foundation.NSError err);
public virtual void DidGenerateExpiredSessionReport (AVContentKeySession session);
public virtual void DidProvidePersistableContentKeyRequest (AVContentKeySession session, AVPersistableContentKeyRequest keyRequest);
public virtual void DidProvideRenewingContentKeyRequest (AVContentKeySession session, AVContentKeyRequest keyRequest);
public virtual void DidSucceed (AVContentKeySession session, AVContentKeyRequest keyRequest);
public virtual void DidUpdate (AVContentKeySession session, Foundation.NSData persistableContentKey, Foundation.NSObject keyIdentifier);
public virtual bool ShouldRetryContentKeyRequest (AVContentKeySession session, AVContentKeyRequest keyRequest, string retryReason);

Type Changed: AVFoundation.IAVFragmentMinding

Modified methods:

-public abstract bool IsAssociatedWithFragmentMinder ()
+public virtual bool IsAssociatedWithFragmentMinder ()

Type Changed: AVFoundation.IAVPlaybackCoordinatorPlaybackControlDelegate

Modified methods:

-public abstract void DidIssueBufferingCommand (AVDelegatingPlaybackCoordinator coordinator, AVDelegatingPlaybackCoordinatorBufferingCommand bufferingCommand, System.Action completionHandler)
+public virtual void DidIssueBufferingCommand (AVDelegatingPlaybackCoordinator coordinator, AVDelegatingPlaybackCoordinatorBufferingCommand bufferingCommand, System.Action completionHandler)
-public abstract void DidIssuePauseCommand (AVDelegatingPlaybackCoordinator coordinator, AVDelegatingPlaybackCoordinatorPauseCommand pauseCommand, System.Action completionHandler)
+public virtual void DidIssuePauseCommand (AVDelegatingPlaybackCoordinator coordinator, AVDelegatingPlaybackCoordinatorPauseCommand pauseCommand, System.Action completionHandler)
-public abstract void DidIssuePlayCommand (AVDelegatingPlaybackCoordinator coordinator, AVDelegatingPlaybackCoordinatorPlayCommand playCommand, System.Action completionHandler)
+public virtual void DidIssuePlayCommand (AVDelegatingPlaybackCoordinator coordinator, AVDelegatingPlaybackCoordinatorPlayCommand playCommand, System.Action completionHandler)
-public abstract void DidIssueSeekCommand (AVDelegatingPlaybackCoordinator coordinator, AVDelegatingPlaybackCoordinatorSeekCommand seekCommand, System.Action completionHandler)
+public virtual void DidIssueSeekCommand (AVDelegatingPlaybackCoordinator coordinator, AVDelegatingPlaybackCoordinatorSeekCommand seekCommand, System.Action completionHandler)

Type Changed: AVFoundation.IAVPlayerItemLegibleOutputPushDelegate

Added method:

public virtual void DidOutputAttributedStrings (AVPlayerItemLegibleOutput output, Foundation.NSAttributedString[] strings, CoreMedia.CMSampleBuffer[] nativeSamples, CoreMedia.CMTime itemTime);

Type Changed: AVFoundation.IAVPlayerItemMetadataCollectorPushDelegate

Modified methods:

-public abstract void DidCollectDateRange (AVPlayerItemMetadataCollector metadataCollector, AVDateRangeMetadataGroup[] metadataGroups, Foundation.NSIndexSet indexesOfNewGroups, Foundation.NSIndexSet indexesOfModifiedGroups)
+public virtual void DidCollectDateRange (AVPlayerItemMetadataCollector metadataCollector, AVDateRangeMetadataGroup[] metadataGroups, Foundation.NSIndexSet indexesOfNewGroups, Foundation.NSIndexSet indexesOfModifiedGroups)

Type Changed: AVFoundation.IAVPlayerItemMetadataOutputPushDelegate

Added method:

public virtual void DidOutputTimedMetadataGroups (AVPlayerItemMetadataOutput output, AVTimedMetadataGroup[] groups, AVPlayerItemTrack track);

Type Changed: AVFoundation.IAVPlayerItemOutputPullDelegate

Added methods:

public virtual void OutputMediaDataWillChange (AVPlayerItemOutput sender);
public virtual void OutputSequenceWasFlushed (AVPlayerItemOutput output);

Type Changed: AVFoundation.IAVPlayerItemOutputPushDelegate

Added method:

public virtual void OutputSequenceWasFlushed (AVPlayerItemOutput output);

Type Changed: AVFoundation.IAVPlayerPlaybackCoordinatorDelegate

Added methods:

public virtual string GetIdentifier (AVPlayerPlaybackCoordinator coordinator, AVPlayerItem playerItem);
public virtual Foundation.NSValue[] GetInterstitialTimeRanges (AVPlayerPlaybackCoordinator coordinator, AVPlayerItem playerItem);

Type Changed: AVFoundation.IAVQueuedSampleBufferRendering

Modified properties:

-public abstract bool HasSufficientMediaDataForReliablePlaybackStart { get; }
+public virtual bool HasSufficientMediaDataForReliablePlaybackStart { get; }
-public abstract bool ReadyForMoreMediaData { get; }
+public virtual bool ReadyForMoreMediaData { get; }
-public abstract CoreMedia.CMTimebase Timebase { get; }
+public virtual CoreMedia.CMTimebase Timebase { get; }

Modified methods:

-public abstract void Enqueue (CoreMedia.CMSampleBuffer sampleBuffer)
+public virtual void Enqueue (CoreMedia.CMSampleBuffer sampleBuffer)
-public abstract void Flush ()
+public virtual void Flush ()
-public abstract void RequestMediaData (CoreFoundation.DispatchQueue queue, System.Action handler)
+public virtual void RequestMediaData (CoreFoundation.DispatchQueue queue, System.Action handler)
-public abstract void StopRequestingMediaData ()
+public virtual void StopRequestingMediaData ()

Type Changed: AVFoundation.IAVSpeechSynthesizerDelegate

Added methods:

public virtual void DidCancelSpeechUtterance (AVSpeechSynthesizer synthesizer, AVSpeechUtterance utterance);
public virtual void DidContinueSpeechUtterance (AVSpeechSynthesizer synthesizer, AVSpeechUtterance utterance);
public virtual void DidFinishSpeechUtterance (AVSpeechSynthesizer synthesizer, AVSpeechUtterance utterance);
public virtual void DidPauseSpeechUtterance (AVSpeechSynthesizer synthesizer, AVSpeechUtterance utterance);
public virtual void DidStartSpeechUtterance (AVSpeechSynthesizer synthesizer, AVSpeechUtterance utterance);
public virtual void WillSpeakRangeOfSpeechString (AVSpeechSynthesizer synthesizer, Foundation.NSRange characterRange, AVSpeechUtterance utterance);

Type Changed: AVFoundation.IAVVideoCompositing

Added properties:

public virtual bool CanConformColorOfSourceFrames { get; }
public virtual bool SupportsHdrSourceFrames { get; }
public virtual bool SupportsWideColorSourceFrames { get; }

Modified methods:

-public abstract void RenderContextChanged (AVVideoCompositionRenderContext newRenderContext)
+public virtual void RenderContextChanged (AVVideoCompositionRenderContext newRenderContext)
-public abstract Foundation.NSDictionary RequiredPixelBufferAttributesForRenderContext ()
+public virtual Foundation.NSDictionary RequiredPixelBufferAttributesForRenderContext ()
-public abstract Foundation.NSDictionary SourcePixelBufferAttributes ()
+public virtual Foundation.NSDictionary SourcePixelBufferAttributes ()
-public abstract void StartVideoCompositionRequest (AVAsynchronousVideoCompositionRequest asyncVideoCompositionRequest)
+public virtual void StartVideoCompositionRequest (AVAsynchronousVideoCompositionRequest asyncVideoCompositionRequest)

Added methods:

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

Type Changed: AVFoundation.IAVVideoCompositionValidationHandling

Added methods:

public virtual bool ShouldContinueValidatingAfterFindingEmptyTimeRange (AVVideoComposition videoComposition, CoreMedia.CMTimeRange timeRange);
public virtual bool ShouldContinueValidatingAfterFindingInvalidTimeRangeInInstruction (AVVideoComposition videoComposition, AVVideoCompositionInstruction videoCompositionInstruction);
public virtual bool ShouldContinueValidatingAfterFindingInvalidTrackIDInInstruction (AVVideoComposition videoComposition, AVVideoCompositionInstruction videoCompositionInstruction, AVVideoCompositionLayerInstruction layerInstruction, AVAsset asset);
public virtual bool ShouldContinueValidatingAfterFindingInvalidValueForKey (AVVideoComposition videoComposition, string key);

New Type: AVFoundation.AVAudioSourceNodeRenderHandler3

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

New Type: AVFoundation.AVAudioSourceNodeRenderHandlerRaw

public sealed delegate AVAudioSourceNodeRenderHandlerRaw : System.MulticastDelegate {
	// constructors
	public AVAudioSourceNodeRenderHandlerRaw (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (IntPtr isSilence, IntPtr timestamp, uint frameCount, IntPtr outputData, System.AsyncCallback callback, object object);
	public virtual int EndInvoke (System.IAsyncResult result);
	public virtual int Invoke (IntPtr isSilence, IntPtr timestamp, uint frameCount, IntPtr outputData);
}

New Type: AVFoundation.AVSampleCursor

public class AVSampleCursor : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	protected AVSampleCursor (Foundation.NSObjectFlag t);
	protected AVSampleCursor (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual AVSampleCursorChunkInfo CurrentChunkInfo { get; }
	public virtual AVSampleCursorStorageRange CurrentChunkStorageRange { get; }
	public virtual Foundation.NSUrl CurrentChunkStorageUrl { get; }
	public virtual AVSampleCursorAudioDependencyInfo CurrentSampleAudioDependencyInfo { get; }
	public virtual Foundation.NSDictionary CurrentSampleDependencyAttachments { get; }
	public AVSampleCursorDependencyInfo CurrentSampleDependencyInfo2 { get; }
	public virtual CoreMedia.CMTime CurrentSampleDuration { get; }
	public virtual long CurrentSampleIndexInChunk { get; }
	public virtual AVSampleCursorStorageRange CurrentSampleStorageRange { get; }
	public virtual AVSampleCursorSyncInfo CurrentSampleSyncInfo { get; }
	public virtual CoreMedia.CMTime DecodeTimeStamp { get; }
	public virtual CoreMedia.CMTime PresentationTimeStamp { get; }
	public virtual IntPtr SamplesRequiredForDecoderRefresh { get; }
	// methods
	public virtual Foundation.NSComparisonResult ComparePositionInDecodeOrder (AVSampleCursor positionOfCursor);
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual CoreMedia.CMFormatDescription CopyCurrentSampleFormatDescription ();
	public virtual bool SamplesWithEarlierDecodeTimeStampsMayHaveLaterPresentationTimeStampsThan (AVSampleCursor positionOfCursor);
	public virtual bool SamplesWithLaterDecodeTimeStampsMayHaveEarlierPresentationTimeStampsThan (AVSampleCursor positionOfCursor);
	public virtual CoreMedia.CMTime StepByDecodeTime (CoreMedia.CMTime deltaDecodeTime, out bool wasPinned);
	public virtual CoreMedia.CMTime StepByPresentationTime (CoreMedia.CMTime deltaPresentationTime, out bool wasPinned);
	public virtual long StepInDecodeOrder (long stepCount);
	public virtual long StepInPresentationOrder (long stepCount);
}

New Type: AVFoundation.AVSampleCursorChunkInfo

public struct AVSampleCursorChunkInfo {
	// fields
	public bool HasUniformFormatDescriptions;
	public bool HasUniformSampleDurations;
	public bool HasUniformSampleSizes;
	public long SampleCount;
}

New Type: AVFoundation.AVSampleCursorDependencyInfo

public struct AVSampleCursorDependencyInfo {
	// fields
	public bool DependsOnOthers;
	public bool HasDependentSamples;
	public bool HasRedundantCoding;
	public bool IndicatesWhetherItDependsOnOthers;
	public bool IndicatesWhetherItHasDependentSamples;
	public bool IndicatesWhetherItHasRedundantCoding;
}

New Type: AVFoundation.AVSampleCursorStorageRange

public struct AVSampleCursorStorageRange {
	// fields
	public long Length;
	public long Offset;
}

New Type: AVFoundation.AVSampleCursorSyncInfo

public struct AVSampleCursorSyncInfo {
	// fields
	public bool IsDroppable;
	public bool IsFullSync;
	public bool IsPartialSync;
}

Namespace AVKit

Type Changed: AVKit.AVKitError

Added value:

RecordingFailed = -1200,

Type Changed: AVKit.AVPlayerViewController

Added properties:

public virtual UIKit.UIAction ToggleLookupAction { get; }
public virtual AVVideoFrameAnalysisType VideoFrameAnalysisTypes { get; set; }

Type Changed: AVKit.IAVCustomRoutingControllerDelegate

Modified methods:

-public abstract void HandleEvent (AVRouting.AVCustomRoutingController controller, AVRouting.AVCustomRoutingEvent event, AVCustomRoutingControllerDelegateCompletionHandler completionHandler)
+public virtual void HandleEvent (AVRouting.AVCustomRoutingController controller, AVRouting.AVCustomRoutingEvent event, AVCustomRoutingControllerDelegateCompletionHandler completionHandler)

Added methods:

public virtual void DidSelectItem (AVRouting.AVCustomRoutingController controller, AVRouting.AVCustomRoutingActionItem customActionItem);
public virtual void EventDidTimeOut (AVRouting.AVCustomRoutingController controller, AVRouting.AVCustomRoutingEvent event);

Type Changed: AVKit.IAVPictureInPictureControllerDelegate

Added methods:

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

Type Changed: AVKit.IAVPictureInPictureSampleBufferPlaybackDelegate

Modified methods:

-public abstract void DidTransitionToRenderSize (AVPictureInPictureController pictureInPictureController, CoreMedia.CMVideoDimensions newRenderSize)
+public virtual void DidTransitionToRenderSize (AVPictureInPictureController pictureInPictureController, CoreMedia.CMVideoDimensions newRenderSize)
-public abstract CoreMedia.CMTimeRange GetTimeRange (AVPictureInPictureController pictureInPictureController)
+public virtual CoreMedia.CMTimeRange GetTimeRange (AVPictureInPictureController pictureInPictureController)
-public abstract bool IsPlaybackPaused (AVPictureInPictureController pictureInPictureController)
+public virtual bool IsPlaybackPaused (AVPictureInPictureController pictureInPictureController)
-public abstract void SetPlaying (AVPictureInPictureController pictureInPictureController, bool playing)
+public virtual void SetPlaying (AVPictureInPictureController pictureInPictureController, bool playing)
-public abstract void SkipByInterval (AVPictureInPictureController pictureInPictureController, CoreMedia.CMTime skipInterval, System.Action completionHandler)
+public virtual void SkipByInterval (AVPictureInPictureController pictureInPictureController, CoreMedia.CMTime skipInterval, System.Action completionHandler)

Added method:

public virtual bool ShouldProhibitBackgroundAudioPlayback (AVPictureInPictureController pictureInPictureController);

Type Changed: AVKit.IAVPlayerViewControllerDelegate

Added methods:

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

Type Changed: AVKit.IAVRoutePickerViewDelegate

Added methods:

public virtual void DidEndPresentingRoutes (AVRoutePickerView routePickerView);
public virtual void WillBeginPresentingRoutes (AVRoutePickerView routePickerView);

New Type: AVKit.AVVideoFrameAnalysisType

[Serializable]
public enum AVVideoFrameAnalysisType {
	AVVideoFrameAnalysisTypeDefault = 1,
	AVVideoFrameAnalysisTypeMachineReadableCode = 16,
	AVVideoFrameAnalysisTypeNone = 0,
	AVVideoFrameAnalysisTypeSubject = 4,
	AVVideoFrameAnalysisTypeText = 2,
	AVVideoFrameAnalysisTypeVisualSearch = 8,
}

Namespace Accessibility

Type Changed: Accessibility.AXHearingUtilities

Added method:

public static byte AXSupportsBidirectionalAXMFiHearingDeviceStreaming ();

Type Changed: Accessibility.AXPrefers

Added property:

public static Foundation.NSString NonBlinkingTextInsertionIndicatorDidChangeNotification { get; }

Added method:

public static bool NonBlinkingTextInsertionIndicator ();

Type Changed: Accessibility.AXPrefers.Notifications

Added methods:

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

Type Changed: Accessibility.IAXBrailleMapRenderer

Added properties:

public virtual CoreGraphics.CGRect AccessibilityBrailleMapRenderRegion { get; set; }
public virtual System.Action<AXBrailleMap> AccessibilityBrailleMapRenderer { get; set; }

Type Changed: Accessibility.IAXChart

Modified properties:

-public abstract AXChartDescriptor AccessibilityChartDescriptor { get; set; }
+public virtual AXChartDescriptor AccessibilityChartDescriptor { get; set; }

Type Changed: Accessibility.IAXCustomContentProvider

Modified properties:

-public abstract AXCustomContent[] AccessibilityCustomContent { get; set; }
+public virtual AXCustomContent[] AccessibilityCustomContent { get; set; }

Added property:

public virtual System.Func<AXCustomContent[]> AccessibilityCustomContentHandler { get; set; }

Type Changed: Accessibility.IAXDataAxisDescriptor

Modified properties:

-public abstract Foundation.NSAttributedString AttributedTitle { get; set; }
+public virtual Foundation.NSAttributedString AttributedTitle { get; set; }
-public abstract string Title { get; set; }
+public virtual string Title { get; set; }

New Type: Accessibility.AXRequest

public class AXRequest : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public AXRequest (Foundation.NSCoder coder);
	protected AXRequest (Foundation.NSObjectFlag t);
	protected AXRequest (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public static AXRequest Current { get; }
	public virtual AXTechnology Technology { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Accessibility.AXSettings

public static class AXSettings {
	// properties
	public static bool IsAssistiveAccessEnabled { get; }
	// methods
	public static void OpenSettingsFeature (AXSettingsFeature feature, System.Action<Foundation.NSError> completionHandler);
}

New Type: Accessibility.AXSettingsFeature

[Serializable]
public enum AXSettingsFeature {
	PersonalVoiceAllowAppsToRequestToUse = 1,
}

New Type: Accessibility.AXTechnology

[Serializable]
public enum AXTechnology {
	Automation = 5,
	FullKeyboardAccess = 3,
	HoverText = 6,
	SpeakScreen = 4,
	SwitchControl = 1,
	VoiceControl = 2,
	VoiceOver = 0,
	Zoom = 7,
}

New Type: Accessibility.AXTechnologyExtensions

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

Namespace AppKit

Type Changed: AppKit.INSAccessibilityColor

Modified properties:

-public abstract string AccessibilityName { get; }
+public virtual string AccessibilityName { get; }

Type Changed: AppKit.INSToolbarDelegate

Added methods:

public virtual string[] AllowedItemIdentifiers (NSToolbar toolbar);
public virtual string[] DefaultItemIdentifiers (NSToolbar toolbar);
public virtual void DidRemoveItem (Foundation.NSNotification notification);
public virtual bool GetItemCanBeInsertedAt (NSToolbar toolbar, string itemIdentifier, IntPtr index);
public virtual Foundation.NSSet<Foundation.NSString> GetToolbarImmovableItemIdentifiers (NSToolbar toolbar);
public virtual string[] SelectableItemIdentifiers (NSToolbar toolbar);
public virtual void WillAddItem (Foundation.NSNotification notification);
public virtual NSToolbarItem WillInsertItem (NSToolbar toolbar, string itemIdentifier, bool willBeInserted);

Type Changed: AppKit.INSTouchBarDelegate

Added method:

public virtual NSTouchBarItem MakeItem (NSTouchBar touchBar, string identifier);

Type Changed: AppKit.INSTouchBarProvider

Modified properties:

-public abstract NSTouchBar TouchBar { get; }
+public virtual NSTouchBar TouchBar { get; }

Namespace AudioToolbox

Type Changed: AudioToolbox.AudioChannelLayoutTag

Added values:

MPEG_5_0_E = 14155781,
MPEG_5_1_E = 14221318,
MPEG_6_1_B = 14286855,
MPEG_7_1_D = 14352392,

Type Changed: AudioToolbox.AudioConverter

Added methods:

public static AudioConverter Create (AudioStreamBasicDescription sourceFormat, AudioStreamBasicDescription destinationFormat, AudioConverterOptions options);
public static AudioConverter Create (AudioStreamBasicDescription sourceFormat, AudioStreamBasicDescription destinationFormat, AudioConverterOptions options, out AudioConverterError error);
public static void Prepare (AudioConverter.PrepareCompletionCallback completionCallback);
public static void Prepare (uint flags, IntPtr ioReserved, AudioConverter.PrepareCompletionCallback completionCallback);

Type Changed: AudioToolbox.AudioFile

Added methods:

public int CountUserData (AudioFileChunkType chunkType);
public AudioFileError GetUserData (AudioFileChunkType chunkType, int index, ref int size, IntPtr userData);
public AudioFileError GetUserData (AudioFileChunkType chunkType, int index, long offset, byte[] data, out int size);
public AudioFileError GetUserData (AudioFileChunkType chunkType, int index, long offset, ref int size, IntPtr userData);
public AudioFileError GetUserData (uint userDataId, int index, long offset, byte[] data, out int size);
public AudioFileError GetUserData (uint userDataId, int index, long offset, ref int size, IntPtr userData);
public int GetUserDataSize (AudioFileChunkType chunkType, int index);
public AudioFileError GetUserDataSize (AudioFileChunkType chunkType, int index, out ulong size);
public AudioFileError GetUserDataSize (uint userDataId, int index, out ulong size);

Type Changed: AudioToolbox.AudioFormatType

Obsoleted fields:

 [Obsolete ("Use 'EnhancedAC3' instead.")]
 EnhancedAES3 = 1700998451,

Added values:

Apac = 1634754915,
EnhancedAC3 = 1700998451,

Type Changed: AudioToolbox.MusicPlayer

Modified methods:

-protected virtual void Dispose (bool disposing)
+protected override void Dispose (bool disposing)

Added methods:

public MusicPlayerStatus GetTime (out double time);
public MusicPlayerStatus SetTime (double time);

New Type: AudioToolbox.AUVoiceIOOtherAudioDuckingLevel

[Serializable]
public enum AUVoiceIOOtherAudioDuckingLevel {
	Default = 0,
	Max = 30,
	Mid = 20,
	Min = 10,
}

New Type: AudioToolbox.AudioConverterOptions

[Serializable]
[Flags]
public enum AudioConverterOptions {
	None = 0,
	Unbuffered = 65536,
}

Namespace AudioUnit

Type Changed: AudioUnit.AUAudioUnit

Added property:

public virtual Foundation.NSData[] MigrateFromPlugin { get; }

Type Changed: AudioUnit.AudioComponentDescription

Modified fields:

 ---[MarshalAs]---
 public AudioComponentManufacturerType ComponentManufacturer;
 ---[MarshalAs]---
 public AudioUnitSubType ComponentSubType;
 ---[MarshalAs]---
 public AudioComponentType ComponentType;

Type Changed: AudioUnit.IAUAudioUnitFactory

Modified methods:

-public abstract AUAudioUnit CreateAudioUnit (AudioComponentDescription desc, out Foundation.NSError error)
+public virtual AUAudioUnit CreateAudioUnit (AudioComponentDescription desc, out Foundation.NSError error)

Namespace AuthenticationServices

Type Changed: AuthenticationServices.ASAuthorizationAppleIdCredential

Added property:

public virtual ASUserAgeRange UserAgeRange { get; }

Type Changed: AuthenticationServices.ASAuthorizationError

Added value:

MatchedExcludedCredential = 1006,

Type Changed: AuthenticationServices.ASAuthorizationPlatformPublicKeyCredentialAssertion

Obsoleted properties:

 [Obsolete ("Use 'LargeBlob2' instead, this property has an incorrect property type..")]
 public virtual ASAuthorizationPublicKeyCredentialLargeBlobRegistrationInput LargeBlob { get; }

Added properties:

public virtual ASAuthorizationPublicKeyCredentialAttachment Attachment { get; }
public ASAuthorizationPublicKeyCredentialLargeBlobAssertionOutput LargeBlob2 { get; }
public virtual ASAuthorizationPublicKeyCredentialPrfAssertionOutput Prf { get; }

Type Changed: AuthenticationServices.ASAuthorizationPlatformPublicKeyCredentialAssertionRequest

Added property:

public virtual ASAuthorizationPublicKeyCredentialPrfAssertionInput Prf { get; set; }

Type Changed: AuthenticationServices.ASAuthorizationPlatformPublicKeyCredentialProvider

Added method:

public virtual void CreateCredentialRegistrationRequest (Foundation.NSData challenge, string name, Foundation.NSData userId, ASAuthorizationPlatformPublicKeyCredentialRegistrationRequestStyle requestStyle);

Type Changed: AuthenticationServices.ASAuthorizationPlatformPublicKeyCredentialRegistration

Added properties:

public virtual ASAuthorizationPublicKeyCredentialAttachment Attachment { get; }
public virtual ASAuthorizationPublicKeyCredentialPrfRegistrationOutput Prf { get; }

Type Changed: AuthenticationServices.ASAuthorizationPlatformPublicKeyCredentialRegistrationRequest

Added properties:

public virtual ASAuthorizationPublicKeyCredentialPrfRegistrationInput Prf { get; set; }
public virtual ASAuthorizationPlatformPublicKeyCredentialRegistrationRequestStyle RequestStyle { get; set; }

Type Changed: AuthenticationServices.ASAuthorizationPublicKeyCredentialLargeBlobRegistrationOutput

Added constructor:

public ASAuthorizationPublicKeyCredentialLargeBlobRegistrationOutput (Foundation.NSCoder coder);

Added interfaces:

Foundation.INSCoding
Foundation.INSCopying
Foundation.INSSecureCoding
ObjCRuntime.INativeObject
System.IDisposable

Added methods:

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

Type Changed: AuthenticationServices.ASAuthorizationSecurityKeyPublicKeyCredentialAssertion

Added property:

public virtual bool AppId { get; }

Type Changed: AuthenticationServices.ASAuthorizationSecurityKeyPublicKeyCredentialAssertionRequest

Added property:

public virtual string AppId { get; set; }

Type Changed: AuthenticationServices.ASAuthorizationSecurityKeyPublicKeyCredentialRegistration

Added property:

public virtual ASAuthorizationSecurityKeyPublicKeyCredentialDescriptorTransport[] Transports { get; }

Added method:

protected override void Dispose (bool disposing);

Type Changed: AuthenticationServices.ASCredentialIdentityStore

Added methods:

public virtual void GetCredentialIdentities (ASCredentialServiceIdentifier serviceIdentifier, ASCredentialIdentityTypes credentialIdentityTypes, ASCredentialIdentityStoreGetCredentialIdentitiesHandler completion);
public virtual System.Threading.Tasks.Task<IASCredentialIdentity[]> GetCredentialIdentitiesAsync (ASCredentialServiceIdentifier serviceIdentifier, ASCredentialIdentityTypes credentialIdentityTypes);

Type Changed: AuthenticationServices.ASCredentialProviderExtensionContext

Added methods:

public virtual void CompleteOneTimeCodeRequest (ASOneTimeCodeCredential credential, System.Action<bool> completionHandler);
public virtual System.Threading.Tasks.Task<bool> CompleteOneTimeCodeRequestAsync (ASOneTimeCodeCredential credential);

Type Changed: AuthenticationServices.ASCredentialProviderViewController

Added methods:

public virtual void PerformPasskeyRegistrationWithoutUserInteractionIfPossible (ASPasskeyCredentialRequest registrationRequest);
public virtual void PrepareOneTimeCodeCredentialList (ASCredentialServiceIdentifier[] serviceIdentifiers);

Type Changed: AuthenticationServices.ASCredentialRequestType

Added values:

OneTimeCode = 3,
PasskeyRegistration = 2,

Type Changed: AuthenticationServices.ASExtensionErrorCode

Added value:

MatchedExcludedCredential = 102,

Type Changed: AuthenticationServices.ASPasskeyAssertionCredential

Added constructor:

public ASPasskeyAssertionCredential (Foundation.NSData userHandle, string relyingParty, Foundation.NSData signature, Foundation.NSData clientDataHash, Foundation.NSData authenticatorData, Foundation.NSData credentialId, ASPasskeyAssertionCredentialExtensionOutput extensionOutput);

Added property:

public virtual ASPasskeyAssertionCredentialExtensionOutput ExtensionOutput { get; set; }

Type Changed: AuthenticationServices.ASPasskeyCredentialRequest

Added constructors:

public ASPasskeyCredentialRequest (ASPasskeyCredentialIdentity credentialIdentity, Foundation.NSData clientDataHash, ASAuthorizationPublicKeyCredentialUserVerificationPreferenceEnum userVerificationPreference, Foundation.NSNumber[] supportedAlgorithms, ASPasskeyAssertionCredentialExtensionInput assertionExtensionInput);
public ASPasskeyCredentialRequest (ASPasskeyCredentialIdentity credentialIdentity, Foundation.NSData clientDataHash, ASAuthorizationPublicKeyCredentialUserVerificationPreferenceEnum userVerificationPreference, Foundation.NSNumber[] supportedAlgorithms, ASPasskeyRegistrationCredentialExtensionInput registrationExtensionInput);

Added properties:

public virtual ASPasskeyAssertionCredentialExtensionInput AssertionExtensionInput { get; }
public virtual ASAuthorizationPlatformPublicKeyCredentialDescriptor[] ExcludedCredentials { get; }
public virtual ASPasskeyRegistrationCredentialExtensionInput RegistrationExtensionInput { get; }

Type Changed: AuthenticationServices.ASPasskeyCredentialRequestParameters

Added property:

public virtual ASPasskeyAssertionCredentialExtensionInput ExtensionInput { get; }

Type Changed: AuthenticationServices.ASPasskeyRegistrationCredential

Added constructor:

public ASPasskeyRegistrationCredential (string relyingParty, Foundation.NSData clientDataHash, Foundation.NSData credentialId, Foundation.NSData attestationObject, ASPasskeyRegistrationCredentialExtensionOutput extensionOutput);

Added property:

public virtual ASPasskeyRegistrationCredentialExtensionOutput ExtensionOutput { get; set; }

Type Changed: AuthenticationServices.ASSettingsHelper

Added methods:

public static void RequestToTurnOnCredentialProviderExtension (ASSettingsHelperRequestToTurnOnCredentialProviderExtensionCallback completionHandler);
public static System.Threading.Tasks.Task<bool> RequestToTurnOnCredentialProviderExtensionAsync ();

Type Changed: AuthenticationServices.ASWebAuthenticationSession

Added constructor:

public ASWebAuthenticationSession (Foundation.NSUrl url, ASWebAuthenticationSessionCallback callback, ASWebAuthenticationSessionCompletionHandler completionHandler);

Added property:

public virtual Foundation.NSDictionary AdditionalHeaderFields { get; set; }

Type Changed: AuthenticationServices.ASWebAuthenticationSessionRequest

Added properties:

public virtual Foundation.NSDictionary AdditionalHeaderFields { get; }
public virtual ASWebAuthenticationSessionCallback Callback { get; }

Type Changed: AuthenticationServices.IASAccountAuthenticationModificationControllerDelegate

Added methods:

public virtual void DidFailRequest (ASAccountAuthenticationModificationController controller, ASAccountAuthenticationModificationRequest request, Foundation.NSError error);
public virtual void DidSuccessfullyCompleteRequest (ASAccountAuthenticationModificationController controller, ASAccountAuthenticationModificationRequest request, Foundation.NSDictionary userInfo);

Type Changed: AuthenticationServices.IASAccountAuthenticationModificationControllerPresentationContextProviding

Modified methods:

-public abstract UIKit.UIWindow GetPresentationAnchor (ASAccountAuthenticationModificationController controller)
+public virtual UIKit.UIWindow GetPresentationAnchor (ASAccountAuthenticationModificationController controller)

Type Changed: AuthenticationServices.IASAuthorizationControllerDelegate

Added methods:

public virtual void DidComplete (ASAuthorizationController controller, ASAuthorization authorization);
public virtual void DidComplete (ASAuthorizationController controller, Foundation.NSError error);

Type Changed: AuthenticationServices.IASAuthorizationControllerPresentationContextProviding

Modified methods:

-public abstract UIKit.UIWindow GetPresentationAnchor (ASAuthorizationController controller)
+public virtual UIKit.UIWindow GetPresentationAnchor (ASAuthorizationController controller)

Type Changed: AuthenticationServices.IASAuthorizationProviderExtensionAuthorizationRequestHandler

Modified methods:

-public abstract void BeginAuthorization (ASAuthorizationProviderExtensionAuthorizationRequest request)
+public virtual void BeginAuthorization (ASAuthorizationProviderExtensionAuthorizationRequest request)

Added method:

public virtual void CancelAuthorization (ASAuthorizationProviderExtensionAuthorizationRequest request);

Type Changed: AuthenticationServices.IASAuthorizationPublicKeyCredentialAssertion

Modified properties:

-public abstract Foundation.NSData RawAuthenticatorData { get; }
+public virtual Foundation.NSData RawAuthenticatorData { get; }
-public abstract Foundation.NSData Signature { get; }
+public virtual Foundation.NSData Signature { get; }
-public abstract Foundation.NSData UserId { get; }
+public virtual Foundation.NSData UserId { get; }

Type Changed: AuthenticationServices.IASAuthorizationPublicKeyCredentialAssertionRequest

Modified properties:

-public abstract IASAuthorizationPublicKeyCredentialDescriptor[] AllowedCredentials { get; set; }
+public virtual IASAuthorizationPublicKeyCredentialDescriptor[] AllowedCredentials { get; set; }
-public abstract Foundation.NSData Challenge { get; set; }
+public virtual Foundation.NSData Challenge { get; set; }
-public abstract string RelyingPartyIdentifier { get; set; }
+public virtual string RelyingPartyIdentifier { get; set; }
-public abstract Foundation.NSString UserVerificationPreference { get; set; }
+public virtual Foundation.NSString UserVerificationPreference { get; set; }

Type Changed: AuthenticationServices.IASAuthorizationPublicKeyCredentialDescriptor

Modified properties:

-public abstract Foundation.NSData CredentialId { get; set; }
+public virtual Foundation.NSData CredentialId { get; set; }

Type Changed: AuthenticationServices.IASAuthorizationPublicKeyCredentialRegistration

Modified properties:

-public abstract Foundation.NSData RawAttestationObject { get; }
+public virtual Foundation.NSData RawAttestationObject { get; }

Type Changed: AuthenticationServices.IASAuthorizationPublicKeyCredentialRegistrationRequest

Modified properties:

-public abstract Foundation.NSString AttestationPreference { get; set; }
+public virtual Foundation.NSString AttestationPreference { get; set; }
-public abstract Foundation.NSData Challenge { get; set; }
+public virtual Foundation.NSData Challenge { get; set; }
-public abstract string DisplayName { get; set; }
+public virtual string DisplayName { get; set; }
-public abstract string Name { get; set; }
+public virtual string Name { get; set; }
-public abstract string RelyingPartyIdentifier { get; }
+public virtual string RelyingPartyIdentifier { get; }
-public abstract Foundation.NSData UserId { get; set; }
+public virtual Foundation.NSData UserId { get; set; }
-public abstract Foundation.NSString UserVerificationPreference { get; set; }
+public virtual Foundation.NSString UserVerificationPreference { get; set; }

Type Changed: AuthenticationServices.IASAuthorizationWebBrowserPlatformPublicKeyCredentialAssertionRequest

Modified properties:

-public abstract ASPublicKeyCredentialClientData ClientData { get; }
+public virtual ASPublicKeyCredentialClientData ClientData { get; }
-public abstract bool ShouldShowHybridTransport { get; set; }
+public virtual bool ShouldShowHybridTransport { get; set; }

Type Changed: AuthenticationServices.IASAuthorizationWebBrowserPlatformPublicKeyCredentialProvider

Modified methods:

-public abstract ASAuthorizationPlatformPublicKeyCredentialAssertionRequest CreateCredentialAssertionRequest (ASPublicKeyCredentialClientData clientData)
+public virtual ASAuthorizationPlatformPublicKeyCredentialAssertionRequest CreateCredentialAssertionRequest (ASPublicKeyCredentialClientData clientData)
-public abstract ASAuthorizationPlatformPublicKeyCredentialRegistrationRequest CreateCredentialRegistrationRequest (ASPublicKeyCredentialClientData clientData, string name, Foundation.NSData userId)
+public virtual ASAuthorizationPlatformPublicKeyCredentialRegistrationRequest CreateCredentialRegistrationRequest (ASPublicKeyCredentialClientData clientData, string name, Foundation.NSData userId)

Added method:

public virtual ASAuthorizationPlatformPublicKeyCredentialRegistrationRequest CreateCredentialRegistrationRequest (ASPublicKeyCredentialClientData clientData, string name, Foundation.NSData userId, ASAuthorizationPlatformPublicKeyCredentialRegistrationRequestStyle requestStyle);

Type Changed: AuthenticationServices.IASAuthorizationWebBrowserPlatformPublicKeyCredentialRegistrationRequest

Modified properties:

-public abstract ASPublicKeyCredentialClientData ClientData { get; }
+public virtual ASPublicKeyCredentialClientData ClientData { get; }
-public abstract ASAuthorizationPlatformPublicKeyCredentialDescriptor[] ExcludedCredentials { get; set; }
+public virtual ASAuthorizationPlatformPublicKeyCredentialDescriptor[] ExcludedCredentials { get; set; }
-public abstract bool ShouldShowHybridTransport { get; set; }
+public virtual bool ShouldShowHybridTransport { get; set; }

Type Changed: AuthenticationServices.IASCredentialIdentity

Modified properties:

-public abstract IntPtr Rank { get; set; }
+public virtual IntPtr Rank { get; set; }
-public abstract string RecordIdentifier { get; }
+public virtual string RecordIdentifier { get; }
-public abstract ASCredentialServiceIdentifier ServiceIdentifier { get; }
+public virtual ASCredentialServiceIdentifier ServiceIdentifier { get; }
-public abstract string User { get; }
+public virtual string User { get; }

Type Changed: AuthenticationServices.IASCredentialRequest

Modified properties:

-public abstract IASCredentialIdentity CredentialIdentity { get; }
+public virtual IASCredentialIdentity CredentialIdentity { get; }
-public abstract ASCredentialRequestType Type { get; }
+public virtual ASCredentialRequestType Type { get; }

Type Changed: AuthenticationServices.IASPublicKeyCredential

Modified properties:

-public abstract Foundation.NSData CredentialId { get; }
+public virtual Foundation.NSData CredentialId { get; }
-public abstract Foundation.NSData RawClientDataJson { get; }
+public virtual Foundation.NSData RawClientDataJson { get; }

Type Changed: AuthenticationServices.IASWebAuthenticationPresentationContextProviding

Modified methods:

-public abstract UIKit.UIWindow GetPresentationAnchor (ASWebAuthenticationSession session)
+public virtual UIKit.UIWindow GetPresentationAnchor (ASWebAuthenticationSession session)

Type Changed: AuthenticationServices.IASWebAuthenticationSessionRequestDelegate

Added methods:

public virtual void DidCancel (ASWebAuthenticationSessionRequest authenticationSessionRequest, Foundation.NSError error);
public virtual void DidComplete (ASWebAuthenticationSessionRequest authenticationSessionRequest, Foundation.NSUrl callbackUrl);

New Type: AuthenticationServices.ASAuthorizationPlatformPublicKeyCredentialRegistrationRequestStyle

[Serializable]
public enum ASAuthorizationPlatformPublicKeyCredentialRegistrationRequestStyle {
	Conditional = 1,
	Standard = 0,
}

New Type: AuthenticationServices.ASAuthorizationPublicKeyCredentialPrfAssertionInput

public class ASAuthorizationPublicKeyCredentialPrfAssertionInput : Foundation.NSObject {
	// constructors
	protected ASAuthorizationPublicKeyCredentialPrfAssertionInput (Foundation.NSObjectFlag t);
	protected ASAuthorizationPublicKeyCredentialPrfAssertionInput (ObjCRuntime.NativeHandle handle);
	public ASAuthorizationPublicKeyCredentialPrfAssertionInput (ASAuthorizationPublicKeyCredentialPrfAssertionInputValues inputValues, Foundation.NSDictionary<Foundation.NSData,AuthenticationServices.ASAuthorizationPublicKeyCredentialPrfAssertionInputValues> perCredentialInputValues);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual ASAuthorizationPublicKeyCredentialPrfAssertionInputValues InputValues { get; }
	public virtual Foundation.NSDictionary<Foundation.NSData,AuthenticationServices.ASAuthorizationPublicKeyCredentialPrfAssertionInputValues> PerCredentialInputValues { get; }
}

New Type: AuthenticationServices.ASAuthorizationPublicKeyCredentialPrfAssertionInputValues

public class ASAuthorizationPublicKeyCredentialPrfAssertionInputValues : Foundation.NSObject {
	// constructors
	protected ASAuthorizationPublicKeyCredentialPrfAssertionInputValues (Foundation.NSObjectFlag t);
	protected ASAuthorizationPublicKeyCredentialPrfAssertionInputValues (ObjCRuntime.NativeHandle handle);
	public ASAuthorizationPublicKeyCredentialPrfAssertionInputValues (Foundation.NSData saltInput1, Foundation.NSData saltInput2);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual Foundation.NSData SaltInput1 { get; }
	public virtual Foundation.NSData SaltInput2 { get; }
}

New Type: AuthenticationServices.ASAuthorizationPublicKeyCredentialPrfAssertionOutput

public class ASAuthorizationPublicKeyCredentialPrfAssertionOutput : Foundation.NSObject {
	// constructors
	protected ASAuthorizationPublicKeyCredentialPrfAssertionOutput (Foundation.NSObjectFlag t);
	protected ASAuthorizationPublicKeyCredentialPrfAssertionOutput (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual Foundation.NSData First { get; }
	public virtual Foundation.NSData Second { get; }
}

New Type: AuthenticationServices.ASAuthorizationPublicKeyCredentialPrfRegistrationInput

public class ASAuthorizationPublicKeyCredentialPrfRegistrationInput : Foundation.NSObject {
	// constructors
	public ASAuthorizationPublicKeyCredentialPrfRegistrationInput (ASAuthorizationPublicKeyCredentialPrfAssertionInputValues inputValues);
	protected ASAuthorizationPublicKeyCredentialPrfRegistrationInput (Foundation.NSObjectFlag t);
	protected ASAuthorizationPublicKeyCredentialPrfRegistrationInput (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual ASAuthorizationPublicKeyCredentialPrfAssertionInputValues InputValues { get; }
	public virtual bool ShouldCheckForSupport { get; }
	// methods
	public static ASAuthorizationPublicKeyCredentialPrfRegistrationInput GetCheckForSupport ();
}

New Type: AuthenticationServices.ASAuthorizationPublicKeyCredentialPrfRegistrationOutput

public class ASAuthorizationPublicKeyCredentialPrfRegistrationOutput : Foundation.NSObject {
	// constructors
	protected ASAuthorizationPublicKeyCredentialPrfRegistrationOutput (Foundation.NSObjectFlag t);
	protected ASAuthorizationPublicKeyCredentialPrfRegistrationOutput (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual Foundation.NSData First { get; }
	public virtual bool IsSupported { get; }
	public virtual Foundation.NSData Second { get; }
}

New Type: AuthenticationServices.ASAuthorizationPublicKeyCredentialUserVerificationPreferenceEnum

[Serializable]
public enum ASAuthorizationPublicKeyCredentialUserVerificationPreferenceEnum {
	Discouraged = 2,
	Preferred = 0,
	Required = 1,
}

New Type: AuthenticationServices.ASAuthorizationPublicKeyCredentialUserVerificationPreferenceEnumExtensions

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

New Type: AuthenticationServices.ASCredentialIdentityStoreGetCredentialIdentitiesHandler

public sealed delegate ASCredentialIdentityStoreGetCredentialIdentitiesHandler : System.MulticastDelegate {
	// constructors
	public ASCredentialIdentityStoreGetCredentialIdentitiesHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (IASCredentialIdentity[] credentialIdentities, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (IASCredentialIdentity[] credentialIdentities);
}

New Type: AuthenticationServices.ASCredentialIdentityTypes

[Serializable]
[Flags]
public enum ASCredentialIdentityTypes {
	All = 0,
	OneTimeCode = 4,
	Passkey = 2,
	Password = 1,
}

New Type: AuthenticationServices.ASOneTimeCodeCredential

public class ASOneTimeCodeCredential : Foundation.NSObject, IASAuthorizationCredential, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public ASOneTimeCodeCredential (Foundation.NSCoder coder);
	protected ASOneTimeCodeCredential (Foundation.NSObjectFlag t);
	protected ASOneTimeCodeCredential (ObjCRuntime.NativeHandle handle);
	public ASOneTimeCodeCredential (string code);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual string Code { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static ASOneTimeCodeCredential Create (string code);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: AuthenticationServices.ASOneTimeCodeCredentialIdentity

public class ASOneTimeCodeCredentialIdentity : Foundation.NSObject, IASCredentialIdentity, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public ASOneTimeCodeCredentialIdentity (Foundation.NSCoder coder);
	protected ASOneTimeCodeCredentialIdentity (Foundation.NSObjectFlag t);
	protected ASOneTimeCodeCredentialIdentity (ObjCRuntime.NativeHandle handle);
	public ASOneTimeCodeCredentialIdentity (ASCredentialServiceIdentifier serviceIdentifier, string label, string recordIdentifier);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual string Label { get; }
	public virtual IntPtr Rank { get; set; }
	public virtual string RecordIdentifier { get; }
	public virtual ASCredentialServiceIdentifier ServiceIdentifier { get; }
	public virtual string User { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: AuthenticationServices.ASOneTimeCodeCredentialRequest

public class ASOneTimeCodeCredentialRequest : Foundation.NSObject, IASCredentialRequest, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public ASOneTimeCodeCredentialRequest (ASOneTimeCodeCredentialIdentity credentialIdentity);
	public ASOneTimeCodeCredentialRequest (Foundation.NSCoder coder);
	protected ASOneTimeCodeCredentialRequest (Foundation.NSObjectFlag t);
	protected ASOneTimeCodeCredentialRequest (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual IASCredentialIdentity CredentialIdentity { get; }
	public virtual ASCredentialRequestType Type { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: AuthenticationServices.ASPasskeyAssertionCredentialExtensionInput

public class ASPasskeyAssertionCredentialExtensionInput : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public ASPasskeyAssertionCredentialExtensionInput (Foundation.NSCoder coder);
	protected ASPasskeyAssertionCredentialExtensionInput (Foundation.NSObjectFlag t);
	protected ASPasskeyAssertionCredentialExtensionInput (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual ASAuthorizationPublicKeyCredentialLargeBlobAssertionInput LargeBlob { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: AuthenticationServices.ASPasskeyAssertionCredentialExtensionOutput

public class ASPasskeyAssertionCredentialExtensionOutput : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public ASPasskeyAssertionCredentialExtensionOutput (ASAuthorizationPublicKeyCredentialLargeBlobAssertionOutput largeBlob);
	public ASPasskeyAssertionCredentialExtensionOutput (Foundation.NSCoder coder);
	protected ASPasskeyAssertionCredentialExtensionOutput (Foundation.NSObjectFlag t);
	protected ASPasskeyAssertionCredentialExtensionOutput (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual ASAuthorizationPublicKeyCredentialLargeBlobAssertionOutput LargeBlobAssertionOutput { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: AuthenticationServices.ASPasskeyRegistrationCredentialExtensionInput

public class ASPasskeyRegistrationCredentialExtensionInput : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public ASPasskeyRegistrationCredentialExtensionInput (Foundation.NSCoder coder);
	protected ASPasskeyRegistrationCredentialExtensionInput (Foundation.NSObjectFlag t);
	protected ASPasskeyRegistrationCredentialExtensionInput (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual ASAuthorizationPublicKeyCredentialLargeBlobRegistrationInput LargeBlob { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: AuthenticationServices.ASPasskeyRegistrationCredentialExtensionOutput

public class ASPasskeyRegistrationCredentialExtensionOutput : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public ASPasskeyRegistrationCredentialExtensionOutput (ASAuthorizationPublicKeyCredentialLargeBlobRegistrationOutput largeBlob);
	public ASPasskeyRegistrationCredentialExtensionOutput (Foundation.NSCoder coder);
	protected ASPasskeyRegistrationCredentialExtensionOutput (Foundation.NSObjectFlag t);
	protected ASPasskeyRegistrationCredentialExtensionOutput (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual ASAuthorizationPublicKeyCredentialLargeBlobRegistrationOutput LargeBlobRegistrationOutput { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: AuthenticationServices.ASSettingsHelperRequestToTurnOnCredentialProviderExtensionCallback

public sealed delegate ASSettingsHelperRequestToTurnOnCredentialProviderExtensionCallback : System.MulticastDelegate {
	// constructors
	public ASSettingsHelperRequestToTurnOnCredentialProviderExtensionCallback (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (bool appWasEnabledForAutofill, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (bool appWasEnabledForAutofill);
}

New Type: AuthenticationServices.ASUserAgeRange

[Serializable]
public enum ASUserAgeRange {
	Child = 1,
	NotChild = 2,
	Unknown = 0,
}

New Type: AuthenticationServices.ASWebAuthenticationSessionCallback

public class ASWebAuthenticationSessionCallback : Foundation.NSObject {
	// constructors
	protected ASWebAuthenticationSessionCallback (Foundation.NSObjectFlag t);
	protected ASWebAuthenticationSessionCallback (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	// methods
	public static ASWebAuthenticationSessionCallback Create (string customScheme);
	public static ASWebAuthenticationSessionCallback Create (string httpsHost, string path);
	public virtual bool MatchesUrl (Foundation.NSUrl url);
}

New Type: AuthenticationServices.IASAuthorizationWebBrowserSecurityKeyPublicKeyCredentialAssertionRequest

public interface IASAuthorizationWebBrowserSecurityKeyPublicKeyCredentialAssertionRequest : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual ASPublicKeyCredentialClientData ClientData { get; }
}

New Type: AuthenticationServices.IASAuthorizationWebBrowserSecurityKeyPublicKeyCredentialProvider

public interface IASAuthorizationWebBrowserSecurityKeyPublicKeyCredentialProvider : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual ASAuthorizationSecurityKeyPublicKeyCredentialAssertionRequest CreateCredentialAssertionRequest (ASPublicKeyCredentialClientData clientData);
	public virtual ASAuthorizationSecurityKeyPublicKeyCredentialRegistrationRequest CreateCredentialRegistrationRequest (ASPublicKeyCredentialClientData clientData, string displayName, string name, Foundation.NSData userId);
}

New Type: AuthenticationServices.IASAuthorizationWebBrowserSecurityKeyPublicKeyCredentialRegistrationRequest

public interface IASAuthorizationWebBrowserSecurityKeyPublicKeyCredentialRegistrationRequest : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual ASPublicKeyCredentialClientData ClientData { get; }
}

Namespace AutomaticAssessmentConfiguration

Type Changed: AutomaticAssessmentConfiguration.AEAssessmentApplication

Added constructor:

public AEAssessmentApplication (string bundleIdentifier);

Type Changed: AutomaticAssessmentConfiguration.AEAssessmentErrorCode

Added values:

ConfigurationUpdatesNotSupported = 4,
MultipleParticipantsNotSupported = 3,

Type Changed: AutomaticAssessmentConfiguration.AEAssessmentParticipantConfiguration

Added property:

public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> ConfigurationInfo { get; set; }

Type Changed: AutomaticAssessmentConfiguration.AEAssessmentSession

Added properties:

public static bool SupportsConfigurationUpdates { get; }
public static bool SupportsMultipleParticipants { get; }

Type Changed: AutomaticAssessmentConfiguration.IAEAssessmentSessionDelegate

Added methods:

public virtual void DidBegin (AEAssessmentSession session);
public virtual void DidEnd (AEAssessmentSession session);
public virtual void DidUpdate (AEAssessmentSession session);
public virtual void FailedToBegin (AEAssessmentSession session, Foundation.NSError error);
public virtual void FailedToUpdate (AEAssessmentSession session, AEAssessmentConfiguration configuration, Foundation.NSError error);
public virtual void WasInterrupted (AEAssessmentSession session, Foundation.NSError error);

Namespace BackgroundAssets

Type Changed: BackgroundAssets.IBADownloadManagerDelegate

Added methods:

public virtual void DidBegin (BADownload download);
public virtual void DidPause (BADownload download);
public virtual void DidReceiveChallenge (BADownload download, Foundation.NSUrlAuthenticationChallenge challenge, System.Action<Foundation.NSUrlSessionAuthChallengeDisposition,Foundation.NSUrlCredential> completionHandler);
public virtual void DidWriteBytes (BADownload download, long bytesWritten, long totalBytesWritten, long totalExpectedBytes);
public virtual void Failed (BADownload download, Foundation.NSError error);
public virtual void Finished (BADownload download, Foundation.NSUrl fileUrl);

Type Changed: BackgroundAssets.IBADownloaderExtension

Added methods:

public virtual void DidReceiveChallenge (BADownload download, Foundation.NSUrlAuthenticationChallenge challenge, System.Action<Foundation.NSUrlSessionAuthChallengeDisposition,Foundation.NSUrlCredential> completionHandler);
public virtual void Failed (BADownload download, Foundation.NSError error);
public virtual void Finished (BADownload download, Foundation.NSUrl fileUrl);
public virtual Foundation.NSSet<BADownload> GetDownloads (BAContentRequest contentRequest, Foundation.NSUrl manifestUrl, BAAppExtensionInfo extensionInfo);
public virtual void WillTerminate ();

Namespace CallKit

Type Changed: CallKit.CXErrorCodeIncomingCallError

Added value:

CallIsProtected = 6,

Type Changed: CallKit.CXErrorCodeRequestTransactionError

Added value:

CallIsProtected = 8,

Type Changed: CallKit.ICXCallDirectoryExtensionContextDelegate

Modified methods:

-public abstract void RequestFailed (CXCallDirectoryExtensionContext extensionContext, Foundation.NSError error)
+public virtual void RequestFailed (CXCallDirectoryExtensionContext extensionContext, Foundation.NSError error)

Type Changed: CallKit.ICXCallObserverDelegate

Modified methods:

-public abstract void CallChanged (CXCallObserver callObserver, CXCall call)
+public virtual void CallChanged (CXCallObserver callObserver, CXCall call)

Type Changed: CallKit.ICXProviderDelegate

Modified methods:

-public abstract void DidReset (CXProvider provider)
+public virtual void DidReset (CXProvider provider)

Added methods:

public virtual void DidActivateAudioSession (CXProvider provider, AVFoundation.AVAudioSession audioSession);
public virtual void DidBegin (CXProvider provider);
public virtual void DidDeactivateAudioSession (CXProvider provider, AVFoundation.AVAudioSession audioSession);
public virtual bool ExecuteTransaction (CXProvider provider, CXTransaction transaction);
public virtual void PerformAnswerCallAction (CXProvider provider, CXAnswerCallAction action);
public virtual void PerformEndCallAction (CXProvider provider, CXEndCallAction action);
public virtual void PerformPlayDtmfCallAction (CXProvider provider, CXPlayDtmfCallAction action);
public virtual void PerformSetGroupCallAction (CXProvider provider, CXSetGroupCallAction action);
public virtual void PerformSetHeldCallAction (CXProvider provider, CXSetHeldCallAction action);
public virtual void PerformSetMutedCallAction (CXProvider provider, CXSetMutedCallAction action);
public virtual void PerformStartCallAction (CXProvider provider, CXStartCallAction action);
public virtual void TimedOutPerformingAction (CXProvider provider, CXAction action);

Namespace ClassKit

Type Changed: ClassKit.ICLSContextProvider

Modified methods:

-public abstract void UpdateDescendants (CLSContext context, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completion)
+public virtual void UpdateDescendants (CLSContext context, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completion)

Type Changed: ClassKit.ICLSDataStoreDelegate

Modified methods:

-public abstract CLSContext CreateContext (string identifier, CLSContext parentContext, string[] parentIdentifierPath)
+public virtual CLSContext CreateContext (string identifier, CLSContext parentContext, string[] parentIdentifierPath)

Namespace CloudKit

Type Changed: CloudKit.CKShareParticipant

Added property:

public virtual string ParticipantId { get; }

Type Changed: CloudKit.ICKSyncEngineDelegate

Modified methods:

-public abstract void SyncEngine (CKSyncEngine syncEngine, CKSyncEngineEvent event)
+public virtual void SyncEngine (CKSyncEngine syncEngine, CKSyncEngineEvent event)
-public abstract CKSyncEngineRecordZoneChangeBatch SyncEngine (CKSyncEngine syncEngine, CKSyncEngineSendChangesContext context)
+public virtual CKSyncEngineRecordZoneChangeBatch SyncEngine (CKSyncEngine syncEngine, CKSyncEngineSendChangesContext context)

Added method:

public virtual CKSyncEngineFetchChangesOptions SyncEngine (CKSyncEngine syncEngine, CKSyncEngineFetchChangesContext context);

Namespace Compression

Type Changed: Compression.CompressionAlgorithm

Added values:

Brotli = 2818,
LZBitmap = 1794,

Namespace Contacts

Type Changed: Contacts.CNAuthorizationStatus

Added value:

Limited = 4,

Type Changed: Contacts.ICNChangeHistoryEventVisitor

Modified methods:

-public abstract void AddContact (CNChangeHistoryAddContactEvent event)
+public virtual void AddContact (CNChangeHistoryAddContactEvent event)
-public abstract void DeleteContact (CNChangeHistoryDeleteContactEvent event)
+public virtual void DeleteContact (CNChangeHistoryDeleteContactEvent event)
-public abstract void DropEverything (CNChangeHistoryDropEverythingEvent event)
+public virtual void DropEverything (CNChangeHistoryDropEverythingEvent event)
-public abstract void UpdateContact (CNChangeHistoryUpdateContactEvent event)
+public virtual void UpdateContact (CNChangeHistoryUpdateContactEvent event)

Added methods:

public virtual void AddGroup (CNChangeHistoryAddGroupEvent event);
public virtual void AddMemberToGroup (CNChangeHistoryAddMemberToGroupEvent event);
public virtual void AddSubgroupToGroup (CNChangeHistoryAddSubgroupToGroupEvent event);
public virtual void DeleteGroup (CNChangeHistoryDeleteGroupEvent event);
public virtual void RemoveMemberFromGroup (CNChangeHistoryRemoveMemberFromGroupEvent event);
public virtual void RemoveSubgroupFromGroup (CNChangeHistoryRemoveSubgroupFromGroupEvent event);
public virtual void UpdateGroup (CNChangeHistoryUpdateGroupEvent event);

Namespace ContactsUI

Type Changed: ContactsUI.ICNContactPickerDelegate

Added methods:

public virtual void ContactPickerDidCancel (CNContactPickerViewController picker);
public virtual void DidSelectContact (CNContactPickerViewController picker, Contacts.CNContact contact);
public virtual void DidSelectContactProperties (CNContactPickerViewController picker, Contacts.CNContactProperty[] contactProperties);
public virtual void DidSelectContactProperty (CNContactPickerViewController picker, Contacts.CNContactProperty contactProperty);
public virtual void DidSelectContacts (CNContactPickerViewController picker, Contacts.CNContact[] contacts);

Type Changed: ContactsUI.ICNContactViewControllerDelegate

Added methods:

public virtual void DidComplete (CNContactViewController viewController, Contacts.CNContact contact);
public virtual bool ShouldPerformDefaultAction (CNContactViewController viewController, Contacts.CNContactProperty property);

Namespace CoreAnimation

Type Changed: CoreAnimation.CAEdrMetadata

Added method:

public static CAEdrMetadata GetHlgMetadata (Foundation.NSData ambientViewingEnvironmentData);

Type Changed: CoreAnimation.CALayer

Added properties:

public virtual CAToneMapMode ToneMapMode { get; set; }
public virtual bool WantsExtendedDynamicRangeContent { get; set; }

Type Changed: CoreAnimation.CASpringAnimation

Added constructor:

public CASpringAnimation (double perceptualDuration, System.Runtime.InteropServices.NFloat bounce);

Added properties:

public virtual bool AllowsOverdamping { get; set; }
public virtual System.Runtime.InteropServices.NFloat Bounce { get; }
public virtual double PerceptualDuration { get; }

Type Changed: CoreAnimation.ICAAction

Modified methods:

-public abstract void RunAction (string eventKey, Foundation.NSObject obj, Foundation.NSDictionary arguments)
+public virtual void RunAction (string eventKey, Foundation.NSObject obj, Foundation.NSDictionary arguments)

Type Changed: CoreAnimation.ICAAnimationDelegate

Added methods:

public virtual void AnimationStarted (CAAnimation anim);
public virtual void AnimationStopped (CAAnimation anim, bool finished);

Type Changed: CoreAnimation.ICALayerDelegate

Added methods:

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

Type Changed: CoreAnimation.ICAMediaTiming

Modified properties:

-public abstract bool AutoReverses { get; set; }
+public virtual bool AutoReverses { get; set; }
-public abstract double BeginTime { get; set; }
+public virtual double BeginTime { get; set; }
-public abstract double Duration { get; set; }
+public virtual double Duration { get; set; }
-public abstract string FillMode { get; set; }
+public virtual string FillMode { get; set; }
-public abstract float RepeatCount { get; set; }
+public virtual float RepeatCount { get; set; }
-public abstract double RepeatDuration { get; set; }
+public virtual double RepeatDuration { get; set; }
-public abstract float Speed { get; set; }
+public virtual float Speed { get; set; }
-public abstract double TimeOffset { get; set; }
+public virtual double TimeOffset { get; set; }

Type Changed: CoreAnimation.ICAMetalDrawable

Modified properties:

-public abstract CAMetalLayer Layer { get; }
+public virtual CAMetalLayer Layer { get; }
-public abstract Metal.IMTLTexture Texture { get; }
+public virtual Metal.IMTLTexture Texture { get; }

New Type: CoreAnimation.CAMetalDisplayLink

public class CAMetalDisplayLink : Foundation.NSObject {
	// constructors
	public CAMetalDisplayLink (CAMetalLayer layer);
	protected CAMetalDisplayLink (Foundation.NSObjectFlag t);
	protected CAMetalDisplayLink (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public ICAMetalDisplayLinkDelegate Delegate { get; set; }
	public virtual bool Paused { get; set; }
	public virtual float PreferredFrameLatency { get; set; }
	public virtual CAFrameRateRange PreferredFrameRateRange { get; set; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	public virtual void AddToRunLoop (Foundation.NSRunLoop runloop, Foundation.NSRunLoopMode mode);
	protected override void Dispose (bool disposing);
	public virtual void Invalidate ();
	public virtual void RemoveFromRunLoop (Foundation.NSRunLoop runloop, Foundation.NSRunLoopMode mode);
}

New Type: CoreAnimation.CAMetalDisplayLinkDelegate

public abstract class CAMetalDisplayLinkDelegate : Foundation.NSObject, ICAMetalDisplayLinkDelegate, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	protected CAMetalDisplayLinkDelegate ();
	protected CAMetalDisplayLinkDelegate (Foundation.NSObjectFlag t);
	protected CAMetalDisplayLinkDelegate (ObjCRuntime.NativeHandle handle);
	// methods
	public virtual void NeedsUpdate (CAMetalDisplayLink link, CAMetalDisplayLinkUpdate update);
}

New Type: CoreAnimation.CAMetalDisplayLinkUpdate

public class CAMetalDisplayLinkUpdate : Foundation.NSObject {
	// constructors
	protected CAMetalDisplayLinkUpdate (Foundation.NSObjectFlag t);
	protected CAMetalDisplayLinkUpdate (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual ICAMetalDrawable Drawable { get; }
	public virtual double TargetPresentationTimestamp { get; }
	public virtual double TargetTimestamp { get; }
}

New Type: CoreAnimation.CARenderer

public class CARenderer : Foundation.NSObject {
	// constructors
	public CARenderer ();
	protected CARenderer (Foundation.NSObjectFlag t);
	protected CARenderer (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual CoreGraphics.CGRect Bounds { get; set; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual CALayer Layer { get; set; }
	// methods
	public virtual void AddUpdate (CoreGraphics.CGRect r);
	public void BeginFrame (double timeInSeconds);
	public virtual void BeginFrame (double timeInSeconds, ref Foundation.NSObject ts);
	public static CARenderer Create (Metal.IMTLTexture tex, CARendererOptions options);
	public static CARenderer Create (Metal.IMTLTexture tex, Foundation.NSDictionary dict);
	public virtual void EndFrame ();
	public virtual double GetNextFrameTime ();
	public virtual void Render ();
	public virtual void SetDestination (Metal.IMTLTexture tex);
	public virtual CoreGraphics.CGRect UpdateBounds ();
}

New Type: CoreAnimation.CARendererOptions

public class CARendererOptions : Foundation.DictionaryContainer {
	// constructors
	public CARendererOptions ();
	public CARendererOptions (Foundation.NSDictionary dictionary);
	// properties
	public CoreGraphics.CGColorSpace ColorSpace { get; set; }
}

New Type: CoreAnimation.CAToneMapMode

[Serializable]
public enum CAToneMapMode {
	Automatic = 0,
	IfSupported = 2,
	Never = 1,
}

New Type: CoreAnimation.CAToneMapModeExtensions

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

New Type: CoreAnimation.ICAMetalDisplayLinkDelegate

public interface ICAMetalDisplayLinkDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void NeedsUpdate (CAMetalDisplayLink link, CAMetalDisplayLinkUpdate update);
}

Namespace CoreBluetooth

Type Changed: CoreBluetooth.CBUUID

Added property:

public static Foundation.NSString CharacteristicObservationScheduleString { get; }

Type Changed: CoreBluetooth.ICBCentralManagerDelegate

Modified methods:

-public abstract void UpdatedState (CBCentralManager central)
+public virtual void UpdatedState (CBCentralManager central)

Added methods:

public virtual void ConnectedPeripheral (CBCentralManager central, CBPeripheral peripheral);
public virtual void ConnectionEventDidOccur (CBCentralManager central, CBConnectionEvent connectionEvent, CBPeripheral peripheral);
public virtual void DidDisconnectPeripheral (CBCentralManager central, CBPeripheral peripheral, double timestamp, bool isReconnecting, Foundation.NSError error);
public virtual void DidUpdateAncsAuthorization (CBCentralManager central, CBPeripheral peripheral);
public virtual void DisconnectedPeripheral (CBCentralManager central, CBPeripheral peripheral, Foundation.NSError error);
public virtual void DiscoveredPeripheral (CBCentralManager central, CBPeripheral peripheral, Foundation.NSDictionary advertisementData, Foundation.NSNumber RSSI);
public virtual void FailedToConnectPeripheral (CBCentralManager central, CBPeripheral peripheral, Foundation.NSError error);
public virtual void WillRestoreState (CBCentralManager central, Foundation.NSDictionary dict);

Type Changed: CoreBluetooth.ICBPeripheralDelegate

Added methods:

public virtual void DidOpenL2CapChannel (CBPeripheral peripheral, CBL2CapChannel channel, Foundation.NSError error);
public virtual void DiscoveredCharacteristics (CBPeripheral peripheral, CBService service, Foundation.NSError error);
public virtual void DiscoveredDescriptor (CBPeripheral peripheral, CBCharacteristic characteristic, Foundation.NSError error);
public virtual void DiscoveredIncludedService (CBPeripheral peripheral, CBService service, Foundation.NSError error);
public virtual void DiscoveredService (CBPeripheral peripheral, Foundation.NSError error);
public virtual void IsReadyToSendWriteWithoutResponse (CBPeripheral peripheral);
public virtual void ModifiedServices (CBPeripheral peripheral, CBService[] services);
public virtual void RssiRead (CBPeripheral peripheral, Foundation.NSNumber rssi, Foundation.NSError error);
public virtual void RssiUpdated (CBPeripheral peripheral, Foundation.NSError error);
public virtual void UpdatedCharacterteristicValue (CBPeripheral peripheral, CBCharacteristic characteristic, Foundation.NSError error);
public virtual void UpdatedName (CBPeripheral peripheral);
public virtual void UpdatedNotificationState (CBPeripheral peripheral, CBCharacteristic characteristic, Foundation.NSError error);
public virtual void UpdatedValue (CBPeripheral peripheral, CBDescriptor descriptor, Foundation.NSError error);
public virtual void WroteCharacteristicValue (CBPeripheral peripheral, CBCharacteristic characteristic, Foundation.NSError error);
public virtual void WroteDescriptorValue (CBPeripheral peripheral, CBDescriptor descriptor, Foundation.NSError error);

Type Changed: CoreBluetooth.ICBPeripheralManagerDelegate

Modified methods:

-public abstract void StateUpdated (CBPeripheralManager peripheral)
+public virtual void StateUpdated (CBPeripheralManager peripheral)

Added methods:

public virtual void AdvertisingStarted (CBPeripheralManager peripheral, Foundation.NSError error);
public virtual void CharacteristicSubscribed (CBPeripheralManager peripheral, CBCentral central, CBCharacteristic characteristic);
public virtual void CharacteristicUnsubscribed (CBPeripheralManager peripheral, CBCentral central, CBCharacteristic characteristic);
public virtual void DidOpenL2CapChannel (CBPeripheralManager peripheral, CBL2CapChannel channel, Foundation.NSError error);
public virtual void DidPublishL2CapChannel (CBPeripheralManager peripheral, ushort psm, Foundation.NSError error);
public virtual void DidUnpublishL2CapChannel (CBPeripheralManager peripheral, ushort psm, Foundation.NSError error);
public virtual void ReadRequestReceived (CBPeripheralManager peripheral, CBATTRequest request);
public virtual void ReadyToUpdateSubscribers (CBPeripheralManager peripheral);
public virtual void ServiceAdded (CBPeripheralManager peripheral, CBService service, Foundation.NSError error);
public virtual void WillRestoreState (CBPeripheralManager peripheral, Foundation.NSDictionary dict);
public virtual void WriteRequestsReceived (CBPeripheralManager peripheral, CBATTRequest[] requests);

Namespace CoreData

Type Changed: CoreData.INSFetchedResultsControllerDelegate

Added methods:

public virtual void DidChangeContent (NSFetchedResultsController controller);
public virtual void DidChangeObject (NSFetchedResultsController controller, Foundation.NSObject anObject, Foundation.NSIndexPath indexPath, NSFetchedResultsChangeType type, Foundation.NSIndexPath newIndexPath);
public virtual void DidChangeSection (NSFetchedResultsController controller, INSFetchedResultsSectionInfo sectionInfo, UIntPtr sectionIndex, NSFetchedResultsChangeType type);
public virtual string SectionFor (NSFetchedResultsController controller, string sectionName);
public virtual void WillChangeContent (NSFetchedResultsController controller);

Type Changed: CoreData.INSFetchedResultsSectionInfo

Modified properties:

-public abstract IntPtr Count { get; }
+public virtual IntPtr Count { get; }
-public abstract string IndexTitle { get; }
+public virtual string IndexTitle { get; }
-public abstract string Name { get; }
+public virtual string Name { get; }
-public abstract Foundation.NSObject[] Objects { get; }
+public virtual Foundation.NSObject[] Objects { get; }

Type Changed: CoreData.NSPersistentStoreCoordinator

Added methods:

public NSManagedObjectID GetManagedObjectId (string value);
public virtual NSManagedObjectID GetManagedObjectId (IntPtr utf8String, UIntPtr length);

Type Changed: CoreData.UserInfoKeys

Added property:

public static Foundation.NSString ModelVersionChecksumKey { get; }

Namespace CoreGraphics

Type Changed: CoreGraphics.CGColorSpace

Added method:

public CGColorSpace CopyBaseColorSpace ();

Type Changed: CoreGraphics.CGColorSpaceNames

Added property:

public static Foundation.NSString CoreMedia709 { get; }

Type Changed: CoreGraphics.CGContext

Added methods:

public bool DrawImageApplyingToneMapping (CGRect rect, CGImage image, CGToneMapping method, CGToneMappingOptions options);
public bool DrawImageApplyingToneMapping (CGRect rect, CGImage image, CGToneMapping method, Foundation.NSDictionary options);
public float GetEdrTargetHeadroom ();
public bool SetEdrTargetHeadroom (float value);

Type Changed: CoreGraphics.CGContextPDF

Added methods:

public void SetIdTree (CGPDFDictionary idTreeDictionary);
public void SetPageTagStructureTree (Foundation.NSDictionary pageTagStructureTreeDictionary);
public void SetParentTree (CGPDFDictionary parentTreeDictionary);

Type Changed: CoreGraphics.CGEvent

Modified properties:

-public long MouseEventButtonNumber { get; set; }
+public long MouseEventButtonNumber { get; }
-public long MouseEventClickState { get; set; }
+public long MouseEventClickState { get; }
-public long MouseEventDeltaX { get; set; }
+public long MouseEventDeltaX { get; }
-public long MouseEventDeltaY { get; set; }
+public long MouseEventDeltaY { get; }
-public bool MouseEventInstantMouser { get; set; }
+public bool MouseEventInstantMouser { get; }
-public long MouseEventNumber { get; set; }
+public long MouseEventNumber { get; }
-public double MouseEventPressure { get; set; }
+public double MouseEventPressure { get; }
-public long MouseEventSubtype { get; set; }
+public long MouseEventSubtype { get; }

Added methods:

public static CoreFoundation.CFMachPort CreateTap (int pid, CGEventTapPlacement place, CGEventTapOptions options, CGEventMask mask, CGEvent.CGEventTapCallback callback, IntPtr data);
public double GetDoubleValueField (CGEventField field);
public long GetLongValueField (CGEventField field);
public void PostToPSN (IntPtr processSerialNumber);
public void PostToPid (int pid);
public static void PostToPid (CGEvent evt, int pid);
public void SetValueField (CGEventField field, double value);
public void SetValueField (CGEventField field, long value);

Type Changed: CoreGraphics.CGImage

Added constructor:

public CGImage (float headroom, int width, int height, int bitsPerComponent, int bitsPerPixel, int bytesPerRow, CGColorSpace colorSpace, CGBitmapFlags bitmapFlags, CGDataProvider provider, System.Runtime.InteropServices.NFloat[] decode, bool shouldInterpolate, CGColorRenderingIntent intent);

Added properties:

public bool ContainsImageSpecificToneMappingMetadata { get; }
public float ContentHeadroom { get; }
public static float DefaultHdrImageContentHeadroom { get; }
public bool ShouldToneMap { get; }

Added method:

public CGImage Copy (float headroom);

Type Changed: CoreGraphics.CGPdfTagType

Added value:

Object = 800,

New Type: CoreGraphics.CGEventField

[Serializable]
public enum CGEventField {
	EventSourceGroupId = 44,
	EventSourceStateId = 45,
	EventSourceUnixProcessId = 41,
	EventSourceUserData = 42,
	EventSourceUserId = 43,
	EventTargetProcessSerialNumber = 39,
	EventTargetUnixProcessId = 40,
	EventUnacceleratedPointerMovementX = 170,
	EventUnacceleratedPointerMovementY = 171,
	EventWindowUnderMousePointer = 91,
	EventWindowUnderMousePointerThatCanHandleThisEvent = 92,
	KeyboardEventAutorepeat = 8,
	KeyboardEventKeyboardType = 10,
	KeyboardEventKeycode = 9,
	MouseEventButtonNumber = 3,
	MouseEventClickState = 1,
	MouseEventDeltaX = 4,
	MouseEventDeltaY = 5,
	MouseEventInstantMouser = 6,
	MouseEventNumber = 0,
	MouseEventPressure = 2,
	MouseEventSubtype = 7,
	ScrollWheelEventAcceleratedDeltaAxis1 = 176,
	ScrollWheelEventAcceleratedDeltaAxis2 = 175,
	ScrollWheelEventDeltaAxis1 = 11,
	ScrollWheelEventDeltaAxis2 = 12,
	ScrollWheelEventDeltaAxis3 = 13,
	ScrollWheelEventFixedPtDeltaAxis1 = 93,
	ScrollWheelEventFixedPtDeltaAxis2 = 94,
	ScrollWheelEventFixedPtDeltaAxis3 = 95,
	ScrollWheelEventInstantMouser = 14,
	ScrollWheelEventIsContinuous = 88,
	ScrollWheelEventMomentumOptionPhase = 173,
	ScrollWheelEventMomentumPhase = 123,
	ScrollWheelEventPointDeltaAxis1 = 96,
	ScrollWheelEventPointDeltaAxis2 = 97,
	ScrollWheelEventPointDeltaAxis3 = 98,
	ScrollWheelEventRawDeltaAxis1 = 178,
	ScrollWheelEventRawDeltaAxis2 = 177,
	ScrollWheelEventScrollCount = 100,
	ScrollWheelEventScrollPhase = 99,
	TabletEventDeviceId = 24,
	TabletEventPointButtons = 18,
	TabletEventPointPressure = 19,
	TabletEventPointX = 15,
	TabletEventPointY = 16,
	TabletEventPointZ = 17,
	TabletEventRotation = 22,
	TabletEventTangentialPressure = 23,
	TabletEventTiltX = 20,
	TabletEventTiltY = 21,
	TabletEventVendor1 = 25,
	TabletEventVendor2 = 26,
	TabletEventVendor3 = 27,
	TabletProximityEventCapabilityMask = 36,
	TabletProximityEventDeviceId = 31,
	TabletProximityEventEnterProximity = 38,
	TabletProximityEventPointerId = 30,
	TabletProximityEventPointerType = 37,
	TabletProximityEventSystemTabletId = 32,
	TabletProximityEventTabletId = 29,
	TabletProximityEventVendorId = 28,
	TabletProximityEventVendorPointerSerialNumber = 34,
	TabletProximityEventVendorPointerType = 33,
	TabletProximityEventVendorUniqueId = 35,
}

New Type: CoreGraphics.CGSession

public static class CGSession {
	// methods
	public static CGSessionProperties GetProperties ();
}

New Type: CoreGraphics.CGSessionKeys

public static class CGSessionKeys {
	// properties
	public static Foundation.NSString ConsoleSetKey { get; }
	public static Foundation.NSString LoginDoneKey { get; }
	public static Foundation.NSString OnConsoleKey { get; }
	public static Foundation.NSString UserIdKey { get; }
	public static Foundation.NSString UserNameKey { get; }
}

New Type: CoreGraphics.CGSessionProperties

public class CGSessionProperties : Foundation.DictionaryContainer {
	// constructors
	public CGSessionProperties ();
	public CGSessionProperties (Foundation.NSDictionary dictionary);
	// properties
	public uint? ConsoleSet { get; }
	public bool? LoginDone { get; }
	public bool? OnConsole { get; }
	public uint? UserId { get; }
	public string UserName { get; }
}

New Type: CoreGraphics.CGToneMapping

[Serializable]
public enum CGToneMapping {
	Default = 0,
	ExrGamma = 4,
	ImageSpecificLumaScaling = 1,
	IturRecommended = 3,
	None = 5,
	ReferenceWhiteBased = 2,
}

New Type: CoreGraphics.CGToneMappingOptionKeys

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

New Type: CoreGraphics.CGToneMappingOptions

public class CGToneMappingOptions : Foundation.DictionaryContainer {
	// constructors
	public CGToneMappingOptions ();
	public CGToneMappingOptions (Foundation.NSDictionary dictionary);
	// properties
	public float? ExrToneMappingGammaDefog { get; set; }
	public float? ExrToneMappingGammaExposure { get; set; }
	public float? ExrToneMappingGammaKneeHigh { get; set; }
	public float? ExrToneMappingGammaKneeLow { get; set; }
	public bool? SkipBoostToHdr { get; set; }
	public bool? Use100nitsHlgOotf { get; set; }
	public bool? UseBT1886ForCoreVideoGamma { get; set; }
}

Namespace CoreHaptics

Type Changed: CoreHaptics.ICHHapticAdvancedPatternPlayer

Modified properties:

-public abstract System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% CompletionHandler { get; set; }
+public virtual System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% CompletionHandler { get; set; }
-public abstract bool IsMuted { get; set; }
+public virtual bool IsMuted { get; set; }
-public abstract bool LoopEnabled { get; set; }
+public virtual bool LoopEnabled { get; set; }
-public abstract double LoopEnd { get; set; }
+public virtual double LoopEnd { get; set; }
-public abstract float PlaybackRate { get; set; }
+public virtual float PlaybackRate { get; set; }

Modified methods:

-public abstract bool Pause (double time, out Foundation.NSError outError)
+public virtual bool Pause (double time, out Foundation.NSError outError)
-public abstract bool Resume (double time, out Foundation.NSError outError)
+public virtual bool Resume (double time, out Foundation.NSError outError)
-public abstract bool Seek (double offsetTime, out Foundation.NSError outError)
+public virtual bool Seek (double offsetTime, out Foundation.NSError outError)

Type Changed: CoreHaptics.ICHHapticDeviceCapability

Modified properties:

-public abstract bool SupportsAudio { get; }
+public virtual bool SupportsAudio { get; }
-public abstract bool SupportsHaptics { get; }
+public virtual bool SupportsHaptics { get; }

Modified methods:

-public abstract ICHHapticParameterAttributes GetAttributes (Foundation.NSString eventParameter, out Foundation.NSError outError)
+public virtual ICHHapticParameterAttributes GetAttributes (Foundation.NSString eventParameter, out Foundation.NSError outError)
-public abstract ICHHapticParameterAttributes GetAttributes (Foundation.NSString eventParameter, string type, out Foundation.NSError outError)
+public virtual ICHHapticParameterAttributes GetAttributes (Foundation.NSString eventParameter, string type, out Foundation.NSError outError)

Type Changed: CoreHaptics.ICHHapticParameterAttributes

Modified properties:

-public abstract float DefaultValue { get; }
+public virtual float DefaultValue { get; }
-public abstract float MaxValue { get; }
+public virtual float MaxValue { get; }
-public abstract float MinValue { get; }
+public virtual float MinValue { get; }

Type Changed: CoreHaptics.ICHHapticPatternPlayer

Modified properties:

-public abstract bool IsMuted { get; set; }
+public virtual bool IsMuted { get; set; }

Modified methods:

-public abstract bool Cancel (out Foundation.NSError outError)
+public virtual bool Cancel (out Foundation.NSError outError)
-public abstract bool Schedule (CHHapticParameterCurve parameterCurve, double time, out Foundation.NSError outError)
+public virtual bool Schedule (CHHapticParameterCurve parameterCurve, double time, out Foundation.NSError outError)
-public abstract bool Send (CHHapticDynamicParameter[] parameters, double time, out Foundation.NSError outError)
+public virtual bool Send (CHHapticDynamicParameter[] parameters, double time, out Foundation.NSError outError)
-public abstract bool Start (double time, out Foundation.NSError outError)
+public virtual bool Start (double time, out Foundation.NSError outError)
-public abstract bool Stop (double time, out Foundation.NSError outError)
+public virtual bool Stop (double time, out Foundation.NSError outError)

Namespace CoreImage

Type Changed: CoreImage.CIImage

Added properties:

public virtual float ContentHeadroom { get; }
public virtual Metal.IMTLTexture MetalTexture { get; }
public virtual bool Opaque { get; }

Added methods:

public virtual CIImage CreateByApplyingGainMap (CIImage gainMap);
public virtual CIImage CreateByApplyingGainMap (CIImage gainMap, float headroom);

Type Changed: CoreImage.CIToneCurve

Added property:

public bool Extrapolate { get; set; }

Type Changed: CoreImage.ICIAccordionFoldTransitionProtocol

Modified properties:

-public abstract float BottomHeight { get; set; }
+public virtual float BottomHeight { get; set; }
-public abstract float FoldCount { get; set; }
+public virtual float FoldCount { get; set; }
-public abstract float FoldShadowAmount { get; set; }
+public virtual float FoldShadowAmount { get; set; }

Type Changed: CoreImage.ICIAffineClampProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CoreGraphics.CGAffineTransform Transform { get; set; }
+public virtual CoreGraphics.CGAffineTransform Transform { get; set; }

Type Changed: CoreImage.ICIAffineTileProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CoreGraphics.CGAffineTransform Transform { get; set; }
+public virtual CoreGraphics.CGAffineTransform Transform { get; set; }

Type Changed: CoreImage.ICIAreaHistogramProtocol

Modified properties:

-public abstract IntPtr InputCount { get; set; }
+public virtual IntPtr InputCount { get; set; }
-public abstract float Scale { get; set; }
+public virtual float Scale { get; set; }

Type Changed: CoreImage.ICIAreaLogarithmicHistogramProtocol

Modified properties:

-public abstract IntPtr Count { get; set; }
+public virtual IntPtr Count { get; set; }
-public abstract float MaximumStop { get; set; }
+public virtual float MaximumStop { get; set; }
-public abstract float MinimumStop { get; set; }
+public virtual float MinimumStop { get; set; }
-public abstract float Scale { get; set; }
+public virtual float Scale { get; set; }

Type Changed: CoreImage.ICIAreaReductionFilterProtocol

Modified properties:

-public abstract CoreGraphics.CGRect InputExtent { get; set; }
+public virtual CoreGraphics.CGRect InputExtent { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIAttributedTextImageGeneratorProtocol

Modified properties:

-public abstract float ScaleFactor { get; set; }
+public virtual float ScaleFactor { get; set; }
-public abstract Foundation.NSAttributedString Text { get; set; }
+public virtual Foundation.NSAttributedString Text { get; set; }

Added property:

public virtual float Padding { get; set; }

Type Changed: CoreImage.ICIAztecCodeGeneratorProtocol

Modified properties:

-public abstract float CorrectionLevel { get; set; }
+public virtual float CorrectionLevel { get; set; }
-public abstract float InputCompactStyle { get; set; }
+public virtual float InputCompactStyle { get; set; }
-public abstract float InputLayers { get; set; }
+public virtual float InputLayers { get; set; }
-public abstract Foundation.NSData Message { get; set; }
+public virtual Foundation.NSData Message { get; set; }

Type Changed: CoreImage.ICIBarcodeGeneratorProtocol

Modified properties:

-public abstract CIBarcodeDescriptor BarcodeDescriptor { get; set; }
+public virtual CIBarcodeDescriptor BarcodeDescriptor { get; set; }

Type Changed: CoreImage.ICIBarsSwipeTransitionProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract float BarOffset { get; set; }
+public virtual float BarOffset { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICIBicubicScaleTransformProtocol

Modified properties:

-public abstract float AspectRatio { get; set; }
+public virtual float AspectRatio { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float ParameterB { get; set; }
+public virtual float ParameterB { get; set; }
-public abstract float ParameterC { get; set; }
+public virtual float ParameterC { get; set; }
-public abstract float Scale { get; set; }
+public virtual float Scale { get; set; }

Type Changed: CoreImage.ICIBlendWithMaskProtocol

Modified properties:

-public abstract CIImage BackgroundImage { get; set; }
+public virtual CIImage BackgroundImage { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CIImage MaskImage { get; set; }
+public virtual CIImage MaskImage { get; set; }

Type Changed: CoreImage.ICIBloomProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Intensity { get; set; }
+public virtual float Intensity { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIBlurredRectangleGeneratorProtocol

Modified properties:

-public abstract CIColor Color { get; set; }
+public virtual CIColor Color { get; set; }
-public abstract CoreGraphics.CGRect InputExtent { get; set; }
+public virtual CoreGraphics.CGRect InputExtent { get; set; }
-public abstract float Sigma { get; set; }
+public virtual float Sigma { get; set; }

Type Changed: CoreImage.ICIBokehBlurProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }
-public abstract float RingAmount { get; set; }
+public virtual float RingAmount { get; set; }
-public abstract float RingSize { get; set; }
+public virtual float RingSize { get; set; }
-public abstract float Softness { get; set; }
+public virtual float Softness { get; set; }

Type Changed: CoreImage.ICIBoxBlurProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIBumpDistortionLinearProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }
-public abstract float Scale { get; set; }
+public virtual float Scale { get; set; }

Type Changed: CoreImage.ICIBumpDistortionProtocol

Modified properties:

-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }
-public abstract float Scale { get; set; }
+public virtual float Scale { get; set; }

Type Changed: CoreImage.ICICannyEdgeDetectorProtocol

Modified properties:

-public abstract float GaussianSigma { get; set; }
+public virtual float GaussianSigma { get; set; }
-public abstract IntPtr HysteresisPasses { get; set; }
+public virtual IntPtr HysteresisPasses { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract bool Perceptual { get; set; }
+public virtual bool Perceptual { get; set; }
-public abstract float ThresholdHigh { get; set; }
+public virtual float ThresholdHigh { get; set; }
-public abstract float ThresholdLow { get; set; }
+public virtual float ThresholdLow { get; set; }

Type Changed: CoreImage.ICICheckerboardGeneratorProtocol

Modified properties:

-public abstract CIColor Color0 { get; set; }
+public virtual CIColor Color0 { get; set; }
-public abstract CIColor Color1 { get; set; }
+public virtual CIColor Color1 { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract float Sharpness { get; set; }
+public virtual float Sharpness { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICICircleSplashDistortionProtocol

Modified properties:

-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICICircularScreenProtocol

Modified properties:

-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Sharpness { get; set; }
+public virtual float Sharpness { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICICircularWrapProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICICmykHalftoneProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract float GrayComponentReplacement { get; set; }
+public virtual float GrayComponentReplacement { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Sharpness { get; set; }
+public virtual float Sharpness { get; set; }
-public abstract float UnderColorRemoval { get; set; }
+public virtual float UnderColorRemoval { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICICode128BarcodeGeneratorProtocol

Modified properties:

-public abstract float BarcodeHeight { get; set; }
+public virtual float BarcodeHeight { get; set; }
-public abstract Foundation.NSData Message { get; set; }
+public virtual Foundation.NSData Message { get; set; }
-public abstract float QuietSpace { get; set; }
+public virtual float QuietSpace { get; set; }

Type Changed: CoreImage.ICIColorAbsoluteDifferenceProtocol

Modified properties:

-public abstract CIImage Image2 { get; set; }
+public virtual CIImage Image2 { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIColorClampProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CIVector MaxComponents { get; set; }
+public virtual CIVector MaxComponents { get; set; }
-public abstract CIVector MinComponents { get; set; }
+public virtual CIVector MinComponents { get; set; }

Type Changed: CoreImage.ICIColorControlsProtocol

Modified properties:

-public abstract float Brightness { get; set; }
+public virtual float Brightness { get; set; }
-public abstract float Contrast { get; set; }
+public virtual float Contrast { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Saturation { get; set; }
+public virtual float Saturation { get; set; }

Type Changed: CoreImage.ICIColorCrossPolynomialProtocol

Modified properties:

-public abstract CIVector BlueCoefficients { get; set; }
+public virtual CIVector BlueCoefficients { get; set; }
-public abstract CIVector GreenCoefficients { get; set; }
+public virtual CIVector GreenCoefficients { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CIVector RedCoefficients { get; set; }
+public virtual CIVector RedCoefficients { get; set; }

Type Changed: CoreImage.ICIColorCubeProtocol

Modified properties:

-public abstract Foundation.NSData CubeData { get; set; }
+public virtual Foundation.NSData CubeData { get; set; }
-public abstract float CubeDimension { get; set; }
+public virtual float CubeDimension { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Added property:

public virtual bool Extrapolate { get; set; }

Type Changed: CoreImage.ICIColorCubeWithColorSpaceProtocol

Modified properties:

-public abstract CoreGraphics.CGColorSpace ColorSpace { get; set; }
+public virtual CoreGraphics.CGColorSpace ColorSpace { get; set; }
-public abstract Foundation.NSData CubeData { get; set; }
+public virtual Foundation.NSData CubeData { get; set; }
-public abstract float CubeDimension { get; set; }
+public virtual float CubeDimension { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Added property:

public virtual bool Extrapolate { get; set; }

Type Changed: CoreImage.ICIColorCubesMixedWithMaskProtocol

Modified properties:

-public abstract CoreGraphics.CGColorSpace ColorSpace { get; set; }
+public virtual CoreGraphics.CGColorSpace ColorSpace { get; set; }
-public abstract Foundation.NSData Cube0Data { get; set; }
+public virtual Foundation.NSData Cube0Data { get; set; }
-public abstract Foundation.NSData Cube1Data { get; set; }
+public virtual Foundation.NSData Cube1Data { get; set; }
-public abstract float CubeDimension { get; set; }
+public virtual float CubeDimension { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CIImage MaskImage { get; set; }
+public virtual CIImage MaskImage { get; set; }

Added property:

public virtual bool Extrapolate { get; set; }

Type Changed: CoreImage.ICIColorCurvesProtocol

Modified properties:

-public abstract CoreGraphics.CGColorSpace ColorSpace { get; set; }
+public virtual CoreGraphics.CGColorSpace ColorSpace { get; set; }
-public abstract Foundation.NSData CurvesData { get; set; }
+public virtual Foundation.NSData CurvesData { get; set; }
-public abstract CIVector CurvesDomain { get; set; }
+public virtual CIVector CurvesDomain { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIColorInvertProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIColorMapProtocol

Modified properties:

-public abstract CIImage GradientImage { get; set; }
+public virtual CIImage GradientImage { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIColorMatrixProtocol

Modified properties:

-public abstract CIVector AVector { get; set; }
+public virtual CIVector AVector { get; set; }
-public abstract CIVector BVector { get; set; }
+public virtual CIVector BVector { get; set; }
-public abstract CIVector BiasVector { get; set; }
+public virtual CIVector BiasVector { get; set; }
-public abstract CIVector GVector { get; set; }
+public virtual CIVector GVector { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CIVector RVector { get; set; }
+public virtual CIVector RVector { get; set; }

Type Changed: CoreImage.ICIColorMonochromeProtocol

Modified properties:

-public abstract CIColor Color { get; set; }
+public virtual CIColor Color { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Intensity { get; set; }
+public virtual float Intensity { get; set; }

Type Changed: CoreImage.ICIColorPolynomialProtocol

Modified properties:

-public abstract CIVector AlphaCoefficients { get; set; }
+public virtual CIVector AlphaCoefficients { get; set; }
-public abstract CIVector BlueCoefficients { get; set; }
+public virtual CIVector BlueCoefficients { get; set; }
-public abstract CIVector GreenCoefficients { get; set; }
+public virtual CIVector GreenCoefficients { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CIVector RedCoefficients { get; set; }
+public virtual CIVector RedCoefficients { get; set; }

Type Changed: CoreImage.ICIColorPosterizeProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Levels { get; set; }
+public virtual float Levels { get; set; }

Type Changed: CoreImage.ICIColorThresholdOtsuProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIColorThresholdProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Threshold { get; set; }
+public virtual float Threshold { get; set; }

Type Changed: CoreImage.ICIComicEffectProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICICompositeOperationProtocol

Modified properties:

-public abstract CIImage BackgroundImage { get; set; }
+public virtual CIImage BackgroundImage { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIConvertLabProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract bool Normalize { get; set; }
+public virtual bool Normalize { get; set; }

Type Changed: CoreImage.ICIConvolutionProtocol

Modified properties:

-public abstract float Bias { get; set; }
+public virtual float Bias { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CIVector Weights { get; set; }
+public virtual CIVector Weights { get; set; }

Type Changed: CoreImage.ICICopyMachineTransitionProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CIColor Color { get; set; }
+public virtual CIColor Color { get; set; }
-public abstract CoreGraphics.CGRect Extent { get; set; }
+public virtual CoreGraphics.CGRect Extent { get; set; }
-public abstract float Opacity { get; set; }
+public virtual float Opacity { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICICoreMLModelProtocol

Modified properties:

-public abstract float HeadIndex { get; set; }
+public virtual float HeadIndex { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CoreML.MLModel Model { get; set; }
+public virtual CoreML.MLModel Model { get; set; }
-public abstract bool SoftmaxNormalization { get; set; }
+public virtual bool SoftmaxNormalization { get; set; }

Type Changed: CoreImage.ICICrystallizeProtocol

Modified properties:

-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIDepthOfFieldProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CoreGraphics.CGPoint InputPoint0 { get; set; }
+public virtual CoreGraphics.CGPoint InputPoint0 { get; set; }
-public abstract CoreGraphics.CGPoint InputPoint1 { get; set; }
+public virtual CoreGraphics.CGPoint InputPoint1 { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }
-public abstract float Saturation { get; set; }
+public virtual float Saturation { get; set; }
-public abstract float UnsharpMaskIntensity { get; set; }
+public virtual float UnsharpMaskIntensity { get; set; }
-public abstract float UnsharpMaskRadius { get; set; }
+public virtual float UnsharpMaskRadius { get; set; }

Type Changed: CoreImage.ICIDepthToDisparityProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIDiscBlurProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIDisintegrateWithMaskTransitionProtocol

Modified properties:

-public abstract CoreGraphics.CGPoint InputShadowOffset { get; set; }
+public virtual CoreGraphics.CGPoint InputShadowOffset { get; set; }
-public abstract CIImage MaskImage { get; set; }
+public virtual CIImage MaskImage { get; set; }
-public abstract float ShadowDensity { get; set; }
+public virtual float ShadowDensity { get; set; }
-public abstract float ShadowRadius { get; set; }
+public virtual float ShadowRadius { get; set; }

Type Changed: CoreImage.ICIDisparityToDepthProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIDisplacementDistortionProtocol

Modified properties:

-public abstract CIImage DisplacementImage { get; set; }
+public virtual CIImage DisplacementImage { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Scale { get; set; }
+public virtual float Scale { get; set; }

Type Changed: CoreImage.ICIDitherProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Intensity { get; set; }
+public virtual float Intensity { get; set; }

Type Changed: CoreImage.ICIDocumentEnhancerProtocol

Modified properties:

-public abstract float Amount { get; set; }
+public virtual float Amount { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIDotScreenProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Sharpness { get; set; }
+public virtual float Sharpness { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICIDrosteProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CoreGraphics.CGPoint InputInsetPoint0 { get; set; }
+public virtual CoreGraphics.CGPoint InputInsetPoint0 { get; set; }
-public abstract CoreGraphics.CGPoint InputInsetPoint1 { get; set; }
+public virtual CoreGraphics.CGPoint InputInsetPoint1 { get; set; }
-public abstract float Periodicity { get; set; }
+public virtual float Periodicity { get; set; }
-public abstract float Rotation { get; set; }
+public virtual float Rotation { get; set; }
-public abstract float Strands { get; set; }
+public virtual float Strands { get; set; }
-public abstract float Zoom { get; set; }
+public virtual float Zoom { get; set; }

Type Changed: CoreImage.ICIEdgePreserveUpsampleProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float LumaSigma { get; set; }
+public virtual float LumaSigma { get; set; }
-public abstract CIImage SmallImage { get; set; }
+public virtual CIImage SmallImage { get; set; }
-public abstract float SpatialSigma { get; set; }
+public virtual float SpatialSigma { get; set; }

Type Changed: CoreImage.ICIEdgeWorkProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIEdgesProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Intensity { get; set; }
+public virtual float Intensity { get; set; }

Type Changed: CoreImage.ICIEightfoldReflectedTileProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICIExposureAdjustProtocol

Modified properties:

-public abstract float EV { get; set; }
+public virtual float EV { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIFalseColorProtocol

Modified properties:

-public abstract CIColor Color0 { get; set; }
+public virtual CIColor Color0 { get; set; }
-public abstract CIColor Color1 { get; set; }
+public virtual CIColor Color1 { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIFilterConstructor

Modified methods:

-public abstract CIFilter FilterWithName (string name)
+public virtual CIFilter FilterWithName (string name)

Type Changed: CoreImage.ICIFilterProtocol

Modified properties:

-public abstract CIImage OutputImage { get; }
+public virtual CIImage OutputImage { get; }

Added method:

public static Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> GetCustomAttributes<T> ();

Type Changed: CoreImage.ICIFlashTransitionProtocol

Modified properties:

-public abstract CIColor Color { get; set; }
+public virtual CIColor Color { get; set; }
-public abstract float FadeThreshold { get; set; }
+public virtual float FadeThreshold { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CoreGraphics.CGRect InputExtent { get; set; }
+public virtual CoreGraphics.CGRect InputExtent { get; set; }
-public abstract float MaxStriationRadius { get; set; }
+public virtual float MaxStriationRadius { get; set; }
-public abstract float StriationContrast { get; set; }
+public virtual float StriationContrast { get; set; }
-public abstract float StriationStrength { get; set; }
+public virtual float StriationStrength { get; set; }

Type Changed: CoreImage.ICIFourCoordinateGeometryFilterProtocol

Modified properties:

-public abstract CoreGraphics.CGPoint InputBottomLeft { get; set; }
+public virtual CoreGraphics.CGPoint InputBottomLeft { get; set; }
-public abstract CoreGraphics.CGPoint InputBottomRight { get; set; }
+public virtual CoreGraphics.CGPoint InputBottomRight { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CoreGraphics.CGPoint InputTopLeft { get; set; }
+public virtual CoreGraphics.CGPoint InputTopLeft { get; set; }
-public abstract CoreGraphics.CGPoint InputTopRight { get; set; }
+public virtual CoreGraphics.CGPoint InputTopRight { get; set; }

Type Changed: CoreImage.ICIFourfoldReflectedTileProtocol

Modified properties:

-public abstract float AcuteAngle { get; set; }
+public virtual float AcuteAngle { get; set; }
-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICIFourfoldRotatedTileProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICIFourfoldTranslatedTileProtocol

Modified properties:

-public abstract float AcuteAngle { get; set; }
+public virtual float AcuteAngle { get; set; }
-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICIGaborGradientsProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIGammaAdjustProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Power { get; set; }
+public virtual float Power { get; set; }

Type Changed: CoreImage.ICIGaussianBlurProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIGaussianGradientProtocol

Modified properties:

-public abstract CIColor Color0 { get; set; }
+public virtual CIColor Color0 { get; set; }
-public abstract CIColor Color1 { get; set; }
+public virtual CIColor Color1 { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIGlassDistortionProtocol

Modified properties:

-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Scale { get; set; }
+public virtual float Scale { get; set; }
-public abstract CIImage Texture { get; set; }
+public virtual CIImage Texture { get; set; }

Type Changed: CoreImage.ICIGlassLozengeProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CoreGraphics.CGPoint InputPoint0 { get; set; }
+public virtual CoreGraphics.CGPoint InputPoint0 { get; set; }
-public abstract CoreGraphics.CGPoint InputPoint1 { get; set; }
+public virtual CoreGraphics.CGPoint InputPoint1 { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }
-public abstract float Refraction { get; set; }
+public virtual float Refraction { get; set; }

Type Changed: CoreImage.ICIGlideReflectedTileProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICIGloomProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Intensity { get; set; }
+public virtual float Intensity { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIHatchedScreenProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Sharpness { get; set; }
+public virtual float Sharpness { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICIHeightFieldFromMaskProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIHexagonalPixellateProtocol

Modified properties:

-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Scale { get; set; }
+public virtual float Scale { get; set; }

Type Changed: CoreImage.ICIHighlightShadowAdjustProtocol

Modified properties:

-public abstract float HighlightAmount { get; set; }
+public virtual float HighlightAmount { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }
-public abstract float ShadowAmount { get; set; }
+public virtual float ShadowAmount { get; set; }

Type Changed: CoreImage.ICIHistogramDisplayProtocol

Modified properties:

-public abstract float Height { get; set; }
+public virtual float Height { get; set; }
-public abstract float HighLimit { get; set; }
+public virtual float HighLimit { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float LowLimit { get; set; }
+public virtual float LowLimit { get; set; }

Type Changed: CoreImage.ICIHoleDistortionProtocol

Modified properties:

-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIHueAdjustProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIHueSaturationValueGradientProtocol

Modified properties:

-public abstract CoreGraphics.CGColorSpace ColorSpace { get; set; }
+public virtual CoreGraphics.CGColorSpace ColorSpace { get; set; }
-public abstract float Dither { get; set; }
+public virtual float Dither { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }
-public abstract float Softness { get; set; }
+public virtual float Softness { get; set; }
-public abstract float Value { get; set; }
+public virtual float Value { get; set; }

Type Changed: CoreImage.ICIImageProcessorInput

Modified properties:

-public abstract IntPtr BaseAddress { get; }
+public virtual IntPtr BaseAddress { get; }
-public abstract UIntPtr BytesPerRow { get; }
+public virtual UIntPtr BytesPerRow { get; }
-public abstract CIFormat Format { get; }
+public virtual CIFormat Format { get; }
-public abstract Metal.IMTLTexture MetalTexture { get; }
+public virtual Metal.IMTLTexture MetalTexture { get; }
-public abstract CoreVideo.CVPixelBuffer PixelBuffer { get; }
+public virtual CoreVideo.CVPixelBuffer PixelBuffer { get; }
-public abstract CoreGraphics.CGRect Region { get; }
+public virtual CoreGraphics.CGRect Region { get; }
-public abstract IOSurface.IOSurface Surface { get; }
+public virtual IOSurface.IOSurface Surface { get; }

Added properties:

public virtual ulong Digest { get; }
public virtual UIntPtr RoiTileCount { get; }
public virtual UIntPtr RoiTileIndex { get; }

Type Changed: CoreImage.ICIImageProcessorOutput

Modified properties:

-public abstract IntPtr BaseAddress { get; }
+public virtual IntPtr BaseAddress { get; }
-public abstract UIntPtr BytesPerRow { get; }
+public virtual UIntPtr BytesPerRow { get; }
-public abstract CIFormat Format { get; }
+public virtual CIFormat Format { get; }
-public abstract Metal.IMTLCommandBuffer MetalCommandBuffer { get; }
+public virtual Metal.IMTLCommandBuffer MetalCommandBuffer { get; }
-public abstract Metal.IMTLTexture MetalTexture { get; }
+public virtual Metal.IMTLTexture MetalTexture { get; }
-public abstract CoreVideo.CVPixelBuffer PixelBuffer { get; }
+public virtual CoreVideo.CVPixelBuffer PixelBuffer { get; }
-public abstract CoreGraphics.CGRect Region { get; }
+public virtual CoreGraphics.CGRect Region { get; }
-public abstract IOSurface.IOSurface Surface { get; }
+public virtual IOSurface.IOSurface Surface { get; }

Added property:

public virtual ulong Digest { get; }

Type Changed: CoreImage.ICIImageProvider

Modified methods:

-public abstract void ProvideImageData (IntPtr data, UIntPtr rowbytes, UIntPtr x, UIntPtr y, UIntPtr width, UIntPtr height, Foundation.NSObject info)
+public virtual void ProvideImageData (IntPtr data, UIntPtr rowbytes, UIntPtr x, UIntPtr y, UIntPtr width, UIntPtr height, Foundation.NSObject info)

Type Changed: CoreImage.ICIKMeansProtocol

Modified properties:

-public abstract IntPtr InputCount { get; set; }
+public virtual IntPtr InputCount { get; set; }
-public abstract float InputPasses { get; set; }
+public virtual float InputPasses { get; set; }
-public abstract CIImage Means { get; set; }
+public virtual CIImage Means { get; set; }
-public abstract bool Perceptual { get; set; }
+public virtual bool Perceptual { get; set; }

Type Changed: CoreImage.ICIKaleidoscopeProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract IntPtr InputCount { get; set; }
+public virtual IntPtr InputCount { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIKeystoneCorrectionCombinedProtocol

Modified properties:

-public abstract float FocalLength { get; set; }
+public virtual float FocalLength { get; set; }

Type Changed: CoreImage.ICIKeystoneCorrectionHorizontalProtocol

Modified properties:

-public abstract float FocalLength { get; set; }
+public virtual float FocalLength { get; set; }

Type Changed: CoreImage.ICIKeystoneCorrectionVerticalProtocol

Modified properties:

-public abstract float FocalLength { get; set; }
+public virtual float FocalLength { get; set; }

Type Changed: CoreImage.ICILabDeltaEProtocol

Modified properties:

-public abstract CIImage Image2 { get; set; }
+public virtual CIImage Image2 { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICILanczosScaleTransformProtocol

Modified properties:

-public abstract float AspectRatio { get; set; }
+public virtual float AspectRatio { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Scale { get; set; }
+public virtual float Scale { get; set; }

Type Changed: CoreImage.ICILenticularHaloGeneratorProtocol

Modified properties:

-public abstract CIColor Color { get; set; }
+public virtual CIColor Color { get; set; }
-public abstract float HaloOverlap { get; set; }
+public virtual float HaloOverlap { get; set; }
-public abstract float HaloRadius { get; set; }
+public virtual float HaloRadius { get; set; }
-public abstract float HaloWidth { get; set; }
+public virtual float HaloWidth { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract float StriationContrast { get; set; }
+public virtual float StriationContrast { get; set; }
-public abstract float StriationStrength { get; set; }
+public virtual float StriationStrength { get; set; }
-public abstract float Time { get; set; }
+public virtual float Time { get; set; }

Type Changed: CoreImage.ICILightTunnelProtocol

Modified properties:

-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }
-public abstract float Rotation { get; set; }
+public virtual float Rotation { get; set; }

Type Changed: CoreImage.ICILineOverlayProtocol

Modified properties:

-public abstract float Contrast { get; set; }
+public virtual float Contrast { get; set; }
-public abstract float EdgeIntensity { get; set; }
+public virtual float EdgeIntensity { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float NRNoiseLevel { get; set; }
+public virtual float NRNoiseLevel { get; set; }
-public abstract float NRSharpness { get; set; }
+public virtual float NRSharpness { get; set; }
-public abstract float Threshold { get; set; }
+public virtual float Threshold { get; set; }

Type Changed: CoreImage.ICILineScreenProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Sharpness { get; set; }
+public virtual float Sharpness { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICILinearGradientProtocol

Modified properties:

-public abstract CIColor Color0 { get; set; }
+public virtual CIColor Color0 { get; set; }
-public abstract CIColor Color1 { get; set; }
+public virtual CIColor Color1 { get; set; }
-public abstract CoreGraphics.CGPoint InputPoint0 { get; set; }
+public virtual CoreGraphics.CGPoint InputPoint0 { get; set; }
-public abstract CoreGraphics.CGPoint InputPoint1 { get; set; }
+public virtual CoreGraphics.CGPoint InputPoint1 { get; set; }

Type Changed: CoreImage.ICILinearToSrgbToneCurveProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIMaskToAlphaProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIMaskedVariableBlurProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CIImage Mask { get; set; }
+public virtual CIImage Mask { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIMaximumComponentProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIMedianProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIMeshGeneratorProtocol

Modified properties:

-public abstract CIColor Color { get; set; }
+public virtual CIColor Color { get; set; }
-public abstract CIVector[] Mesh { get; set; }
+public virtual CIVector[] Mesh { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICIMinimumComponentProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIMixProtocol

Modified properties:

-public abstract float Amount { get; set; }
+public virtual float Amount { get; set; }
-public abstract CIImage BackgroundImage { get; set; }
+public virtual CIImage BackgroundImage { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIModTransitionProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract float Compression { get; set; }
+public virtual float Compression { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIMorphologyGradientProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIMorphologyMaximumProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIMorphologyMinimumProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIMorphologyRectangleMaximumProtocol

Modified properties:

-public abstract float InputHeight { get; set; }
+public virtual float InputHeight { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float InputWidth { get; set; }
+public virtual float InputWidth { get; set; }

Type Changed: CoreImage.ICIMorphologyRectangleMinimumProtocol

Modified properties:

-public abstract float InputHeight { get; set; }
+public virtual float InputHeight { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float InputWidth { get; set; }
+public virtual float InputWidth { get; set; }

Type Changed: CoreImage.ICIMotionBlurProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICINinePartStretchedProtocol

Modified properties:

-public abstract CoreGraphics.CGPoint InputBreakpoint0 { get; set; }
+public virtual CoreGraphics.CGPoint InputBreakpoint0 { get; set; }
-public abstract CoreGraphics.CGPoint InputBreakpoint1 { get; set; }
+public virtual CoreGraphics.CGPoint InputBreakpoint1 { get; set; }
-public abstract CoreGraphics.CGPoint InputGrowAmount { get; set; }
+public virtual CoreGraphics.CGPoint InputGrowAmount { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICINinePartTiledProtocol

Modified properties:

-public abstract bool FlipYTiles { get; set; }
+public virtual bool FlipYTiles { get; set; }
-public abstract CoreGraphics.CGPoint InputBreakpoint0 { get; set; }
+public virtual CoreGraphics.CGPoint InputBreakpoint0 { get; set; }
-public abstract CoreGraphics.CGPoint InputBreakpoint1 { get; set; }
+public virtual CoreGraphics.CGPoint InputBreakpoint1 { get; set; }
-public abstract CoreGraphics.CGPoint InputGrowAmount { get; set; }
+public virtual CoreGraphics.CGPoint InputGrowAmount { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICINoiseReductionProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float NoiseLevel { get; set; }
+public virtual float NoiseLevel { get; set; }
-public abstract float Sharpness { get; set; }
+public virtual float Sharpness { get; set; }

Type Changed: CoreImage.ICIOpTileProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Scale { get; set; }
+public virtual float Scale { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICIPageCurlTransitionProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CIImage BacksideImage { get; set; }
+public virtual CIImage BacksideImage { get; set; }
-public abstract CoreGraphics.CGRect InputExtent { get; set; }
+public virtual CoreGraphics.CGRect InputExtent { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }
-public abstract CIImage ShadingImage { get; set; }
+public virtual CIImage ShadingImage { get; set; }

Type Changed: CoreImage.ICIPageCurlWithShadowTransitionProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CIImage BacksideImage { get; set; }
+public virtual CIImage BacksideImage { get; set; }
-public abstract CoreGraphics.CGRect InputExtent { get; set; }
+public virtual CoreGraphics.CGRect InputExtent { get; set; }
-public abstract CoreGraphics.CGRect InputShadowExtent { get; set; }
+public virtual CoreGraphics.CGRect InputShadowExtent { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }
-public abstract float ShadowAmount { get; set; }
+public virtual float ShadowAmount { get; set; }
-public abstract float ShadowSize { get; set; }
+public virtual float ShadowSize { get; set; }

Type Changed: CoreImage.ICIPaletteCentroidProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CIImage PaletteImage { get; set; }
+public virtual CIImage PaletteImage { get; set; }
-public abstract bool Perceptual { get; set; }
+public virtual bool Perceptual { get; set; }

Type Changed: CoreImage.ICIPalettizeProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CIImage PaletteImage { get; set; }
+public virtual CIImage PaletteImage { get; set; }
-public abstract bool Perceptual { get; set; }
+public virtual bool Perceptual { get; set; }

Type Changed: CoreImage.ICIParallelogramTileProtocol

Modified properties:

-public abstract float AcuteAngle { get; set; }
+public virtual float AcuteAngle { get; set; }
-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICIPdf417BarcodeGeneratorProtocol

Modified properties:

-public abstract float InputAlwaysSpecifyCompaction { get; set; }
+public virtual float InputAlwaysSpecifyCompaction { get; set; }
-public abstract float InputCompactStyle { get; set; }
+public virtual float InputCompactStyle { get; set; }
-public abstract float InputCompactionMode { get; set; }
+public virtual float InputCompactionMode { get; set; }
-public abstract float InputCorrectionLevel { get; set; }
+public virtual float InputCorrectionLevel { get; set; }
-public abstract float InputDataColumns { get; set; }
+public virtual float InputDataColumns { get; set; }
-public abstract float InputRows { get; set; }
+public virtual float InputRows { get; set; }
-public abstract float MaxHeight { get; set; }
+public virtual float MaxHeight { get; set; }
-public abstract float MaxWidth { get; set; }
+public virtual float MaxWidth { get; set; }
-public abstract Foundation.NSData Message { get; set; }
+public virtual Foundation.NSData Message { get; set; }
-public abstract float MinHeight { get; set; }
+public virtual float MinHeight { get; set; }
-public abstract float MinWidth { get; set; }
+public virtual float MinWidth { get; set; }
-public abstract float PreferredAspectRatio { get; set; }
+public virtual float PreferredAspectRatio { get; set; }

Type Changed: CoreImage.ICIPersonSegmentationProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract UIntPtr QualityLevel { get; set; }
+public virtual UIntPtr QualityLevel { get; set; }

Type Changed: CoreImage.ICIPerspectiveCorrectionProtocol

Modified properties:

-public abstract bool Crop { get; set; }
+public virtual bool Crop { get; set; }

Type Changed: CoreImage.ICIPerspectiveRotateProtocol

Modified properties:

-public abstract float FocalLength { get; set; }
+public virtual float FocalLength { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Pitch { get; set; }
+public virtual float Pitch { get; set; }
-public abstract float Roll { get; set; }
+public virtual float Roll { get; set; }
-public abstract float Yaw { get; set; }
+public virtual float Yaw { get; set; }

Type Changed: CoreImage.ICIPerspectiveTileProtocol

Modified properties:

-public abstract CoreGraphics.CGPoint InputBottomLeft { get; set; }
+public virtual CoreGraphics.CGPoint InputBottomLeft { get; set; }
-public abstract CoreGraphics.CGPoint InputBottomRight { get; set; }
+public virtual CoreGraphics.CGPoint InputBottomRight { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CoreGraphics.CGPoint InputTopLeft { get; set; }
+public virtual CoreGraphics.CGPoint InputTopLeft { get; set; }
-public abstract CoreGraphics.CGPoint InputTopRight { get; set; }
+public virtual CoreGraphics.CGPoint InputTopRight { get; set; }

Type Changed: CoreImage.ICIPerspectiveTransformWithExtentProtocol

Modified properties:

-public abstract CoreGraphics.CGRect InputExtent { get; set; }
+public virtual CoreGraphics.CGRect InputExtent { get; set; }

Type Changed: CoreImage.ICIPhotoEffectProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Added property:

public virtual bool Extrapolate { get; set; }

Type Changed: CoreImage.ICIPinchDistortionProtocol

Modified properties:

-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }
-public abstract float Scale { get; set; }
+public virtual float Scale { get; set; }

Type Changed: CoreImage.ICIPixellateProtocol

Modified properties:

-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Scale { get; set; }
+public virtual float Scale { get; set; }

Type Changed: CoreImage.ICIPointillizeProtocol

Modified properties:

-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIQRCodeGeneratorProtocol

Modified properties:

-public abstract string CorrectionLevel { get; set; }
+public virtual string CorrectionLevel { get; set; }
-public abstract Foundation.NSData Message { get; set; }
+public virtual Foundation.NSData Message { get; set; }

Type Changed: CoreImage.ICIRadialGradientProtocol

Modified properties:

-public abstract CIColor Color0 { get; set; }
+public virtual CIColor Color0 { get; set; }
-public abstract CIColor Color1 { get; set; }
+public virtual CIColor Color1 { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract float Radius0 { get; set; }
+public virtual float Radius0 { get; set; }
-public abstract float Radius1 { get; set; }
+public virtual float Radius1 { get; set; }

Type Changed: CoreImage.ICIRippleTransitionProtocol

Modified properties:

-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CoreGraphics.CGRect InputExtent { get; set; }
+public virtual CoreGraphics.CGRect InputExtent { get; set; }
-public abstract float Scale { get; set; }
+public virtual float Scale { get; set; }
-public abstract CIImage ShadingImage { get; set; }
+public virtual CIImage ShadingImage { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICIRoundedRectangleGeneratorProtocol

Modified properties:

-public abstract CIColor Color { get; set; }
+public virtual CIColor Color { get; set; }
-public abstract CoreGraphics.CGRect InputExtent { get; set; }
+public virtual CoreGraphics.CGRect InputExtent { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIRoundedRectangleStrokeGeneratorProtocol

Modified properties:

-public abstract CIColor Color { get; set; }
+public virtual CIColor Color { get; set; }
-public abstract CoreGraphics.CGRect InputExtent { get; set; }
+public virtual CoreGraphics.CGRect InputExtent { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICISaliencyMapProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICISepiaToneProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Intensity { get; set; }
+public virtual float Intensity { get; set; }

Type Changed: CoreImage.ICIShadedMaterialProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Scale { get; set; }
+public virtual float Scale { get; set; }
-public abstract CIImage ShadingImage { get; set; }
+public virtual CIImage ShadingImage { get; set; }

Type Changed: CoreImage.ICISharpenLuminanceProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }
-public abstract float Sharpness { get; set; }
+public virtual float Sharpness { get; set; }

Type Changed: CoreImage.ICISixfoldReflectedTileProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICISixfoldRotatedTileProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICISmoothLinearGradientProtocol

Modified properties:

-public abstract CIColor Color0 { get; set; }
+public virtual CIColor Color0 { get; set; }
-public abstract CIColor Color1 { get; set; }
+public virtual CIColor Color1 { get; set; }
-public abstract CoreGraphics.CGPoint InputPoint0 { get; set; }
+public virtual CoreGraphics.CGPoint InputPoint0 { get; set; }
-public abstract CoreGraphics.CGPoint InputPoint1 { get; set; }
+public virtual CoreGraphics.CGPoint InputPoint1 { get; set; }

Type Changed: CoreImage.ICISobelGradientsProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICISpotColorProtocol

Modified properties:

-public abstract CIColor CenterColor1 { get; set; }
+public virtual CIColor CenterColor1 { get; set; }
-public abstract CIColor CenterColor2 { get; set; }
+public virtual CIColor CenterColor2 { get; set; }
-public abstract CIColor CenterColor3 { get; set; }
+public virtual CIColor CenterColor3 { get; set; }
-public abstract float Closeness1 { get; set; }
+public virtual float Closeness1 { get; set; }
-public abstract float Closeness2 { get; set; }
+public virtual float Closeness2 { get; set; }
-public abstract float Closeness3 { get; set; }
+public virtual float Closeness3 { get; set; }
-public abstract float Contrast1 { get; set; }
+public virtual float Contrast1 { get; set; }
-public abstract float Contrast2 { get; set; }
+public virtual float Contrast2 { get; set; }
-public abstract float Contrast3 { get; set; }
+public virtual float Contrast3 { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CIColor ReplacementColor1 { get; set; }
+public virtual CIColor ReplacementColor1 { get; set; }
-public abstract CIColor ReplacementColor2 { get; set; }
+public virtual CIColor ReplacementColor2 { get; set; }
-public abstract CIColor ReplacementColor3 { get; set; }
+public virtual CIColor ReplacementColor3 { get; set; }

Type Changed: CoreImage.ICISpotLightProtocol

Modified properties:

-public abstract float Brightness { get; set; }
+public virtual float Brightness { get; set; }
-public abstract CIColor Color { get; set; }
+public virtual CIColor Color { get; set; }
-public abstract float Concentration { get; set; }
+public virtual float Concentration { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CIVector LightPointsAt { get; set; }
+public virtual CIVector LightPointsAt { get; set; }
-public abstract CIVector LightPosition { get; set; }
+public virtual CIVector LightPosition { get; set; }

Type Changed: CoreImage.ICISrgbToneCurveToLinearProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIStarShineGeneratorProtocol

Modified properties:

-public abstract CIColor Color { get; set; }
+public virtual CIColor Color { get; set; }
-public abstract float CrossAngle { get; set; }
+public virtual float CrossAngle { get; set; }
-public abstract float CrossOpacity { get; set; }
+public virtual float CrossOpacity { get; set; }
-public abstract float CrossScale { get; set; }
+public virtual float CrossScale { get; set; }
-public abstract float CrossWidth { get; set; }
+public virtual float CrossWidth { get; set; }
-public abstract float Epsilon { get; set; }
+public virtual float Epsilon { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIStraightenProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIStretchCropProtocol

Modified properties:

-public abstract float CenterStretchAmount { get; set; }
+public virtual float CenterStretchAmount { get; set; }
-public abstract float CropAmount { get; set; }
+public virtual float CropAmount { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CoreGraphics.CGPoint InputSize { get; set; }
+public virtual CoreGraphics.CGPoint InputSize { get; set; }

Type Changed: CoreImage.ICIStripesGeneratorProtocol

Modified properties:

-public abstract CIColor Color0 { get; set; }
+public virtual CIColor Color0 { get; set; }
-public abstract CIColor Color1 { get; set; }
+public virtual CIColor Color1 { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract float Sharpness { get; set; }
+public virtual float Sharpness { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICISunbeamsGeneratorProtocol

Modified properties:

-public abstract CIColor Color { get; set; }
+public virtual CIColor Color { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract float MaxStriationRadius { get; set; }
+public virtual float MaxStriationRadius { get; set; }
-public abstract float StriationContrast { get; set; }
+public virtual float StriationContrast { get; set; }
-public abstract float StriationStrength { get; set; }
+public virtual float StriationStrength { get; set; }
-public abstract float SunRadius { get; set; }
+public virtual float SunRadius { get; set; }
-public abstract float Time { get; set; }
+public virtual float Time { get; set; }

Type Changed: CoreImage.ICISwipeTransitionProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CIColor Color { get; set; }
+public virtual CIColor Color { get; set; }
-public abstract CoreGraphics.CGRect InputExtent { get; set; }
+public virtual CoreGraphics.CGRect InputExtent { get; set; }
-public abstract float Opacity { get; set; }
+public virtual float Opacity { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICITemperatureAndTintProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CIVector Neutral { get; set; }
+public virtual CIVector Neutral { get; set; }
-public abstract CIVector TargetNeutral { get; set; }
+public virtual CIVector TargetNeutral { get; set; }

Type Changed: CoreImage.ICITextImageGeneratorProtocol

Modified properties:

-public abstract string FontName { get; set; }
+public virtual string FontName { get; set; }
-public abstract float FontSize { get; set; }
+public virtual float FontSize { get; set; }
-public abstract float ScaleFactor { get; set; }
+public virtual float ScaleFactor { get; set; }
-public abstract string Text { get; set; }
+public virtual string Text { get; set; }

Added property:

public virtual float Padding { get; set; }

Type Changed: CoreImage.ICIThermalProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIToneCurveProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CoreGraphics.CGPoint InputPoint0 { get; set; }
+public virtual CoreGraphics.CGPoint InputPoint0 { get; set; }
-public abstract CoreGraphics.CGPoint InputPoint1 { get; set; }
+public virtual CoreGraphics.CGPoint InputPoint1 { get; set; }
-public abstract CoreGraphics.CGPoint InputPoint2 { get; set; }
+public virtual CoreGraphics.CGPoint InputPoint2 { get; set; }
-public abstract CoreGraphics.CGPoint InputPoint3 { get; set; }
+public virtual CoreGraphics.CGPoint InputPoint3 { get; set; }
-public abstract CoreGraphics.CGPoint InputPoint4 { get; set; }
+public virtual CoreGraphics.CGPoint InputPoint4 { get; set; }

Type Changed: CoreImage.ICITorusLensDistortionProtocol

Modified properties:

-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }
-public abstract float Refraction { get; set; }
+public virtual float Refraction { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICITransitionFilterProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CIImage TargetImage { get; set; }
+public virtual CIImage TargetImage { get; set; }
-public abstract float Time { get; set; }
+public virtual float Time { get; set; }

Type Changed: CoreImage.ICITriangleKaleidoscopeProtocol

Modified properties:

-public abstract float Decay { get; set; }
+public virtual float Decay { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract CoreGraphics.CGPoint InputPoint { get; set; }
+public virtual CoreGraphics.CGPoint InputPoint { get; set; }
-public abstract float Rotation { get; set; }
+public virtual float Rotation { get; set; }
-public abstract float Size { get; set; }
+public virtual float Size { get; set; }

Type Changed: CoreImage.ICITriangleTileProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICITwelvefoldReflectedTileProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Width { get; set; }
+public virtual float Width { get; set; }

Type Changed: CoreImage.ICITwirlDistortionProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIUnsharpMaskProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Intensity { get; set; }
+public virtual float Intensity { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIVibranceProtocol

Modified properties:

-public abstract float Amount { get; set; }
+public virtual float Amount { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIVignetteEffectProtocol

Modified properties:

-public abstract float Falloff { get; set; }
+public virtual float Falloff { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Intensity { get; set; }
+public virtual float Intensity { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIVignetteProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Intensity { get; set; }
+public virtual float Intensity { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIVortexDistortionProtocol

Modified properties:

-public abstract float Angle { get; set; }
+public virtual float Angle { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }
-public abstract float Radius { get; set; }
+public virtual float Radius { get; set; }

Type Changed: CoreImage.ICIWhitePointAdjustProtocol

Modified properties:

-public abstract CIColor Color { get; set; }
+public virtual CIColor Color { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIXRayProtocol

Modified properties:

-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

Type Changed: CoreImage.ICIZoomBlurProtocol

Modified properties:

-public abstract float Amount { get; set; }
+public virtual float Amount { get; set; }
-public abstract CoreGraphics.CGPoint InputCenter { get; set; }
+public virtual CoreGraphics.CGPoint InputCenter { get; set; }
-public abstract CIImage InputImage { get; set; }
+public virtual CIImage InputImage { get; set; }

New Type: CoreImage.CIAreaBoundsRed

public class CIAreaBoundsRed : CoreImage.CIFilter, ICIAreaBoundsRedProtocol, ICIAreaReductionFilterProtocol, ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public CIAreaBoundsRed ();
	public CIAreaBoundsRed (Foundation.NSCoder coder);
	protected CIAreaBoundsRed (Foundation.NSObjectFlag t);
	protected CIAreaBoundsRed (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual CoreGraphics.CGRect InputExtent { get; set; }
	public virtual CIImage InputImage { get; set; }
	public virtual CIImage OutputImage { get; }
}

New Type: CoreImage.CIMaximumScaleTransform

public class CIMaximumScaleTransform : CoreImage.CIFilter, ICIFilterProtocol, ICIMaximumScaleTransformProtocol, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public CIMaximumScaleTransform ();
	public CIMaximumScaleTransform (Foundation.NSCoder coder);
	protected CIMaximumScaleTransform (Foundation.NSObjectFlag t);
	protected CIMaximumScaleTransform (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual float AspectRatio { get; set; }
	public virtual CIImage InputImage { get; set; }
	public virtual CIImage OutputImage { get; }
	public virtual float Scale { get; set; }
}

New Type: CoreImage.CIToneMapHeadroom

public class CIToneMapHeadroom : CoreImage.CIFilter, ICIFilterProtocol, ICIToneMapHeadroomProtocol, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public CIToneMapHeadroom ();
	public CIToneMapHeadroom (Foundation.NSCoder coder);
	protected CIToneMapHeadroom (Foundation.NSObjectFlag t);
	protected CIToneMapHeadroom (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual CIImage InputImage { get; set; }
	public virtual CIImage OutputImage { get; }
	public virtual float SourceHeadroom { get; set; }
	public virtual float TargetHeadroom { get; set; }
}

New Type: CoreImage.ICIAreaBoundsRedProtocol

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

New Type: CoreImage.ICIMaximumScaleTransformProtocol

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

New Type: CoreImage.ICIToneMapHeadroomProtocol

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

Namespace CoreLocation

Type Changed: CoreLocation.CLBackgroundActivitySession

Added method:

public static CLBackgroundActivitySession Create (CoreFoundation.DispatchQueue queue, CLBackgroundActivitySessionCreateHandler handler);

Type Changed: CoreLocation.CLMonitoringEvent

Added properties:

public virtual bool AccuracyLimited { get; }
public virtual bool AuthorizationDenied { get; }
public virtual bool AuthorizationDeniedGlobally { get; }
public virtual bool AuthorizationRequestInProgress { get; }
public virtual bool AuthorizationRestricted { get; }
public virtual bool ConditionLimitExceeded { get; }
public virtual bool ConditionUnsupported { get; }
public virtual bool InsufficientlyInUse { get; }
public virtual bool PersistenceUnavailable { get; }
public virtual bool ServiceSessionRequired { get; }

Type Changed: CoreLocation.CLUpdate

Added properties:

public virtual bool AccuracyLimited { get; }
public virtual bool AuthorizationDenied { get; }
public virtual bool AuthorizationDeniedGlobally { get; }
public virtual bool AuthorizationRequestInProgress { get; }
public virtual bool AuthorizationRestricted { get; }
public virtual bool InsufficientlyInUse { get; }
public virtual bool LocationUnavailable { get; }
public virtual bool ServiceSessionRequired { get; }
public virtual bool Stationary { get; }

Type Changed: CoreLocation.ICLLocationManagerDelegate

Added methods:

public virtual void AuthorizationChanged (CLLocationManager manager, CLAuthorizationStatus status);
public virtual void DeferredUpdatesFinished (CLLocationManager manager, Foundation.NSError error);
public virtual void DidChangeAuthorization (CLLocationManager manager);
public virtual void DidDetermineState (CLLocationManager manager, CLRegionState state, CLRegion region);
public virtual void DidFailRangingBeacons (CLLocationManager manager, CLBeaconIdentityConstraint beaconConstraint, Foundation.NSError error);
public virtual void DidRangeBeacons (CLLocationManager manager, CLBeacon[] beacons, CLBeaconRegion region);
public virtual void DidRangeBeaconsSatisfyingConstraint (CLLocationManager manager, CLBeacon[] beacons, CLBeaconIdentityConstraint beaconConstraint);
public virtual void DidStartMonitoringForRegion (CLLocationManager manager, CLRegion region);
public virtual void DidVisit (CLLocationManager manager, CLVisit visit);
public virtual void Failed (CLLocationManager manager, Foundation.NSError error);
public virtual void LocationUpdatesPaused (CLLocationManager manager);
public virtual void LocationUpdatesResumed (CLLocationManager manager);
public virtual void LocationsUpdated (CLLocationManager manager, CLLocation[] locations);
public virtual void MonitoringFailed (CLLocationManager manager, CLRegion region, Foundation.NSError error);
public virtual void RangingBeaconsDidFailForRegion (CLLocationManager manager, CLBeaconRegion region, Foundation.NSError error);
public virtual void RegionEntered (CLLocationManager manager, CLRegion region);
public virtual void RegionLeft (CLLocationManager manager, CLRegion region);
public virtual bool ShouldDisplayHeadingCalibration (CLLocationManager manager);
public virtual void UpdatedHeading (CLLocationManager manager, CLHeading newHeading);
public virtual void UpdatedLocation (CLLocationManager manager, CLLocation newLocation, CLLocation oldLocation);

New Type: CoreLocation.CLBackgroundActivitySessionCreateHandler

public sealed delegate CLBackgroundActivitySessionCreateHandler : System.MulticastDelegate {
	// constructors
	public CLBackgroundActivitySessionCreateHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (CLBackgroundActivitySessionDiagnostic diagnostic, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (CLBackgroundActivitySessionDiagnostic diagnostic);
}

New Type: CoreLocation.CLBackgroundActivitySessionDiagnostic

public class CLBackgroundActivitySessionDiagnostic : Foundation.NSObject {
	// constructors
	public CLBackgroundActivitySessionDiagnostic ();
	protected CLBackgroundActivitySessionDiagnostic (Foundation.NSObjectFlag t);
	protected CLBackgroundActivitySessionDiagnostic (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual bool AuthorizationDenied { get; }
	public virtual bool AuthorizationDeniedGlobally { get; }
	public virtual bool AuthorizationRequestInProgress { get; }
	public virtual bool AuthorizationRestricted { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual bool InsufficientlyInUse { get; }
	public virtual bool ServiceSessionRequired { get; }
}

New Type: CoreLocation.CLServiceSession

public class CLServiceSession : Foundation.NSObject {
	// constructors
	protected CLServiceSession (Foundation.NSObjectFlag t);
	protected CLServiceSession (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	// methods
	public static CLServiceSession CreateSession (CLServiceSessionAuthorizationRequirement authorizationRequirement);
	public static CLServiceSession CreateSession (CLServiceSessionAuthorizationRequirement authorizationRequirement, string fullAccuracyPurposeKey);
	public static CLServiceSession CreateSession (CLServiceSessionAuthorizationRequirement authorizationRequirement, CoreFoundation.DispatchQueue queue, CLServiceSessionCreateHandler handler);
	public static CLServiceSession CreateSession (CLServiceSessionAuthorizationRequirement authorizationRequirement, string fullAccuracyPurposeKey, CoreFoundation.DispatchQueue queue, CLServiceSessionCreateHandler handler);
	public virtual void Invalidate ();
}

New Type: CoreLocation.CLServiceSessionAuthorizationRequirement

[Serializable]
public enum CLServiceSessionAuthorizationRequirement {
	Always = 2,
	None = 0,
	WhenInUse = 1,
}

New Type: CoreLocation.CLServiceSessionCreateHandler

public sealed delegate CLServiceSessionCreateHandler : System.MulticastDelegate {
	// constructors
	public CLServiceSessionCreateHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (CLServiceSessionDiagnostic diagnostic, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (CLServiceSessionDiagnostic diagnostic);
}

New Type: CoreLocation.CLServiceSessionDiagnostic

public class CLServiceSessionDiagnostic : Foundation.NSObject {
	// constructors
	protected CLServiceSessionDiagnostic (Foundation.NSObjectFlag t);
	protected CLServiceSessionDiagnostic (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual bool AlwaysAuthorizationDenied { get; }
	public virtual bool AuthorizationDenied { get; }
	public virtual bool AuthorizationDeniedGlobally { get; }
	public virtual bool AuthorizationRequestInProgress { get; }
	public virtual bool AuthorizationRestricted { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual bool FullAccuracyDenied { get; }
	public virtual bool InsufficientlyInUse { get; }
	public virtual bool ServiceSessionRequired { get; }
}

Namespace CoreML

Type Changed: CoreML.IMLBatchProvider

Modified properties:

-public abstract IntPtr Count { get; }
+public virtual IntPtr Count { get; }

Modified methods:

-public abstract IMLFeatureProvider GetFeatures (IntPtr index)
+public virtual IMLFeatureProvider GetFeatures (IntPtr index)

Type Changed: CoreML.IMLCustomLayer

Modified methods:

-public abstract bool EvaluateOnCpu (MLMultiArray[] inputs, MLMultiArray[] outputs, out Foundation.NSError error)
+public virtual bool EvaluateOnCpu (MLMultiArray[] inputs, MLMultiArray[] outputs, out Foundation.NSError error)
-public abstract Foundation.NSArray[] GetOutputShapes (Foundation.NSArray[] inputShapes, out Foundation.NSError error)
+public virtual Foundation.NSArray[] GetOutputShapes (Foundation.NSArray[] inputShapes, out Foundation.NSError error)
-public abstract bool SetWeightData (Foundation.NSData[] weights, out Foundation.NSError error)
+public virtual bool SetWeightData (Foundation.NSData[] weights, out Foundation.NSError error)

Added method:

public virtual bool Encode (Metal.IMTLCommandBuffer commandBuffer, Metal.IMTLTexture[] inputs, Metal.IMTLTexture[] outputs, out Foundation.NSError error);

Type Changed: CoreML.IMLCustomModel

Modified methods:

-public abstract IMLFeatureProvider GetPrediction (IMLFeatureProvider inputFeatures, MLPredictionOptions options, out Foundation.NSError error)
+public virtual IMLFeatureProvider GetPrediction (IMLFeatureProvider inputFeatures, MLPredictionOptions options, out Foundation.NSError error)

Added methods:

public static T CreateInstance<T> (MLModelDescription modelDescription, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> parameters, out Foundation.NSError error);
public virtual IMLBatchProvider GetPredictions (IMLBatchProvider inputBatch, MLPredictionOptions options, out Foundation.NSError error);

Type Changed: CoreML.IMLFeatureProvider

Modified properties:

-public abstract Foundation.NSSet%LESSERTHANREPLACEMENT%Foundation.NSString%GREATERTHANREPLACEMENT% FeatureNames { get; }
+public virtual Foundation.NSSet%LESSERTHANREPLACEMENT%Foundation.NSString%GREATERTHANREPLACEMENT% FeatureNames { get; }

Modified methods:

-public abstract MLFeatureValue GetFeatureValue (string featureName)
+public virtual MLFeatureValue GetFeatureValue (string featureName)

Type Changed: CoreML.IMLWritable

Modified methods:

-public abstract bool Write (Foundation.NSUrl url, out Foundation.NSError error)
+public virtual bool Write (Foundation.NSUrl url, out Foundation.NSError error)

Type Changed: CoreML.MLModelConfiguration

Added property:

public virtual MLOptimizationHints OptimizationHints { get; set; }

New Type: CoreML.MLComputePlan

public class MLComputePlan : Foundation.NSObject {
	// constructors
	protected MLComputePlan (Foundation.NSObjectFlag t);
	protected MLComputePlan (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual MLModelStructure ModelStructure { get; }
	// methods
	public virtual MLComputePlanDeviceUsage ComputeDeviceUsage (MLModelStructureNeuralNetworkLayer neuralNetworkLayer);
	public virtual MLComputePlanDeviceUsage ComputeDeviceUsage (MLModelStructureProgramOperation programOperation);
	public virtual MLComputePlanCost GetEstimatedCost (MLModelStructureProgramOperation programOperation);
	public static void Load (MLModelAsset modelAsset, MLModelConfiguration configuration, System.Action<MLComputePlan,Foundation.NSError> handler);
	public static void Load (Foundation.NSUrl contentsUrl, MLModelConfiguration configuration, System.Action<MLComputePlan,Foundation.NSError> handler);
}

New Type: CoreML.MLComputePlanCost

public class MLComputePlanCost : Foundation.NSObject {
	// constructors
	protected MLComputePlanCost (Foundation.NSObjectFlag t);
	protected MLComputePlanCost (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual double Weight { get; }
}

New Type: CoreML.MLComputePlanDeviceUsage

public class MLComputePlanDeviceUsage : Foundation.NSObject {
	// constructors
	protected MLComputePlanDeviceUsage (Foundation.NSObjectFlag t);
	protected MLComputePlanDeviceUsage (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual IMLComputeDeviceProtocol PreferredComputeDevice { get; }
	public virtual IMLComputeDeviceProtocol[] SupportedComputeDevices { get; }
}

New Type: CoreML.MLModelStructure

public class MLModelStructure : Foundation.NSObject {
	// constructors
	protected MLModelStructure (Foundation.NSObjectFlag t);
	protected MLModelStructure (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual MLModelStructureNeuralNetwork NeuralNetwork { get; }
	public virtual MLModelStructurePipeline Pipeline { get; }
	public virtual MLModelStructureProgram Program { get; }
	// methods
	public static void Load (MLModelAsset modelAsset, System.Action<MLModelStructure,Foundation.NSError> handler);
	public static void Load (Foundation.NSUrl url, System.Action<MLModelStructure,Foundation.NSError> handler);
}

New Type: CoreML.MLModelStructureNeuralNetwork

public class MLModelStructureNeuralNetwork : Foundation.NSObject {
	// constructors
	protected MLModelStructureNeuralNetwork (Foundation.NSObjectFlag t);
	protected MLModelStructureNeuralNetwork (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual MLModelStructureNeuralNetworkLayer[] Layers { get; }
}

New Type: CoreML.MLModelStructureNeuralNetworkLayer

public class MLModelStructureNeuralNetworkLayer : Foundation.NSObject {
	// constructors
	protected MLModelStructureNeuralNetworkLayer (Foundation.NSObjectFlag t);
	protected MLModelStructureNeuralNetworkLayer (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual string[] InputNames { get; }
	public virtual string Name { get; }
	public virtual string[] OutputNames { get; }
	public virtual string Type { get; }
}

New Type: CoreML.MLModelStructurePipeline

public class MLModelStructurePipeline : Foundation.NSObject {
	// constructors
	protected MLModelStructurePipeline (Foundation.NSObjectFlag t);
	protected MLModelStructurePipeline (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual string[] SubModelNames { get; }
	public virtual MLModelStructure[] SubModels { get; }
}

New Type: CoreML.MLModelStructureProgram

public class MLModelStructureProgram : Foundation.NSObject {
	// constructors
	protected MLModelStructureProgram (Foundation.NSObjectFlag t);
	protected MLModelStructureProgram (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual Foundation.NSDictionary<Foundation.NSString,CoreML.MLModelStructureProgramFunction> Functions { get; }
}

New Type: CoreML.MLModelStructureProgramArgument

public class MLModelStructureProgramArgument : Foundation.NSObject {
	// constructors
	protected MLModelStructureProgramArgument (Foundation.NSObjectFlag t);
	protected MLModelStructureProgramArgument (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual MLModelStructureProgramBinding[] Bindings { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
}

New Type: CoreML.MLModelStructureProgramBinding

public class MLModelStructureProgramBinding : Foundation.NSObject {
	// constructors
	protected MLModelStructureProgramBinding (Foundation.NSObjectFlag t);
	protected MLModelStructureProgramBinding (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual string Name { get; }
	public virtual MLModelStructureProgramValue Value { get; }
}

New Type: CoreML.MLModelStructureProgramBlock

public class MLModelStructureProgramBlock : Foundation.NSObject {
	// constructors
	protected MLModelStructureProgramBlock (Foundation.NSObjectFlag t);
	protected MLModelStructureProgramBlock (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual MLModelStructureProgramNamedValueType[] Inputs { get; }
	public virtual MLModelStructureProgramOperation[] Operations { get; }
	public virtual string[] OutputNames { get; }
}

New Type: CoreML.MLModelStructureProgramFunction

public class MLModelStructureProgramFunction : Foundation.NSObject {
	// constructors
	protected MLModelStructureProgramFunction (Foundation.NSObjectFlag t);
	protected MLModelStructureProgramFunction (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual MLModelStructureProgramBlock Block { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual MLModelStructureProgramNamedValueType[] Inputs { get; }
}

New Type: CoreML.MLModelStructureProgramNamedValueType

public class MLModelStructureProgramNamedValueType : Foundation.NSObject {
	// constructors
	protected MLModelStructureProgramNamedValueType (Foundation.NSObjectFlag t);
	protected MLModelStructureProgramNamedValueType (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual string Name { get; }
	public virtual MLModelStructureProgramValueType Type { get; }
}

New Type: CoreML.MLModelStructureProgramOperation

public class MLModelStructureProgramOperation : Foundation.NSObject {
	// constructors
	protected MLModelStructureProgramOperation (Foundation.NSObjectFlag t);
	protected MLModelStructureProgramOperation (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual MLModelStructureProgramBlock[] Blocks { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual Foundation.NSDictionary<Foundation.NSString,CoreML.MLModelStructureProgramArgument> Inputs { get; }
	public virtual string OperatorName { get; }
	public virtual MLModelStructureProgramNamedValueType[] Outputs { get; }
}

New Type: CoreML.MLModelStructureProgramValue

public class MLModelStructureProgramValue : Foundation.NSObject {
	// constructors
	protected MLModelStructureProgramValue (Foundation.NSObjectFlag t);
	protected MLModelStructureProgramValue (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
}

New Type: CoreML.MLModelStructureProgramValueType

public class MLModelStructureProgramValueType : Foundation.NSObject {
	// constructors
	protected MLModelStructureProgramValueType (Foundation.NSObjectFlag t);
	protected MLModelStructureProgramValueType (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
}

New Type: CoreML.MLOptimizationHints

public class MLOptimizationHints : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public MLOptimizationHints ();
	public MLOptimizationHints (Foundation.NSCoder coder);
	protected MLOptimizationHints (Foundation.NSObjectFlag t);
	protected MLOptimizationHints (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual MLReshapeFrequencyHint ReshapeFrequency { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: CoreML.MLReshapeFrequencyHint

[Serializable]
public enum MLReshapeFrequencyHint {
	Frequent = 0,
	Infrequent = 1,
}

Namespace CoreMidi

Type Changed: CoreMidi.IMidiCIProfileResponderDelegate

Modified methods:

-public abstract bool ConnectInitiator (Foundation.NSNumber initiatorMuid, MidiCIDeviceInfo deviceInfo)
+public virtual bool ConnectInitiator (Foundation.NSNumber initiatorMuid, MidiCIDeviceInfo deviceInfo)
-public abstract void InitiatorDisconnected (Foundation.NSNumber initiatorMuid)
+public virtual void InitiatorDisconnected (Foundation.NSNumber initiatorMuid)

Added methods:

public virtual void HandleData (MidiCIProfile profile, byte channel, Foundation.NSData inData);
public virtual bool WillSetProfile (MidiCIProfile profile, byte channel, bool shouldEnable);

Type Changed: CoreMidi.MidiDevice

Obsoleted properties:

 [Obsolete ("This API does not do anything on this platform.")]
 public string FactoryPatchNameFile { get; set; }
 [Obsolete ("This API does not do anything on this platform.")]
 public string UserPatchNameFile { get; set; }

Added property:

public MidiProtocolId ProtocolId { get; set; }

Type Changed: CoreMidi.MidiEndpoint

Added properties:

public MidiProtocolId ProtocolId { get; set; }
public ushort UmpActiveGroupBitmap { get; set; }
public bool UmpCanTransmitGroupless { get; set; }

Type Changed: CoreMidi.MidiEntity

Added properties:

public MidiProtocolId ProtocolId { get; set; }
public ushort UmpActiveGroupBitmap { get; set; }
public bool UmpCanTransmitGroupless { get; set; }

Type Changed: CoreMidi.MidiPacket

Obsoleted properties:

 [Obsolete ("This property may return a pointer to a managed object, and this pointer is never safe to use. Use ByteArray or BytePointer instead.")]
 public IntPtr Bytes { get; }

Added properties:

public byte[] ByteArray { get; }
public IntPtr BytePointer { get; }

Namespace CoreMotion

Type Changed: CoreMotion.CMHeadphoneMotionManager

Added property:

public virtual bool ConnectionStatusActive { get; }

Added methods:

public virtual void StartConnectionStatusUpdates ();
public virtual void StopConnectionStatusUpdates ();

Type Changed: CoreMotion.ICMHeadphoneMotionManagerDelegate

Added methods:

public virtual void DidConnect (CMHeadphoneMotionManager manager);
public virtual void DidDisconnect (CMHeadphoneMotionManager manager);

New Type: CoreMotion.CMHeadphoneActivityHandler

public sealed delegate CMHeadphoneActivityHandler : System.MulticastDelegate {
	// constructors
	public CMHeadphoneActivityHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (CMMotionActivity activity, Foundation.NSError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (CMMotionActivity activity, Foundation.NSError error);
}

New Type: CoreMotion.CMHeadphoneActivityManager

public class CMHeadphoneActivityManager : Foundation.NSObject {
	// constructors
	public CMHeadphoneActivityManager ();
	protected CMHeadphoneActivityManager (Foundation.NSObjectFlag t);
	protected CMHeadphoneActivityManager (ObjCRuntime.NativeHandle handle);
	// properties
	public static CMAuthorizationStatus AuthorizationStatus { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual bool IsActivityActive { get; }
	public virtual bool IsActivityAvailable { get; }
	public virtual bool IsStatusActive { get; }
	public virtual bool IsStatusAvailable { get; }
	// methods
	public virtual void StartActivityUpdates (Foundation.NSOperationQueue queue, CMHeadphoneActivityHandler handler);
	public virtual void StartStatusUpdates (Foundation.NSOperationQueue queue, CMHeadphoneActivityStatusHandler handler);
	public virtual void StopActivityUpdates ();
	public virtual void StopStatusUpdates ();
}

New Type: CoreMotion.CMHeadphoneActivityStatus

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

New Type: CoreMotion.CMHeadphoneActivityStatusHandler

public sealed delegate CMHeadphoneActivityStatusHandler : System.MulticastDelegate {
	// constructors
	public CMHeadphoneActivityStatusHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (CMHeadphoneActivityStatus status, Foundation.NSError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (CMHeadphoneActivityStatus status, Foundation.NSError error);
}

Namespace CoreNFC

Type Changed: CoreNFC.INFCFeliCaTag

Modified properties:

-public abstract Foundation.NSData CurrentIdm { get; }
+public virtual Foundation.NSData CurrentIdm { get; }
-public abstract Foundation.NSData CurrentSystemCode { get; }
+public virtual Foundation.NSData CurrentSystemCode { get; }

Modified methods:

-public abstract void Polling (Foundation.NSData systemCode, NFCFeliCaPollingRequestCode requestCode, NFCFeliCaPollingTimeSlot timeSlot, NFCFeliCaPollingCompletionHandler completionHandler)
+public virtual void Polling (Foundation.NSData systemCode, NFCFeliCaPollingRequestCode requestCode, NFCFeliCaPollingTimeSlot timeSlot, NFCFeliCaPollingCompletionHandler completionHandler)
-public abstract void ReadWithoutEncryption (Foundation.NSData[] serviceCodeList, Foundation.NSData[] blockList, NFCFeliCaReadWithoutEncryptionCompletionHandler completionHandler)
+public virtual void ReadWithoutEncryption (Foundation.NSData[] serviceCodeList, Foundation.NSData[] blockList, NFCFeliCaReadWithoutEncryptionCompletionHandler completionHandler)
-public abstract void RequestResponse (System.Action%LESSERTHANREPLACEMENT%System.IntPtr,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void RequestResponse (System.Action%LESSERTHANREPLACEMENT%System.IntPtr,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void RequestService (Foundation.NSData[] nodeCodeList, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData[],Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void RequestService (Foundation.NSData[] nodeCodeList, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData[],Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void RequestServiceV2 (Foundation.NSData[] nodeCodeList, NFCFeliCaRequestServiceV2CompletionHandler completionHandler)
+public virtual void RequestServiceV2 (Foundation.NSData[] nodeCodeList, NFCFeliCaRequestServiceV2CompletionHandler completionHandler)
-public abstract void RequestSpecificationVersion (NFCFeliCaRequestSpecificationVersionCompletionHandler completionHandler)
+public virtual void RequestSpecificationVersion (NFCFeliCaRequestSpecificationVersionCompletionHandler completionHandler)
-public abstract void RequestSystemCode (System.Action%LESSERTHANREPLACEMENT%Foundation.NSData[],Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void RequestSystemCode (System.Action%LESSERTHANREPLACEMENT%Foundation.NSData[],Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void ResetMode (NFCFeliCaStatus1Status2CompletionHandler completionHandler)
+public virtual void ResetMode (NFCFeliCaStatus1Status2CompletionHandler completionHandler)
-public abstract void Send (Foundation.NSData commandPacket, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void Send (Foundation.NSData commandPacket, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void WriteWithoutEncryption (Foundation.NSData[] serviceCodeList, Foundation.NSData[] blockList, Foundation.NSData[] blockData, NFCFeliCaStatus1Status2CompletionHandler completionHandler)
+public virtual void WriteWithoutEncryption (Foundation.NSData[] serviceCodeList, Foundation.NSData[] blockList, Foundation.NSData[] blockData, NFCFeliCaStatus1Status2CompletionHandler completionHandler)

Type Changed: CoreNFC.INFCIso15693Tag

Modified properties:

-public abstract UIntPtr IcManufacturerCode { get; }
+public virtual UIntPtr IcManufacturerCode { get; }
-public abstract Foundation.NSData IcSerialNumber { get; }
+public virtual Foundation.NSData IcSerialNumber { get; }
-public abstract Foundation.NSData Identifier { get; }
+public virtual Foundation.NSData Identifier { get; }

Modified methods:

-public abstract void Authenticate (NFCIso15693RequestFlag flags, IntPtr cryptoSuiteIdentifier, Foundation.NSData message, NFCIso15693TagResponseCallback completionHandler)
+public virtual void Authenticate (NFCIso15693RequestFlag flags, IntPtr cryptoSuiteIdentifier, Foundation.NSData message, NFCIso15693TagResponseCallback completionHandler)
-public abstract void Challenge (NFCIso15693RequestFlag flags, IntPtr cryptoSuiteIdentifier, Foundation.NSData message, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void Challenge (NFCIso15693RequestFlag flags, IntPtr cryptoSuiteIdentifier, Foundation.NSData message, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void CustomCommand (NFCIso15693RequestFlag flags, IntPtr customCommandCode, Foundation.NSData customRequestParameters, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void CustomCommand (NFCIso15693RequestFlag flags, IntPtr customCommandCode, Foundation.NSData customRequestParameters, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void ExtendedFastReadMultipleBlocks (NFCIso15693RequestFlag flags, Foundation.NSRange blockRange, NFCIso15693TagReadMultipleBlocksCallback completionHandler)
+public virtual void ExtendedFastReadMultipleBlocks (NFCIso15693RequestFlag flags, Foundation.NSRange blockRange, NFCIso15693TagReadMultipleBlocksCallback completionHandler)
-public abstract void ExtendedGetMultipleBlockSecurityStatus (NFCIso15693RequestFlag flags, Foundation.NSRange blockRange, NFCIso15693TagGetMultipleBlockSecurityStatusCallback completionHandler)
+public virtual void ExtendedGetMultipleBlockSecurityStatus (NFCIso15693RequestFlag flags, Foundation.NSRange blockRange, NFCIso15693TagGetMultipleBlockSecurityStatusCallback completionHandler)
-public abstract void ExtendedLockBlock (NFCIso15693RequestFlag flags, IntPtr blockNumber, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void ExtendedLockBlock (NFCIso15693RequestFlag flags, IntPtr blockNumber, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void ExtendedReadMultipleBlocks (NFCIso15693RequestFlag flags, Foundation.NSRange blockRange, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData[],Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void ExtendedReadMultipleBlocks (NFCIso15693RequestFlag flags, Foundation.NSRange blockRange, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData[],Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void ExtendedReadSingleBlock (NFCIso15693RequestFlag flags, IntPtr blockNumber, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void ExtendedReadSingleBlock (NFCIso15693RequestFlag flags, IntPtr blockNumber, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void ExtendedWriteMultipleBlocks (NFCIso15693RequestFlag flags, Foundation.NSRange blockRange, Foundation.NSData[] dataBlocks, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void ExtendedWriteMultipleBlocks (NFCIso15693RequestFlag flags, Foundation.NSRange blockRange, Foundation.NSData[] dataBlocks, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void ExtendedWriteSingleBlock (NFCIso15693RequestFlag flags, IntPtr blockNumber, Foundation.NSData dataBlock, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void ExtendedWriteSingleBlock (NFCIso15693RequestFlag flags, IntPtr blockNumber, Foundation.NSData dataBlock, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void FastReadMultipleBlocks (NFCIso15693RequestFlag flags, Foundation.NSRange blockRange, NFCIso15693TagReadMultipleBlocksCallback completionHandler)
+public virtual void FastReadMultipleBlocks (NFCIso15693RequestFlag flags, Foundation.NSRange blockRange, NFCIso15693TagReadMultipleBlocksCallback completionHandler)
-public abstract void GetMultipleBlockSecurityStatus (NFCIso15693RequestFlag flags, Foundation.NSRange blockRange, System.Action%LESSERTHANREPLACEMENT%Foundation.NSNumber[],Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void GetMultipleBlockSecurityStatus (NFCIso15693RequestFlag flags, Foundation.NSRange blockRange, System.Action%LESSERTHANREPLACEMENT%Foundation.NSNumber[],Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void GetSystemInfo (NFCIso15693RequestFlag flags, NFCGetSystemInfoCompletionHandler completionHandler)
+public virtual void GetSystemInfo (NFCIso15693RequestFlag flags, NFCGetSystemInfoCompletionHandler completionHandler)
-public abstract void GetSystemInfoAndUid (NFCIso15693RequestFlag flags, NFCIso15693TagGetSystemInfoAndUidCallback completionHandler)
+public virtual void GetSystemInfoAndUid (NFCIso15693RequestFlag flags, NFCIso15693TagGetSystemInfoAndUidCallback completionHandler)
-public abstract void KeyUpdate (NFCIso15693RequestFlag flags, IntPtr keyIdentifier, Foundation.NSData message, NFCIso15693TagResponseCallback completionHandler)
+public virtual void KeyUpdate (NFCIso15693RequestFlag flags, IntPtr keyIdentifier, Foundation.NSData message, NFCIso15693TagResponseCallback completionHandler)
-public abstract void LockAfi (NFCIso15693RequestFlag flags, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void LockAfi (NFCIso15693RequestFlag flags, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void LockBlock (NFCIso15693RequestFlag flags, byte blockNumber, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void LockBlock (NFCIso15693RequestFlag flags, byte blockNumber, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void LockDfsi (NFCIso15693RequestFlag flags, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void LockDfsi (NFCIso15693RequestFlag flags, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void LockDsfId (NFCIso15693RequestFlag flags, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void LockDsfId (NFCIso15693RequestFlag flags, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void ReadBuffer (NFCIso15693RequestFlag flags, NFCIso15693TagResponseCallback completionHandler)
+public virtual void ReadBuffer (NFCIso15693RequestFlag flags, NFCIso15693TagResponseCallback completionHandler)
-public abstract void ReadMultipleBlocks (NFCIso15693ReadMultipleBlocksConfiguration readConfiguration, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void ReadMultipleBlocks (NFCIso15693ReadMultipleBlocksConfiguration readConfiguration, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void ReadMultipleBlocks (NFCIso15693RequestFlag flags, Foundation.NSRange blockRange, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData[],Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void ReadMultipleBlocks (NFCIso15693RequestFlag flags, Foundation.NSRange blockRange, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData[],Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void ReadSingleBlock (NFCIso15693RequestFlag flags, byte blockNumber, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void ReadSingleBlock (NFCIso15693RequestFlag flags, byte blockNumber, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void ResetToReady (NFCIso15693RequestFlag flags, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void ResetToReady (NFCIso15693RequestFlag flags, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void Select (NFCIso15693RequestFlag flags, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void Select (NFCIso15693RequestFlag flags, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void SendCustomCommand (NFCIso15693CustomCommandConfiguration commandConfiguration, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void SendCustomCommand (NFCIso15693CustomCommandConfiguration commandConfiguration, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void SendRequest (IntPtr flags, IntPtr commandCode, Foundation.NSData data, NFCIso15693TagResponseCallback completionHandler)
+public virtual void SendRequest (IntPtr flags, IntPtr commandCode, Foundation.NSData data, NFCIso15693TagResponseCallback completionHandler)
-public abstract void StayQuiet (System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void StayQuiet (System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void WriteAfi (NFCIso15693RequestFlag flags, byte afi, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void WriteAfi (NFCIso15693RequestFlag flags, byte afi, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void WriteDsfi (NFCIso15693RequestFlag flags, byte dsfid, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void WriteDsfi (NFCIso15693RequestFlag flags, byte dsfid, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void WriteMultipleBlocks (NFCIso15693RequestFlag flags, Foundation.NSRange blockRange, Foundation.NSData[] dataBlocks, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void WriteMultipleBlocks (NFCIso15693RequestFlag flags, Foundation.NSRange blockRange, Foundation.NSData[] dataBlocks, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void WriteSingleBlock (NFCIso15693RequestFlag flags, byte blockNumber, Foundation.NSData dataBlock, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void WriteSingleBlock (NFCIso15693RequestFlag flags, byte blockNumber, Foundation.NSData dataBlock, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)

Type Changed: CoreNFC.INFCIso7816Tag

Modified properties:

-public abstract Foundation.NSData ApplicationData { get; }
+public virtual Foundation.NSData ApplicationData { get; }
-public abstract Foundation.NSData HistoricalBytes { get; }
+public virtual Foundation.NSData HistoricalBytes { get; }
-public abstract Foundation.NSData Identifier { get; }
+public virtual Foundation.NSData Identifier { get; }
-public abstract string InitialSelectedAid { get; }
+public virtual string InitialSelectedAid { get; }
-public abstract bool ProprietaryApplicationDataCoding { get; }
+public virtual bool ProprietaryApplicationDataCoding { get; }

Modified methods:

-public abstract void SendCommand (NFCIso7816Apdu apdu, NFCIso7816SendCompletionHandler completionHandler)
+public virtual void SendCommand (NFCIso7816Apdu apdu, NFCIso7816SendCompletionHandler completionHandler)

Type Changed: CoreNFC.INFCMiFareTag

Modified properties:

-public abstract Foundation.NSData HistoricalBytes { get; }
+public virtual Foundation.NSData HistoricalBytes { get; }
-public abstract Foundation.NSData Identifier { get; }
+public virtual Foundation.NSData Identifier { get; }
-public abstract NFCMiFareFamily MifareFamily { get; }
+public virtual NFCMiFareFamily MifareFamily { get; }

Modified methods:

-public abstract void SendMiFareCommand (Foundation.NSData command, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void SendMiFareCommand (Foundation.NSData command, System.Action%LESSERTHANREPLACEMENT%Foundation.NSData,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void SendMiFareIso7816Command (NFCIso7816Apdu apdu, NFCIso7816SendCompletionHandler completionHandler)
+public virtual void SendMiFareIso7816Command (NFCIso7816Apdu apdu, NFCIso7816SendCompletionHandler completionHandler)

Type Changed: CoreNFC.INFCNdefReaderSessionDelegate

Modified methods:

-public abstract void DidDetect (NFCNdefReaderSession session, NFCNdefMessage[] messages)
+public virtual void DidDetect (NFCNdefReaderSession session, NFCNdefMessage[] messages)
-public abstract void DidInvalidate (NFCNdefReaderSession session, Foundation.NSError error)
+public virtual void DidInvalidate (NFCNdefReaderSession session, Foundation.NSError error)

Added methods:

public virtual void DidBecomeActive (NFCNdefReaderSession session);
public virtual void DidDetectTags (NFCNdefReaderSession session, INFCNdefTag[] tags);

Type Changed: CoreNFC.INFCNdefTag

Modified properties:

-public abstract bool Available { get; }
+public virtual bool Available { get; }

Modified methods:

-public abstract void QueryNdefStatus (NFCQueryNdefStatusCompletionHandler completionHandler)
+public virtual void QueryNdefStatus (NFCQueryNdefStatusCompletionHandler completionHandler)
-public abstract void ReadNdef (System.Action%LESSERTHANREPLACEMENT%NFCNdefMessage,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void ReadNdef (System.Action%LESSERTHANREPLACEMENT%NFCNdefMessage,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void WriteLock (System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void WriteLock (System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void WriteNdef (NFCNdefMessage ndefMessage, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void WriteNdef (NFCNdefMessage ndefMessage, System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)

Type Changed: CoreNFC.INFCReaderSessionContract

Modified properties:

-public abstract string AlertMessage { get; set; }
+public virtual string AlertMessage { get; set; }
-public abstract bool Ready { get; }
+public virtual bool Ready { get; }

Modified methods:

-public abstract void BeginSession ()
+public virtual void BeginSession ()
-public abstract void InvalidateSession ()
+public virtual void InvalidateSession ()
-public abstract void InvalidateSession (string errorMessage)
+public virtual void InvalidateSession (string errorMessage)

Type Changed: CoreNFC.INFCReaderSessionDelegate

Modified methods:

-public abstract void DidBecomeActive (NFCReaderSession session)
+public virtual void DidBecomeActive (NFCReaderSession session)
-public abstract void DidInvalidate (NFCReaderSession session, Foundation.NSError error)
+public virtual void DidInvalidate (NFCReaderSession session, Foundation.NSError error)

Added method:

public virtual void DidDetectTags (NFCReaderSession session, INFCTag[] tags);

Type Changed: CoreNFC.INFCTag

Modified properties:

-public abstract INFCFeliCaTag AsNFCFeliCaTag { get; }
+public virtual INFCFeliCaTag AsNFCFeliCaTag { get; }
-public abstract INFCIso15693Tag AsNFCIso15693Tag { get; }
+public virtual INFCIso15693Tag AsNFCIso15693Tag { get; }
-public abstract INFCIso7816Tag AsNFCIso7816Tag { get; }
+public virtual INFCIso7816Tag AsNFCIso7816Tag { get; }
-public abstract INFCMiFareTag AsNFCMiFareTag { get; }
+public virtual INFCMiFareTag AsNFCMiFareTag { get; }
-public abstract bool Available { get; }
+public virtual bool Available { get; }
-public abstract NFCReaderSession Session { get; }
+public virtual NFCReaderSession Session { get; }
-public abstract NFCTagType Type { get; }
+public virtual NFCTagType Type { get; }

Type Changed: CoreNFC.INFCTagReaderSessionDelegate

Modified methods:

-public abstract void DidInvalidate (NFCTagReaderSession session, Foundation.NSError error)
+public virtual void DidInvalidate (NFCTagReaderSession session, Foundation.NSError error)

Added methods:

public virtual void DidBecomeActive (NFCTagReaderSession session);
public virtual void DidDetectTags (NFCTagReaderSession session, INFCTag[] tags);

Type Changed: CoreNFC.INFCVasReaderSessionDelegate

Modified methods:

-public abstract void DidInvalidate (NFCVasReaderSession session, Foundation.NSError error)
+public virtual void DidInvalidate (NFCVasReaderSession session, Foundation.NSError error)
-public abstract void DidReceiveVasResponses (NFCVasReaderSession session, NFCVasResponse[] responses)
+public virtual void DidReceiveVasResponses (NFCVasReaderSession session, NFCVasResponse[] responses)

Added method:

public virtual void DidBecomeActive (NFCVasReaderSession session);

Namespace CoreSpotlight

Type Changed: CoreSpotlight.CSIndexErrorCode

Added value:

MismatchedClientState = -1006,

Type Changed: CoreSpotlight.CSSearchableIndex_CSOptionalBatchingExtension

Added method:

public static void EndIndexBatch (this CSSearchableIndex This, Foundation.NSData expectedClientState, Foundation.NSData newClientState, CSSearchableIndexEndIndexHandler completionHandler);

Type Changed: CoreSpotlight.CSSearchableItem

Added property:

public virtual bool IsUpdate { get; set; }

Type Changed: CoreSpotlight.CSUserQuery

Added methods:

public static void Prepare ();
public static void Prepare (Foundation.NSFileProtectionType[] protectionClasses);
public static void Prepare (Foundation.NSString[] protectionClasses);
public virtual void UserEngaged (CSSearchableItem item, CSSearchableItem[] visibleItems, CSUserInteraction userInteractionType);
public virtual void UserEngaged (CSSuggestion suggestion, CSSuggestion[] visibleSuggestions, CSUserInteraction userInteractionType);

Type Changed: CoreSpotlight.CSUserQueryContext

Added properties:

public virtual bool DisableSemanticSearch { get; set; }
public virtual IntPtr MaxRankedResultCount { get; set; }

Type Changed: CoreSpotlight.ICSSearchableIndexDelegate

Modified methods:

-public abstract void ReindexAllSearchableItems (CSSearchableIndex searchableIndex, System.Action acknowledgementHandler)
+public virtual void ReindexAllSearchableItems (CSSearchableIndex searchableIndex, System.Action acknowledgementHandler)
-public abstract void ReindexSearchableItems (CSSearchableIndex searchableIndex, string[] identifiers, System.Action acknowledgementHandler)
+public virtual void ReindexSearchableItems (CSSearchableIndex searchableIndex, string[] identifiers, System.Action acknowledgementHandler)

Added methods:

public virtual void DidFinishThrottle (CSSearchableIndex searchableIndex);
public virtual void DidThrottle (CSSearchableIndex searchableIndex);
public virtual Foundation.NSData GetData (CSSearchableIndex searchableIndex, string itemIdentifier, string typeIdentifier, out Foundation.NSError outError);
public virtual Foundation.NSUrl GetFileUrl (CSSearchableIndex searchableIndex, string itemIdentifier, string typeIdentifier, bool inPlace, out Foundation.NSError outError);

New Type: CoreSpotlight.CSSearchableIndexEndIndexHandler

public sealed delegate CSSearchableIndexEndIndexHandler : System.MulticastDelegate {
	// constructors
	public CSSearchableIndexEndIndexHandler (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: CoreSpotlight.CSUserInteraction

[Serializable]
public enum CSUserInteraction {
	Default = 0,
	Focus = 1,
	Select = 0,
}

Namespace CoreTelephony

Type Changed: CoreTelephony.ICTTelephonyNetworkInfoDelegate

Added method:

public virtual void DataServiceIdentifierDidChange (string identifier);

Namespace CoreText

Type Changed: CoreText.CTFont

Added methods:

public void DrawImage (ICTAdaptiveImageProviding provider, CoreGraphics.CGPoint point, CoreGraphics.CGContext context);
public CoreGraphics.CGRect GetTypographicBoundsForAdaptiveImageProvider (ICTAdaptiveImageProviding provider);
public bool HasTable (CTFontTable tag);

Type Changed: CoreText.CTFontDescriptor

Obsoleted methods:

 [Obsolete ("Use 'MatchFontDescriptors (CTFontDescriptor[], NSSet, CTFontDescriptorProgressHandler)' instead.")]
 public static bool MatchFontDescriptors (CTFontDescriptor[] descriptors, Foundation.NSSet mandatoryAttributes, System.Func<CTFontDescriptorMatchingState,System.IntPtr,System.Boolean> progressHandler);

Added method:

public static bool MatchFontDescriptors (CTFontDescriptor[] descriptors, Foundation.NSSet mandatoryAttributes, CTFontDescriptor.CTFontDescriptorProgressHandler progressHandler);

Type Changed: CoreText.CTFontDescriptorAttributeKey

Added property:

public static Foundation.NSString RegistrationUserInfo { get; }

Type Changed: CoreText.CTFontDescriptorAttributes

Added properties:

public string RegistrationUserInfo { get; set; }
public bool? WeakEnabled { get; set; }

Type Changed: CoreText.CTStringAttributeKey

Added properties:

public static Foundation.NSString AdaptiveImageProvider { get; }
public static Foundation.NSString RubyAnnotation { get; }

Type Changed: CoreText.CTStringAttributes

Added property:

public ICTAdaptiveImageProviding AdaptiveImageProvider { get; set; }

New Type: CoreText.CTFontDescriptorMatchingProgress

public class CTFontDescriptorMatchingProgress : Foundation.DictionaryContainer {
	// constructors
	public CTFontDescriptorMatchingProgress ();
	public CTFontDescriptorMatchingProgress (Foundation.NSDictionary dictionary);
	// properties
	public long? CurrentAssetSize { get; }
	public CTFontDescriptor[] Descriptors { get; }
	public Foundation.NSError Error { get; }
	public double? Percentage { get; }
	public CTFontDescriptor[] Result { get; }
	public CTFontDescriptor SourceDescriptor { get; }
	public long? TotalAssetSize { get; }
	public long? TotalDownloadedSize { get; }
}

New Type: CoreText.ICTAdaptiveImageProviding

public interface ICTAdaptiveImageProviding : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual CoreGraphics.CGImage GetImage (CoreGraphics.CGSize proposedSize, System.Runtime.InteropServices.NFloat scaleFactor, out CoreGraphics.CGPoint imageOffset, out CoreGraphics.CGSize imageSize);
}

Namespace CoreVideo

Type Changed: CoreVideo.CVPixelFormatDescription

Modified base type:

-System.Object
+Foundation.DictionaryContainer

Added constructors:

public CVPixelFormatDescription ();
public CVPixelFormatDescription (Foundation.NSDictionary dictionary);

Obsoleted fields:

 [Obsolete ("Use 'CVPixelFormatKeys.BitsPerBlock' instead.")]
 public static Foundation.NSString BitsPerBlockKey;
 [Obsolete ("Use 'CVPixelFormatKeys.BlackBlock' instead.")]
 public static Foundation.NSString BlackBlockKey;
 [Obsolete ("Use 'CVPixelFormatKeys.BlockHeight' instead.")]
 public static Foundation.NSString BlockHeightKey;
 [Obsolete ("Use 'CVPixelFormatKeys.BlockHorizontalAlignment' instead.")]
 public static Foundation.NSString BlockHorizontalAlignmentKey;
 [Obsolete ("Use 'CVPixelFormatKeys.BlockVerticalAlignment' instead.")]
 public static Foundation.NSString BlockVerticalAlignmentKey;
 [Obsolete ("Use 'CVPixelFormatKeys.BlockWidth' instead.")]
 public static Foundation.NSString BlockWidthKey;
 [Obsolete ("Use 'CVPixelFormatKeys.CGBitmapContextCompatibility' instead.")]
 public static Foundation.NSString CGBitmapContextCompatibilityKey;
 [Obsolete ("Use 'CVPixelFormatKeys.CGBitmapInfo' instead.")]
 public static Foundation.NSString CGBitmapInfoKey;
 [Obsolete ("Use 'CVPixelFormatKeys.CGImageCompatibility' instead.")]
 public static Foundation.NSString CGImageCompatibilityKey;
 [Obsolete ("Use 'CVPixelFormatKeys.CodecType' instead.")]
 public static Foundation.NSString CodecTypeKey;
 [Obsolete ("Use 'CVPixelFormatComponentRangeKeys.FullRange' instead.")]
 public static Foundation.NSString ComponentRangeFullRangeKey;
 [Obsolete ("Use 'CVPixelFormatKeys.ComponentRange' instead.")]
 public static Foundation.NSString ComponentRangeKey;
 [Obsolete ("Use 'CVPixelFormatComponentRangeKeys.VideoRange' instead.")]
 public static Foundation.NSString ComponentRangeVideoRangeKey;
 [Obsolete ("Use 'CVPixelFormatComponentRangeKeys.WideRange' instead.")]
 public static Foundation.NSString ComponentRangeWideRangeKey;
 [Obsolete ("Use 'CVPixelFormatKeys.Constant' instead.")]
 public static Foundation.NSString ConstantKey;
 [Obsolete ("Use 'CVPixelFormatKeys.ContainsGrayscale' instead.")]
 public static Foundation.NSString ContainsGrayscaleKey;
 [Obsolete ("Use 'CVPixelFormatKeys.ContainsRgb' instead.")]
 public static Foundation.NSString ContainsRgb;
 [Obsolete ("Use 'CVPixelFormatKeys.ContainsSenselArray' instead.")]
 public static Foundation.NSString ContainsSenselArray;
 [Obsolete ("Use 'CVPixelFormatKeys.ContainsYCbCr' instead.")]
 public static Foundation.NSString ContainsYCbCr;
 [Obsolete ("Use 'CVPixelFormatKeys.FillExtendedPixelsCallback' instead.")]
 public static Foundation.NSString FillExtendedPixelsCallbackKey;
 [Obsolete ("Use 'CVPixelFormatKeys.FourCCKey' instead.")]
 public static Foundation.NSString FourCCKey;
 [Obsolete ("Use 'CVPixelFormatKeys.HorizontalSubsampling' instead.")]
 public static Foundation.NSString HorizontalSubsamplingKey;
 [Obsolete ("Use 'CVPixelFormatKeys.Name' instead.")]
 public static Foundation.NSString NameKey;
 [Obsolete ("Use 'CVPixelFormatKeys.OpenGLCompatibility' instead.")]
 public static Foundation.NSString OpenGLCompatibilityKey;
 [Obsolete ("Use 'CVPixelFormatKeys.OpenGLFormat' instead.")]
 public static Foundation.NSString OpenGLFormatKey;
 [Obsolete ("Use 'CVPixelFormatKeys.OpenGLInternalFormat' instead.")]
 public static Foundation.NSString OpenGLInternalFormatKey;
 [Obsolete ("Use 'CVPixelFormatKeys.OpenGLType' instead.")]
 public static Foundation.NSString OpenGLTypeKey;
 [Obsolete ("Use 'CVPixelFormatKeys.Planes' instead.")]
 public static Foundation.NSString PlanesKey;
 [Obsolete ("Use 'CVPixelFormatKeys.QDCompatibility' instead.")]
 public static Foundation.NSString QDCompatibilityKey;
 [Obsolete ("Use 'CVPixelFormatKeys.VerticalSubsampling' instead.")]
 public static Foundation.NSString VerticalSubsamplingKey;

Added properties:

public static CVPixelFormatType[] AllPixelFormatTypes { get; }
public int? BitsPerBlock { get; set; }
public Foundation.NSData BlackBlock { get; set; }
public int? BlockHeight { get; set; }
public int? BlockHorizontalAlignment { get; set; }
public int? BlockVerticalAlignment { get; set; }
public int? BlockWidth { get; set; }
public bool? CGBitmapContextCompatibility { get; set; }
public CoreGraphics.CGBitmapFlags? CGBitmapInfo { get; set; }
public bool? CGImageCompatibility { get; set; }
public Foundation.NSObject CodecType { get; set; }
public CVPixelFormatComponentRange ComponentRange { get; set; }
public CVPixelFormatType? Constant { get; set; }
public bool? ContainsAlpha { get; set; }
public bool? ContainsGrayscale { get; set; }
public Foundation.NSData FillExtendedPixelsCallback { get; set; }
public CVFillExtendedPixelsCallBackDataStruct? FillExtendedPixelsCallbackStruct { get; set; }
public bool? FormatContainsRgb { get; set; }
public bool? FormatContainsSenselArray { get; set; }
public bool? FormatContainsYCbCr { get; set; }
public int? FourCC { get; set; }
public int? HorizontalSubsampling { get; set; }
public string Name { get; set; }
public bool? OpenGLCompatibility { get; set; }
public int? OpenGLFormat { get; set; }
public int? OpenGLInternalFormat { get; set; }
public int? OpenGLType { get; set; }
public Foundation.NSObject Planes { get; set; }
public bool? QDCompatibility { get; set; }
public int? VerticalSubsampling { get; set; }

Added methods:

public static CVPixelFormatDescription CreatePixelFormat (CVPixelFormatType pixelFormat);
public static bool IsPixelFormatAvailable (CVPixelFormatType pixelFormat);
public static void Register (CVPixelFormatDescription description, CVPixelFormatType pixelFormat);

New Type: CoreVideo.CVFillExtendedPixelsCallBackDataStruct

public struct CVFillExtendedPixelsCallBackDataStruct {
	// fields
	public method System.Byte *(System.IntPtr,System.IntPtr) FillCallBack;
	public IntPtr UserInfo;
	public IntPtr Version;
	// methods
	public bool CallFillCallback (CVPixelBuffer buffer);
}

New Type: CoreVideo.CVPixelFormatComponentRange

public class CVPixelFormatComponentRange : Foundation.DictionaryContainer {
	// constructors
	public CVPixelFormatComponentRange ();
	public CVPixelFormatComponentRange (Foundation.NSDictionary dictionary);
	// properties
	public Foundation.NSObject FullRange { get; set; }
	public Foundation.NSObject VideoRange { get; set; }
	public Foundation.NSObject WideRange { get; set; }
}

New Type: CoreVideo.CVPixelFormatComponentRangeKeys

public class CVPixelFormatComponentRangeKeys {
	// constructors
	public CVPixelFormatComponentRangeKeys ();
	// properties
	public static Foundation.NSString FullRange { get; }
	public static Foundation.NSString VideoRange { get; }
	public static Foundation.NSString WideRange { get; }
}

New Type: CoreVideo.CVPixelFormatKeys

public class CVPixelFormatKeys {
	// constructors
	public CVPixelFormatKeys ();
	// properties
	public static Foundation.NSString BitsPerBlock { get; }
	public static Foundation.NSString BlackBlock { get; }
	public static Foundation.NSString BlockHeight { get; }
	public static Foundation.NSString BlockHorizontalAlignment { get; }
	public static Foundation.NSString BlockVerticalAlignment { get; }
	public static Foundation.NSString BlockWidth { get; }
	public static Foundation.NSString CGBitmapContextCompatibility { get; }
	public static Foundation.NSString CGBitmapInfo { get; }
	public static Foundation.NSString CGImageCompatibility { get; }
	public static Foundation.NSString CodecType { get; }
	public static Foundation.NSString ComponentRange { get; }
	public static Foundation.NSString Constant { get; }
	public static Foundation.NSString ContainsAlpha { get; }
	public static Foundation.NSString ContainsGrayscale { get; }
	public static Foundation.NSString ContainsRgb { get; }
	public static Foundation.NSString ContainsSenselArray { get; }
	public static Foundation.NSString ContainsYCbCr { get; }
	public static Foundation.NSString FillExtendedPixelsCallback { get; }
	public static Foundation.NSString FourCC { get; }
	public static Foundation.NSString HorizontalSubsampling { get; }
	public static Foundation.NSString Name { get; }
	public static Foundation.NSString OpenGLCompatibility { get; }
	public static Foundation.NSString OpenGLFormat { get; }
	public static Foundation.NSString OpenGLInternalFormat { get; }
	public static Foundation.NSString OpenGLType { get; }
	public static Foundation.NSString Planes { get; }
	public static Foundation.NSString QDCompatibility { get; }
	public static Foundation.NSString VerticalSubsampling { get; }
}

Namespace CoreWlan

Type Changed: CoreWlan.ICWEventDelegate

Added methods:

public virtual void BssidDidChangeForWiFi (string interfaceName);
public virtual void ClientConnectionInterrupted ();
public virtual void ClientConnectionInvalidated ();
public virtual void CountryCodeDidChangeForWiFi (string interfaceName);
public virtual void LinkDidChangeForWiFi (string interfaceName);
public virtual void LinkQualityDidChangeForWiFi (string interfaceName, int rssi, double transmitRate);
public virtual void ModeDidChangeForWiFi (string interfaceName);
public virtual void PowerStateDidChangeForWiFi (string interfaceName);
public virtual void ScanCacheUpdatedForWiFi (string interfaceName);
public virtual void SsidDidChangeForWiFi (string interfaceName);

Namespace EventKitUI

Type Changed: EventKitUI.IEKCalendarChooserDelegate

Added methods:

public virtual void Cancelled (EKCalendarChooser calendarChooser);
public virtual void Finished (EKCalendarChooser calendarChooser);
public virtual void SelectionChanged (EKCalendarChooser calendarChooser);

Type Changed: EventKitUI.IEKEventEditViewDelegate

Modified methods:

-public abstract void Completed (EKEventEditViewController controller, EKEventEditViewAction action)
+public virtual void Completed (EKEventEditViewController controller, EKEventEditViewAction action)

Added method:

public virtual EventKit.EKCalendar GetDefaultCalendarForNewEvents (EKEventEditViewController controller);

Type Changed: EventKitUI.IEKEventViewDelegate

Modified methods:

-public abstract void Completed (EKEventViewController controller, EKEventViewAction action)
+public virtual void Completed (EKEventViewController controller, EKEventViewAction action)

Namespace ExternalAccessory

Type Changed: ExternalAccessory.IEAAccessoryDelegate

Added method:

public virtual void Disconnected (EAAccessory accessory);

Type Changed: ExternalAccessory.IEAWiFiUnconfiguredAccessoryBrowserDelegate

Modified methods:

-public abstract void DidFindUnconfiguredAccessories (EAWiFiUnconfiguredAccessoryBrowser browser, Foundation.NSSet accessories)
+public virtual void DidFindUnconfiguredAccessories (EAWiFiUnconfiguredAccessoryBrowser browser, Foundation.NSSet accessories)
-public abstract void DidFinishConfiguringAccessory (EAWiFiUnconfiguredAccessoryBrowser browser, EAWiFiUnconfiguredAccessory accessory, EAWiFiUnconfiguredAccessoryConfigurationStatus status)
+public virtual void DidFinishConfiguringAccessory (EAWiFiUnconfiguredAccessoryBrowser browser, EAWiFiUnconfiguredAccessory accessory, EAWiFiUnconfiguredAccessoryConfigurationStatus status)
-public abstract void DidRemoveUnconfiguredAccessories (EAWiFiUnconfiguredAccessoryBrowser browser, Foundation.NSSet accessories)
+public virtual void DidRemoveUnconfiguredAccessories (EAWiFiUnconfiguredAccessoryBrowser browser, Foundation.NSSet accessories)
-public abstract void DidUpdateState (EAWiFiUnconfiguredAccessoryBrowser browser, EAWiFiUnconfiguredAccessoryBrowserState state)
+public virtual void DidUpdateState (EAWiFiUnconfiguredAccessoryBrowser browser, EAWiFiUnconfiguredAccessoryBrowserState state)

Namespace FileProvider

New Type: FileProvider.NSFileProviderKnownFolders

[Serializable]
public enum NSFileProviderKnownFolders {
	Desktop = 1,
	Documents = 2,
}

Namespace Foundation

Type Changed: Foundation.DictionaryContainer

Added methods:

protected UIKit.UIEdgeInsets? GetUIEdgeInsets (NSString key);
protected void SetUIEdgeInsets (NSString key, UIKit.UIEdgeInsets? value);

Type Changed: Foundation.INSCacheDelegate

Added method:

public virtual void WillEvictObject (NSCache cache, NSObject obj);

Type Changed: Foundation.INSCoding

Modified methods:

-public abstract void EncodeTo (NSCoder encoder)
+public virtual void EncodeTo (NSCoder encoder)

Added method:

public static T CreateInstance<T> (NSCoder decoder);

Type Changed: Foundation.INSCopying

Modified methods:

-public abstract NSObject Copy (NSZone zone)
+public virtual NSObject Copy (NSZone zone)

Type Changed: Foundation.INSDiscardableContent

Modified properties:

-public abstract bool IsContentDiscarded { get; }
+public virtual bool IsContentDiscarded { get; }

Modified methods:

-public abstract bool BeginContentAccess ()
+public virtual bool BeginContentAccess ()
-public abstract void DiscardContentIfPossible ()
+public virtual void DiscardContentIfPossible ()
-public abstract void EndContentAccess ()
+public virtual void EndContentAccess ()

Type Changed: Foundation.INSExtensionRequestHandling

Modified methods:

-public abstract void BeginRequestWithExtensionContext (NSExtensionContext context)
+public virtual void BeginRequestWithExtensionContext (NSExtensionContext context)

Type Changed: Foundation.INSFileManagerDelegate

Added methods:

public virtual bool ShouldCopyItemAtPath (NSFileManager fm, NSString srcPath, NSString dstPath);
public virtual bool ShouldCopyItemAtUrl (NSFileManager fm, NSUrl srcUrl, NSUrl dstUrl);
public virtual bool ShouldLinkItemAtPath (NSFileManager fileManager, string srcPath, string dstPath);
public virtual bool ShouldLinkItemAtUrl (NSFileManager fileManager, NSUrl srcUrl, NSUrl dstUrl);
public virtual bool ShouldMoveItemAtPath (NSFileManager fileManager, string srcPath, string dstPath);
public virtual bool ShouldMoveItemAtUrl (NSFileManager fileManager, NSUrl srcUrl, NSUrl dstUrl);
public virtual bool ShouldProceedAfterErrorCopyingItem (NSFileManager fileManager, NSError error, NSUrl srcUrl, NSUrl dstUrl);
public virtual bool ShouldProceedAfterErrorCopyingItem (NSFileManager fileManager, NSError error, string srcPath, string dstPath);
public virtual bool ShouldProceedAfterErrorLinkingItem (NSFileManager fileManager, NSError error, NSUrl srcUrl, NSUrl dstUrl);
public virtual bool ShouldProceedAfterErrorLinkingItem (NSFileManager fileManager, NSError error, string srcPath, string dstPath);
public virtual bool ShouldProceedAfterErrorMovingItem (NSFileManager fileManager, NSError error, NSUrl srcUrl, NSUrl dstUrl);
public virtual bool ShouldProceedAfterErrorMovingItem (NSFileManager fileManager, NSError error, string srcPath, string dstPath);
public virtual bool ShouldProceedAfterErrorRemovingItem (NSFileManager fileManager, NSError error, NSUrl url);
public virtual bool ShouldProceedAfterErrorRemovingItem (NSFileManager fileManager, NSError error, string path);
public virtual bool ShouldRemoveItemAtPath (NSFileManager fileManager, string path);
public virtual bool ShouldRemoveItemAtUrl (NSFileManager fileManager, NSUrl url);

Type Changed: Foundation.INSFilePresenter

Modified properties:

-public abstract NSOperationQueue PresentedItemOperationQueue { get; }
+public virtual NSOperationQueue PresentedItemOperationQueue { get; }
-public abstract NSUrl PresentedItemUrl { get; }
+public virtual NSUrl PresentedItemUrl { get; }

Added property:

public virtual Foundation.NSSet<NSString> PresentedItemObservedUbiquityAttributes { get; }

Added methods:

public virtual void AccommodatePresentedItemDeletion (System.Action<NSError> completionHandler);
public virtual void AccommodatePresentedItemEviction (System.Action<NSError> completionHandler);
public virtual void AccommodatePresentedSubitemDeletion (NSUrl url, System.Action<NSError> completionHandler);
public virtual void PresentedItemChanged ();
public virtual void PresentedItemChangedUbiquityAttributes (Foundation.NSSet<NSString> attributes);
public virtual void PresentedItemGainedVersion (NSFileVersion version);
public virtual void PresentedItemLostVersion (NSFileVersion version);
public virtual void PresentedItemMoved (NSUrl newURL);
public virtual void PresentedItemResolveConflictVersion (NSFileVersion version);
public virtual void PresentedSubitemAppeared (NSUrl atUrl);
public virtual void PresentedSubitemChanged (NSUrl url);
public virtual void PresentedSubitemGainedVersion (NSUrl url, NSFileVersion version);
public virtual void PresentedSubitemLostVersion (NSUrl url, NSFileVersion version);
public virtual void PresentedSubitemMoved (NSUrl oldURL, NSUrl newURL);
public virtual void PresentedSubitemResolvedConflictVersion (NSUrl url, NSFileVersion version);
public virtual void RelinquishPresentedItemToReader (NSFilePresenterReacquirer readerAction);
public virtual void RelinquishPresentedItemToWriter (NSFilePresenterReacquirer writerAction);
public virtual void SavePresentedItemChanges (System.Action<NSError> completionHandler);

Type Changed: Foundation.INSItemProviderReading

Added methods:

public static INSItemProviderReading GetObject<T> (NSData data, string typeIdentifier, out NSError outError);
public static string[] GetReadableTypeIdentifiers<T> ();

Type Changed: Foundation.INSItemProviderWriting

Added property:

public virtual string[] WritableTypeIdentifiersForItemProvider { get; }

Modified methods:

-public abstract NSProgress LoadData (string typeIdentifier, System.Action%LESSERTHANREPLACEMENT%NSData,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual NSProgress LoadData (string typeIdentifier, System.Action%LESSERTHANREPLACEMENT%NSData,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)

Added methods:

public virtual NSItemProviderRepresentationVisibility GetItemProviderVisibilityForTypeIdentifier (string typeIdentifier);
public static string[] GetWritableTypeIdentifiers<T> ();
public virtual System.Threading.Tasks.Task<NSData> LoadDataAsync (string typeIdentifier);
public virtual System.Threading.Tasks.Task<NSData> LoadDataAsync (string typeIdentifier, out NSProgress result);

Type Changed: Foundation.INSKeyedArchiverDelegate

Added methods:

public virtual void EncodedObject (NSKeyedArchiver archiver, NSObject obj);
public virtual void Finished (NSKeyedArchiver archiver);
public virtual void Finishing (NSKeyedArchiver archiver);
public virtual void ReplacingObject (NSKeyedArchiver archiver, NSObject oldObject, NSObject newObject);
public virtual NSObject WillEncode (NSKeyedArchiver archiver, NSObject obj);

Type Changed: Foundation.INSKeyedUnarchiverDelegate

Added methods:

public virtual ObjCRuntime.Class CannotDecodeClass (NSKeyedUnarchiver unarchiver, string klass, string[] classes);
public virtual NSObject DecodedObject (NSKeyedUnarchiver unarchiver, NSObject obj);
public virtual void Finished (NSKeyedUnarchiver unarchiver);
public virtual void Finishing (NSKeyedUnarchiver unarchiver);
public virtual void ReplacingObject (NSKeyedUnarchiver unarchiver, NSObject oldObject, NSObject newObject);

Type Changed: Foundation.INSLocking

Modified methods:

-public abstract void Lock ()
+public virtual void Lock ()
-public abstract void Unlock ()
+public virtual void Unlock ()

Type Changed: Foundation.INSMachPortDelegate

Added method:

public virtual void MachMessageReceived (IntPtr msgHeader);

Type Changed: Foundation.INSMetadataQueryDelegate

Added methods:

public virtual NSObject ReplacementObjectForResultObject (NSMetadataQuery query, NSMetadataItem result);
public virtual NSObject ReplacementValueForAttributevalue (NSMetadataQuery query, string attributeName, NSObject value);

Type Changed: Foundation.INSMutableCopying

Modified methods:

-public abstract NSObject MutableCopy (NSZone zone)
+public virtual NSObject MutableCopy (NSZone zone)

Type Changed: Foundation.INSNetServiceBrowserDelegate

Added methods:

public virtual void DomainRemoved (NSNetServiceBrowser sender, string domain, bool moreComing);
public virtual void FoundDomain (NSNetServiceBrowser sender, string domain, bool moreComing);
public virtual void FoundService (NSNetServiceBrowser sender, NSNetService service, bool moreComing);
public virtual void NotSearched (NSNetServiceBrowser sender, NSDictionary errors);
public virtual void SearchStarted (NSNetServiceBrowser sender);
public virtual void SearchStopped (NSNetServiceBrowser sender);
public virtual void ServiceRemoved (NSNetServiceBrowser sender, NSNetService service, bool moreComing);

Type Changed: Foundation.INSNetServiceDelegate

Added methods:

public virtual void AddressResolved (NSNetService sender);
public virtual void DidAcceptConnection (NSNetService sender, NSInputStream inputStream, NSOutputStream outputStream);
public virtual void PublishFailure (NSNetService sender, NSDictionary errors);
public virtual void Published (NSNetService sender);
public virtual void ResolveFailure (NSNetService sender, NSDictionary errors);
public virtual void Stopped (NSNetService sender);
public virtual void UpdatedTxtRecordData (NSNetService sender, NSData data);
public virtual void WillPublish (NSNetService sender);
public virtual void WillResolve (NSNetService sender);

Type Changed: Foundation.INSProgressReporting

Modified properties:

-public abstract NSProgress Progress { get; }
+public virtual NSProgress Progress { get; }

Type Changed: Foundation.INSStreamDelegate

Added method:

public virtual void HandleEvent (NSStream theStream, NSStreamEvent streamEvent);

Type Changed: Foundation.INSUrlAuthenticationChallengeSender

Modified methods:

-public abstract void CancelAuthenticationChallenge (NSUrlAuthenticationChallenge challenge)
+public virtual void CancelAuthenticationChallenge (NSUrlAuthenticationChallenge challenge)
-public abstract void ContinueWithoutCredential (NSUrlAuthenticationChallenge challenge)
+public virtual void ContinueWithoutCredential (NSUrlAuthenticationChallenge challenge)
-public abstract void UseCredential (NSUrlCredential credential, NSUrlAuthenticationChallenge challenge)
+public virtual void UseCredential (NSUrlCredential credential, NSUrlAuthenticationChallenge challenge)

Added methods:

public virtual void PerformDefaultHandling (NSUrlAuthenticationChallenge challenge);
public virtual void RejectProtectionSpaceAndContinue (NSUrlAuthenticationChallenge challenge);

Type Changed: Foundation.INSUrlConnectionDataDelegate

Added methods:

public virtual void FinishedLoading (NSUrlConnection connection);
public virtual NSInputStream NeedNewBodyStream (NSUrlConnection connection, NSUrlRequest request);
public virtual void ReceivedData (NSUrlConnection connection, NSData data);
public virtual void ReceivedResponse (NSUrlConnection connection, NSUrlResponse response);
public virtual void SentBodyData (NSUrlConnection connection, IntPtr bytesWritten, IntPtr totalBytesWritten, IntPtr totalBytesExpectedToWrite);
public virtual NSCachedUrlResponse WillCacheResponse (NSUrlConnection connection, NSCachedUrlResponse cachedResponse);
public virtual NSUrlRequest WillSendRequest (NSUrlConnection connection, NSUrlRequest request, NSUrlResponse response);

Type Changed: Foundation.INSUrlConnectionDelegate

Added methods:

public virtual bool CanAuthenticateAgainstProtectionSpace (NSUrlConnection connection, NSUrlProtectionSpace protectionSpace);
public virtual void CanceledAuthenticationChallenge (NSUrlConnection connection, NSUrlAuthenticationChallenge challenge);
public virtual bool ConnectionShouldUseCredentialStorage (NSUrlConnection connection);
public virtual void FailedWithError (NSUrlConnection connection, NSError error);
public virtual void ReceivedAuthenticationChallenge (NSUrlConnection connection, NSUrlAuthenticationChallenge challenge);
public virtual void WillSendRequestForAuthenticationChallenge (NSUrlConnection connection, NSUrlAuthenticationChallenge challenge);

Type Changed: Foundation.INSUrlConnectionDownloadDelegate

Modified methods:

-public abstract void FinishedDownloading (NSUrlConnection connection, NSUrl destinationUrl)
+public virtual void FinishedDownloading (NSUrlConnection connection, NSUrl destinationUrl)

Added methods:

public virtual void ResumedDownloading (NSUrlConnection connection, long totalBytesWritten, long expectedTotalBytes);
public virtual void WroteData (NSUrlConnection connection, long bytesWritten, long totalBytesWritten, long expectedTotalBytes);

Type Changed: Foundation.INSUrlProtocolClient

Modified methods:

-public abstract void CachedResponseIsValid (NSUrlProtocol protocol, NSCachedUrlResponse cachedResponse)
+public virtual void CachedResponseIsValid (NSUrlProtocol protocol, NSCachedUrlResponse cachedResponse)
-public abstract void CancelledAuthenticationChallenge (NSUrlProtocol protocol, NSUrlAuthenticationChallenge challenge)
+public virtual void CancelledAuthenticationChallenge (NSUrlProtocol protocol, NSUrlAuthenticationChallenge challenge)
-public abstract void DataLoaded (NSUrlProtocol protocol, NSData data)
+public virtual void DataLoaded (NSUrlProtocol protocol, NSData data)
-public abstract void FailedWithError (NSUrlProtocol protocol, NSError error)
+public virtual void FailedWithError (NSUrlProtocol protocol, NSError error)
-public abstract void FinishedLoading (NSUrlProtocol protocol)
+public virtual void FinishedLoading (NSUrlProtocol protocol)
-public abstract void ReceivedAuthenticationChallenge (NSUrlProtocol protocol, NSUrlAuthenticationChallenge challenge)
+public virtual void ReceivedAuthenticationChallenge (NSUrlProtocol protocol, NSUrlAuthenticationChallenge challenge)
-public abstract void ReceivedResponse (NSUrlProtocol protocol, NSUrlResponse response, NSUrlCacheStoragePolicy policy)
+public virtual void ReceivedResponse (NSUrlProtocol protocol, NSUrlResponse response, NSUrlCacheStoragePolicy policy)
-public abstract void Redirected (NSUrlProtocol protocol, NSUrlRequest redirectedToEequest, NSUrlResponse redirectResponse)
+public virtual void Redirected (NSUrlProtocol protocol, NSUrlRequest redirectedToEequest, NSUrlResponse redirectResponse)

Type Changed: Foundation.INSUrlSessionDataDelegate

Added methods:

public virtual void DidBecomeDownloadTask (NSUrlSession session, NSUrlSessionDataTask dataTask, NSUrlSessionDownloadTask downloadTask);
public virtual void DidBecomeStreamTask (NSUrlSession session, NSUrlSessionDataTask dataTask, NSUrlSessionStreamTask streamTask);
public virtual void DidReceiveData (NSUrlSession session, NSUrlSessionDataTask dataTask, NSData data);
public virtual void DidReceiveResponse (NSUrlSession session, NSUrlSessionDataTask dataTask, NSUrlResponse response, System.Action<NSUrlSessionResponseDisposition> completionHandler);
public virtual void WillCacheResponse (NSUrlSession session, NSUrlSessionDataTask dataTask, NSCachedUrlResponse proposedResponse, System.Action<NSCachedUrlResponse> completionHandler);

Type Changed: Foundation.INSUrlSessionDelegate

Added methods:

public virtual void DidBecomeInvalid (NSUrlSession session, NSError error);
public virtual void DidFinishEventsForBackgroundSession (NSUrlSession session);
public virtual void DidReceiveChallenge (NSUrlSession session, NSUrlAuthenticationChallenge challenge, System.Action<NSUrlSessionAuthChallengeDisposition,Foundation.NSUrlCredential> completionHandler);

Type Changed: Foundation.INSUrlSessionDownloadDelegate

Modified methods:

-public abstract void DidFinishDownloading (NSUrlSession session, NSUrlSessionDownloadTask downloadTask, NSUrl location)
+public virtual void DidFinishDownloading (NSUrlSession session, NSUrlSessionDownloadTask downloadTask, NSUrl location)

Added methods:

public virtual void DidResume (NSUrlSession session, NSUrlSessionDownloadTask downloadTask, long resumeFileOffset, long expectedTotalBytes);
public virtual void DidWriteData (NSUrlSession session, NSUrlSessionDownloadTask downloadTask, long bytesWritten, long totalBytesWritten, long totalBytesExpectedToWrite);

Type Changed: Foundation.INSUrlSessionStreamDelegate

Added methods:

public virtual void BetterRouteDiscovered (NSUrlSession session, NSUrlSessionStreamTask streamTask);
public virtual void CompletedTaskCaptureStreams (NSUrlSession session, NSUrlSessionStreamTask streamTask, NSInputStream inputStream, NSOutputStream outputStream);
public virtual void ReadClosed (NSUrlSession session, NSUrlSessionStreamTask streamTask);
public virtual void WriteClosed (NSUrlSession session, NSUrlSessionStreamTask streamTask);

Type Changed: Foundation.INSUrlSessionTaskDelegate

Added methods:

public virtual void DidCompleteWithError (NSUrlSession session, NSUrlSessionTask task, NSError error);
public virtual void DidCreateTask (NSUrlSession session, NSUrlSessionTask task);
public virtual void DidFinishCollectingMetrics (NSUrlSession session, NSUrlSessionTask task, NSUrlSessionTaskMetrics metrics);
public virtual void DidReceiveChallenge (NSUrlSession session, NSUrlSessionTask task, NSUrlAuthenticationChallenge challenge, System.Action<NSUrlSessionAuthChallengeDisposition,Foundation.NSUrlCredential> completionHandler);
public virtual void DidReceiveInformationalResponse (NSUrlSession session, NSUrlSessionTask task, NSHttpUrlResponse response);
public virtual void DidSendBodyData (NSUrlSession session, NSUrlSessionTask task, long bytesSent, long totalBytesSent, long totalBytesExpectedToSend);
public virtual void NeedNewBodyStream (NSUrlSession session, NSUrlSessionTask task, System.Action<NSInputStream> completionHandler);
public virtual void NeedNewBodyStream (NSUrlSession session, NSUrlSessionTask task, long offset, System.Action<NSInputStream> completionHandler);
public virtual void TaskIsWaitingForConnectivity (NSUrlSession session, NSUrlSessionTask task);
public virtual void WillBeginDelayedRequest (NSUrlSession session, NSUrlSessionTask task, NSUrlRequest request, System.Action<NSUrlSessionDelayedRequestDisposition,Foundation.NSUrlRequest> completionHandler);
public virtual void WillPerformHttpRedirection (NSUrlSession session, NSUrlSessionTask task, NSHttpUrlResponse response, NSUrlRequest newRequest, System.Action<NSUrlRequest> completionHandler);

Type Changed: Foundation.INSUrlSessionWebSocketDelegate

Added methods:

public virtual void DidClose (NSUrlSession session, NSUrlSessionWebSocketTask webSocketTask, NSUrlSessionWebSocketCloseCode closeCode, NSData reason);
public virtual void DidOpen (NSUrlSession session, NSUrlSessionWebSocketTask webSocketTask, string protocol);

Type Changed: Foundation.INSUserActivityDelegate

Added methods:

public virtual void UserActivityReceivedData (NSUserActivity userActivity, NSInputStream inputStream, NSOutputStream outputStream);
public virtual void UserActivityWasContinued (NSUserActivity userActivity);
public virtual void UserActivityWillSave (NSUserActivity userActivity);

Type Changed: Foundation.INSXpcListenerDelegate

Added method:

public virtual bool ShouldAcceptConnection (NSXpcListener listener, NSXpcConnection newConnection);

Type Changed: Foundation.NSAppleEventManager

Added property:

public static NSString WillProcessFirstEventNotification { get; }

Type Changed: Foundation.NSArray

Added method:

public virtual System.Collections.Generic.IEnumerator<NSObject> GetEnumerator ();

Type Changed: Foundation.NSArray`1

Added method:

public virtual System.Collections.Generic.IEnumerator<TKey> GetEnumerator ();

Type Changed: Foundation.NSAttributedStringDocumentAttributes

Obsoleted properties:

 [Obsolete ("Use 'CharacterEncoding' instead.")]
 public NSStringEncoding? StringEncoding { get; set; }

Added properties:

public NSStringEncoding? CharacterEncoding { get; set; }
public float? CocoaVersion { get; set; }
public NSAttributedStringDocumentAttributes DefaultAttributes { get; set; }
public UIKit.NSTextScalingType? SourceTextScaling { get; set; }
public UIKit.NSTextScalingType? TextScaling { get; set; }

Type Changed: Foundation.NSAttributedStringNameKey

Added values:

InflectionAgreementArgument = 10,
InflectionAgreementConcept = 11,
InflectionReferentConcept = 12,
LocalizedNumberFormat = 13,

Type Changed: Foundation.NSBundle

Added property:

public static NSString BundleDidLoadNotification { get; }

Type Changed: Foundation.NSCalendarUnit

Added value:

DayOfYear = 65536,

Type Changed: Foundation.NSCharacterSet

Added properties:

public static NSCharacterSet UrlFragmentAllowed { get; }
public static NSCharacterSet UrlHostAllowed { get; }
public static NSCharacterSet UrlPasswordAllowed { get; }
public static NSCharacterSet UrlPathAllowed { get; }
public static NSCharacterSet UrlQueryAllowed { get; }
public static NSCharacterSet UrlUserAllowed { get; }

Type Changed: Foundation.NSDataWritingOptions

Added value:

FileProtectionCompleteWhenUserInactive = 1342177280,

Type Changed: Foundation.NSDate

Added property:

public static NSString SystemClockDidChangeNotification { get; }

Type Changed: Foundation.NSDateComponents

Added property:

public virtual IntPtr DayOfYear { get; set; }

Type Changed: Foundation.NSError

Added property:

public static NSString NSNetServicesErrorCode { get; }

Type Changed: Foundation.NSFilePresenter

Added method:

public virtual void AccommodatePresentedItemEviction (System.Action<NSError> completionHandler);

Type Changed: Foundation.NSFilePresenter_Extensions

Added method:

public static void AccommodatePresentedItemEviction (this INSFilePresenter This, System.Action<NSError> completionHandler);

Type Changed: Foundation.NSFileProtectionType

Added value:

CompleteWhenUserInactive = 4,

Type Changed: Foundation.NSLocale

Added properties:

public virtual string LanguageIdentifier { get; }
public virtual string RegionCode { get; }

Type Changed: Foundation.NSMorphology

Added properties:

public virtual NSGrammaticalDefiniteness Definiteness { get; set; }
public virtual NSGrammaticalDetermination Determination { get; set; }
public virtual NSGrammaticalCase GrammaticalCase { get; set; }
public virtual NSGrammaticalPerson GrammaticalPerson { get; set; }
public virtual NSGrammaticalPronounType PronounType { get; set; }

Type Changed: Foundation.NSMutableOrderedSet`1

Added method:

public virtual System.Collections.Generic.IEnumerator<TKey> GetEnumerator ();

Type Changed: Foundation.NSMutableSet`1

Added method:

public virtual System.Collections.Generic.IEnumerator<TKey> GetEnumerator ();

Type Changed: Foundation.NSMutableUrlRequest

Added property:

public virtual bool AllowsPersistentDns { get; set; }

Type Changed: Foundation.NSNumber

Added methods:

public bool IsEqualTo (NSNumber number);
public virtual bool IsEqualTo (IntPtr number);

Type Changed: Foundation.NSNumberFormatter

Added property:

public virtual IntPtr MinimumGroupingDigits { get; set; }

Type Changed: Foundation.NSOrderedSet`1

Added method:

public virtual System.Collections.Generic.IEnumerator<TKey> GetEnumerator ();

Type Changed: Foundation.NSPort

Added property:

public static NSString PortDidBecomeInvalidNotification { get; }

Type Changed: Foundation.NSProcessInfo

Added property:

public static NSString PerformanceProfileDidChangeNotification { get; }

Type Changed: Foundation.NSProcessInfo.Notifications

Added methods:

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

Type Changed: Foundation.NSSet`1

Added method:

public virtual System.Collections.Generic.IEnumerator<TKey> GetEnumerator ();

Type Changed: Foundation.NSTask

Added property:

public virtual NSData LaunchRequirementData { get; set; }

Type Changed: Foundation.NSThread

Added properties:

public static NSString ThreadWillExitNotification { get; }
public static NSString WillBecomeMultiThreadedNotification { get; }

Type Changed: Foundation.NSTimeZone

Added property:

public static NSString SystemTimeZoneDidChangeNotification { get; }

Type Changed: Foundation.NSUndoManager

Added properties:

public virtual UIntPtr RedoCount { get; }
public virtual UIntPtr UndoCount { get; }

Added methods:

public virtual NSObject GetRedoActionUserInfoValue (string key);
public virtual NSObject GetUndoActionUserInfoValue (string key);
public virtual void SetActionUserInfoValue (NSObject info, string key);

Type Changed: Foundation.NSUrl

Added properties:

public static NSString DirectoryEntryCountKey { get; }
public static NSString FileProtectionCompleteWhenUserInactive { get; }

Added method:

public static NSUrl FromString (string url, bool encodingInvalidCharacters);

Type Changed: Foundation.NSUrlComponents

Added method:

public static NSUrlComponents FromString (string url, bool encodingInvalidCharacters);

Type Changed: Foundation.NSUrlRequest

Added property:

public virtual bool AllowsPersistentDns { get; }

Type Changed: Foundation.NSUrlSession

Added methods:

public virtual NSUrlSessionUploadTask CreateUploadTask (NSData resumeData);
public virtual NSUrlSessionUploadTask CreateUploadTask (NSData resumeData, System.Action<NSData,Foundation.NSUrlResponse,Foundation.NSError> completionHandler);
public virtual System.Threading.Tasks.Task<NSUrlSessionUploadTaskResumeRequest> CreateUploadTaskAsync (NSData resumeData);
public virtual System.Threading.Tasks.Task<NSUrlSessionUploadTaskResumeRequest> CreateUploadTaskAsync (NSData resumeData, out NSUrlSessionUploadTask result);

Type Changed: Foundation.NSUrlSessionConfiguration

Added property:

public Network.NWProxyConfig[] ProxyConfigurations { get; set; }

Type Changed: Foundation.NSUrlSessionTaskDelegate

Added methods:

public virtual void DidReceiveInformationalResponse (NSUrlSession session, NSUrlSessionTask task, NSHttpUrlResponse response);
public virtual void NeedNewBodyStream (NSUrlSession session, NSUrlSessionTask task, long offset, System.Action<NSInputStream> completionHandler);

Type Changed: Foundation.NSUrlSessionTaskDelegate_Extensions

Added methods:

public static void DidReceiveInformationalResponse (this INSUrlSessionTaskDelegate This, NSUrlSession session, NSUrlSessionTask task, NSHttpUrlResponse response);
public static void NeedNewBodyStream (this INSUrlSessionTaskDelegate This, NSUrlSession session, NSUrlSessionTask task, long offset, System.Action<NSInputStream> completionHandler);

Type Changed: Foundation.NSUrlSessionUploadTask

Added property:

public static NSString ResumeDataKey { get; }

Added methods:

public virtual void CancelByProducingResumeData (System.Action<NSData> completionHandler);
public virtual System.Threading.Tasks.Task<NSData> CancelByProducingResumeDataAsync ();

Type Changed: Foundation.ProtocolAttribute

Added property:

public bool BackwardsCompatibleCodeGeneration { get; set; }

New Type: Foundation.NSExceptionError

public sealed class NSExceptionError : Foundation.NSError {
	// constructors
	public NSExceptionError (System.Exception exception);
	// properties
	public System.Exception Exception { get; }
}

New Type: Foundation.NSGrammaticalCase

[Serializable]
public enum NSGrammaticalCase {
	Ablative = 6,
	Accusative = 2,
	Adessive = 7,
	Allative = 8,
	Dative = 3,
	Elative = 9,
	Essive = 11,
	Genitive = 4,
	Illative = 10,
	Inessive = 12,
	Locative = 13,
	Nominative = 1,
	NotSet = 0,
	Prepositional = 5,
	Translative = 14,
}

New Type: Foundation.NSGrammaticalDefiniteness

[Serializable]
public enum NSGrammaticalDefiniteness {
	Definite = 2,
	Indefinite = 1,
	NotSet = 0,
}

New Type: Foundation.NSGrammaticalDetermination

[Serializable]
public enum NSGrammaticalDetermination {
	Dependent = 2,
	Independent = 1,
	NotSet = 0,
}

New Type: Foundation.NSGrammaticalPerson

[Serializable]
public enum NSGrammaticalPerson {
	First = 1,
	NotSet = 0,
	Second = 2,
	Third = 3,
}

New Type: Foundation.NSGrammaticalPronounType

[Serializable]
public enum NSGrammaticalPronounType {
	NotSet = 0,
	Personal = 1,
	Possessive = 3,
	Reflexive = 2,
}

New Type: Foundation.NSKeyValueSharedObserverRegistration_NSObject

public static class NSKeyValueSharedObserverRegistration_NSObject {
	// methods
	public static void SetSharedObservers (this NSObject This, NSKeyValueSharedObserversSnapshot sharedObservers);
}

New Type: Foundation.NSKeyValueSharedObservers

public class NSKeyValueSharedObservers : Foundation.NSObject {
	// constructors
	protected NSKeyValueSharedObservers (NSObjectFlag t);
	public NSKeyValueSharedObservers (ObjCRuntime.Class observableClass);
	protected NSKeyValueSharedObservers (ObjCRuntime.NativeHandle handle);
	public NSKeyValueSharedObservers (System.Type observableType);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	// methods
	public virtual void AddSharedObserver (NSObject observer, string forKey, NSKeyValueObservingOptions options, IntPtr context);
	public virtual NSKeyValueSharedObserversSnapshot GetSnapshot ();
}

New Type: Foundation.NSKeyValueSharedObserversSnapshot

public class NSKeyValueSharedObserversSnapshot : Foundation.NSObject {
	// constructors
	protected NSKeyValueSharedObserversSnapshot (NSObjectFlag t);
	protected NSKeyValueSharedObserversSnapshot (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
}

New Type: Foundation.NSLocalizedNumberFormatRule

public class NSLocalizedNumberFormatRule : Foundation.NSObject, INSCoding, INSCopying, INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public NSLocalizedNumberFormatRule (NSCoder coder);
	protected NSLocalizedNumberFormatRule (NSObjectFlag t);
	protected NSLocalizedNumberFormatRule (ObjCRuntime.NativeHandle handle);
	// properties
	public static NSLocalizedNumberFormatRule Automatic { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	// methods
	public virtual NSObject Copy (NSZone zone);
	public virtual void EncodeTo (NSCoder encoder);
}

New Type: Foundation.NSMorphologyPronoun

public class NSMorphologyPronoun : Foundation.NSObject, INSCoding, INSCopying, INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public NSMorphologyPronoun (NSCoder coder);
	protected NSMorphologyPronoun (NSObjectFlag t);
	protected NSMorphologyPronoun (ObjCRuntime.NativeHandle handle);
	public NSMorphologyPronoun (string pronoun, NSMorphology morphology, NSMorphology dependentMorphology);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual NSMorphology DependentMorphology { get; }
	public virtual NSMorphology Morphology { get; }
	public virtual string Pronoun { get; }
	// methods
	public virtual NSObject Copy (NSZone zone);
	public virtual void EncodeTo (NSCoder encoder);
}

New Type: Foundation.NSTermOfAddress

public class NSTermOfAddress : Foundation.NSObject, INSCoding, INSCopying, INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public NSTermOfAddress (NSCoder coder);
	protected NSTermOfAddress (NSObjectFlag t);
	protected NSTermOfAddress (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public static NSTermOfAddress CurrentUser { get; }
	public static NSTermOfAddress Feminine { get; }
	public virtual string LanguageIdentifier { get; }
	public static NSTermOfAddress Masculine { get; }
	public static NSTermOfAddress Neutral { get; }
	public virtual NSMorphologyPronoun[] Pronouns { get; }
	// methods
	public virtual NSObject Copy (NSZone zone);
	public virtual void EncodeTo (NSCoder encoder);
	public static NSTermOfAddress GetLocalized (string language, NSMorphologyPronoun[] pronouns);
}

New Type: Foundation.NSUrlSessionUploadTaskResumeRequest

public class NSUrlSessionUploadTaskResumeRequest {
	// constructors
	public NSUrlSessionUploadTaskResumeRequest (NSData arg1, NSUrlResponse arg2);
	// properties
	public NSData Arg1 { get; set; }
	public NSUrlResponse Arg2 { get; set; }
}

New Type: Foundation.OptionalMemberAttribute

public sealed class OptionalMemberAttribute : System.Attribute {
	// constructors
	public OptionalMemberAttribute ();
}

New Type: Foundation.RequiredMemberAttribute

public sealed class RequiredMemberAttribute : System.Attribute {
	// constructors
	public RequiredMemberAttribute ();
}

Namespace GameController

Type Changed: GameController.GCVirtualControllerConfiguration

Added property:

public virtual bool Hidden { get; set; }

Type Changed: GameController.IGCAxisElement

Modified properties:

-public abstract IGCAxisInput AbsoluteInput { get; }
+public virtual IGCAxisInput AbsoluteInput { get; }
-public abstract IGCRelativeInput RelativeInput { get; }
+public virtual IGCRelativeInput RelativeInput { get; }

Type Changed: GameController.IGCAxisInput

Modified properties:

-public abstract bool Analog { get; }
+public virtual bool Analog { get; }
-public abstract bool CanWrap { get; }
+public virtual bool CanWrap { get; }
-public abstract double LastValueLatency { get; }
+public virtual double LastValueLatency { get; }
-public abstract double LastValueTimestamp { get; }
+public virtual double LastValueTimestamp { get; }
-public abstract float Value { get; }
+public virtual float Value { get; }
-public abstract System.Action%LESSERTHANREPLACEMENT%IGCPhysicalInputElement,GameController.IGCAxisInput,System.Single%GREATERTHANREPLACEMENT% ValueDidChangeHandler { get; set; }
+public virtual System.Action%LESSERTHANREPLACEMENT%IGCPhysicalInputElement,GameController.IGCAxisInput,System.Single%GREATERTHANREPLACEMENT% ValueDidChangeHandler { get; set; }

Type Changed: GameController.IGCButtonElement

Modified properties:

-public abstract Foundation.NSObject PressedInput { get; }
+public virtual Foundation.NSObject PressedInput { get; }
-public abstract IGCTouchedStateInput TouchedInput { get; }
+public virtual IGCTouchedStateInput TouchedInput { get; }

Type Changed: GameController.IGCDevice

Modified properties:

-public abstract CoreFoundation.DispatchQueue HandlerQueue { get; set; }
+public virtual CoreFoundation.DispatchQueue HandlerQueue { get; set; }
-public abstract GCPhysicalInputProfile PhysicalInputProfile { get; }
+public virtual GCPhysicalInputProfile PhysicalInputProfile { get; }
-public abstract string ProductCategory { get; }
+public virtual string ProductCategory { get; }
-public abstract string VendorName { get; }
+public virtual string VendorName { get; }

Type Changed: GameController.IGCDevicePhysicalInput

Modified properties:

-public abstract IGCDevicePhysicalInputState Capture { get; }
+public virtual IGCDevicePhysicalInputState Capture { get; }
-public abstract IGCDevice Device { get; }
+public virtual IGCDevice Device { get; }
-public abstract ElementValueDidChangeHandler ElementValueDidChangeHandler { get; set; }
+public virtual ElementValueDidChangeHandler ElementValueDidChangeHandler { get; set; }
-public abstract InputStateAvailableHandler InputStateAvailableHandler { get; set; }
+public virtual InputStateAvailableHandler InputStateAvailableHandler { get; set; }
-public abstract IntPtr InputStateQueueDepth { get; set; }
+public virtual IntPtr InputStateQueueDepth { get; set; }
-public abstract Foundation.NSObject NextInputState { get; }
+public virtual Foundation.NSObject NextInputState { get; }

Type Changed: GameController.IGCDevicePhysicalInputState

Modified properties:

-public abstract IGCDevice Device { get; }
+public virtual IGCDevice Device { get; }
-public abstract double LastEventLatency { get; }
+public virtual double LastEventLatency { get; }
-public abstract double LastEventTimestamp { get; }
+public virtual double LastEventTimestamp { get; }

Modified methods:

-public abstract IGCPhysicalInputElement GetObject (string key)
+public virtual IGCPhysicalInputElement GetObject (string key)

Type Changed: GameController.IGCDevicePhysicalInputStateDiff

Modified properties:

-public abstract Foundation.NSEnumerator%LESSERTHANREPLACEMENT%IGCPhysicalInputElement%GREATERTHANREPLACEMENT% ChangedElements { get; }
+public virtual Foundation.NSEnumerator%LESSERTHANREPLACEMENT%IGCPhysicalInputElement%GREATERTHANREPLACEMENT% ChangedElements { get; }

Modified methods:

-public abstract GCDevicePhysicalInputElementChange GetChange (IGCPhysicalInputElement element)
+public virtual GCDevicePhysicalInputElementChange GetChange (IGCPhysicalInputElement element)

Type Changed: GameController.IGCDirectionPadElement

Modified properties:

-public abstract Foundation.NSObject Down { get; }
+public virtual Foundation.NSObject Down { get; }
-public abstract Foundation.NSObject Left { get; }
+public virtual Foundation.NSObject Left { get; }
-public abstract Foundation.NSObject Right { get; }
+public virtual Foundation.NSObject Right { get; }
-public abstract Foundation.NSObject Up { get; }
+public virtual Foundation.NSObject Up { get; }
-public abstract IGCAxisInput XAxis { get; }
+public virtual IGCAxisInput XAxis { get; }
-public abstract IGCAxisInput YAxis { get; }
+public virtual IGCAxisInput YAxis { get; }

Type Changed: GameController.IGCLinearInput

Modified properties:

-public abstract bool Analog { get; }
+public virtual bool Analog { get; }
-public abstract bool CanWrap { get; }
+public virtual bool CanWrap { get; }
-public abstract double LastValueLatency { get; }
+public virtual double LastValueLatency { get; }
-public abstract double LastValueTimestamp { get; }
+public virtual double LastValueTimestamp { get; }
-public abstract float Value { get; }
+public virtual float Value { get; }
-public abstract System.Action%LESSERTHANREPLACEMENT%IGCPhysicalInputElement,GameController.IGCLinearInput,System.Single%GREATERTHANREPLACEMENT% ValueDidChangeHandler { get; set; }
+public virtual System.Action%LESSERTHANREPLACEMENT%IGCPhysicalInputElement,GameController.IGCLinearInput,System.Single%GREATERTHANREPLACEMENT% ValueDidChangeHandler { get; set; }

Type Changed: GameController.IGCPhysicalInputElement

Modified properties:

-public abstract Foundation.NSSet%LESSERTHANREPLACEMENT%Foundation.NSString%GREATERTHANREPLACEMENT% Aliases { get; }
+public virtual Foundation.NSSet%LESSERTHANREPLACEMENT%Foundation.NSString%GREATERTHANREPLACEMENT% Aliases { get; }
-public abstract string LocalizedName { get; }
+public virtual string LocalizedName { get; }
-public abstract string SfSymbolsName { get; }
+public virtual string SfSymbolsName { get; }

Type Changed: GameController.IGCPressedStateInput

Modified properties:

-public abstract double LastPressedStateLatency { get; }
+public virtual double LastPressedStateLatency { get; }
-public abstract double LastPressedStateTimestamp { get; }
+public virtual double LastPressedStateTimestamp { get; }
-public abstract bool Pressed { get; }
+public virtual bool Pressed { get; }
-public abstract System.Action%LESSERTHANREPLACEMENT%IGCPhysicalInputElement,GameController.IGCPressedStateInput,System.Boolean%GREATERTHANREPLACEMENT% PressedDidChangeHandler { get; set; }
+public virtual System.Action%LESSERTHANREPLACEMENT%IGCPhysicalInputElement,GameController.IGCPressedStateInput,System.Boolean%GREATERTHANREPLACEMENT% PressedDidChangeHandler { get; set; }

Type Changed: GameController.IGCRelativeInput

Modified properties:

-public abstract bool Analog { get; }
+public virtual bool Analog { get; }
-public abstract float Delta { get; }
+public virtual float Delta { get; }
-public abstract System.Action%LESSERTHANREPLACEMENT%IGCPhysicalInputElement,GameController.IGCRelativeInput,System.Single%GREATERTHANREPLACEMENT% DeltaDidChangeHandler { get; set; }
+public virtual System.Action%LESSERTHANREPLACEMENT%IGCPhysicalInputElement,GameController.IGCRelativeInput,System.Single%GREATERTHANREPLACEMENT% DeltaDidChangeHandler { get; set; }
-public abstract double LastDeltaLatency { get; }
+public virtual double LastDeltaLatency { get; }
-public abstract double LastDeltaTimestamp { get; }
+public virtual double LastDeltaTimestamp { get; }

Type Changed: GameController.IGCSwitchElement

Modified properties:

-public abstract IGCSwitchPositionInput PositionInput { get; }
+public virtual IGCSwitchPositionInput PositionInput { get; }

Type Changed: GameController.IGCSwitchPositionInput

Modified properties:

-public abstract bool CanWrap { get; }
+public virtual bool CanWrap { get; }
-public abstract double LastPositionLatency { get; }
+public virtual double LastPositionLatency { get; }
-public abstract double LastPositionTimestamp { get; }
+public virtual double LastPositionTimestamp { get; }
-public abstract IntPtr Position { get; }
+public virtual IntPtr Position { get; }
-public abstract System.Action%LESSERTHANREPLACEMENT%IGCPhysicalInputElement,GameController.IGCSwitchPositionInput,System.IntPtr%GREATERTHANREPLACEMENT% PositionDidChangeHandler { get; set; }
+public virtual System.Action%LESSERTHANREPLACEMENT%IGCPhysicalInputElement,GameController.IGCSwitchPositionInput,System.IntPtr%GREATERTHANREPLACEMENT% PositionDidChangeHandler { get; set; }
-public abstract Foundation.NSRange PositionRange { get; }
+public virtual Foundation.NSRange PositionRange { get; }
-public abstract bool Sequential { get; }
+public virtual bool Sequential { get; }

Type Changed: GameController.IGCTouchedStateInput

Modified properties:

-public abstract double LastTouchedStateLatency { get; }
+public virtual double LastTouchedStateLatency { get; }
-public abstract double LastTouchedStateTimestamp { get; }
+public virtual double LastTouchedStateTimestamp { get; }
-public abstract bool Touched { get; }
+public virtual bool Touched { get; }
-public abstract System.Action%LESSERTHANREPLACEMENT%IGCPhysicalInputElement,GameController.IGCTouchedStateInput,System.Boolean%GREATERTHANREPLACEMENT% TouchedDidChangeHandler { get; set; }
+public virtual System.Action%LESSERTHANREPLACEMENT%IGCPhysicalInputElement,GameController.IGCTouchedStateInput,System.Boolean%GREATERTHANREPLACEMENT% TouchedDidChangeHandler { get; set; }

New Type: GameController.GCEventInteraction

public class GCEventInteraction : Foundation.NSObject, ObjCRuntime.INativeObject, System.IDisposable, UIKit.IUIInteraction {
	// constructors
	public GCEventInteraction ();
	protected GCEventInteraction (Foundation.NSObjectFlag t);
	protected GCEventInteraction (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual GCUIEventTypes HandledEventTypes { get; set; }
	public virtual UIKit.UIView View { get; }
	// methods
	public virtual void DidMoveToView (UIKit.UIView view);
	protected override void Dispose (bool disposing);
	public virtual void WillMoveToView (UIKit.UIView view);
}

New Type: GameController.GCUIEventTypes

[Serializable]
public enum GCUIEventTypes {
	Gamepad = 1,
	None = 0,
}

Namespace GameKit

Type Changed: GameKit.GKAccessPoint

Added methods:

public virtual void TriggerAccessPoint (GKPlayer player, System.Action handler);
public virtual void TriggerAccessPoint (string leaderboardId, GKLeaderboardPlayerScope playerScope, GKLeaderboardTimeScope timeScope, System.Action handler);
public virtual void TriggerAccessPointWithAchievementId (string achievementId, System.Action handler);
public virtual void TriggerAccessPointWithLeaderboardSetId (string leaderboardSetId, System.Action handler);

Type Changed: GameKit.GKAchievement

Added methods:

public virtual UIKit.UIViewController ChallengeComposeControllerWithMessage (string message, GKPlayer[] players, GKChallengeComposeHandler2 completionHandler);
public virtual System.Threading.Tasks.Task<GKChallengeComposeControllerResult> ChallengeComposeControllerWithMessageAsync (string message, GKPlayer[] players);
public virtual System.Threading.Tasks.Task<GKChallengeComposeControllerResult> ChallengeComposeControllerWithMessageAsync (string message, GKPlayer[] players, out UIKit.UIViewController result);

Type Changed: GameKit.GKAchievementDescription

Added property:

public virtual Foundation.NSNumber RarityPercent { get; }

Type Changed: GameKit.GKError

Added value:

AppUnlisted = 37,

Type Changed: GameKit.GKGameCenterViewController

Added constructors:

public GKGameCenterViewController (GKPlayer player);
public GKGameCenterViewController (string id, GKGameCenterViewControllerInitializationOption option);

Type Changed: GameKit.GKLeaderboardEntry

Added properties:

public virtual UIntPtr Context { get; }
public virtual Foundation.NSDate Date { get; }
public virtual string FormattedScore { get; }
public virtual IntPtr Rank { get; }
public virtual IntPtr Score { get; }

Added methods:

public virtual UIKit.UIViewController ChallengeComposeControllerWithMessage (string message, GKPlayer[] players, GKChallengeComposeHandler2 completionHandler);
public virtual System.Threading.Tasks.Task<GKChallengeComposeControllerResult> ChallengeComposeControllerWithMessageAsync (string message, GKPlayer[] players);
public virtual System.Threading.Tasks.Task<GKChallengeComposeControllerResult> ChallengeComposeControllerWithMessageAsync (string message, GKPlayer[] players, out UIKit.UIViewController result);

Type Changed: GameKit.GKLeaderboardSet

Added methods:

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

Type Changed: GameKit.GKLocalPlayer

Added property:

public virtual bool IsPresentingFriendRequestViewController { get; }

Type Changed: GameKit.GKScoreChallenge

Added property:

public virtual GKLeaderboardEntry LeaderboardEntry { get; }

Type Changed: GameKit.GKVoiceChat

Added property:

public virtual System.Action<GKPlayer,GameKit.GKVoiceChatPlayerState> PlayerVoiceChatStateDidChangeHandler { get; }

Type Changed: GameKit.IGKChallengeEventHandlerDelegate

Added methods:

public virtual void LocalPlayerCompletedChallenge (GKChallenge challenge);
public virtual void LocalPlayerReceivedChallenge (GKChallenge challenge);
public virtual void LocalPlayerSelectedChallenge (GKChallenge challenge);
public virtual void RemotePlayerCompletedChallenge (GKChallenge challenge);
public virtual bool ShouldShowBannerForLocallyCompletedChallenge (GKChallenge challenge);
public virtual bool ShouldShowBannerForLocallyReceivedChallenge (GKChallenge challenge);
public virtual bool ShouldShowBannerForRemotelyCompletedChallenge (GKChallenge challenge);

Type Changed: GameKit.IGKChallengeListener

Added methods:

public virtual void DidCompleteChallenge (GKPlayer player, GKChallenge challenge, GKPlayer friendPlayer);
public virtual void DidReceiveChallenge (GKPlayer player, GKChallenge challenge);
public virtual void IssuedChallengeWasCompleted (GKPlayer player, GKChallenge challenge, GKPlayer friendPlayer);
public virtual void WantsToPlayChallenge (GKPlayer player, GKChallenge challenge);

Type Changed: GameKit.IGKGameCenterControllerDelegate

Modified methods:

-public abstract void Finished (GKGameCenterViewController controller)
+public virtual void Finished (GKGameCenterViewController controller)

Type Changed: GameKit.IGKGameSessionEventListener

Added methods:

public virtual void DidAddPlayer (GKGameSession session, GKCloudPlayer player);
public virtual void DidChangeConnectionState (GKGameSession session, GKCloudPlayer player, GKConnectionState newState);
public virtual void DidReceiveData (GKGameSession session, Foundation.NSData data, GKCloudPlayer player);
public virtual void DidReceiveMessage (GKGameSession session, string message, Foundation.NSData data, GKCloudPlayer player);
public virtual void DidRemovePlayer (GKGameSession session, GKCloudPlayer player);
public virtual void DidSaveData (GKGameSession session, GKCloudPlayer player, Foundation.NSData data);

Type Changed: GameKit.IGKInviteEventListener

Added methods:

public virtual void DidAcceptInvite (GKPlayer player, GKInvite invite);
public virtual void DidRequestMatch (GKPlayer player, GKPlayer[] recipientPlayers);
public virtual void DidRequestMatch (GKPlayer player, string[] playerIDs);

Type Changed: GameKit.IGKMatchDelegate

Added methods:

public virtual void DataReceived (GKMatch match, Foundation.NSData data, string playerId);
public virtual void DataReceivedForRecipient (GKMatch match, Foundation.NSData data, GKPlayer recipient, GKPlayer player);
public virtual void DataReceivedFromPlayer (GKMatch match, Foundation.NSData data, GKPlayer player);
public virtual void Failed (GKMatch match, Foundation.NSError error);
public virtual bool ShouldReinviteDisconnectedPlayer (GKMatch match, GKPlayer player);
public virtual bool ShouldReinvitePlayer (GKMatch match, string playerId);
public virtual void StateChanged (GKMatch match, string playerId, GKPlayerConnectionState state);
public virtual void StateChangedForPlayer (GKMatch match, GKPlayer player, GKPlayerConnectionState state);

Type Changed: GameKit.IGKMatchmakerViewControllerDelegate

Modified methods:

-public abstract void DidFailWithError (GKMatchmakerViewController viewController, Foundation.NSError error)
+public virtual void DidFailWithError (GKMatchmakerViewController viewController, Foundation.NSError error)
-public abstract void WasCancelled (GKMatchmakerViewController viewController)
+public virtual void WasCancelled (GKMatchmakerViewController viewController)

Added methods:

public virtual void DidFindHostedPlayers (GKMatchmakerViewController viewController, GKPlayer[] playerIDs);
public virtual void DidFindMatch (GKMatchmakerViewController viewController, GKMatch match);
public virtual void DidFindPlayers (GKMatchmakerViewController viewController, string[] playerIDs);
public virtual void GetMatchProperties (GKMatchmakerViewController viewController, GKPlayer recipient, System.Action<Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject>> completionHandler);
public virtual void HostedPlayerDidAccept (GKMatchmakerViewController viewController, GKPlayer playerID);
public virtual void ReceivedAcceptFromHostedPlayer (GKMatchmakerViewController viewController, string playerID);

Type Changed: GameKit.IGKSavedGameListener

Added methods:

public virtual void DidModifySavedGame (GKPlayer player, GKSavedGame savedGame);
public virtual void HasConflictingSavedGames (GKPlayer player, GKSavedGame[] savedGames);

Type Changed: GameKit.IGKSessionDelegate

Added methods:

public virtual void FailedWithError (GKSession session, Foundation.NSError error);
public virtual void PeerChangedState (GKSession session, string peerID, GKPeerConnectionState state);
public virtual void PeerConnectionFailed (GKSession session, string peerID, Foundation.NSError error);
public virtual void PeerConnectionRequest (GKSession session, string peerID);

Type Changed: GameKit.IGKTurnBasedEventHandlerDelegate

Modified methods:

-public abstract void HandleInviteFromGameCenter (Foundation.NSString[] playersToInvite)
+public virtual void HandleInviteFromGameCenter (Foundation.NSString[] playersToInvite)
-public abstract void HandleTurnEvent (GKTurnBasedMatch match, bool activated)
+public virtual void HandleTurnEvent (GKTurnBasedMatch match, bool activated)

Added methods:

public virtual void HandleMatchEnded (GKTurnBasedMatch match);
public virtual void HandleTurnEventForMatch (GKTurnBasedMatch match);

Type Changed: GameKit.IGKTurnBasedEventListener

Added methods:

public virtual void DidRequestMatchWithOtherPlayers (GKPlayer player, GKPlayer[] playersToInvite);
public virtual void DidRequestMatchWithPlayers (GKPlayer player, string[] playerIDsToInvite);
public virtual void MatchEnded (GKPlayer player, GKTurnBasedMatch match);
public virtual void ReceivedExchangeCancellation (GKPlayer player, GKTurnBasedExchange exchange, GKTurnBasedMatch match);
public virtual void ReceivedExchangeReplies (GKPlayer player, GKTurnBasedExchangeReply[] replies, GKTurnBasedExchange exchange, GKTurnBasedMatch match);
public virtual void ReceivedExchangeRequest (GKPlayer player, GKTurnBasedExchange exchange, GKTurnBasedMatch match);
public virtual void ReceivedTurnEvent (GKPlayer player, GKTurnBasedMatch match, bool becameActive);
public virtual void WantsToQuitMatch (GKPlayer player, GKTurnBasedMatch match);

Type Changed: GameKit.IGKTurnBasedMatchmakerViewControllerDelegate

Modified methods:

-public abstract void FailedWithError (GKTurnBasedMatchmakerViewController viewController, Foundation.NSError error)
+public virtual void FailedWithError (GKTurnBasedMatchmakerViewController viewController, Foundation.NSError error)
-public abstract void WasCancelled (GKTurnBasedMatchmakerViewController viewController)
+public virtual void WasCancelled (GKTurnBasedMatchmakerViewController viewController)

Added methods:

public virtual void FoundMatch (GKTurnBasedMatchmakerViewController viewController, GKTurnBasedMatch match);
public virtual void PlayerQuitForMatch (GKTurnBasedMatchmakerViewController viewController, GKTurnBasedMatch match);

Type Changed: GameKit.IGKVoiceChatClient

Modified methods:

-public abstract string ParticipantID ()
+public virtual string ParticipantID ()
-public abstract void SendData (GKVoiceChatService voiceChatService, Foundation.NSData data, string toParticipant)
+public virtual void SendData (GKVoiceChatService voiceChatService, Foundation.NSData data, string toParticipant)

Added methods:

public virtual void FailedToConnect (GKVoiceChatService voiceChatService, string participantID, Foundation.NSError error);
public virtual void ReceivedInvitation (GKVoiceChatService voiceChatService, string participantID, IntPtr callID);
public virtual void SendRealTimeData (GKVoiceChatService voiceChatService, Foundation.NSData data, string participantID);
public virtual void Started (GKVoiceChatService voiceChatService, string participantID);
public virtual void Stopped (GKVoiceChatService voiceChatService, string participantID, Foundation.NSError error);

New Type: GameKit.GKChallengeComposeControllerResult

public class GKChallengeComposeControllerResult {
	// constructors
	public GKChallengeComposeControllerResult (UIKit.UIViewController composeController, bool issuedChallenge, GKPlayer[] sentPlayers);
	// properties
	public UIKit.UIViewController ComposeController { get; set; }
	public bool IssuedChallenge { get; set; }
	public GKPlayer[] SentPlayers { get; set; }
}

New Type: GameKit.GKChallengeComposeHandler2

public sealed delegate GKChallengeComposeHandler2 : System.MulticastDelegate {
	// constructors
	public GKChallengeComposeHandler2 (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (UIKit.UIViewController composeController, bool issuedChallenge, GKPlayer[] sentPlayers, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (UIKit.UIViewController composeController, bool issuedChallenge, GKPlayer[] sentPlayers);
}

New Type: GameKit.GKGameCenterViewControllerInitializationOption

[Serializable]
public enum GKGameCenterViewControllerInitializationOption {
	Achievement = 0,
	LeaderboardSet = 1,
}

Namespace GameplayKit

Type Changed: GameplayKit.IGKAgentDelegate

Added methods:

public virtual void AgentDidUpdate (GKAgent agent);
public virtual void AgentWillUpdate (GKAgent agent);

Type Changed: GameplayKit.IGKGameModel

Modified methods:

-public abstract void ApplyGameModelUpdate (IGKGameModelUpdate gameModelUpdate)
+public virtual void ApplyGameModelUpdate (IGKGameModelUpdate gameModelUpdate)
-public abstract IGKGameModelPlayer GetActivePlayer ()
+public virtual IGKGameModelPlayer GetActivePlayer ()
-public abstract IGKGameModelUpdate[] GetGameModelUpdates (IGKGameModelPlayer player)
+public virtual IGKGameModelUpdate[] GetGameModelUpdates (IGKGameModelPlayer player)
-public abstract IGKGameModelPlayer[] GetPlayers ()
+public virtual IGKGameModelPlayer[] GetPlayers ()
-public abstract void SetGameModel (IGKGameModel gameModel)
+public virtual void SetGameModel (IGKGameModel gameModel)

Added methods:

public virtual IntPtr GetScore (IGKGameModelPlayer player);
public virtual bool IsLoss (IGKGameModelPlayer player);
public virtual bool IsWin (IGKGameModelPlayer player);
public virtual void UnapplyGameModelUpdate (IGKGameModelUpdate gameModelUpdate);

Type Changed: GameplayKit.IGKGameModelPlayer

Modified properties:

-public abstract IntPtr PlayerId { get; }
+public virtual IntPtr PlayerId { get; }

Type Changed: GameplayKit.IGKGameModelUpdate

Modified properties:

-public abstract IntPtr Value { get; set; }
+public virtual IntPtr Value { get; set; }

Type Changed: GameplayKit.IGKRandom

Modified methods:

-public abstract bool GetNextBool ()
+public virtual bool GetNextBool ()
-public abstract IntPtr GetNextInt ()
+public virtual IntPtr GetNextInt ()
-public abstract UIntPtr GetNextInt (UIntPtr upperBound)
+public virtual UIntPtr GetNextInt (UIntPtr upperBound)
-public abstract float GetNextUniform ()
+public virtual float GetNextUniform ()

Type Changed: GameplayKit.IGKStrategist

Modified properties:

-public abstract IGKGameModel GameModel { get; set; }
+public virtual IGKGameModel GameModel { get; set; }
-public abstract IGKRandom RandomSource { get; set; }
+public virtual IGKRandom RandomSource { get; set; }

Modified methods:

-public abstract IGKGameModelUpdate GetBestMoveForActivePlayer ()
+public virtual IGKGameModelUpdate GetBestMoveForActivePlayer ()

Namespace HealthKit

Type Changed: HealthKit.HKActivitySummary

Added property:

public virtual bool Paused { get; set; }

Type Changed: HealthKit.HKAudiogramSensitivityPoint

Added constructor:

public HKAudiogramSensitivityPoint (Foundation.NSCoder coder);

Added interfaces:

Foundation.INSCoding
Foundation.INSSecureCoding
ObjCRuntime.INativeObject
System.IDisposable

Added method:

public virtual void EncodeTo (Foundation.NSCoder encoder);

Type Changed: HealthKit.HKCategoryTypeIdentifier

Added values:

BleedingAfterPregnancy = 66,
BleedingDuringPregnancy = 67,

Type Changed: HealthKit.HKDataTypeIdentifier

Added value:

StateOfMind = 1,

Type Changed: HealthKit.HKErrorCode

Added value:

NotPermissibleForGuestUserMode = 15,

Type Changed: HealthKit.HKHealthStore

Added property:

public virtual System.Action<HKWorkoutSession> WorkoutSessionMirroringStartHandler { get; set; }

Type Changed: HealthKit.HKObjectType

Added property:

public static HKStateOfMindType StateOfMindType { get; }

Added method:

public static HKScoredAssessmentType GetScoredAssessmentType (HKScoredAssessmentTypeIdentifier identifier);

Type Changed: HealthKit.HKPredicateKeyPath

Added property:

public static Foundation.NSString WorkoutEffortRelationship { get; }

Type Changed: HealthKit.HKQuantityTypeIdentifier

Added values:

CrossCountrySkiingSpeed = 111,
DistanceCrossCountrySkiing = 112,
DistancePaddleSports = 113,
DistanceRowing = 114,
DistanceSkatingSports = 115,
EstimatedWorkoutEffortScore = 116,
PaddleSportsSpeed = 117,
RowingSpeed = 118,
WorkoutEffortScore = 110,

Type Changed: HealthKit.HKQuery

Added methods:

public static Foundation.NSPredicate GetPredicateForStatesOfMind (HKStateOfMindAssociation association);
public static Foundation.NSPredicate GetPredicateForStatesOfMind (HKStateOfMindKind kind);
public static Foundation.NSPredicate GetPredicateForStatesOfMind (HKStateOfMindLabel label);
public static Foundation.NSPredicate GetPredicateForStatesOfMind (double valence, Foundation.NSPredicateOperatorType operatorType);
public static Foundation.NSPredicate GetPredicateForWorkoutEffortSamplesRelatedToWorkout (HKWorkout workout, HKWorkoutActivity activity);

Type Changed: HealthKit.HKUnit

Added property:

public static HKUnit AppleEffortScoreUnit { get; }

Type Changed: HealthKit.IHKWorkoutSessionDelegate

Modified methods:

-public abstract void DidChangeToState (HKWorkoutSession workoutSession, HKWorkoutSessionState toState, HKWorkoutSessionState fromState, Foundation.NSDate date)
+public virtual void DidChangeToState (HKWorkoutSession workoutSession, HKWorkoutSessionState toState, HKWorkoutSessionState fromState, Foundation.NSDate date)
-public abstract void DidFail (HKWorkoutSession workoutSession, Foundation.NSError error)
+public virtual void DidFail (HKWorkoutSession workoutSession, Foundation.NSError error)

Added methods:

public virtual void DidBeginActivity (HKWorkoutSession workoutSession, HKWorkoutConfiguration workoutConfiguration, Foundation.NSDate date);
public virtual void DidDisconnect (HKWorkoutSession workoutSession, Foundation.NSError error);
public virtual void DidEndActivity (HKWorkoutSession workoutSession, HKWorkoutConfiguration workoutConfiguration, Foundation.NSDate date);
public virtual void DidGenerateEvent (HKWorkoutSession workoutSession, HKWorkoutEvent event);
public virtual void DidReceiveData (HKWorkoutSession workoutSession, Foundation.NSData[] data);

New Type: HealthKit.HKCategoryValueVaginalBleeding

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

New Type: HealthKit.HKGad7Assessment

public class HKGad7Assessment : HealthKit.HKScoredAssessment {
	// constructors
	public HKGad7Assessment (Foundation.NSCoder coder);
	protected HKGad7Assessment (Foundation.NSObjectFlag t);
	protected HKGad7Assessment (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual HKGad7AssessmentAnswer[] Answers { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual HKGad7AssessmentRisk Risk { get; }
	// methods
	public static HKGad7Assessment Create (Foundation.NSDate date, HKGad7AssessmentAnswer[] answers);
	public static HKGad7Assessment Create (Foundation.NSDate date, HKGad7AssessmentAnswer[] answers, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> metadata);
}

New Type: HealthKit.HKGad7AssessmentAnswer

[Serializable]
public enum HKGad7AssessmentAnswer {
	MoreThanHalfTheDays = 2,
	NearlyEveryDay = 3,
	NotAtAll = 0,
	SeveralDays = 1,
}

New Type: HealthKit.HKGad7AssessmentRisk

[Serializable]
public enum HKGad7AssessmentRisk {
	Mild = 2,
	Moderate = 3,
	NoneToMinimal = 1,
	Severe = 4,
}

New Type: HealthKit.HKHealthStore_HKWorkoutRelationship

public static class HKHealthStore_HKWorkoutRelationship {
	// methods
	public static void RelateWorkoutEffortSample (this HKHealthStore This, HKSample sample, HKWorkout workout, HKWorkoutActivity activity, HKWorkoutRelationshipCallback completion);
	public static void UnrelateWorkoutEffortSample (this HKHealthStore This, HKSample sample, HKWorkout workout, HKWorkoutActivity activity, HKWorkoutRelationshipCallback completion);
}

New Type: HealthKit.HKPhq9Assessment

public class HKPhq9Assessment : HealthKit.HKScoredAssessment {
	// constructors
	public HKPhq9Assessment (Foundation.NSCoder coder);
	protected HKPhq9Assessment (Foundation.NSObjectFlag t);
	protected HKPhq9Assessment (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual HKPhq9AssessmentAnswer[] Answers { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual HKPhq9AssessmentRisk Risk { get; }
	// methods
	public static HKPhq9Assessment Create (Foundation.NSDate date, HKPhq9AssessmentAnswer[] answers);
	public static HKPhq9Assessment Create (Foundation.NSDate date, HKPhq9AssessmentAnswer[] answers, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> metadata);
}

New Type: HealthKit.HKPhq9AssessmentAnswer

[Serializable]
public enum HKPhq9AssessmentAnswer {
	MoreThanHalfTheDays = 2,
	NearlyEveryDay = 3,
	NotAtAll = 0,
	PreferNotToAnswer = 4,
	SeveralDays = 1,
}

New Type: HealthKit.HKPhq9AssessmentRisk

[Serializable]
public enum HKPhq9AssessmentRisk {
	Mild = 2,
	Moderate = 3,
	ModeratelySevere = 4,
	NoneToMinimal = 1,
	Severe = 5,
}

New Type: HealthKit.HKScoredAssessment

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

New Type: HealthKit.HKScoredAssessmentType

public class HKScoredAssessmentType : HealthKit.HKSampleType {
	// constructors
	public HKScoredAssessmentType (Foundation.NSCoder coder);
	protected HKScoredAssessmentType (Foundation.NSObjectFlag t);
	protected HKScoredAssessmentType (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
}

New Type: HealthKit.HKScoredAssessmentTypeIdentifier

[Serializable]
public enum HKScoredAssessmentTypeIdentifier {
	Gad7 = 0,
	Phq9 = 1,
}

New Type: HealthKit.HKScoredAssessmentTypeIdentifierExtensions

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

New Type: HealthKit.HKStateOfMind

public class HKStateOfMind : HealthKit.HKSample, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public HKStateOfMind (Foundation.NSCoder coder);
	protected HKStateOfMind (Foundation.NSObjectFlag t);
	protected HKStateOfMind (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual HKStateOfMindAssociation[] Associations { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual HKStateOfMindKind Kind { get; }
	public virtual HKStateOfMindLabel[] Labels { get; }
	public virtual double Valence { get; }
	public virtual HKStateOfMindValenceClassification ValenceClassification { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static HKStateOfMind Create (Foundation.NSDate date, HKStateOfMindKind kind, double valence, HKStateOfMindLabel[] labels, HKStateOfMindAssociation[] associations);
	public static HKStateOfMind Create (Foundation.NSDate date, HKStateOfMindKind kind, double valence, HKStateOfMindLabel[] labels, HKStateOfMindAssociation[] associations, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> metadata);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: HealthKit.HKStateOfMindAssociation

[Serializable]
public enum HKStateOfMindAssociation {
	Community = 1,
	CurrentEvents = 2,
	Dating = 3,
	Education = 4,
	Family = 5,
	Fitness = 6,
	Friends = 7,
	Health = 8,
	Hobbies = 9,
	Identity = 10,
	Money = 11,
	Partner = 12,
	SelfCare = 13,
	Spirituality = 14,
	Tasks = 15,
	Travel = 16,
	Weather = 18,
	Work = 17,
}

New Type: HealthKit.HKStateOfMindKind

[Serializable]
public enum HKStateOfMindKind {
	DailyMood = 2,
	MomentaryEmotion = 1,
}

New Type: HealthKit.HKStateOfMindLabel

[Serializable]
public enum HKStateOfMindLabel {
	Amazed = 1,
	Amused = 2,
	Angry = 3,
	Annoyed = 32,
	Anxious = 4,
	Ashamed = 5,
	Brave = 6,
	Calm = 7,
	Confident = 33,
	Content = 8,
	Disappointed = 9,
	Discouraged = 10,
	Disgusted = 11,
	Drained = 34,
	Embarrassed = 12,
	Excited = 13,
	Frustrated = 14,
	Grateful = 15,
	Guilty = 16,
	Happy = 17,
	Hopeful = 35,
	Hopeless = 18,
	Indifferent = 36,
	Irritated = 19,
	Jealous = 20,
	Joyful = 21,
	Lonely = 22,
	Overwhelmed = 37,
	Passionate = 23,
	Peaceful = 24,
	Proud = 25,
	Relieved = 26,
	Sad = 27,
	Satisfied = 38,
	Scared = 28,
	Stressed = 29,
	Surprised = 30,
	Worried = 31,
}

New Type: HealthKit.HKStateOfMindType

public class HKStateOfMindType : HealthKit.HKSampleType {
	// constructors
	public HKStateOfMindType (Foundation.NSCoder coder);
	protected HKStateOfMindType (Foundation.NSObjectFlag t);
	protected HKStateOfMindType (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
}

New Type: HealthKit.HKStateOfMindValence

public static class HKStateOfMindValence {
	// methods
	public static HKStateOfMindValenceClassification? GetClassification (double valence);
}

New Type: HealthKit.HKStateOfMindValenceClassification

[Serializable]
public enum HKStateOfMindValenceClassification {
	Neutral = 4,
	Pleasant = 6,
	SlightlyPleasant = 5,
	SlightlyUnpleasant = 3,
	Unpleasant = 2,
	VeryPleasant = 7,
	VeryUnpleasant = 1,
}

New Type: HealthKit.HKWorkoutEffortRelationship

public class HKWorkoutEffortRelationship : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public HKWorkoutEffortRelationship (Foundation.NSCoder coder);
	protected HKWorkoutEffortRelationship (Foundation.NSObjectFlag t);
	protected HKWorkoutEffortRelationship (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual HKWorkoutActivity Activity { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual HKSample[] Samples { get; }
	public virtual HKWorkout Workout { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: HealthKit.HKWorkoutEffortRelationshipQuery

public class HKWorkoutEffortRelationshipQuery : HealthKit.HKQuery {
	// constructors
	protected HKWorkoutEffortRelationshipQuery (Foundation.NSObjectFlag t);
	protected HKWorkoutEffortRelationshipQuery (ObjCRuntime.NativeHandle handle);
	public HKWorkoutEffortRelationshipQuery (Foundation.NSPredicate predicate, HKQueryAnchor anchor, HKWorkoutEffortRelationshipQueryOptions options, HKWorkoutEffortRelationshipQueryResultsHandler resultsHandler);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
}

New Type: HealthKit.HKWorkoutEffortRelationshipQueryOptions

[Serializable]
public enum HKWorkoutEffortRelationshipQueryOptions {
	Default = 0,
	MostRelevant = 1,
}

New Type: HealthKit.HKWorkoutEffortRelationshipQueryResultsHandler

public sealed delegate HKWorkoutEffortRelationshipQueryResultsHandler : System.MulticastDelegate {
	// constructors
	public HKWorkoutEffortRelationshipQueryResultsHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (HKWorkoutEffortRelationshipQuery query, HKWorkoutEffortRelationship[] relationships, HKQueryAnchor newAnchor, Foundation.NSError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (HKWorkoutEffortRelationshipQuery query, HKWorkoutEffortRelationship[] relationships, HKQueryAnchor newAnchor, Foundation.NSError error);
}

New Type: HealthKit.HKWorkoutRelationshipCallback

public sealed delegate HKWorkoutRelationshipCallback : System.MulticastDelegate {
	// constructors
	public HKWorkoutRelationshipCallback (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);
}

Namespace HomeKit

Type Changed: HomeKit.HMAccessoryCategoryType

Added values:

AirPort = 32,
AudioReceiver = 31,
Speaker = 30,
Television = 26,
TelevisionSetTopBox = 27,
TelevisionStreamingStick = 28,
WiFiRouter = 29,

Type Changed: HomeKit.HMCharacteristicType

Added values:

ActiveIdentifier = 130,
ClosedCaptions = 123,
ConfiguredName = 128,
CurrentMediaState = 125,
CurrentVisibilityState = 132,
Identifier = 129,
InputDeviceType = 122,
InputSourceType = 121,
PictureMode = 127,
PowerModeSelection = 124,
RemoteKey = 126,
RouterStatus = 133,
TargetMediaState = 138,
TargetVisibilityState = 131,
VolumeControlType = 136,
VolumeSelector = 137,
WanStatusList = 134,
WiFiSatelliteStatus = 135,

Type Changed: HomeKit.HMError

Added value:

PartialCommunicationFailure = 104,

Type Changed: HomeKit.HMService

Added property:

public virtual Foundation.NSNumber MatterEndpointId { get; }

Type Changed: HomeKit.HMServiceType

Added values:

InputSource = 44,
Television = 43,
WiFiRouter = 45,
WiFiSatellite = 46,

Type Changed: HomeKit.IHMAccessoryDelegate

Added methods:

public virtual void DidAddProfile (HMAccessory accessory, HMAccessoryProfile profile);
public virtual void DidRemoveProfile (HMAccessory accessory, HMAccessoryProfile profile);
public virtual void DidUpdateAssociatedServiceType (HMAccessory accessory, HMService service);
public virtual void DidUpdateFirmwareVersion (HMAccessory accessory, string firmwareVersion);
public virtual void DidUpdateName (HMAccessory accessory);
public virtual void DidUpdateNameForService (HMAccessory accessory, HMService service);
public virtual void DidUpdateReachability (HMAccessory accessory);
public virtual void DidUpdateServices (HMAccessory accessory);
public virtual void DidUpdateValueForCharacteristic (HMAccessory accessory, HMService service, HMCharacteristic characteristic);

Type Changed: HomeKit.IHMCameraSnapshotControlDelegate

Added methods:

public virtual void DidTakeSnapshot (HMCameraSnapshotControl cameraSnapshotControl, HMCameraSnapshot snapshot, Foundation.NSError error);
public virtual void DidUpdateMostRecentSnapshot (HMCameraSnapshotControl cameraSnapshotControl);

Type Changed: HomeKit.IHMCameraStreamControlDelegate

Added methods:

public virtual void DidStartStream (HMCameraStreamControl cameraStreamControl);
public virtual void DidStopStream (HMCameraStreamControl cameraStreamControl, Foundation.NSError error);

Type Changed: HomeKit.IHMHomeDelegate

Added methods:

public virtual void DidAddAccessory (HMHome home, HMAccessory accessory);
public virtual void DidAddActionSet (HMHome home, HMActionSet actionSet);
public virtual void DidAddRoom (HMHome home, HMRoom room);
public virtual void DidAddRoomToZone (HMHome home, HMRoom room, HMZone zone);
public virtual void DidAddService (HMHome home, HMService service, HMServiceGroup group);
public virtual void DidAddServiceGroup (HMHome home, HMServiceGroup group);
public virtual void DidAddTrigger (HMHome home, HMTrigger trigger);
public virtual void DidAddUser (HMHome home, HMUser user);
public virtual void DidAddZone (HMHome home, HMZone zone);
public virtual void DidEncounterError (HMHome home, Foundation.NSError error, HMAccessory accessory);
public virtual void DidRemoveAccessory (HMHome home, HMAccessory accessory);
public virtual void DidRemoveActionSet (HMHome home, HMActionSet actionSet);
public virtual void DidRemoveRoom (HMHome home, HMRoom room);
public virtual void DidRemoveRoomFromZone (HMHome home, HMRoom room, HMZone zone);
public virtual void DidRemoveService (HMHome home, HMService service, HMServiceGroup group);
public virtual void DidRemoveServiceGroup (HMHome home, HMServiceGroup group);
public virtual void DidRemoveTrigger (HMHome home, HMTrigger trigger);
public virtual void DidRemoveUser (HMHome home, HMUser user);
public virtual void DidRemoveZone (HMHome home, HMZone zone);
public virtual void DidUnblockAccessory (HMHome home, HMAccessory accessory);
public virtual void DidUpdateAccessControlForCurrentUser (HMHome home);
public virtual void DidUpdateActionsForActionSet (HMHome home, HMActionSet actionSet);
public virtual void DidUpdateHomeHubState (HMHome home, HMHomeHubState homeHubState);
public virtual void DidUpdateNameForActionSet (HMHome home, HMActionSet actionSet);
public virtual void DidUpdateNameForHome (HMHome home);
public virtual void DidUpdateNameForRoom (HMHome home, HMRoom room);
public virtual void DidUpdateNameForServiceGroup (HMHome home, HMServiceGroup group);
public virtual void DidUpdateNameForTrigger (HMHome home, HMTrigger trigger);
public virtual void DidUpdateNameForZone (HMHome home, HMZone zone);
public virtual void DidUpdateRoom (HMHome home, HMRoom room, HMAccessory accessory);
public virtual void DidUpdateSupportedFeatures (HMHome home);
public virtual void DidUpdateTrigger (HMHome home, HMTrigger trigger);

Type Changed: HomeKit.IHMHomeManagerDelegate

Added methods:

public virtual void DidAddHome (HMHomeManager manager, HMHome home);
public virtual void DidRemoveHome (HMHomeManager manager, HMHome home);
public virtual void DidUpdateAuthorizationStatus (HMHomeManager manager, HMHomeManagerAuthorizationStatus status);
public virtual void DidUpdateHomes (HMHomeManager manager);
public virtual void DidUpdatePrimaryHome (HMHomeManager manager);

Type Changed: HomeKit.IHMNetworkConfigurationProfileDelegate

Added method:

public virtual void DidUpdateNetworkAccessMode (HMNetworkConfigurationProfile profile);

New Type: HomeKit.HMCharacteristicValueClosedCaptions

[Serializable]
public enum HMCharacteristicValueClosedCaptions {
	Disabled = 0,
	Enabled = 1,
}

New Type: HomeKit.HMCharacteristicValueCurrentMediaState

[Serializable]
public enum HMCharacteristicValueCurrentMediaState {
	Interrupted = 5,
	Loading = 4,
	Paused = 1,
	Playing = 0,
	Stopped = 2,
	Unknown = 3,
}

New Type: HomeKit.HMCharacteristicValueCurrentVisibilityState

[Serializable]
public enum HMCharacteristicValueCurrentVisibilityState {
	AlwaysShown = 3,
	Connected = 2,
	Hidden = 1,
	Shown = 0,
}

New Type: HomeKit.HMCharacteristicValueInputDeviceType

[Serializable]
public enum HMCharacteristicValueInputDeviceType {
	AudioSystem = 5,
	None = 6,
	Other = 0,
	Playback = 4,
	Recording = 2,
	TV = 1,
	Tuner = 3,
}

New Type: HomeKit.HMCharacteristicValueInputSourceType

[Serializable]
public enum HMCharacteristicValueInputSourceType {
	AirPlay = 8,
	Application = 10,
	ComponentVideo = 6,
	CompositeVideo = 4,
	Dvi = 7,
	Hdmi = 3,
	HomeScreen = 1,
	Other = 0,
	SVideo = 5,
	Tuner = 2,
	Usb = 9,
}

New Type: HomeKit.HMCharacteristicValuePictureMode

[Serializable]
public enum HMCharacteristicValuePictureMode {
	Bright = 7,
	Calibrated = 10,
	Computer = 8,
	Custom1 = 11,
	Custom2 = 12,
	Custom3 = 13,
	Dark = 6,
	Game = 3,
	Movie = 1,
	Night = 9,
	Photo = 4,
	Sport = 2,
	Standard = 0,
	Vivid = 5,
}

New Type: HomeKit.HMCharacteristicValuePowerModeSelection

[Serializable]
public enum HMCharacteristicValuePowerModeSelection {
	Hide = 1,
	Show = 0,
}

New Type: HomeKit.HMCharacteristicValueRemoteKey

[Serializable]
public enum HMCharacteristicValueRemoteKey {
	ArrowDown = 5,
	ArrowLeft = 6,
	ArrowRight = 7,
	ArrowUp = 4,
	Back = 9,
	Exit = 10,
	FastForward = 1,
	Home = 16,
	Info = 15,
	Menu = 14,
	NextTrack = 2,
	Pause = 13,
	Play = 12,
	PlayPause = 11,
	PreviousTrack = 3,
	Rewind = 0,
	Select = 8,
}

New Type: HomeKit.HMCharacteristicValueRouterStatus

[Serializable]
public enum HMCharacteristicValueRouterStatus {
	NotReady = 1,
	Ready = 0,
}

New Type: HomeKit.HMCharacteristicValueTargetMediaState

[Serializable]
public enum HMCharacteristicValueTargetMediaState {
	Pause = 1,
	Play = 0,
	Stop = 2,
}

New Type: HomeKit.HMCharacteristicValueTargetVisibilityState

[Serializable]
public enum HMCharacteristicValueTargetVisibilityState {
	Hide = 1,
	Show = 0,
}

New Type: HomeKit.HMCharacteristicValueVolumeControlType

[Serializable]
public enum HMCharacteristicValueVolumeControlType {
	Absolute = 3,
	None = 0,
	Relative = 1,
	RelativeWithCurrent = 2,
}

New Type: HomeKit.HMCharacteristicValueVolumeSelector

[Serializable]
public enum HMCharacteristicValueVolumeSelector {
	VolumeDecrement = 1,
	VolumeIncrement = 0,
}

New Type: HomeKit.HMCharacteristicValueWiFiSatelliteStatus

[Serializable]
public enum HMCharacteristicValueWiFiSatelliteStatus {
	Connected = 1,
	NotConnected = 2,
	Unknown = 0,
}

Namespace IOSurface

Type Changed: IOSurface.IOSurface

Added property:

public virtual uint SurfaceId { get; }

Namespace IdentityLookup

Type Changed: IdentityLookup.IILMessageFilterCapabilitiesQueryHandling

Modified methods:

-public abstract void HandleQueryRequest (ILMessageFilterCapabilitiesQueryRequest capabilitiesQueryRequest, ILMessageFilterExtensionContext context, System.Action%LESSERTHANREPLACEMENT%ILMessageFilterCapabilitiesQueryResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleQueryRequest (ILMessageFilterCapabilitiesQueryRequest capabilitiesQueryRequest, ILMessageFilterExtensionContext context, System.Action%LESSERTHANREPLACEMENT%ILMessageFilterCapabilitiesQueryResponse%GREATERTHANREPLACEMENT% completion)

Type Changed: IdentityLookup.IILMessageFilterQueryHandling

Modified methods:

-public abstract void HandleQueryRequest (ILMessageFilterQueryRequest queryRequest, ILMessageFilterExtensionContext context, System.Action%LESSERTHANREPLACEMENT%ILMessageFilterQueryResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleQueryRequest (ILMessageFilterQueryRequest queryRequest, ILMessageFilterExtensionContext context, System.Action%LESSERTHANREPLACEMENT%ILMessageFilterQueryResponse%GREATERTHANREPLACEMENT% completion)

Namespace ImageIO

Type Changed: ImageIO.CGImageAuxiliaryDataInfo

Added property:

public CoreGraphics.CGColorSpace ColorSpace { get; set; }

Type Changed: ImageIO.CGImageAuxiliaryDataType

Added value:

IsoGainMap = 9,

Type Changed: ImageIO.CGImageDestinationOptionsKeys

Added properties:

public static Foundation.NSString EncodeBaseIsSdr { get; }
public static Foundation.NSString EncodeRequest { get; }
public static Foundation.NSString EncodeRequestOptions { get; }
public static Foundation.NSString EncodeToIsoGainmap { get; }
public static Foundation.NSString EncodeToIsoHdr { get; }
public static Foundation.NSString EncodeToSdr { get; }
public static Foundation.NSString EncodeTonemapMode { get; }

Type Changed: ImageIO.CGImageProperties

Added properties:

public static Foundation.NSString GroupImageIndexMonoscopic { get; }
public static Foundation.NSString GroupImageIsMonoscopicImage { get; }
public static Foundation.NSString GroupImageStereoAggressors { get; }
public static Foundation.NSString GroupMonoscopicImageLocation { get; }
public static Foundation.NSString TIFFXPosition { get; }
public static Foundation.NSString TIFFYPosition { get; }

Type Changed: ImageIO.CGImageSource

Added method:

public static void SetAllowableTypes (string[] allowableTypes);

New Type: ImageIO.IOMonoscopicImageLocation

public static class IOMonoscopicImageLocation {
	// properties
	public static Foundation.NSString Center { get; }
	public static Foundation.NSString Left { get; }
	public static Foundation.NSString Right { get; }
	public static Foundation.NSString Unspecified { get; }
}

New Type: ImageIO.IOStereoAggressors

public static class IOStereoAggressors {
	// properties
	public static Foundation.NSString Severity { get; }
	public static Foundation.NSString SubTypeUri { get; }
	public static Foundation.NSString Type { get; }
}

Namespace Intents

Type Changed: Intents.IINActivateCarSignalIntentHandling

Modified methods:

-public abstract void HandleActivateCarSignal (INActivateCarSignalIntent intent, System.Action%LESSERTHANREPLACEMENT%INActivateCarSignalIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleActivateCarSignal (INActivateCarSignalIntent intent, System.Action%LESSERTHANREPLACEMENT%INActivateCarSignalIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INActivateCarSignalIntent intent, System.Action<INActivateCarSignalIntentResponse> completion);
public virtual void ResolveCarName (INActivateCarSignalIntent intent, System.Action<INSpeakableStringResolutionResult> completion);
public virtual void ResolveSignals (INActivateCarSignalIntent intent, System.Action<INCarSignalOptionsResolutionResult> completion);

Type Changed: Intents.IINAddMediaIntentHandling

Modified methods:

-public abstract void HandleAddMedia (INAddMediaIntent intent, System.Action%LESSERTHANREPLACEMENT%INAddMediaIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleAddMedia (INAddMediaIntent intent, System.Action%LESSERTHANREPLACEMENT%INAddMediaIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INAddMediaIntent intent, System.Action<INAddMediaIntentResponse> completion);
public virtual void ResolveMediaDestination (INAddMediaIntent intent, System.Action<INAddMediaMediaDestinationResolutionResult> completion);
public virtual void ResolveMediaItems (INAddMediaIntent intent, System.Action<INAddMediaMediaItemResolutionResult[]> completion);

Type Changed: Intents.IINAddTasksIntentHandling

Modified methods:

-public abstract void HandleAddTasks (INAddTasksIntent intent, System.Action%LESSERTHANREPLACEMENT%INAddTasksIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleAddTasks (INAddTasksIntent intent, System.Action%LESSERTHANREPLACEMENT%INAddTasksIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INAddTasksIntent intent, System.Action<INAddTasksIntentResponse> completion);
public virtual void ResolvePriority (INAddTasksIntent intent, System.Action<INTaskPriorityResolutionResult> completion);
public virtual void ResolveSpatialEventTrigger (INAddTasksIntent intent, System.Action<INSpatialEventTriggerResolutionResult> completion);
public virtual void ResolveTargetTaskList (INAddTasksIntent intent, System.Action<INAddTasksTargetTaskListResolutionResult> completionHandler);
public virtual void ResolveTargetTaskList (INAddTasksIntent intent, System.Action<INTaskListResolutionResult> completion);
public virtual void ResolveTaskTitles (INAddTasksIntent intent, System.Action<INSpeakableStringResolutionResult[]> completion);
public virtual void ResolveTemporalEventTrigger (INAddTasksIntent intent, System.Action<INAddTasksTemporalEventTriggerResolutionResult> completionHandler);
public virtual void ResolveTemporalEventTrigger (INAddTasksIntent intent, System.Action<INTemporalEventTriggerResolutionResult> completion);

Type Changed: Intents.IINAnswerCallIntentHandling

Modified methods:

-public abstract void HandleAnswerCall (INAnswerCallIntent intent, System.Action%LESSERTHANREPLACEMENT%INAnswerCallIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleAnswerCall (INAnswerCallIntent intent, System.Action%LESSERTHANREPLACEMENT%INAnswerCallIntentResponse%GREATERTHANREPLACEMENT% completion)

Added method:

public virtual void ConfirmAnswerCall (INAnswerCallIntent intent, System.Action<INAnswerCallIntentResponse> completion);

Type Changed: Intents.IINAppendToNoteIntentHandling

Modified methods:

-public abstract void HandleAppendToNote (INAppendToNoteIntent intent, System.Action%LESSERTHANREPLACEMENT%INAppendToNoteIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleAppendToNote (INAppendToNoteIntent intent, System.Action%LESSERTHANREPLACEMENT%INAppendToNoteIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INAppendToNoteIntent intent, System.Action<INAppendToNoteIntentResponse> completion);
public virtual void ResolveContentForAppend (INAppendToNoteIntent intent, System.Action<INNoteContentResolutionResult> completion);
public virtual void ResolveTargetNoteForAppend (INAppendToNoteIntent intent, System.Action<INNoteResolutionResult> completion);

Type Changed: Intents.IINBookRestaurantReservationIntentHandling

Modified methods:

-public abstract void HandleBookRestaurantReservation (INBookRestaurantReservationIntent intent, System.Action%LESSERTHANREPLACEMENT%INBookRestaurantReservationIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleBookRestaurantReservation (INBookRestaurantReservationIntent intent, System.Action%LESSERTHANREPLACEMENT%INBookRestaurantReservationIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INBookRestaurantReservationIntent intent, System.Action<INBookRestaurantReservationIntentResponse> completion);
public virtual void ResolveBookingDate (INBookRestaurantReservationIntent intent, System.Action<INDateComponentsResolutionResult> completion);
public virtual void ResolveGuest (INBookRestaurantReservationIntent intent, System.Action<INRestaurantGuestResolutionResult> completion);
public virtual void ResolveGuestProvidedSpecialRequest (INBookRestaurantReservationIntent intent, System.Action<INStringResolutionResult> completion);
public virtual void ResolvePartySize (INBookRestaurantReservationIntent intent, System.Action<INIntegerResolutionResult> completion);
public virtual void ResolveRestaurant (INBookRestaurantReservationIntent intent, System.Action<INRestaurantResolutionResult> completion);

Type Changed: Intents.IINCancelRideIntentHandling

Modified methods:

-public abstract void HandleCancelRide (INCancelRideIntent intent, System.Action%LESSERTHANREPLACEMENT%INCancelRideIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleCancelRide (INCancelRideIntent intent, System.Action%LESSERTHANREPLACEMENT%INCancelRideIntentResponse%GREATERTHANREPLACEMENT% completion)

Added method:

public virtual void Confirm (INCancelRideIntent intent, System.Action<INCancelRideIntentResponse> completion);

Type Changed: Intents.IINCancelWorkoutIntentHandling

Modified methods:

-public abstract void HandleCancelWorkout (INCancelWorkoutIntent intent, System.Action%LESSERTHANREPLACEMENT%INCancelWorkoutIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleCancelWorkout (INCancelWorkoutIntent intent, System.Action%LESSERTHANREPLACEMENT%INCancelWorkoutIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INCancelWorkoutIntent intent, System.Action<INCancelWorkoutIntentResponse> completion);
public virtual void ResolveWorkoutName (INCancelWorkoutIntent intent, System.Action<INSpeakableStringResolutionResult> completion);

Type Changed: Intents.IINCreateNoteIntentHandling

Modified methods:

-public abstract void HandleCreateNote (INCreateNoteIntent intent, System.Action%LESSERTHANREPLACEMENT%INCreateNoteIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleCreateNote (INCreateNoteIntent intent, System.Action%LESSERTHANREPLACEMENT%INCreateNoteIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INCreateNoteIntent intent, System.Action<INCreateNoteIntentResponse> completion);
public virtual void ResolveContent (INCreateNoteIntent intent, System.Action<INNoteContentResolutionResult> completion);
public virtual void ResolveGroupName (INCreateNoteIntent intent, System.Action<INSpeakableStringResolutionResult> completion);
public virtual void ResolveTitle (INCreateNoteIntent intent, System.Action<INSpeakableStringResolutionResult> completion);

Type Changed: Intents.IINCreateTaskListIntentHandling

Modified methods:

-public abstract void HandleCreateTaskList (INCreateTaskListIntent intent, System.Action%LESSERTHANREPLACEMENT%INCreateTaskListIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleCreateTaskList (INCreateTaskListIntent intent, System.Action%LESSERTHANREPLACEMENT%INCreateTaskListIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INCreateTaskListIntent intent, System.Action<INCreateTaskListIntentResponse> completion);
public virtual void ResolveGroupName (INCreateTaskListIntent intent, System.Action<INSpeakableStringResolutionResult> completion);
public virtual void ResolveTaskTitles (INCreateTaskListIntent intent, System.Action<INSpeakableStringResolutionResult[]> completion);
public virtual void ResolveTitle (INCreateTaskListIntent intent, System.Action<INSpeakableStringResolutionResult> completion);

Type Changed: Intents.IINDeleteTasksIntentHandling

Modified methods:

-public abstract void HandleDeleteTasks (INDeleteTasksIntent intent, System.Action%LESSERTHANREPLACEMENT%INDeleteTasksIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleDeleteTasks (INDeleteTasksIntent intent, System.Action%LESSERTHANREPLACEMENT%INDeleteTasksIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INDeleteTasksIntent intent, System.Action<INDeleteTasksIntentResponse> completion);
public virtual void ResolveTaskList (INDeleteTasksIntent intent, System.Action<INDeleteTasksTaskListResolutionResult> completion);
public virtual void ResolveTasks (INDeleteTasksIntent intent, System.Action<INDeleteTasksTaskResolutionResult[]> completion);

Type Changed: Intents.IINEditMessageIntentHandling

Modified methods:

-public abstract void HandleEditMessage (INEditMessageIntent intent, System.Action%LESSERTHANREPLACEMENT%INEditMessageIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleEditMessage (INEditMessageIntent intent, System.Action%LESSERTHANREPLACEMENT%INEditMessageIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void ConfirmEditMessage (INEditMessageIntent intent, System.Action<INEditMessageIntentResponse> completion);
public virtual void ResolveEditedContent (INEditMessageIntent intent, System.Action<INStringResolutionResult> completion);

Type Changed: Intents.IINEndWorkoutIntentHandling

Modified methods:

-public abstract void HandleEndWorkout (INEndWorkoutIntent intent, System.Action%LESSERTHANREPLACEMENT%INEndWorkoutIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleEndWorkout (INEndWorkoutIntent intent, System.Action%LESSERTHANREPLACEMENT%INEndWorkoutIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INEndWorkoutIntent intent, System.Action<INEndWorkoutIntentResponse> completion);
public virtual void ResolveWorkoutName (INEndWorkoutIntent intent, System.Action<INSpeakableStringResolutionResult> completion);

Type Changed: Intents.IINGetAvailableRestaurantReservationBookingDefaultsIntentHandling

Modified methods:

-public abstract void HandleAvailableRestaurantReservationBookingDefaults (INGetAvailableRestaurantReservationBookingDefaultsIntent intent, System.Action%LESSERTHANREPLACEMENT%INGetAvailableRestaurantReservationBookingDefaultsIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleAvailableRestaurantReservationBookingDefaults (INGetAvailableRestaurantReservationBookingDefaultsIntent intent, System.Action%LESSERTHANREPLACEMENT%INGetAvailableRestaurantReservationBookingDefaultsIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INGetAvailableRestaurantReservationBookingDefaultsIntent intent, System.Action<INGetAvailableRestaurantReservationBookingDefaultsIntentResponse> completion);
public virtual void ResolveAvailableRestaurantReservationBookingDefaults (INGetAvailableRestaurantReservationBookingDefaultsIntent intent, System.Action<INRestaurantResolutionResult> completion);

Type Changed: Intents.IINGetAvailableRestaurantReservationBookingsIntentHandling

Modified methods:

-public abstract void HandleAvailableRestaurantReservationBookings (INGetAvailableRestaurantReservationBookingsIntent intent, System.Action%LESSERTHANREPLACEMENT%INGetAvailableRestaurantReservationBookingsIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleAvailableRestaurantReservationBookings (INGetAvailableRestaurantReservationBookingsIntent intent, System.Action%LESSERTHANREPLACEMENT%INGetAvailableRestaurantReservationBookingsIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INGetAvailableRestaurantReservationBookingsIntent intent, System.Action<INGetAvailableRestaurantReservationBookingsIntentResponse> completion);
public virtual void ResolveAvailableRestaurantReservationBookings (INGetAvailableRestaurantReservationBookingsIntent intent, System.Action<INRestaurantResolutionResult> completion);
public virtual void ResolvePartySizeAvailableRestaurantReservationBookings (INGetAvailableRestaurantReservationBookingsIntent intent, System.Action<INIntegerResolutionResult> completion);
public virtual void ResolvePreferredBookingDateAvailableRestaurantReservationBookings (INGetAvailableRestaurantReservationBookingsIntent intent, System.Action<INDateComponentsResolutionResult> completion);

Type Changed: Intents.IINGetCarLockStatusIntentHandling

Modified methods:

-public abstract void HandleGetCarLockStatus (INGetCarLockStatusIntent intent, System.Action%LESSERTHANREPLACEMENT%INGetCarLockStatusIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleGetCarLockStatus (INGetCarLockStatusIntent intent, System.Action%LESSERTHANREPLACEMENT%INGetCarLockStatusIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INGetCarLockStatusIntent intent, System.Action<INGetCarLockStatusIntentResponse> completion);
public virtual void ResolveCarName (INGetCarLockStatusIntent intent, System.Action<INSpeakableStringResolutionResult> completion);

Type Changed: Intents.IINGetCarPowerLevelStatusIntentHandling

Modified methods:

-public abstract void HandleGetCarPowerLevelStatus (INGetCarPowerLevelStatusIntent intent, System.Action%LESSERTHANREPLACEMENT%INGetCarPowerLevelStatusIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleGetCarPowerLevelStatus (INGetCarPowerLevelStatusIntent intent, System.Action%LESSERTHANREPLACEMENT%INGetCarPowerLevelStatusIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INGetCarPowerLevelStatusIntent intent, System.Action<INGetCarPowerLevelStatusIntentResponse> completion);
public virtual void ResolveCarName (INGetCarPowerLevelStatusIntent intent, System.Action<INSpeakableStringResolutionResult> completion);
public virtual void StartSendingUpdates (INGetCarPowerLevelStatusIntent intent, IINGetCarPowerLevelStatusIntentResponseObserver observer);
public virtual void StopSendingUpdates (INGetCarPowerLevelStatusIntent intent);

Type Changed: Intents.IINGetCarPowerLevelStatusIntentResponseObserver

Modified methods:

-public abstract void DidUpdate (INGetCarPowerLevelStatusIntentResponse response)
+public virtual void DidUpdate (INGetCarPowerLevelStatusIntentResponse response)

Type Changed: Intents.IINGetRestaurantGuestIntentHandling

Modified methods:

-public abstract void HandleRestaurantGuest (INGetRestaurantGuestIntent intent, System.Action%LESSERTHANREPLACEMENT%INGetRestaurantGuestIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleRestaurantGuest (INGetRestaurantGuestIntent intent, System.Action%LESSERTHANREPLACEMENT%INGetRestaurantGuestIntentResponse%GREATERTHANREPLACEMENT% completion)

Added method:

public virtual void Confirm (INGetRestaurantGuestIntent guestIntent, System.Action<INGetRestaurantGuestIntentResponse> completion);

Type Changed: Intents.IINGetRideStatusIntentHandling

Modified methods:

-public abstract void HandleRideStatus (INGetRideStatusIntent intent, System.Action%LESSERTHANREPLACEMENT%INGetRideStatusIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleRideStatus (INGetRideStatusIntent intent, System.Action%LESSERTHANREPLACEMENT%INGetRideStatusIntentResponse%GREATERTHANREPLACEMENT% completion)
-public abstract void StartSendingUpdates (INGetRideStatusIntent intent, IINGetRideStatusIntentResponseObserver observer)
+public virtual void StartSendingUpdates (INGetRideStatusIntent intent, IINGetRideStatusIntentResponseObserver observer)
-public abstract void StopSendingUpdates (INGetRideStatusIntent intent)
+public virtual void StopSendingUpdates (INGetRideStatusIntent intent)

Added method:

public virtual void Confirm (INGetRideStatusIntent intent, System.Action<INGetRideStatusIntentResponse> completion);

Type Changed: Intents.IINGetRideStatusIntentResponseObserver

Modified methods:

-public abstract void DidUpdateRideStatus (INGetRideStatusIntentResponse response)
+public virtual void DidUpdateRideStatus (INGetRideStatusIntentResponse response)

Type Changed: Intents.IINGetUserCurrentRestaurantReservationBookingsIntentHandling

Modified methods:

-public abstract void HandleUserCurrentRestaurantReservationBookings (INGetUserCurrentRestaurantReservationBookingsIntent intent, System.Action%LESSERTHANREPLACEMENT%INGetUserCurrentRestaurantReservationBookingsIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleUserCurrentRestaurantReservationBookings (INGetUserCurrentRestaurantReservationBookingsIntent intent, System.Action%LESSERTHANREPLACEMENT%INGetUserCurrentRestaurantReservationBookingsIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INGetUserCurrentRestaurantReservationBookingsIntent intent, System.Action<INGetUserCurrentRestaurantReservationBookingsIntentResponse> completion);
public virtual void ResolveUserCurrentRestaurantReservationBookings (INGetUserCurrentRestaurantReservationBookingsIntent intent, System.Action<INRestaurantResolutionResult> completion);

Type Changed: Intents.IINGetVisualCodeIntentHandling

Modified methods:

-public abstract void HandleGetVisualCode (INGetVisualCodeIntent intent, System.Action%LESSERTHANREPLACEMENT%INGetVisualCodeIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleGetVisualCode (INGetVisualCodeIntent intent, System.Action%LESSERTHANREPLACEMENT%INGetVisualCodeIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INGetVisualCodeIntent intent, System.Action<INGetVisualCodeIntentResponse> completion);
public virtual void ResolveVisualCodeType (INGetVisualCodeIntent intent, System.Action<INVisualCodeTypeResolutionResult> completion);

Type Changed: Intents.IINHangUpCallIntentHandling

Modified methods:

-public abstract void HandleHangUpCall (INHangUpCallIntent intent, System.Action%LESSERTHANREPLACEMENT%INHangUpCallIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleHangUpCall (INHangUpCallIntent intent, System.Action%LESSERTHANREPLACEMENT%INHangUpCallIntentResponse%GREATERTHANREPLACEMENT% completion)

Added method:

public virtual void ConfirmHangUpCall (INHangUpCallIntent intent, System.Action<INHangUpCallIntentResponse> completion);

Type Changed: Intents.IINIntentHandlerProviding

Modified methods:

-public abstract Foundation.NSObject GetHandler (INIntent intent)
+public virtual Foundation.NSObject GetHandler (INIntent intent)

Type Changed: Intents.IINListCarsIntentHandling

Modified methods:

-public abstract void HandleListCars (INListCarsIntent intent, System.Action%LESSERTHANREPLACEMENT%INListCarsIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleListCars (INListCarsIntent intent, System.Action%LESSERTHANREPLACEMENT%INListCarsIntentResponse%GREATERTHANREPLACEMENT% completion)

Added method:

public virtual void ConfirmListCars (INListCarsIntent intent, System.Action<INListCarsIntentResponse> completion);

Type Changed: Intents.IINListRideOptionsIntentHandling

Modified methods:

-public abstract void HandleListRideOptions (INListRideOptionsIntent intent, System.Action%LESSERTHANREPLACEMENT%INListRideOptionsIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleListRideOptions (INListRideOptionsIntent intent, System.Action%LESSERTHANREPLACEMENT%INListRideOptionsIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INListRideOptionsIntent intent, System.Action<INListRideOptionsIntentResponse> completion);
public virtual void ResolveDropOffLocation (INListRideOptionsIntent intent, System.Action<INPlacemarkResolutionResult> completion);
public virtual void ResolvePickupLocation (INListRideOptionsIntent intent, System.Action<INPlacemarkResolutionResult> completion);

Type Changed: Intents.IINPauseWorkoutIntentHandling

Modified methods:

-public abstract void HandlePauseWorkout (INPauseWorkoutIntent intent, System.Action%LESSERTHANREPLACEMENT%INPauseWorkoutIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandlePauseWorkout (INPauseWorkoutIntent intent, System.Action%LESSERTHANREPLACEMENT%INPauseWorkoutIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INPauseWorkoutIntent intent, System.Action<INPauseWorkoutIntentResponse> completion);
public virtual void ResolveWorkoutName (INPauseWorkoutIntent intent, System.Action<INSpeakableStringResolutionResult> completion);

Type Changed: Intents.IINPayBillIntentHandling

Modified methods:

-public abstract void HandlePayBill (INPayBillIntent intent, System.Action%LESSERTHANREPLACEMENT%INPayBillIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandlePayBill (INPayBillIntent intent, System.Action%LESSERTHANREPLACEMENT%INPayBillIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INPayBillIntent intent, System.Action<INPayBillIntentResponse> completion);
public virtual void ResolveBillPayee (INPayBillIntent intent, System.Action<INBillPayeeResolutionResult> completion);
public virtual void ResolveBillType (INPayBillIntent intent, System.Action<INBillTypeResolutionResult> completion);
public virtual void ResolveDueDate (INPayBillIntent intent, System.Action<INDateComponentsRangeResolutionResult> completion);
public virtual void ResolveFromAccount (INPayBillIntent intent, System.Action<INPaymentAccountResolutionResult> completion);
public virtual void ResolveTransactionAmount (INPayBillIntent intent, System.Action<INPaymentAmountResolutionResult> completion);
public virtual void ResolveTransactionNote (INPayBillIntent intent, System.Action<INStringResolutionResult> completion);
public virtual void ResolveTransactionScheduledDate (INPayBillIntent intent, System.Action<INDateComponentsRangeResolutionResult> completion);

Type Changed: Intents.IINPlayMediaIntentHandling

Modified methods:

-public abstract void HandlePlayMedia (INPlayMediaIntent intent, System.Action%LESSERTHANREPLACEMENT%INPlayMediaIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandlePlayMedia (INPlayMediaIntent intent, System.Action%LESSERTHANREPLACEMENT%INPlayMediaIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INPlayMediaIntent intent, System.Action<INPlayMediaIntentResponse> completion);
public virtual void ResolveMediaItems (INPlayMediaIntent intent, System.Action<Foundation.NSArray<INPlayMediaMediaItemResolutionResult>> completion);
public virtual void ResolvePlayShuffled (INPlayMediaIntent intent, System.Action<INBooleanResolutionResult> completion);
public virtual void ResolvePlaybackQueueLocation (INPlayMediaIntent intent, System.Action<INPlaybackQueueLocationResolutionResult> completion);
public virtual void ResolvePlaybackRepeatMode (INPlayMediaIntent intent, System.Action<INPlaybackRepeatModeResolutionResult> completion);
public virtual void ResolvePlaybackSpeed (INPlayMediaIntent intent, System.Action<INPlayMediaPlaybackSpeedResolutionResult> completion);
public virtual void ResolveResumePlayback (INPlayMediaIntent intent, System.Action<INBooleanResolutionResult> completion);

Type Changed: Intents.IINRequestPaymentIntentHandling

Modified methods:

-public abstract void HandleRequestPayment (INRequestPaymentIntent intent, System.Action%LESSERTHANREPLACEMENT%INRequestPaymentIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleRequestPayment (INRequestPaymentIntent intent, System.Action%LESSERTHANREPLACEMENT%INRequestPaymentIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INRequestPaymentIntent intent, System.Action<INRequestPaymentIntentResponse> completion);
public virtual void ResolveCurrencyAmount (INRequestPaymentIntent intent, System.Action<INCurrencyAmountResolutionResult> completion);
public virtual void ResolveCurrencyAmount (INRequestPaymentIntent intent, System.Action<INRequestPaymentCurrencyAmountResolutionResult> completion);
public virtual void ResolveNote (INRequestPaymentIntent intent, System.Action<INStringResolutionResult> completion);
public virtual void ResolvePayer (INRequestPaymentIntent intent, System.Action<INPersonResolutionResult> completion);
public virtual void ResolvePayer (INRequestPaymentIntent intent, System.Action<INRequestPaymentPayerResolutionResult> completion);

Type Changed: Intents.IINRequestRideIntentHandling

Modified methods:

-public abstract void HandleRequestRide (INRequestRideIntent intent, System.Action%LESSERTHANREPLACEMENT%INRequestRideIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleRequestRide (INRequestRideIntent intent, System.Action%LESSERTHANREPLACEMENT%INRequestRideIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INRequestRideIntent intent, System.Action<INRequestRideIntentResponse> completion);
public virtual void ResolveDropOffLocation (INRequestRideIntent intent, System.Action<INPlacemarkResolutionResult> completion);
public virtual void ResolvePartySize (INRequestRideIntent intent, System.Action<INIntegerResolutionResult> completion);
public virtual void ResolvePickupLocation (INRequestRideIntent intent, System.Action<INPlacemarkResolutionResult> completion);
public virtual void ResolveRideOptionName (INRequestRideIntent intent, System.Action<INSpeakableStringResolutionResult> completion);
public virtual void ResolveScheduledPickupTime (INRequestRideIntent intent, System.Action<INDateComponentsRangeResolutionResult> completion);

Type Changed: Intents.IINResumeWorkoutIntentHandling

Modified methods:

-public abstract void HandleResumeWorkout (INResumeWorkoutIntent intent, System.Action%LESSERTHANREPLACEMENT%INResumeWorkoutIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleResumeWorkout (INResumeWorkoutIntent intent, System.Action%LESSERTHANREPLACEMENT%INResumeWorkoutIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INResumeWorkoutIntent intent, System.Action<INResumeWorkoutIntentResponse> completion);
public virtual void ResolveWorkoutName (INResumeWorkoutIntent intent, System.Action<INSpeakableStringResolutionResult> completion);

Type Changed: Intents.IINSaveProfileInCarIntentHandling

Modified methods:

-public abstract void HandleSaveProfileInCar (INSaveProfileInCarIntent intent, System.Action%LESSERTHANREPLACEMENT%INSaveProfileInCarIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSaveProfileInCar (INSaveProfileInCarIntent intent, System.Action%LESSERTHANREPLACEMENT%INSaveProfileInCarIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSaveProfileInCarIntent intent, System.Action<INSaveProfileInCarIntentResponse> completion);
public virtual void ResolveProfileName (INSaveProfileInCarIntent intent, System.Action<INStringResolutionResult> completion);
public virtual void ResolveProfileNumber (INSaveProfileInCarIntent intent, System.Action<INIntegerResolutionResult> completion);

Type Changed: Intents.IINSearchCallHistoryIntentHandling

Modified methods:

-public abstract void HandleSearchCallHistory (INSearchCallHistoryIntent intent, System.Action%LESSERTHANREPLACEMENT%INSearchCallHistoryIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSearchCallHistory (INSearchCallHistoryIntent intent, System.Action%LESSERTHANREPLACEMENT%INSearchCallHistoryIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSearchCallHistoryIntent intent, System.Action<INSearchCallHistoryIntentResponse> completion);
public virtual void ResolveCallType (INSearchCallHistoryIntent intent, System.Action<INCallRecordTypeResolutionResult> completion);
public virtual void ResolveCallTypes (INSearchCallHistoryIntent intent, System.Action<INCallRecordTypeOptionsResolutionResult> completion);
public virtual void ResolveDateCreated (INSearchCallHistoryIntent intent, System.Action<INDateComponentsRangeResolutionResult> completion);
public virtual void ResolveRecipient (INSearchCallHistoryIntent intent, System.Action<INPersonResolutionResult> completion);
public virtual void ResolveUnseen (INSearchCallHistoryIntent intent, System.Action<INBooleanResolutionResult> completion);

Type Changed: Intents.IINSearchForAccountsIntentHandling

Modified methods:

-public abstract void HandleSearchForAccounts (INSearchForAccountsIntent intent, System.Action%LESSERTHANREPLACEMENT%INSearchForAccountsIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSearchForAccounts (INSearchForAccountsIntent intent, System.Action%LESSERTHANREPLACEMENT%INSearchForAccountsIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSearchForAccountsIntent intent, System.Action<INSearchForAccountsIntentResponse> completion);
public virtual void ResolveAccountNickname (INSearchForAccountsIntent intent, System.Action<INSpeakableStringResolutionResult> completion);
public virtual void ResolveAccountType (INSearchForAccountsIntent intent, System.Action<INAccountTypeResolutionResult> completion);
public virtual void ResolveOrganizationName (INSearchForAccountsIntent intent, System.Action<INSpeakableStringResolutionResult> completion);
public virtual void ResolveRequestedBalanceType (INSearchForAccountsIntent intent, System.Action<INBalanceTypeResolutionResult> completion);

Type Changed: Intents.IINSearchForBillsIntentHandling

Modified methods:

-public abstract void HandleSearch (INSearchForBillsIntent intent, System.Action%LESSERTHANREPLACEMENT%INSearchForBillsIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSearch (INSearchForBillsIntent intent, System.Action%LESSERTHANREPLACEMENT%INSearchForBillsIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSearchForBillsIntent intent, System.Action<INSearchForBillsIntentResponse> completion);
public virtual void ResolveBillPayee (INSearchForBillsIntent intent, System.Action<INBillPayeeResolutionResult> completion);
public virtual void ResolveBillType (INSearchForBillsIntent intent, System.Action<INBillTypeResolutionResult> completion);
public virtual void ResolveDueDateRange (INSearchForBillsIntent intent, System.Action<INDateComponentsRangeResolutionResult> completion);
public virtual void ResolvePaymentDateRange (INSearchForBillsIntent intent, System.Action<INDateComponentsRangeResolutionResult> completion);
public virtual void ResolveStatus (INSearchForBillsIntent intent, System.Action<INPaymentStatusResolutionResult> completion);

Type Changed: Intents.IINSearchForMediaIntentHandling

Modified methods:

-public abstract void HandleSearch (INSearchForMediaIntent intent, System.Action%LESSERTHANREPLACEMENT%INSearchForMediaIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSearch (INSearchForMediaIntent intent, System.Action%LESSERTHANREPLACEMENT%INSearchForMediaIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSearchForMediaIntent intent, System.Action<INSearchForMediaIntentResponse> completion);
public virtual void ResolveMediaItems (INSearchForMediaIntent intent, System.Action<INSearchForMediaMediaItemResolutionResult[]> completion);

Type Changed: Intents.IINSearchForMessagesIntentHandling

Modified methods:

-public abstract void HandleSearchForMessages (INSearchForMessagesIntent intent, System.Action%LESSERTHANREPLACEMENT%INSearchForMessagesIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSearchForMessages (INSearchForMessagesIntent intent, System.Action%LESSERTHANREPLACEMENT%INSearchForMessagesIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSearchForMessagesIntent intent, System.Action<INSearchForMessagesIntentResponse> completion);
public virtual void ResolveAttributes (INSearchForMessagesIntent intent, System.Action<INMessageAttributeOptionsResolutionResult> completion);
public virtual void ResolveDateTimeRange (INSearchForMessagesIntent intent, System.Action<INDateComponentsRangeResolutionResult> completion);
public virtual void ResolveGroupNames (INSearchForMessagesIntent intent, System.Action<INStringResolutionResult[]> completion);
public virtual void ResolveRecipients (INSearchForMessagesIntent intent, System.Action<INPersonResolutionResult[]> completion);
public virtual void ResolveSenders (INSearchForMessagesIntent intent, System.Action<INPersonResolutionResult[]> completion);
public virtual void ResolveSpeakableGroupNames (INSearchForMessagesIntent intent, System.Action<INSpeakableStringResolutionResult[]> completion);

Type Changed: Intents.IINSearchForNotebookItemsIntentHandling

Modified methods:

-public abstract void HandleSearchForNotebookItems (INSearchForNotebookItemsIntent intent, System.Action%LESSERTHANREPLACEMENT%INSearchForNotebookItemsIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSearchForNotebookItems (INSearchForNotebookItemsIntent intent, System.Action%LESSERTHANREPLACEMENT%INSearchForNotebookItemsIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSearchForNotebookItemsIntent intent, System.Action<INSearchForNotebookItemsIntentResponse> completion);
public virtual void ResolveContent (INSearchForNotebookItemsIntent intent, System.Action<INStringResolutionResult> completion);
public virtual void ResolveDateSearchType (INSearchForNotebookItemsIntent intent, System.Action<INDateSearchTypeResolutionResult> completion);
public virtual void ResolveDateTime (INSearchForNotebookItemsIntent intent, System.Action<INDateComponentsRangeResolutionResult> completion);
public virtual void ResolveItemType (INSearchForNotebookItemsIntent intent, System.Action<INNotebookItemTypeResolutionResult> completion);
public virtual void ResolveLocation (INSearchForNotebookItemsIntent intent, System.Action<INPlacemarkResolutionResult> completion);
public virtual void ResolveLocationSearchType (INSearchForNotebookItemsIntent intent, System.Action<INLocationSearchTypeResolutionResult> completion);
public virtual void ResolveStatus (INSearchForNotebookItemsIntent intent, System.Action<INTaskStatusResolutionResult> completion);
public virtual void ResolveTaskPriority (INSearchForNotebookItemsIntent intent, System.Action<INTaskPriorityResolutionResult> completion);
public virtual void ResolveTemporalEventTriggerTypes (INSearchForNotebookItemsIntent intent, System.Action<INTemporalEventTriggerTypeOptionsResolutionResult> completion);
public virtual void ResolveTitle (INSearchForNotebookItemsIntent intent, System.Action<INSpeakableStringResolutionResult> completion);

Type Changed: Intents.IINSearchForPhotosIntentHandling

Modified methods:

-public abstract void HandleSearchForPhotos (INSearchForPhotosIntent intent, System.Action%LESSERTHANREPLACEMENT%INSearchForPhotosIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSearchForPhotos (INSearchForPhotosIntent intent, System.Action%LESSERTHANREPLACEMENT%INSearchForPhotosIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSearchForPhotosIntent intent, System.Action<INSearchForPhotosIntentResponse> completion);
public virtual void ResolveAlbumName (INSearchForPhotosIntent intent, System.Action<INStringResolutionResult> completion);
public virtual void ResolveDateCreated (INSearchForPhotosIntent intent, System.Action<INDateComponentsRangeResolutionResult> completion);
public virtual void ResolveLocationCreated (INSearchForPhotosIntent intent, System.Action<INPlacemarkResolutionResult> completion);
public virtual void ResolvePeopleInPhoto (INSearchForPhotosIntent intent, System.Action<INPersonResolutionResult[]> completion);
public virtual void ResolveSearchTerms (INSearchForPhotosIntent intent, System.Action<INStringResolutionResult[]> completion);

Type Changed: Intents.IINSendMessageIntentHandling

Modified methods:

-public abstract void HandleSendMessage (INSendMessageIntent intent, System.Action%LESSERTHANREPLACEMENT%INSendMessageIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSendMessage (INSendMessageIntent intent, System.Action%LESSERTHANREPLACEMENT%INSendMessageIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSendMessageIntent intent, System.Action<INSendMessageIntentResponse> completion);
public virtual void ResolveContent (INSendMessageIntent intent, System.Action<INStringResolutionResult> completion);
public virtual void ResolveGroupName (INSendMessageIntent intent, System.Action<INStringResolutionResult> completion);
public virtual void ResolveOutgoingMessageType (INSendMessageIntent intent, System.Action<INOutgoingMessageTypeResolutionResult> completion);
public virtual void ResolveRecipients (INSendMessageIntent intent, System.Action<INPersonResolutionResult[]> completion);
public virtual void ResolveRecipients (INSendMessageIntent intent, System.Action<INSendMessageRecipientResolutionResult[]> completion);
public virtual void ResolveSpeakableGroupName (INSendMessageIntent intent, System.Action<INSpeakableStringResolutionResult> completion);

Type Changed: Intents.IINSendPaymentIntentHandling

Modified methods:

-public abstract void HandleSendPayment (INSendPaymentIntent intent, System.Action%LESSERTHANREPLACEMENT%INSendPaymentIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSendPayment (INSendPaymentIntent intent, System.Action%LESSERTHANREPLACEMENT%INSendPaymentIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSendPaymentIntent intent, System.Action<INSendPaymentIntentResponse> completion);
public virtual void ResolveCurrencyAmount (INSendPaymentIntent intent, System.Action<INCurrencyAmountResolutionResult> completion);
public virtual void ResolveCurrencyAmount (INSendPaymentIntent intent, System.Action<INSendPaymentCurrencyAmountResolutionResult> completion);
public virtual void ResolveNote (INSendPaymentIntent intent, System.Action<INStringResolutionResult> completion);
public virtual void ResolvePayee (INSendPaymentIntent intent, System.Action<INPersonResolutionResult> completion);
public virtual void ResolvePayee (INSendPaymentIntent intent, System.Action<INSendPaymentPayeeResolutionResult> completion);

Type Changed: Intents.IINSendRideFeedbackIntentHandling

Modified methods:

-public abstract void HandleSendRideFeedback (INSendRideFeedbackIntent sendRideFeedbackintent, System.Action%LESSERTHANREPLACEMENT%INSendRideFeedbackIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSendRideFeedback (INSendRideFeedbackIntent sendRideFeedbackintent, System.Action%LESSERTHANREPLACEMENT%INSendRideFeedbackIntentResponse%GREATERTHANREPLACEMENT% completion)

Added method:

public virtual void Confirm (INSendRideFeedbackIntent sendRideFeedbackIntent, System.Action<INSendRideFeedbackIntentResponse> completion);

Type Changed: Intents.IINSetAudioSourceInCarIntentHandling

Modified methods:

-public abstract void HandleSetAudioSourceInCar (INSetAudioSourceInCarIntent intent, System.Action%LESSERTHANREPLACEMENT%INSetAudioSourceInCarIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSetAudioSourceInCar (INSetAudioSourceInCarIntent intent, System.Action%LESSERTHANREPLACEMENT%INSetAudioSourceInCarIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSetAudioSourceInCarIntent intent, System.Action<INSetAudioSourceInCarIntentResponse> completion);
public virtual void ResolveAudioSource (INSetAudioSourceInCarIntent intent, System.Action<INCarAudioSourceResolutionResult> completion);
public virtual void ResolveRelativeAudioSourceReference (INSetAudioSourceInCarIntent intent, System.Action<INRelativeReferenceResolutionResult> completion);

Type Changed: Intents.IINSetCarLockStatusIntentHandling

Modified methods:

-public abstract void HandleSetCarLockStatus (INSetCarLockStatusIntent intent, System.Action%LESSERTHANREPLACEMENT%INSetCarLockStatusIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSetCarLockStatus (INSetCarLockStatusIntent intent, System.Action%LESSERTHANREPLACEMENT%INSetCarLockStatusIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSetCarLockStatusIntent intent, System.Action<INSetCarLockStatusIntentResponse> completion);
public virtual void ResolveCarName (INSetCarLockStatusIntent intent, System.Action<INSpeakableStringResolutionResult> completion);
public virtual void ResolveLocked (INSetCarLockStatusIntent intent, System.Action<INBooleanResolutionResult> completion);

Type Changed: Intents.IINSetClimateSettingsInCarIntentHandling

Modified methods:

-public abstract void HandleSetClimateSettingsInCar (INSetClimateSettingsInCarIntent intent, System.Action%LESSERTHANREPLACEMENT%INSetClimateSettingsInCarIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSetClimateSettingsInCar (INSetClimateSettingsInCarIntent intent, System.Action%LESSERTHANREPLACEMENT%INSetClimateSettingsInCarIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSetClimateSettingsInCarIntent intent, System.Action<INSetClimateSettingsInCarIntentResponse> completion);
public virtual void ResolveAirCirculationMode (INSetClimateSettingsInCarIntent intent, System.Action<INCarAirCirculationModeResolutionResult> completion);
public virtual void ResolveCarName (INSetClimateSettingsInCarIntent intent, System.Action<INSpeakableStringResolutionResult> completion);
public virtual void ResolveClimateZone (INSetClimateSettingsInCarIntent intent, System.Action<INCarSeatResolutionResult> completion);
public virtual void ResolveEnableAirConditioner (INSetClimateSettingsInCarIntent intent, System.Action<INBooleanResolutionResult> completion);
public virtual void ResolveEnableAutoMode (INSetClimateSettingsInCarIntent intent, System.Action<INBooleanResolutionResult> completion);
public virtual void ResolveEnableClimateControl (INSetClimateSettingsInCarIntent intent, System.Action<INBooleanResolutionResult> completion);
public virtual void ResolveEnableFan (INSetClimateSettingsInCarIntent intent, System.Action<INBooleanResolutionResult> completion);
public virtual void ResolveFanSpeedIndex (INSetClimateSettingsInCarIntent intent, System.Action<INIntegerResolutionResult> completion);
public virtual void ResolveFanSpeedPercentage (INSetClimateSettingsInCarIntent intent, System.Action<INDoubleResolutionResult> completion);
public virtual void ResolveRelativeFanSpeedSetting (INSetClimateSettingsInCarIntent intent, System.Action<INRelativeSettingResolutionResult> completion);
public virtual void ResolveRelativeTemperatureSetting (INSetClimateSettingsInCarIntent intent, System.Action<INRelativeSettingResolutionResult> completion);
public virtual void ResolveTemperature (INSetClimateSettingsInCarIntent intent, System.Action<INTemperatureResolutionResult> completion);

Type Changed: Intents.IINSetDefrosterSettingsInCarIntentHandling

Modified methods:

-public abstract void HandleSetDefrosterSettingsInCar (INSetDefrosterSettingsInCarIntent intent, System.Action%LESSERTHANREPLACEMENT%INSetDefrosterSettingsInCarIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSetDefrosterSettingsInCar (INSetDefrosterSettingsInCarIntent intent, System.Action%LESSERTHANREPLACEMENT%INSetDefrosterSettingsInCarIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSetDefrosterSettingsInCarIntent intent, System.Action<INSetDefrosterSettingsInCarIntentResponse> completion);
public virtual void ResolveCarName (INSetDefrosterSettingsInCarIntent intent, System.Action<INSpeakableStringResolutionResult> completion);
public virtual void ResolveDefroster (INSetDefrosterSettingsInCarIntent intent, System.Action<INCarDefrosterResolutionResult> completion);
public virtual void ResolveEnable (INSetDefrosterSettingsInCarIntent intent, System.Action<INBooleanResolutionResult> completion);

Type Changed: Intents.IINSetMessageAttributeIntentHandling

Modified methods:

-public abstract void HandleSetMessageAttribute (INSetMessageAttributeIntent intent, System.Action%LESSERTHANREPLACEMENT%INSetMessageAttributeIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSetMessageAttribute (INSetMessageAttributeIntent intent, System.Action%LESSERTHANREPLACEMENT%INSetMessageAttributeIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSetMessageAttributeIntent intent, System.Action<INSetMessageAttributeIntentResponse> completion);
public virtual void ResolveAttribute (INSetMessageAttributeIntent intent, System.Action<INMessageAttributeResolutionResult> completion);

Type Changed: Intents.IINSetProfileInCarIntentHandling

Modified methods:

-public abstract void HandleSetProfileInCar (INSetProfileInCarIntent intent, System.Action%LESSERTHANREPLACEMENT%INSetProfileInCarIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSetProfileInCar (INSetProfileInCarIntent intent, System.Action%LESSERTHANREPLACEMENT%INSetProfileInCarIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSetProfileInCarIntent intent, System.Action<INSetProfileInCarIntentResponse> completion);
public virtual void ResolveCarName (INSetProfileInCarIntent intent, System.Action<INSpeakableStringResolutionResult> completion);
public virtual void ResolveDefaultProfile (INSetProfileInCarIntent intent, System.Action<INBooleanResolutionResult> completion);
public virtual void ResolveProfileName (INSetProfileInCarIntent intent, System.Action<INStringResolutionResult> completion);
public virtual void ResolveProfileNumber (INSetProfileInCarIntent intent, System.Action<INIntegerResolutionResult> completion);

Type Changed: Intents.IINSetRadioStationIntentHandling

Modified methods:

-public abstract void HandleSetRadioStation (INSetRadioStationIntent intent, System.Action%LESSERTHANREPLACEMENT%INSetRadioStationIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSetRadioStation (INSetRadioStationIntent intent, System.Action%LESSERTHANREPLACEMENT%INSetRadioStationIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSetRadioStationIntent intent, System.Action<INSetRadioStationIntentResponse> completion);
public virtual void ResolveChannel (INSetRadioStationIntent intent, System.Action<INStringResolutionResult> completion);
public virtual void ResolveFrequency (INSetRadioStationIntent intent, System.Action<INDoubleResolutionResult> completion);
public virtual void ResolvePresetNumber (INSetRadioStationIntent intent, System.Action<INIntegerResolutionResult> completion);
public virtual void ResolveRadioType (INSetRadioStationIntent intent, System.Action<INRadioTypeResolutionResult> completion);
public virtual void ResolveStationName (INSetRadioStationIntent intent, System.Action<INStringResolutionResult> completion);

Type Changed: Intents.IINSetSeatSettingsInCarIntentHandling

Modified methods:

-public abstract void HandleSetSeatSettingsInCar (INSetSeatSettingsInCarIntent intent, System.Action%LESSERTHANREPLACEMENT%INSetSeatSettingsInCarIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSetSeatSettingsInCar (INSetSeatSettingsInCarIntent intent, System.Action%LESSERTHANREPLACEMENT%INSetSeatSettingsInCarIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSetSeatSettingsInCarIntent intent, System.Action<INSetSeatSettingsInCarIntentResponse> completion);
public virtual void ResolveCarName (INSetSeatSettingsInCarIntent intent, System.Action<INSpeakableStringResolutionResult> completion);
public virtual void ResolveEnableCooling (INSetSeatSettingsInCarIntent intent, System.Action<INBooleanResolutionResult> completion);
public virtual void ResolveEnableHeating (INSetSeatSettingsInCarIntent intent, System.Action<INBooleanResolutionResult> completion);
public virtual void ResolveEnableMassage (INSetSeatSettingsInCarIntent intent, System.Action<INBooleanResolutionResult> completion);
public virtual void ResolveLevel (INSetSeatSettingsInCarIntent intent, System.Action<INIntegerResolutionResult> completion);
public virtual void ResolveRelativeLevelSetting (INSetSeatSettingsInCarIntent intent, System.Action<INRelativeSettingResolutionResult> completion);
public virtual void ResolveSeat (INSetSeatSettingsInCarIntent intent, System.Action<INCarSeatResolutionResult> completion);

Type Changed: Intents.IINSetTaskAttributeIntentHandling

Modified methods:

-public abstract void HandleSetTaskAttribute (INSetTaskAttributeIntent intent, System.Action%LESSERTHANREPLACEMENT%INSetTaskAttributeIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSetTaskAttribute (INSetTaskAttributeIntent intent, System.Action%LESSERTHANREPLACEMENT%INSetTaskAttributeIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSetTaskAttributeIntent intent, System.Action<INSetTaskAttributeIntentResponse> completion);
public virtual void ResolvePriority (INSetTaskAttributeIntent intent, System.Action<INTaskPriorityResolutionResult> completion);
public virtual void ResolveSpatialEventTrigger (INSetTaskAttributeIntent intent, System.Action<INSpatialEventTriggerResolutionResult> completion);
public virtual void ResolveStatus (INSetTaskAttributeIntent intent, System.Action<INTaskStatusResolutionResult> completion);
public virtual void ResolveTargetTask (INSetTaskAttributeIntent intent, System.Action<INTaskResolutionResult> completion);
public virtual void ResolveTaskTitle (INSetTaskAttributeIntent intent, System.Action<INSpeakableStringResolutionResult> completion);
public virtual void ResolveTemporalEventTrigger (INSetTaskAttributeIntent intent, System.Action<INSetTaskAttributeTemporalEventTriggerResolutionResult> completionHandler);
public virtual void ResolveTemporalEventTrigger (INSetTaskAttributeIntent intent, System.Action<INTemporalEventTriggerResolutionResult> completion);

Type Changed: Intents.IINShareFocusStatusIntentHandling

Modified methods:

-public abstract void HandleShareFocusStatus (INShareFocusStatusIntent intent, System.Action%LESSERTHANREPLACEMENT%INShareFocusStatusIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleShareFocusStatus (INShareFocusStatusIntent intent, System.Action%LESSERTHANREPLACEMENT%INShareFocusStatusIntentResponse%GREATERTHANREPLACEMENT% completion)

Added method:

public virtual void ConfirmShareFocusStatus (INShareFocusStatusIntent intent, System.Action<INShareFocusStatusIntentResponse> completion);

Type Changed: Intents.IINSnoozeTasksIntentHandling

Modified methods:

-public abstract void HandleSnoozeTasks (INSnoozeTasksIntent intent, System.Action%LESSERTHANREPLACEMENT%INSnoozeTasksIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleSnoozeTasks (INSnoozeTasksIntent intent, System.Action%LESSERTHANREPLACEMENT%INSnoozeTasksIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INSnoozeTasksIntent intent, System.Action<INSnoozeTasksIntentResponse> completion);
public virtual void ResolveNextTriggerTime (INSnoozeTasksIntent intent, System.Action<INDateComponentsRangeResolutionResult> completion);
public virtual void ResolveTasks (INSnoozeTasksIntent intent, System.Action<INSnoozeTasksTaskResolutionResult[]> completion);

Type Changed: Intents.IINSpeakable

Modified properties:

-public abstract IINSpeakable[] AlternativeSpeakableMatches { get; }
+public virtual IINSpeakable[] AlternativeSpeakableMatches { get; }
-public abstract string PronunciationHint { get; }
+public virtual string PronunciationHint { get; }
-public abstract string SpokenPhrase { get; }
+public virtual string SpokenPhrase { get; }
-public abstract string VocabularyIdentifier { get; }
+public virtual string VocabularyIdentifier { get; }

Added property:

public virtual string Identifier { get; }

Type Changed: Intents.IINStartAudioCallIntentHandling

Modified methods:

-public abstract void HandleStartAudioCall (INStartAudioCallIntent intent, System.Action%LESSERTHANREPLACEMENT%INStartAudioCallIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleStartAudioCall (INStartAudioCallIntent intent, System.Action%LESSERTHANREPLACEMENT%INStartAudioCallIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INStartAudioCallIntent intent, System.Action<INStartAudioCallIntentResponse> completion);
public virtual void ResolveContacts (INStartAudioCallIntent intent, System.Action<INPersonResolutionResult[]> completion);
public virtual void ResolveDestinationType (INStartAudioCallIntent intent, System.Action<INCallDestinationTypeResolutionResult> completion);

Type Changed: Intents.IINStartCallIntentHandling

Modified methods:

-public abstract void HandleStartCall (INStartCallIntent intent, System.Action%LESSERTHANREPLACEMENT%INStartCallIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleStartCall (INStartCallIntent intent, System.Action%LESSERTHANREPLACEMENT%INStartCallIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INStartCallIntent intent, System.Action<INStartCallIntentResponse> completion);
public virtual void ResolveCallCapability (INStartCallIntent intent, System.Action<INStartCallCallCapabilityResolutionResult> completion);
public virtual void ResolveCallRecordToCallBack (INStartCallIntent intent, System.Action<INCallRecordResolutionResult> completion);
public virtual void ResolveContacts (INStartCallIntent intent, System.Action<Foundation.NSArray<INStartCallContactResolutionResult>> completion);
public virtual void ResolveDestinationType (INStartCallIntent intent, System.Action<INCallDestinationTypeResolutionResult> completion);

Type Changed: Intents.IINStartPhotoPlaybackIntentHandling

Modified methods:

-public abstract void HandleStartPhotoPlayback (INStartPhotoPlaybackIntent intent, System.Action%LESSERTHANREPLACEMENT%INStartPhotoPlaybackIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleStartPhotoPlayback (INStartPhotoPlaybackIntent intent, System.Action%LESSERTHANREPLACEMENT%INStartPhotoPlaybackIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INStartPhotoPlaybackIntent intent, System.Action<INStartPhotoPlaybackIntentResponse> completion);
public virtual void ResolveAlbumName (INStartPhotoPlaybackIntent intent, System.Action<INStringResolutionResult> completion);
public virtual void ResolveDateCreated (INStartPhotoPlaybackIntent intent, System.Action<INDateComponentsRangeResolutionResult> completion);
public virtual void ResolveLocationCreated (INStartPhotoPlaybackIntent intent, System.Action<INPlacemarkResolutionResult> completion);
public virtual void ResolvePeopleInPhoto (INStartPhotoPlaybackIntent intent, System.Action<INPersonResolutionResult[]> completion);

Type Changed: Intents.IINStartVideoCallIntentHandling

Modified methods:

-public abstract void HandleStartVideoCall (INStartVideoCallIntent intent, System.Action%LESSERTHANREPLACEMENT%INStartVideoCallIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleStartVideoCall (INStartVideoCallIntent intent, System.Action%LESSERTHANREPLACEMENT%INStartVideoCallIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INStartVideoCallIntent intent, System.Action<INStartVideoCallIntentResponse> completion);
public virtual void ResolveContacts (INStartVideoCallIntent intent, System.Action<INPersonResolutionResult[]> completion);

Type Changed: Intents.IINStartWorkoutIntentHandling

Modified methods:

-public abstract void HandleStartWorkout (INStartWorkoutIntent intent, System.Action%LESSERTHANREPLACEMENT%INStartWorkoutIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleStartWorkout (INStartWorkoutIntent intent, System.Action%LESSERTHANREPLACEMENT%INStartWorkoutIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INStartWorkoutIntent intent, System.Action<INStartWorkoutIntentResponse> completion);
public virtual void ResolveGoalValue (INStartWorkoutIntent intent, System.Action<INDoubleResolutionResult> completion);
public virtual void ResolveIsOpenEnded (INStartWorkoutIntent intent, System.Action<INBooleanResolutionResult> completion);
public virtual void ResolveWorkoutGoalUnitType (INStartWorkoutIntent intent, System.Action<INWorkoutGoalUnitTypeResolutionResult> completion);
public virtual void ResolveWorkoutLocationType (INStartWorkoutIntent intent, System.Action<INWorkoutLocationTypeResolutionResult> completion);
public virtual void ResolveWorkoutName (INStartWorkoutIntent intent, System.Action<INSpeakableStringResolutionResult> completion);

Type Changed: Intents.IINTransferMoneyIntentHandling

Modified methods:

-public abstract void HandleTransferMoney (INTransferMoneyIntent intent, System.Action%LESSERTHANREPLACEMENT%INTransferMoneyIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleTransferMoney (INTransferMoneyIntent intent, System.Action%LESSERTHANREPLACEMENT%INTransferMoneyIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INTransferMoneyIntent intent, System.Action<INTransferMoneyIntentResponse> completion);
public virtual void ResolveFromAccount (INTransferMoneyIntent intent, System.Action<INPaymentAccountResolutionResult> completion);
public virtual void ResolveToAccount (INTransferMoneyIntent intent, System.Action<INPaymentAccountResolutionResult> completion);
public virtual void ResolveTransactionAmount (INTransferMoneyIntent intent, System.Action<INPaymentAmountResolutionResult> completion);
public virtual void ResolveTransactionNote (INTransferMoneyIntent intent, System.Action<INStringResolutionResult> completion);
public virtual void ResolveTransactionScheduledDate (INTransferMoneyIntent intent, System.Action<INDateComponentsRangeResolutionResult> completion);

Type Changed: Intents.IINUnsendMessagesIntentHandling

Modified methods:

-public abstract void HandleUnsendMessages (INUnsendMessagesIntent intent, System.Action%LESSERTHANREPLACEMENT%INUnsendMessagesIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleUnsendMessages (INUnsendMessagesIntent intent, System.Action%LESSERTHANREPLACEMENT%INUnsendMessagesIntentResponse%GREATERTHANREPLACEMENT% completion)

Added method:

public virtual void ConfirmUnsendMessages (INUnsendMessagesIntent intent, System.Action<INUnsendMessagesIntentResponse> completion);

Type Changed: Intents.IINUpdateMediaAffinityIntentHandling

Modified methods:

-public abstract void HandleUpdateMediaAffinity (INUpdateMediaAffinityIntent intent, System.Action%LESSERTHANREPLACEMENT%INUpdateMediaAffinityIntentResponse%GREATERTHANREPLACEMENT% completion)
+public virtual void HandleUpdateMediaAffinity (INUpdateMediaAffinityIntent intent, System.Action%LESSERTHANREPLACEMENT%INUpdateMediaAffinityIntentResponse%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void Confirm (INUpdateMediaAffinityIntent intent, System.Action<INUpdateMediaAffinityIntentResponse> completion);
public virtual void ResolveAffinityType (INUpdateMediaAffinityIntent intent, System.Action<INMediaAffinityTypeResolutionResult> completion);
public virtual void ResolveMediaItems (INUpdateMediaAffinityIntent intent, System.Action<Foundation.NSArray<INUpdateMediaAffinityMediaItemResolutionResult>> completion);

Type Changed: Intents.INCarChargingConnectorType

Added values:

NacsAC = 10,
NacsDC = 9,

Type Changed: Intents.INMessage

Added constructors:

public INMessage (string identifier, string conversationIdentifier, string content, Foundation.NSDate dateSent, INPerson sender, INPerson[] recipients, INSpeakableString groupName, string serviceName, INMessageType messageType, INMessage referencedMessage, INMessageReaction reaction);
public INMessage (string identifier, string conversationIdentifier, string content, Foundation.NSDate dateSent, INPerson sender, INPerson[] recipients, INSpeakableString groupName, string serviceName, INMessageType messageType, INMessage referencedMessage, INSticker sticker, INMessageReaction reaction);

Added properties:

public virtual INMessageReaction Reaction { get; set; }
public virtual INSticker Sticker { get; set; }

Type Changed: Intents.INMessageType

Added values:

MediaAnimatedImage = 27,
ThirdPartyAttachment = 28,

New Type: Intents.INMessageReaction

public class INMessageReaction : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public INMessageReaction (Foundation.NSCoder coder);
	protected INMessageReaction (Foundation.NSObjectFlag t);
	protected INMessageReaction (ObjCRuntime.NativeHandle handle);
	public INMessageReaction (INMessageReactionType reactionType, string reactionDescription, string emoji);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual string Emoji { get; }
	public virtual string ReactionDescription { get; }
	public virtual INMessageReactionType ReactionType { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Intents.INMessageReactionType

[Serializable]
public enum INMessageReactionType {
	Emoji = 1,
	Generic = 2,
	Unknown = 0,
}

New Type: Intents.INSticker

public class INSticker : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public INSticker (Foundation.NSCoder coder);
	protected INSticker (Foundation.NSObjectFlag t);
	protected INSticker (ObjCRuntime.NativeHandle handle);
	public INSticker (INStickerType type, string emoji);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual string Emoji { get; }
	public virtual INStickerType Type { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Intents.INStickerType

[Serializable]
public enum INStickerType {
	Emoji = 1,
	Generic = 2,
	Unknown = 0,
}

Namespace IntentsUI

Type Changed: IntentsUI.IINUIAddVoiceShortcutButtonDelegate

Modified methods:

-public abstract void PresentAddVoiceShortcut (INUIAddVoiceShortcutViewController addVoiceShortcutViewController, INUIAddVoiceShortcutButton addVoiceShortcutButton)
+public virtual void PresentAddVoiceShortcut (INUIAddVoiceShortcutViewController addVoiceShortcutViewController, INUIAddVoiceShortcutButton addVoiceShortcutButton)
-public abstract void PresentEditVoiceShortcut (INUIEditVoiceShortcutViewController editVoiceShortcutViewController, INUIAddVoiceShortcutButton addVoiceShortcutButton)
+public virtual void PresentEditVoiceShortcut (INUIEditVoiceShortcutViewController editVoiceShortcutViewController, INUIAddVoiceShortcutButton addVoiceShortcutButton)

Type Changed: IntentsUI.IINUIAddVoiceShortcutViewControllerDelegate

Modified methods:

-public abstract void DidCancel (INUIAddVoiceShortcutViewController controller)
+public virtual void DidCancel (INUIAddVoiceShortcutViewController controller)
-public abstract void DidFinish (INUIAddVoiceShortcutViewController controller, Intents.INVoiceShortcut voiceShortcut, Foundation.NSError error)
+public virtual void DidFinish (INUIAddVoiceShortcutViewController controller, Intents.INVoiceShortcut voiceShortcut, Foundation.NSError error)

Type Changed: IntentsUI.IINUIEditVoiceShortcutViewControllerDelegate

Modified methods:

-public abstract void DidCancel (INUIEditVoiceShortcutViewController controller)
+public virtual void DidCancel (INUIEditVoiceShortcutViewController controller)
-public abstract void DidDelete (INUIEditVoiceShortcutViewController controller, Foundation.NSUuid deletedVoiceShortcutIdentifier)
+public virtual void DidDelete (INUIEditVoiceShortcutViewController controller, Foundation.NSUuid deletedVoiceShortcutIdentifier)
-public abstract void DidUpdate (INUIEditVoiceShortcutViewController controller, Intents.INVoiceShortcut voiceShortcut, Foundation.NSError error)
+public virtual void DidUpdate (INUIEditVoiceShortcutViewController controller, Intents.INVoiceShortcut voiceShortcut, Foundation.NSError error)

Type Changed: IntentsUI.IINUIHostedViewControlling

Added methods:

public virtual void Configure (Intents.INInteraction interaction, INUIHostedViewContext context, System.Action<CoreGraphics.CGSize> completion);
public virtual void ConfigureView (Foundation.NSSet<Intents.INParameter> parameters, Intents.INInteraction interaction, INUIInteractiveBehavior interactiveBehavior, INUIHostedViewContext context, INUIHostedViewControllingConfigureViewHandler completionHandler);

Type Changed: IntentsUI.IINUIHostedViewSiriProviding

Added properties:

public virtual bool DisplaysMap { get; }
public virtual bool DisplaysMessage { get; }
public virtual bool DisplaysPaymentTransaction { get; }

Namespace JavaScriptCore

Type Changed: JavaScriptCore.JSType

Added value:

BigInt = 7,

Type Changed: JavaScriptCore.JSValue

Added property:

public virtual bool IsBigInt { get; }

Added methods:

public virtual JSRelationCondition Compare (JSValue other);
public virtual JSRelationCondition Compare (double other);
public virtual JSRelationCondition Compare (long other);
public virtual JSRelationCondition Compare (ulong other);
public static JSValue CreateNewBigInt (double uint64, JSContext context);
public static JSValue CreateNewBigInt (long int64, JSContext context);
public static JSValue CreateNewBigInt (string string, JSContext context);
public static JSValue CreateNewBigInt (ulong uint64, JSContext context);
public virtual long ToInt64 ();
public virtual ulong ToUInt64 ();

New Type: JavaScriptCore.JSRelationCondition

[Serializable]
public enum JSRelationCondition {
	Equal = 1,
	GreaterThan = 2,
	LessThan = 3,
	Undefined = 0,
}

Namespace LinkPresentation

Type Changed: LinkPresentation.LPErrorCode

Added value:

MetadataFetchNotAllowed = 5,

Namespace LocalAuthentication

Type Changed: LocalAuthentication.LAContext

Added property:

public virtual LADomainState DomainState { get; }

Type Changed: LocalAuthentication.LAPolicy

Added values:

DeviceOwnerAuthenticationWithBiometricsOrCompanion = 4,
DeviceOwnerAuthenticationWithCompanion = 3,

Type Changed: LocalAuthentication.LAStatus

Added value:

CompanionNotAvailable = -11,

New Type: LocalAuthentication.ILAEnvironmentObserver

public interface ILAEnvironmentObserver : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void StateDidChangeFromOldState (LAEnvironment environment, LAEnvironmentState oldState);
}

New Type: LocalAuthentication.LACompanionType

[Serializable]
[Flags]
public enum LACompanionType {
	Mac = 2,
	None = 0,
	Watch = 1,
}

New Type: LocalAuthentication.LADomainState

public class LADomainState : Foundation.NSObject {
	// constructors
	protected LADomainState (Foundation.NSObjectFlag t);
	protected LADomainState (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual LADomainStateBiometry Biometry { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual LADomainStateCompanion Companion { get; }
	public virtual Foundation.NSData StateHash { get; }
}

New Type: LocalAuthentication.LADomainStateBiometry

public class LADomainStateBiometry : Foundation.NSObject {
	// constructors
	protected LADomainStateBiometry (Foundation.NSObjectFlag t);
	protected LADomainStateBiometry (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual LABiometryType BiometryType { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual Foundation.NSData StateHash { get; }
}

New Type: LocalAuthentication.LADomainStateCompanion

public class LADomainStateCompanion : Foundation.NSObject {
	// constructors
	protected LADomainStateCompanion (Foundation.NSObjectFlag t);
	protected LADomainStateCompanion (ObjCRuntime.NativeHandle handle);
	// properties
	public LACompanionType AvailableCompanionTypes { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual Foundation.NSData StateHash { get; }
	public virtual Foundation.NSSet<Foundation.NSNumber> WeakAvailableCompanionTypes { get; }
	// methods
	public virtual Foundation.NSData GetStateHash (LACompanionType companionType);
}

New Type: LocalAuthentication.LAEnvironment

public class LAEnvironment : Foundation.NSObject {
	// constructors
	protected LAEnvironment (Foundation.NSObjectFlag t);
	protected LAEnvironment (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public static LAEnvironment CurrentUser { get; }
	public virtual LAEnvironmentState State { get; }
	// methods
	public virtual void AddObserver (ILAEnvironmentObserver observer);
	public virtual void RemoveObserver (ILAEnvironmentObserver observer);
}

New Type: LocalAuthentication.LAEnvironmentMechanism

public class LAEnvironmentMechanism : Foundation.NSObject {
	// constructors
	protected LAEnvironmentMechanism (Foundation.NSObjectFlag t);
	protected LAEnvironmentMechanism (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual string IconSystemName { get; }
	public virtual bool IsUsable { get; }
	public virtual string LocalizedName { get; }
}

New Type: LocalAuthentication.LAEnvironmentMechanismBiometry

public class LAEnvironmentMechanismBiometry : LocalAuthentication.LAEnvironmentMechanism {
	// constructors
	protected LAEnvironmentMechanismBiometry (Foundation.NSObjectFlag t);
	protected LAEnvironmentMechanismBiometry (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual LABiometryType BiometryType { get; }
	public virtual bool BuiltInSensorInaccessible { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual bool IsEnrolled { get; }
	public virtual bool IsLockedOut { get; }
	public virtual Foundation.NSData StateHash { get; }
}

New Type: LocalAuthentication.LAEnvironmentMechanismCompanion

public class LAEnvironmentMechanismCompanion : LocalAuthentication.LAEnvironmentMechanism {
	// constructors
	protected LAEnvironmentMechanismCompanion (Foundation.NSObjectFlag t);
	protected LAEnvironmentMechanismCompanion (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual Foundation.NSData StateHash { get; }
	public virtual LACompanionType Type { get; }
}

New Type: LocalAuthentication.LAEnvironmentMechanismUserPassword

public class LAEnvironmentMechanismUserPassword : LocalAuthentication.LAEnvironmentMechanism {
	// constructors
	protected LAEnvironmentMechanismUserPassword (Foundation.NSObjectFlag t);
	protected LAEnvironmentMechanismUserPassword (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual bool IsSet { get; }
}

New Type: LocalAuthentication.LAEnvironmentObserver

public class LAEnvironmentObserver : Foundation.NSObject, ILAEnvironmentObserver, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public LAEnvironmentObserver ();
	protected LAEnvironmentObserver (Foundation.NSObjectFlag t);
	protected LAEnvironmentObserver (ObjCRuntime.NativeHandle handle);
	// methods
	public virtual void StateDidChangeFromOldState (LAEnvironment environment, LAEnvironmentState oldState);
}

New Type: LocalAuthentication.LAEnvironmentState

public class LAEnvironmentState : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	protected LAEnvironmentState (Foundation.NSObjectFlag t);
	protected LAEnvironmentState (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual LAEnvironmentMechanism[] AllMechanisms { get; }
	public virtual LAEnvironmentMechanismBiometry Biometry { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual LAEnvironmentMechanismCompanion[] Companions { get; }
	public virtual LAEnvironmentMechanismUserPassword UserPassword { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

Namespace MapKit

Type Changed: MapKit.IMKAnnotation

Modified properties:

-public abstract CoreLocation.CLLocationCoordinate2D Coordinate { get; }
+public virtual CoreLocation.CLLocationCoordinate2D Coordinate { get; }

Added properties:

public virtual string Subtitle { get; }
public virtual string Title { get; }

Added method:

public virtual void SetCoordinate (CoreLocation.CLLocationCoordinate2D value);

Type Changed: MapKit.IMKLocalSearchCompleterDelegate

Added methods:

public virtual void DidFail (MKLocalSearchCompleter completer, Foundation.NSError error);
public virtual void DidUpdateResults (MKLocalSearchCompleter completer);

Type Changed: MapKit.IMKLookAroundViewControllerDelegate

Added methods:

public virtual void DidDismissFullScreen (MKLookAroundViewController viewController);
public virtual void DidPresentFullScreen (MKLookAroundViewController viewController);
public virtual void DidUpdateScene (MKLookAroundViewController viewController);
public virtual void WillDismissFullScreen (MKLookAroundViewController viewController);
public virtual void WillPresentFullScreen (MKLookAroundViewController viewController);
public virtual void WillUpdateScene (MKLookAroundViewController viewController);

Type Changed: MapKit.IMKMapViewDelegate

Added methods:

public virtual void CalloutAccessoryControlTapped (MKMapView mapView, MKAnnotationView view, UIKit.UIControl control);
public virtual void ChangedDragState (MKMapView mapView, MKAnnotationView annotationView, MKAnnotationViewDragState newState, MKAnnotationViewDragState oldState);
public virtual MKClusterAnnotation CreateClusterAnnotation (MKMapView mapView, IMKAnnotation[] memberAnnotations);
public virtual void DidAddAnnotationViews (MKMapView mapView, MKAnnotationView[] views);
public virtual void DidAddOverlayRenderers (MKMapView mapView, MKOverlayRenderer[] renderers);
public virtual void DidAddOverlayViews (MKMapView mapView, MKOverlayView overlayViews);
public virtual void DidChangeUserTrackingMode (MKMapView mapView, MKUserTrackingMode mode, bool animated);
public virtual void DidChangeVisibleRegion (MKMapView mapView);
public virtual void DidDeselectAnnotation (MKMapView mapView, IMKAnnotation annotation);
public virtual void DidDeselectAnnotationView (MKMapView mapView, MKAnnotationView view);
public virtual void DidFailToLocateUser (MKMapView mapView, Foundation.NSError error);
public virtual void DidFinishRenderingMap (MKMapView mapView, bool fullyRendered);
public virtual void DidSelectAnnotation (MKMapView mapView, IMKAnnotation annotation);
public virtual void DidSelectAnnotationView (MKMapView mapView, MKAnnotationView view);
public virtual void DidStopLocatingUser (MKMapView mapView);
public virtual void DidUpdateUserLocation (MKMapView mapView, MKUserLocation userLocation);
public virtual MKSelectionAccessory GetSelectionAccessory (MKMapView mapView, IMKAnnotation annotation);
public virtual MKAnnotationView GetViewForAnnotation (MKMapView mapView, IMKAnnotation annotation);
public virtual MKOverlayView GetViewForOverlay (MKMapView mapView, IMKOverlay overlay);
public virtual void LoadingMapFailed (MKMapView mapView, Foundation.NSError error);
public virtual void MapLoaded (MKMapView mapView);
public virtual MKOverlayRenderer OverlayRenderer (MKMapView mapView, IMKOverlay overlay);
public virtual void RegionChanged (MKMapView mapView, bool animated);
public virtual void RegionWillChange (MKMapView mapView, bool animated);
public virtual void WillStartLoadingMap (MKMapView mapView);
public virtual void WillStartLocatingUser (MKMapView mapView);
public virtual void WillStartRenderingMap (MKMapView mapView);

Type Changed: MapKit.IMKOverlay

Modified properties:

-public abstract MKMapRect BoundingMapRect { get; }
+public virtual MKMapRect BoundingMapRect { get; }

Added property:

public virtual bool CanReplaceMapContent { get; }

Added method:

public virtual bool Intersects (MKMapRect rect);

Type Changed: MapKit.IMKReverseGeocoderDelegate

Modified methods:

-public abstract void FailedWithError (MKReverseGeocoder geocoder, Foundation.NSError error)
+public virtual void FailedWithError (MKReverseGeocoder geocoder, Foundation.NSError error)
-public abstract void FoundWithPlacemark (MKReverseGeocoder geocoder, MKPlacemark placemark)
+public virtual void FoundWithPlacemark (MKReverseGeocoder geocoder, MKPlacemark placemark)

Type Changed: MapKit.MKAnnotation

Added property:

public static Foundation.NSString CalloutInfoDidChangeNotification { get; }

Type Changed: MapKit.MKAnnotationView

Added property:

public virtual CoreGraphics.CGPoint AccessoryOffset { get; set; }

Type Changed: MapKit.MKClusterAnnotation

Added property:

public static Foundation.NSString CalloutInfoDidChangeNotification { get; }

Type Changed: MapKit.MKLocalSearchCompleter

Added properties:

public virtual MKAddressFilter AddressFilter { get; set; }
public virtual MKLocalSearchRegionPriority RegionPriority { get; set; }

Type Changed: MapKit.MKLocalSearchCompleterResultType

Added value:

PhysicalFeature = 8,

Type Changed: MapKit.MKLocalSearchRequest

Added properties:

public virtual MKAddressFilter AddressFilter { get; set; }
public virtual MKLocalSearchRegionPriority RegionPriority { get; set; }

Type Changed: MapKit.MKLocalSearchResultType

Added value:

PhysicalFeature = 4,

Type Changed: MapKit.MKMapFeatureAnnotation

Added property:

public static Foundation.NSString CalloutInfoDidChangeNotification { get; }

Type Changed: MapKit.MKMapItem

Added properties:

public virtual Foundation.NSSet<MKMapItemIdentifier> AlternateIdentifiers { get; }
public virtual MKMapItemIdentifier Identifier { get; }

Type Changed: MapKit.MKMapItemRequest

Added constructor:

public MKMapItemRequest (MKMapItemIdentifier identifier);

Added properties:

public virtual MKMapFeatureAnnotation MapFeatureAnnotation { get; }
public virtual MKMapItemIdentifier MapItemIdentifier { get; }

Type Changed: MapKit.MKMapView

Added property:

public MKMapViewDelegateGetSelectionAccessory GetSelectionAccessory { get; set; }

Type Changed: MapKit.MKMapViewDelegate

Added method:

public virtual MKSelectionAccessory GetSelectionAccessory (MKMapView mapView, IMKAnnotation annotation);

Type Changed: MapKit.MKMapViewDelegate_Extensions

Added method:

public static MKSelectionAccessory GetSelectionAccessory (this IMKMapViewDelegate This, MKMapView mapView, IMKAnnotation annotation);

Type Changed: MapKit.MKPlacemark

Added property:

public static Foundation.NSString CalloutInfoDidChangeNotification { get; }

Type Changed: MapKit.MKPointOfInterestCategory

Added values:

AnimalService = 40,
AutomotiveRepair = 41,
Baseball = 42,
Basketball = 43,
Beauty = 44,
Bowling = 45,
Castle = 46,
ConventionCenter = 47,
Distillery = 48,
Fairground = 49,
Fishing = 50,
Fortress = 51,
GoKart = 53,
Golf = 52,
Hiking = 54,
Kayaking = 55,
Landmark = 56,
Mailbox = 57,
MiniGolf = 58,
MusicVenue = 59,
NationalMonument = 60,
Planetarium = 61,
RVPark = 63,
RockClimbing = 62,
SkatePark = 64,
Skating = 65,
Skiing = 66,
Soccer = 67,
Spa = 68,
Surfing = 69,
Swimming = 70,
Tennis = 71,
Volleyball = 72,

Type Changed: MapKit.MKShape

Added property:

public static Foundation.NSString CalloutInfoDidChangeNotification { get; }

New Type: MapKit.IMKMapItemDetailViewControllerDelegate

public interface IMKMapItemDetailViewControllerDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DidFinish (MKMapItemDetailViewController detailViewController);
}

New Type: MapKit.MKAddressFilter

public class MKAddressFilter : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public MKAddressFilter (Foundation.NSCoder coder);
	protected MKAddressFilter (Foundation.NSObjectFlag t);
	protected MKAddressFilter (ObjCRuntime.NativeHandle handle);
	public MKAddressFilter (MKAddressFilterOption options, MKAddressFilterConstructorOption constructorOption);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public static MKAddressFilter ExcludingAll { get; }
	public static MKAddressFilter IncludingAll { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public virtual bool Excludes (MKAddressFilterOption options);
	public virtual bool Includes (MKAddressFilterOption options);
}

New Type: MapKit.MKAddressFilterConstructorOption

[Serializable]
public enum MKAddressFilterConstructorOption {
	Exclude = 1,
	Include = 0,
}

New Type: MapKit.MKAddressFilterOption

[Serializable]
[Flags]
public enum MKAddressFilterOption {
	AdministrativeArea = 2,
	Country = 1,
	Locality = 8,
	PostalCode = 32,
	SubAdministrativeArea = 4,
	SubLocality = 16,
}

New Type: MapKit.MKLocalSearchRegionPriority

[Serializable]
public enum MKLocalSearchRegionPriority {
	Default = 0,
	Required = 1,
}

New Type: MapKit.MKMapItemAnnotation

public class MKMapItemAnnotation : Foundation.NSObject, IMKAnnotation, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	protected MKMapItemAnnotation (Foundation.NSObjectFlag t);
	public MKMapItemAnnotation (MKMapItem mapItem);
	protected MKMapItemAnnotation (ObjCRuntime.NativeHandle handle);
	// properties
	public static Foundation.NSString CalloutInfoDidChangeNotification { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual CoreLocation.CLLocationCoordinate2D Coordinate { get; }
	public virtual MKMapItem MapItem { get; }
	public virtual string Subtitle { get; }
	public virtual string Title { get; }
	// methods
	public virtual void SetCoordinate (CoreLocation.CLLocationCoordinate2D value);

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

New Type: MapKit.MKMapItemDetailSelectionAccessoryCalloutStyle

[Serializable]
public enum MKMapItemDetailSelectionAccessoryCalloutStyle {
	Automatic = 0,
	Compact = 2,
	Full = 1,
}

New Type: MapKit.MKMapItemDetailSelectionAccessoryPresentationStyle

public class MKMapItemDetailSelectionAccessoryPresentationStyle : Foundation.NSObject {
	// constructors
	protected MKMapItemDetailSelectionAccessoryPresentationStyle (Foundation.NSObjectFlag t);
	protected MKMapItemDetailSelectionAccessoryPresentationStyle (ObjCRuntime.NativeHandle handle);
	// properties
	public static MKMapItemDetailSelectionAccessoryPresentationStyle Callout { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public static MKMapItemDetailSelectionAccessoryPresentationStyle OpenInMaps { get; }
	// methods
	public static MKMapItemDetailSelectionAccessoryPresentationStyle CreateAutomatic (UIKit.UIViewController presentationViewController);
	public static MKMapItemDetailSelectionAccessoryPresentationStyle CreateCallout (MKMapItemDetailSelectionAccessoryCalloutStyle style);
	public static MKMapItemDetailSelectionAccessoryPresentationStyle CreateSheet (UIKit.UIViewController viewController);
}

New Type: MapKit.MKMapItemDetailViewController

public class MKMapItemDetailViewController : UIKit.UIViewController {
	// constructors
	public MKMapItemDetailViewController (Foundation.NSCoder coder);
	protected MKMapItemDetailViewController (Foundation.NSObjectFlag t);
	public MKMapItemDetailViewController (MKMapItem mapItem);
	protected MKMapItemDetailViewController (ObjCRuntime.NativeHandle handle);
	public MKMapItemDetailViewController (MKMapItem mapItem, bool displaysMap);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public IMKMapItemDetailViewControllerDelegate Delegate { get; set; }
	public virtual MKMapItem MapItem { get; set; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	protected override void Dispose (bool disposing);
}

New Type: MapKit.MKMapItemDetailViewControllerDelegate

public abstract class MKMapItemDetailViewControllerDelegate : Foundation.NSObject, IMKMapItemDetailViewControllerDelegate, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	protected MKMapItemDetailViewControllerDelegate ();
	protected MKMapItemDetailViewControllerDelegate (Foundation.NSObjectFlag t);
	protected MKMapItemDetailViewControllerDelegate (ObjCRuntime.NativeHandle handle);
	// methods
	public virtual void DidFinish (MKMapItemDetailViewController detailViewController);
}

New Type: MapKit.MKMapItemIdentifier

public class MKMapItemIdentifier : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public MKMapItemIdentifier (Foundation.NSCoder coder);
	protected MKMapItemIdentifier (Foundation.NSObjectFlag t);
	protected MKMapItemIdentifier (ObjCRuntime.NativeHandle handle);
	public MKMapItemIdentifier (string identifier);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual string IdentifierString { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: MapKit.MKMapViewDelegateGetSelectionAccessory

public sealed delegate MKMapViewDelegateGetSelectionAccessory : System.MulticastDelegate {
	// constructors
	public MKMapViewDelegateGetSelectionAccessory (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (MKMapView mapView, IMKAnnotation annotation, System.AsyncCallback callback, object object);
	public virtual MKSelectionAccessory EndInvoke (System.IAsyncResult result);
	public virtual MKSelectionAccessory Invoke (MKMapView mapView, IMKAnnotation annotation);
}

New Type: MapKit.MKSelectionAccessory

public class MKSelectionAccessory : Foundation.NSObject {
	// constructors
	protected MKSelectionAccessory (Foundation.NSObjectFlag t);
	protected MKSelectionAccessory (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	// methods
	public static MKSelectionAccessory Create (MKMapItemDetailSelectionAccessoryPresentationStyle presentationStyle);
}

Namespace MediaAccessibility

Type Changed: MediaAccessibility.MACaptionAppearance

Added method:

public static bool IsCustomized (MACaptionAppearanceDomain domain);

New Type: MediaAccessibility.MAMusicHapticTrackAvailabilityCallback

public sealed delegate MAMusicHapticTrackAvailabilityCallback : System.MulticastDelegate {
	// constructors
	public MAMusicHapticTrackAvailabilityCallback (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (bool musicHapticsAvailable, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (bool musicHapticsAvailable);
}

New Type: MediaAccessibility.MAMusicHapticTrackStatusObserver

public sealed delegate MAMusicHapticTrackStatusObserver : System.MulticastDelegate {
	// constructors
	public MAMusicHapticTrackStatusObserver (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (string internationalStandardRecordingCode, bool musicHapticsActive, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (string internationalStandardRecordingCode, bool musicHapticsActive);
}

New Type: MediaAccessibility.MAMusicHapticsManager

public class MAMusicHapticsManager : Foundation.NSObject {
	// constructors
	protected MAMusicHapticsManager (Foundation.NSObjectFlag t);
	protected MAMusicHapticsManager (ObjCRuntime.NativeHandle handle);
	// properties
	public static Foundation.NSString ActiveStatusDidChangeNotification { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual bool IsActive { get; }
	public static MAMusicHapticsManager SharedManager { get; }
	// methods
	public virtual Foundation.INSCopying AddStatusObserver (MAMusicHapticTrackStatusObserver statusHandler);
	public virtual void CheckHapticTrackAvailability (string internationalStandardRecordingCode, MAMusicHapticTrackAvailabilityCallback completionHandler);
	public virtual System.Threading.Tasks.Task<bool> CheckHapticTrackAvailabilityAsync (string internationalStandardRecordingCode);
	public virtual void RemoveStatusObserver (Foundation.INSCopying registrationToken);

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

Namespace MediaPlayer

Type Changed: MediaPlayer.IMPMediaPickerControllerDelegate

Added methods:

public virtual void MediaItemsPicked (MPMediaPickerController sender, MPMediaItemCollection mediaItemCollection);
public virtual void MediaPickerDidCancel (MPMediaPickerController sender);

Type Changed: MediaPlayer.IMPMediaPlayback

Modified properties:

-public abstract float CurrentPlaybackRate { get; set; }
+public virtual float CurrentPlaybackRate { get; set; }
-public abstract double CurrentPlaybackTime { get; set; }
+public virtual double CurrentPlaybackTime { get; set; }
-public abstract bool IsPreparedToPlay { get; }
+public virtual bool IsPreparedToPlay { get; }

Modified methods:

-public abstract void BeginSeekingBackward ()
+public virtual void BeginSeekingBackward ()
-public abstract void BeginSeekingForward ()
+public virtual void BeginSeekingForward ()
-public abstract void EndSeeking ()
+public virtual void EndSeeking ()
-public abstract void Pause ()
+public virtual void Pause ()
-public abstract void Play ()
+public virtual void Play ()
-public abstract void PrepareToPlay ()
+public virtual void PrepareToPlay ()
-public abstract void Stop ()
+public virtual void Stop ()

Type Changed: MediaPlayer.IMPPlayableContentDataSource

Modified methods:

-public abstract MPContentItem GetContentItem (Foundation.NSIndexPath indexPath)
+public virtual MPContentItem GetContentItem (Foundation.NSIndexPath indexPath)
-public abstract IntPtr NumberOfChildItems (Foundation.NSIndexPath indexPath)
+public virtual IntPtr NumberOfChildItems (Foundation.NSIndexPath indexPath)

Added methods:

public virtual void BeginLoadingChildItems (Foundation.NSIndexPath indexPath, System.Action<Foundation.NSError> completionHandler);
public virtual bool ChildItemsDisplayPlaybackProgress (Foundation.NSIndexPath indexPath);
public virtual void GetContentItem (string identifier, System.Action<MPContentItem,Foundation.NSError> completionHandler);
public virtual System.Threading.Tasks.Task<MPContentItem> GetContentItemAsync (string identifier);

Type Changed: MediaPlayer.IMPPlayableContentDelegate

Added methods:

public virtual void ContextUpdated (MPPlayableContentManager contentManager, MPPlayableContentManagerContext context);
public virtual void InitializePlaybackQueue (MPPlayableContentManager contentManager, System.Action<Foundation.NSError> completionHandler);
public virtual void InitializePlaybackQueue (MPPlayableContentManager contentManager, MPContentItem[] contentItems, System.Action<Foundation.NSError> completionHandler);
public virtual void InitiatePlaybackOfContentItem (MPPlayableContentManager contentManager, Foundation.NSIndexPath indexPath, System.Action<Foundation.NSError> completionHandler);

Type Changed: MediaPlayer.IMPSystemMusicPlayerController

Modified methods:

-public abstract void OpenToPlay (MPMusicPlayerQueueDescriptor queueDescriptor)
+public virtual void OpenToPlay (MPMusicPlayerQueueDescriptor queueDescriptor)

Type Changed: MediaPlayer.MPMediaEntity

Added property:

public virtual ulong PersistentID { get; }

Type Changed: MediaPlayer.MPNowPlayingInfoCenter

Added properties:

public static Foundation.NSString PropertyExcludeFromSuggestions { get; }
public static Foundation.NSString PropertyInternationalStandardRecordingCode { get; }

Namespace MessageUI

Type Changed: MessageUI.IMFMailComposeViewControllerDelegate

Added method:

public virtual void Finished (MFMailComposeViewController controller, MFMailComposeResult result, Foundation.NSError error);

Type Changed: MessageUI.IMFMessageComposeViewControllerDelegate

Modified methods:

-public abstract void Finished (MFMessageComposeViewController controller, MessageComposeResult result)
+public virtual void Finished (MFMessageComposeViewController controller, MessageComposeResult result)

New Type: MessageUI.MFMailComposeControllerDeferredAction

[Serializable]
public enum MFMailComposeControllerDeferredAction {
	AddMissingRecipients = 2,
	AdjustInsertionPoint = 1,
	None = 0,
}

Namespace Messages

Type Changed: Messages.IMSMessagesAppTranscriptPresentation

Modified methods:

-public abstract CoreGraphics.CGSize GetContentSizeThatFits (CoreGraphics.CGSize size)
+public virtual CoreGraphics.CGSize GetContentSizeThatFits (CoreGraphics.CGSize size)

Type Changed: Messages.IMSStickerBrowserViewDataSource

Modified methods:

-public abstract IntPtr GetNumberOfStickers (MSStickerBrowserView stickerBrowserView)
+public virtual IntPtr GetNumberOfStickers (MSStickerBrowserView stickerBrowserView)
-public abstract MSSticker GetSticker (MSStickerBrowserView stickerBrowserView, IntPtr index)
+public virtual MSSticker GetSticker (MSStickerBrowserView stickerBrowserView, IntPtr index)

Namespace Metal

Type Changed: Metal.IMTLAccelerationStructure

Added interface:

IMTLAllocation

Modified properties:

-public abstract UIntPtr Size { get; }
+public virtual UIntPtr Size { get; }

Added property:

public virtual MTLResourceId GpuResourceId { get; }

Type Changed: Metal.IMTLAccelerationStructureCommandEncoder

Modified methods:

-public abstract void BuildAccelerationStructure (IMTLAccelerationStructure accelerationStructure, MTLAccelerationStructureDescriptor descriptor, IMTLBuffer scratchBuffer, UIntPtr scratchBufferOffset)
+public virtual void BuildAccelerationStructure (IMTLAccelerationStructure accelerationStructure, MTLAccelerationStructureDescriptor descriptor, IMTLBuffer scratchBuffer, UIntPtr scratchBufferOffset)
-public abstract void CopyAccelerationStructure (IMTLAccelerationStructure sourceAccelerationStructure, IMTLAccelerationStructure destinationAccelerationStructure)
+public virtual void CopyAccelerationStructure (IMTLAccelerationStructure sourceAccelerationStructure, IMTLAccelerationStructure destinationAccelerationStructure)
-public abstract void CopyAndCompactAccelerationStructure (IMTLAccelerationStructure sourceAccelerationStructure, IMTLAccelerationStructure destinationAccelerationStructure)
+public virtual void CopyAndCompactAccelerationStructure (IMTLAccelerationStructure sourceAccelerationStructure, IMTLAccelerationStructure destinationAccelerationStructure)
-public abstract void RefitAccelerationStructure (IMTLAccelerationStructure sourceAccelerationStructure, MTLAccelerationStructureDescriptor descriptor, IMTLAccelerationStructure destinationAccelerationStructure, IMTLBuffer scratchBuffer, UIntPtr scratchBufferOffset)
+public virtual void RefitAccelerationStructure (IMTLAccelerationStructure sourceAccelerationStructure, MTLAccelerationStructureDescriptor descriptor, IMTLAccelerationStructure destinationAccelerationStructure, IMTLBuffer scratchBuffer, UIntPtr scratchBufferOffset)
-public abstract void SampleCountersInBuffer (IMTLCounterSampleBuffer sampleBuffer, UIntPtr sampleIndex, bool barrier)
+public virtual void SampleCountersInBuffer (IMTLCounterSampleBuffer sampleBuffer, UIntPtr sampleIndex, bool barrier)
-public abstract void UpdateFence (IMTLFence fence)
+public virtual void UpdateFence (IMTLFence fence)
-public abstract void UseHeap (IMTLHeap heap)
+public virtual void UseHeap (IMTLHeap heap)
-public abstract void UseHeaps (IMTLHeap[] heaps, UIntPtr count)
+public virtual void UseHeaps (IMTLHeap[] heaps, UIntPtr count)
-public abstract void UseResource (IMTLResource resource, MTLResourceUsage usage)
+public virtual void UseResource (IMTLResource resource, MTLResourceUsage usage)
-public abstract void UseResources (IMTLResource[] resources, UIntPtr count, MTLResourceUsage usage)
+public virtual void UseResources (IMTLResource[] resources, UIntPtr count, MTLResourceUsage usage)
-public abstract void WaitForFence (IMTLFence fence)
+public virtual void WaitForFence (IMTLFence fence)
-public abstract void WriteCompactedAccelerationStructureSize (IMTLAccelerationStructure accelerationStructure, IMTLBuffer buffer, UIntPtr offset)
+public virtual void WriteCompactedAccelerationStructureSize (IMTLAccelerationStructure accelerationStructure, IMTLBuffer buffer, UIntPtr offset)
-public abstract void WriteCompactedAccelerationStructureSize (IMTLAccelerationStructure accelerationStructure, IMTLBuffer buffer, UIntPtr offset, MTLDataType sizeDataType)
+public virtual void WriteCompactedAccelerationStructureSize (IMTLAccelerationStructure accelerationStructure, IMTLBuffer buffer, UIntPtr offset, MTLDataType sizeDataType)

Added method:

public virtual void RefitAccelerationStructure (IMTLAccelerationStructure sourceAccelerationStructure, MTLAccelerationStructureDescriptor descriptor, IMTLAccelerationStructure destinationAccelerationStructure, IMTLBuffer scratchBuffer, UIntPtr scratchBufferOffset, MTLAccelerationStructureRefitOptions options);

Type Changed: Metal.IMTLArgumentEncoder

Modified properties:

-public abstract UIntPtr Alignment { get; }
+public virtual UIntPtr Alignment { get; }
-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract UIntPtr EncodedLength { get; }
+public virtual UIntPtr EncodedLength { get; }
-public abstract string Label { get; set; }
+public virtual string Label { get; set; }

Modified methods:

-public abstract IMTLArgumentEncoder CreateArgumentEncoder (UIntPtr index)
+public virtual IMTLArgumentEncoder CreateArgumentEncoder (UIntPtr index)
-public abstract IntPtr GetConstantData (UIntPtr index)
+public virtual IntPtr GetConstantData (UIntPtr index)
-public abstract void SetAccelerationStructure (IMTLAccelerationStructure accelerationStructure, UIntPtr index)
+public virtual void SetAccelerationStructure (IMTLAccelerationStructure accelerationStructure, UIntPtr index)
-public abstract void SetArgumentBuffer (IMTLBuffer argumentBuffer, UIntPtr offset)
+public virtual void SetArgumentBuffer (IMTLBuffer argumentBuffer, UIntPtr offset)
-public abstract void SetArgumentBuffer (IMTLBuffer argumentBuffer, UIntPtr startOffset, UIntPtr arrayElement)
+public virtual void SetArgumentBuffer (IMTLBuffer argumentBuffer, UIntPtr startOffset, UIntPtr arrayElement)
-public abstract void SetBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index)
+public virtual void SetBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index)
-public abstract void SetBuffers (IntPtr buffers, IntPtr offsets, Foundation.NSRange range)
+public virtual void SetBuffers (IntPtr buffers, IntPtr offsets, Foundation.NSRange range)
-public abstract void SetComputePipelineState (IMTLComputePipelineState pipeline, UIntPtr index)
+public virtual void SetComputePipelineState (IMTLComputePipelineState pipeline, UIntPtr index)
-public abstract void SetComputePipelineStates (IMTLComputePipelineState[] pipelines, Foundation.NSRange range)
+public virtual void SetComputePipelineStates (IMTLComputePipelineState[] pipelines, Foundation.NSRange range)
-public abstract void SetIndirectCommandBuffer (IMTLIndirectCommandBuffer indirectCommandBuffer, UIntPtr index)
+public virtual void SetIndirectCommandBuffer (IMTLIndirectCommandBuffer indirectCommandBuffer, UIntPtr index)
-public abstract void SetIndirectCommandBuffers (IMTLIndirectCommandBuffer[] buffers, Foundation.NSRange range)
+public virtual void SetIndirectCommandBuffers (IMTLIndirectCommandBuffer[] buffers, Foundation.NSRange range)
-public abstract void SetIntersectionFunctionTable (IMTLIntersectionFunctionTable intersectionFunctionTable, UIntPtr index)
+public virtual void SetIntersectionFunctionTable (IMTLIntersectionFunctionTable intersectionFunctionTable, UIntPtr index)
-public abstract void SetIntersectionFunctionTables (IMTLIntersectionFunctionTable[] intersectionFunctionTables, Foundation.NSRange range)
+public virtual void SetIntersectionFunctionTables (IMTLIntersectionFunctionTable[] intersectionFunctionTables, Foundation.NSRange range)
-public abstract void SetRenderPipelineState (IMTLRenderPipelineState pipeline, UIntPtr index)
+public virtual void SetRenderPipelineState (IMTLRenderPipelineState pipeline, UIntPtr index)
-public abstract void SetRenderPipelineStates (IMTLRenderPipelineState[] pipelines, Foundation.NSRange range)
+public virtual void SetRenderPipelineStates (IMTLRenderPipelineState[] pipelines, Foundation.NSRange range)
-public abstract void SetSamplerState (IMTLSamplerState sampler, UIntPtr index)
+public virtual void SetSamplerState (IMTLSamplerState sampler, UIntPtr index)
-public abstract void SetSamplerStates (IMTLSamplerState[] samplers, Foundation.NSRange range)
+public virtual void SetSamplerStates (IMTLSamplerState[] samplers, Foundation.NSRange range)
-public abstract void SetTexture (IMTLTexture texture, UIntPtr index)
+public virtual void SetTexture (IMTLTexture texture, UIntPtr index)
-public abstract void SetTextures (IMTLTexture[] textures, Foundation.NSRange range)
+public virtual void SetTextures (IMTLTexture[] textures, Foundation.NSRange range)
-public abstract void SetVisibleFunctionTable (IMTLVisibleFunctionTable visibleFunctionTable, UIntPtr index)
+public virtual void SetVisibleFunctionTable (IMTLVisibleFunctionTable visibleFunctionTable, UIntPtr index)
-public abstract void SetVisibleFunctionTables (IMTLVisibleFunctionTable[] visibleFunctionTables, Foundation.NSRange range)
+public virtual void SetVisibleFunctionTables (IMTLVisibleFunctionTable[] visibleFunctionTables, Foundation.NSRange range)

Type Changed: Metal.IMTLBinaryArchive

Modified properties:

-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract string Label { get; set; }
+public virtual string Label { get; set; }

Modified methods:

-public abstract bool AddComputePipelineFunctions (MTLComputePipelineDescriptor descriptor, out Foundation.NSError error)
+public virtual bool AddComputePipelineFunctions (MTLComputePipelineDescriptor descriptor, out Foundation.NSError error)
-public abstract bool AddFunctionWithDescriptor (MTLFunctionDescriptor descriptor, IMTLLibrary library, out Foundation.NSError error)
+public virtual bool AddFunctionWithDescriptor (MTLFunctionDescriptor descriptor, IMTLLibrary library, out Foundation.NSError error)
-public abstract bool AddRenderPipelineFunctions (MTLRenderPipelineDescriptor descriptor, out Foundation.NSError error)
+public virtual bool AddRenderPipelineFunctions (MTLRenderPipelineDescriptor descriptor, out Foundation.NSError error)
-public abstract bool AddTileRenderPipelineFunctions (MTLTileRenderPipelineDescriptor descriptor, out Foundation.NSError error)
+public virtual bool AddTileRenderPipelineFunctions (MTLTileRenderPipelineDescriptor descriptor, out Foundation.NSError error)
-public abstract bool Serialize (Foundation.NSUrl url, out Foundation.NSError error)
+public virtual bool Serialize (Foundation.NSUrl url, out Foundation.NSError error)

Added methods:

public virtual bool AddLibrary (MTLStitchedLibraryDescriptor descriptor, out Foundation.NSError error);
public virtual bool AddMeshRenderPipelineFunctions (MTLMeshRenderPipelineDescriptor descriptor, out Foundation.NSError error);

Type Changed: Metal.IMTLBlitCommandEncoder

Modified methods:

-public abstract void Copy (IMTLTexture sourceTexture, IMTLTexture destinationTexture)
+public virtual void Copy (IMTLTexture sourceTexture, IMTLTexture destinationTexture)
-public abstract void Copy (IMTLIndirectCommandBuffer source, Foundation.NSRange sourceRange, IMTLIndirectCommandBuffer destination, UIntPtr destinationIndex)
+public virtual void Copy (IMTLIndirectCommandBuffer source, Foundation.NSRange sourceRange, IMTLIndirectCommandBuffer destination, UIntPtr destinationIndex)
-public abstract void Copy (IMTLTexture sourceTexture, UIntPtr sourceSlice, UIntPtr sourceLevel, IMTLTexture destinationTexture, UIntPtr destinationSlice, UIntPtr destinationLevel, UIntPtr sliceCount, UIntPtr levelCount)
+public virtual void Copy (IMTLTexture sourceTexture, UIntPtr sourceSlice, UIntPtr sourceLevel, IMTLTexture destinationTexture, UIntPtr destinationSlice, UIntPtr destinationLevel, UIntPtr sliceCount, UIntPtr levelCount)
-public abstract void CopyFromBuffer (IMTLBuffer sourceBuffer, UIntPtr sourceOffset, IMTLBuffer destinationBuffer, UIntPtr destinationOffset, UIntPtr size)
+public virtual void CopyFromBuffer (IMTLBuffer sourceBuffer, UIntPtr sourceOffset, IMTLBuffer destinationBuffer, UIntPtr destinationOffset, UIntPtr size)
-public abstract void CopyFromBuffer (IMTLBuffer sourceBuffer, UIntPtr sourceOffset, UIntPtr sourceBytesPerRow, UIntPtr sourceBytesPerImage, MTLSize sourceSize, IMTLTexture destinationTexture, UIntPtr destinationSlice, UIntPtr destinationLevel, MTLOrigin destinationOrigin)
+public virtual void CopyFromBuffer (IMTLBuffer sourceBuffer, UIntPtr sourceOffset, UIntPtr sourceBytesPerRow, UIntPtr sourceBytesPerImage, MTLSize sourceSize, IMTLTexture destinationTexture, UIntPtr destinationSlice, UIntPtr destinationLevel, MTLOrigin destinationOrigin)
-public abstract void CopyFromBuffer (IMTLBuffer sourceBuffer, UIntPtr sourceOffset, UIntPtr sourceBytesPerRow, UIntPtr sourceBytesPerImage, MTLSize sourceSize, IMTLTexture destinationTexture, UIntPtr destinationSlice, UIntPtr destinationLevel, MTLOrigin destinationOrigin, MTLBlitOption options)
+public virtual void CopyFromBuffer (IMTLBuffer sourceBuffer, UIntPtr sourceOffset, UIntPtr sourceBytesPerRow, UIntPtr sourceBytesPerImage, MTLSize sourceSize, IMTLTexture destinationTexture, UIntPtr destinationSlice, UIntPtr destinationLevel, MTLOrigin destinationOrigin, MTLBlitOption options)
-public abstract void CopyFromTexture (IMTLTexture sourceTexture, UIntPtr sourceSlice, UIntPtr sourceLevel, MTLOrigin sourceOrigin, MTLSize sourceSize, IMTLBuffer destinationBuffer, UIntPtr destinationOffset, UIntPtr destinatinBytesPerRow, UIntPtr destinationBytesPerImage)
+public virtual void CopyFromTexture (IMTLTexture sourceTexture, UIntPtr sourceSlice, UIntPtr sourceLevel, MTLOrigin sourceOrigin, MTLSize sourceSize, IMTLBuffer destinationBuffer, UIntPtr destinationOffset, UIntPtr destinatinBytesPerRow, UIntPtr destinationBytesPerImage)
-public abstract void CopyFromTexture (IMTLTexture sourceTexture, UIntPtr sourceSlice, UIntPtr sourceLevel, MTLOrigin sourceOrigin, MTLSize sourceSize, IMTLTexture destinationTexture, UIntPtr destinationSlice, UIntPtr destinationLevel, MTLOrigin destinationOrigin)
+public virtual void CopyFromTexture (IMTLTexture sourceTexture, UIntPtr sourceSlice, UIntPtr sourceLevel, MTLOrigin sourceOrigin, MTLSize sourceSize, IMTLTexture destinationTexture, UIntPtr destinationSlice, UIntPtr destinationLevel, MTLOrigin destinationOrigin)
-public abstract void CopyFromTexture (IMTLTexture sourceTexture, UIntPtr sourceSlice, UIntPtr sourceLevel, MTLOrigin sourceOrigin, MTLSize sourceSize, IMTLBuffer destinationBuffer, UIntPtr destinationOffset, UIntPtr destinatinBytesPerRow, UIntPtr destinationBytesPerImage, MTLBlitOption options)
+public virtual void CopyFromTexture (IMTLTexture sourceTexture, UIntPtr sourceSlice, UIntPtr sourceLevel, MTLOrigin sourceOrigin, MTLSize sourceSize, IMTLBuffer destinationBuffer, UIntPtr destinationOffset, UIntPtr destinatinBytesPerRow, UIntPtr destinationBytesPerImage, MTLBlitOption options)
-public abstract void FillBuffer (IMTLBuffer buffer, Foundation.NSRange range, byte value)
+public virtual void FillBuffer (IMTLBuffer buffer, Foundation.NSRange range, byte value)
-public abstract void GenerateMipmapsForTexture (IMTLTexture texture)
+public virtual void GenerateMipmapsForTexture (IMTLTexture texture)
-public abstract void Optimize (IMTLIndirectCommandBuffer indirectCommandBuffer, Foundation.NSRange range)
+public virtual void Optimize (IMTLIndirectCommandBuffer indirectCommandBuffer, Foundation.NSRange range)
-public abstract void OptimizeContentsForCpuAccess (IMTLTexture texture)
+public virtual void OptimizeContentsForCpuAccess (IMTLTexture texture)
-public abstract void OptimizeContentsForCpuAccess (IMTLTexture texture, UIntPtr slice, UIntPtr level)
+public virtual void OptimizeContentsForCpuAccess (IMTLTexture texture, UIntPtr slice, UIntPtr level)
-public abstract void OptimizeContentsForGpuAccess (IMTLTexture texture)
+public virtual void OptimizeContentsForGpuAccess (IMTLTexture texture)
-public abstract void OptimizeContentsForGpuAccess (IMTLTexture texture, UIntPtr slice, UIntPtr level)
+public virtual void OptimizeContentsForGpuAccess (IMTLTexture texture, UIntPtr slice, UIntPtr level)
-public abstract void ResetCommands (IMTLIndirectCommandBuffer buffer, Foundation.NSRange range)
+public virtual void ResetCommands (IMTLIndirectCommandBuffer buffer, Foundation.NSRange range)
-public abstract void ResolveCounters (IMTLCounterSampleBuffer sampleBuffer, Foundation.NSRange range, IMTLBuffer destinationBuffer, UIntPtr destinationOffset)
+public virtual void ResolveCounters (IMTLCounterSampleBuffer sampleBuffer, Foundation.NSRange range, IMTLBuffer destinationBuffer, UIntPtr destinationOffset)
-public abstract void SampleCounters (IMTLCounterSampleBuffer sampleBuffer, UIntPtr sampleIndex, bool barrier)
+public virtual void SampleCounters (IMTLCounterSampleBuffer sampleBuffer, UIntPtr sampleIndex, bool barrier)
-public abstract void Synchronize (IMTLResource resource)
+public virtual void Synchronize (IMTLResource resource)
-public abstract void Synchronize (IMTLTexture texture, UIntPtr slice, UIntPtr level)
+public virtual void Synchronize (IMTLTexture texture, UIntPtr slice, UIntPtr level)
-public abstract void Update (IMTLFence fence)
+public virtual void Update (IMTLFence fence)
-public abstract void Wait (IMTLFence fence)
+public virtual void Wait (IMTLFence fence)

Added methods:

public virtual void GetTextureAccessCounters (IMTLTexture texture, MTLRegion region, UIntPtr mipLevel, UIntPtr slice, bool resetCounters, IMTLBuffer countersBuffer, UIntPtr countersBufferOffset);
public virtual void ResetTextureAccessCounters (IMTLTexture texture, MTLRegion region, UIntPtr mipLevel, UIntPtr slice);

Type Changed: Metal.IMTLBuffer

Added interface:

IMTLAllocation

Modified properties:

-public abstract IntPtr Contents { get; }
+public virtual IntPtr Contents { get; }
-public abstract UIntPtr Length { get; }
+public virtual UIntPtr Length { get; }

Added property:

public virtual ulong GpuAddress { get; }

Modified methods:

-public abstract void AddDebugMarker (string marker, Foundation.NSRange range)
+public virtual void AddDebugMarker (string marker, Foundation.NSRange range)
-public abstract IMTLTexture CreateTexture (MTLTextureDescriptor descriptor, UIntPtr offset, UIntPtr bytesPerRow)
+public virtual IMTLTexture CreateTexture (MTLTextureDescriptor descriptor, UIntPtr offset, UIntPtr bytesPerRow)
-public abstract void DidModify (Foundation.NSRange range)
+public virtual void DidModify (Foundation.NSRange range)
-public abstract void RemoveAllDebugMarkers ()
+public virtual void RemoveAllDebugMarkers ()

Type Changed: Metal.IMTLCaptureScope

Modified properties:

-public abstract IMTLCommandQueue CommandQueue { get; }
+public virtual IMTLCommandQueue CommandQueue { get; }
-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract string Label { get; set; }
+public virtual string Label { get; set; }

Modified methods:

-public abstract void BeginScope ()
+public virtual void BeginScope ()
-public abstract void EndScope ()
+public virtual void EndScope ()

Type Changed: Metal.IMTLCommandBuffer

Modified properties:

-public abstract IMTLBlitCommandEncoder BlitCommandEncoder { get; }
+public virtual IMTLBlitCommandEncoder BlitCommandEncoder { get; }
-public abstract IMTLCommandQueue CommandQueue { get; }
+public virtual IMTLCommandQueue CommandQueue { get; }
-public abstract IMTLComputeCommandEncoder ComputeCommandEncoder { get; }
+public virtual IMTLComputeCommandEncoder ComputeCommandEncoder { get; }
-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract Foundation.NSError Error { get; }
+public virtual Foundation.NSError Error { get; }
-public abstract MTLCommandBufferErrorOption ErrorOptions { get; }
+public virtual MTLCommandBufferErrorOption ErrorOptions { get; }
-public abstract double GpuEndTime { get; }
+public virtual double GpuEndTime { get; }
-public abstract double GpuStartTime { get; }
+public virtual double GpuStartTime { get; }
-public abstract double KernelEndTime { get; }
+public virtual double KernelEndTime { get; }
-public abstract double KernelStartTime { get; }
+public virtual double KernelStartTime { get; }
-public abstract string Label { get; set; }
+public virtual string Label { get; set; }
-public abstract IMTLLogContainer Logs { get; }
+public virtual IMTLLogContainer Logs { get; }
-public abstract IMTLResourceStateCommandEncoder ResourceStateCommandEncoder { get; }
+public virtual IMTLResourceStateCommandEncoder ResourceStateCommandEncoder { get; }
-public abstract bool RetainedReferences { get; }
+public virtual bool RetainedReferences { get; }
-public abstract MTLCommandBufferStatus Status { get; }
+public virtual MTLCommandBufferStatus Status { get; }

Modified methods:

-public abstract void AddCompletedHandler (System.Action%LESSERTHANREPLACEMENT%IMTLCommandBuffer%GREATERTHANREPLACEMENT% block)
+public virtual void AddCompletedHandler (System.Action%LESSERTHANREPLACEMENT%IMTLCommandBuffer%GREATERTHANREPLACEMENT% block)
-public abstract void AddScheduledHandler (System.Action%LESSERTHANREPLACEMENT%IMTLCommandBuffer%GREATERTHANREPLACEMENT% block)
+public virtual void AddScheduledHandler (System.Action%LESSERTHANREPLACEMENT%IMTLCommandBuffer%GREATERTHANREPLACEMENT% block)
-public abstract void Commit ()
+public virtual void Commit ()
-public abstract IMTLComputeCommandEncoder ComputeCommandEncoderDispatch (MTLDispatchType dispatchType)
+public virtual IMTLComputeCommandEncoder ComputeCommandEncoderDispatch (MTLDispatchType dispatchType)
-public abstract IMTLAccelerationStructureCommandEncoder CreateAccelerationStructureCommandEncoder ()
+public virtual IMTLAccelerationStructureCommandEncoder CreateAccelerationStructureCommandEncoder ()
-public abstract IMTLBlitCommandEncoder CreateBlitCommandEncoder (MTLBlitPassDescriptor blitPassDescriptor)
+public virtual IMTLBlitCommandEncoder CreateBlitCommandEncoder (MTLBlitPassDescriptor blitPassDescriptor)
-public abstract IMTLComputeCommandEncoder CreateComputeCommandEncoder (MTLComputePassDescriptor computePassDescriptor)
+public virtual IMTLComputeCommandEncoder CreateComputeCommandEncoder (MTLComputePassDescriptor computePassDescriptor)
-public abstract IMTLParallelRenderCommandEncoder CreateParallelRenderCommandEncoder (MTLRenderPassDescriptor renderPassDescriptor)
+public virtual IMTLParallelRenderCommandEncoder CreateParallelRenderCommandEncoder (MTLRenderPassDescriptor renderPassDescriptor)
-public abstract IMTLRenderCommandEncoder CreateRenderCommandEncoder (MTLRenderPassDescriptor renderPassDescriptor)
+public virtual IMTLRenderCommandEncoder CreateRenderCommandEncoder (MTLRenderPassDescriptor renderPassDescriptor)
-public abstract IMTLResourceStateCommandEncoder CreateResourceStateCommandEncoder (MTLResourceStatePassDescriptor resourceStatePassDescriptor)
+public virtual IMTLResourceStateCommandEncoder CreateResourceStateCommandEncoder (MTLResourceStatePassDescriptor resourceStatePassDescriptor)
-public abstract void EncodeSignal (IMTLEvent event, ulong value)
+public virtual void EncodeSignal (IMTLEvent event, ulong value)
-public abstract void EncodeWait (IMTLEvent event, ulong value)
+public virtual void EncodeWait (IMTLEvent event, ulong value)
-public abstract void Enqueue ()
+public virtual void Enqueue ()
-public abstract void PopDebugGroup ()
+public virtual void PopDebugGroup ()
-public abstract void PresentDrawable (IMTLDrawable drawable)
+public virtual void PresentDrawable (IMTLDrawable drawable)
-public abstract void PresentDrawable (IMTLDrawable drawable, double presentationTime)
+public virtual void PresentDrawable (IMTLDrawable drawable, double presentationTime)
-public abstract void PresentDrawableAfter (IMTLDrawable drawable, double duration)
+public virtual void PresentDrawableAfter (IMTLDrawable drawable, double duration)
-public abstract void PushDebugGroup (string string)
+public virtual void PushDebugGroup (string string)
-public abstract void WaitUntilCompleted ()
+public virtual void WaitUntilCompleted ()
-public abstract void WaitUntilScheduled ()
+public virtual void WaitUntilScheduled ()

Added methods:

public virtual IMTLAccelerationStructureCommandEncoder CreateAccelerationStructureCommandEncoder (MTLAccelerationStructurePassDescriptor descriptor);
public virtual void UseResidencySet (IMTLResidencySet residencySet);
public virtual void UseResidencySets (IMTLResidencySet[] residencySets);
public virtual void UseResidencySets (IntPtr residencySets, UIntPtr count);

Type Changed: Metal.IMTLCommandBufferEncoderInfo

Modified properties:

-public abstract string[] DebugSignposts { get; }
+public virtual string[] DebugSignposts { get; }
-public abstract MTLCommandEncoderErrorState ErrorState { get; }
+public virtual MTLCommandEncoderErrorState ErrorState { get; }
-public abstract string Label { get; }
+public virtual string Label { get; }

Type Changed: Metal.IMTLCommandEncoder

Modified properties:

-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract string Label { get; set; }
+public virtual string Label { get; set; }

Modified methods:

-public abstract void EndEncoding ()
+public virtual void EndEncoding ()
-public abstract void InsertDebugSignpost (string signpost)
+public virtual void InsertDebugSignpost (string signpost)
-public abstract void PopDebugGroup ()
+public virtual void PopDebugGroup ()
-public abstract void PushDebugGroup (string debugGroup)
+public virtual void PushDebugGroup (string debugGroup)

Type Changed: Metal.IMTLCommandQueue

Modified properties:

-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract string Label { get; set; }
+public virtual string Label { get; set; }

Modified methods:

-public abstract IMTLCommandBuffer CommandBuffer ()
+public virtual IMTLCommandBuffer CommandBuffer ()
-public abstract IMTLCommandBuffer CommandBufferWithUnretainedReferences ()
+public virtual IMTLCommandBuffer CommandBufferWithUnretainedReferences ()
-public abstract IMTLCommandBuffer CreateCommandBuffer (MTLCommandBufferDescriptor descriptor)
+public virtual IMTLCommandBuffer CreateCommandBuffer (MTLCommandBufferDescriptor descriptor)
-public abstract void InsertDebugCaptureBoundary ()
+public virtual void InsertDebugCaptureBoundary ()

Added methods:

public virtual void AddResidencySet (IMTLResidencySet residencySet);
public virtual void AddResidencySets (IMTLResidencySet[] residencySets);
public virtual void AddResidencySets (IntPtr residencySets, UIntPtr count);
public virtual void RemoveResidencySet (IMTLResidencySet residencySet);
public virtual void RemoveResidencySets (IMTLResidencySet[] residencySets);
public virtual void RemoveResidencySets (IntPtr residencySets, UIntPtr count);

Type Changed: Metal.IMTLComputeCommandEncoder

Modified properties:

-public abstract MTLDispatchType DispatchType { get; }
+public virtual MTLDispatchType DispatchType { get; }

Modified methods:

-public abstract void DispatchThreadgroups (MTLSize threadgroupsPerGrid, MTLSize threadsPerThreadgroup)
+public virtual void DispatchThreadgroups (MTLSize threadgroupsPerGrid, MTLSize threadsPerThreadgroup)
-public abstract void DispatchThreadgroups (IMTLBuffer indirectBuffer, UIntPtr indirectBufferOffset, MTLSize threadsPerThreadgroup)
+public virtual void DispatchThreadgroups (IMTLBuffer indirectBuffer, UIntPtr indirectBufferOffset, MTLSize threadsPerThreadgroup)
-public abstract void DispatchThreads (MTLSize threadsPerGrid, MTLSize threadsPerThreadgroup)
+public virtual void DispatchThreads (MTLSize threadsPerGrid, MTLSize threadsPerThreadgroup)
-public abstract void ExecuteCommands (IMTLIndirectCommandBuffer indirectCommandBuffer, Foundation.NSRange executionRange)
+public virtual void ExecuteCommands (IMTLIndirectCommandBuffer indirectCommandBuffer, Foundation.NSRange executionRange)
-public abstract void ExecuteCommands (IMTLIndirectCommandBuffer indirectCommandbuffer, IMTLBuffer indirectRangeBuffer, UIntPtr indirectBufferOffset)
+public virtual void ExecuteCommands (IMTLIndirectCommandBuffer indirectCommandbuffer, IMTLBuffer indirectRangeBuffer, UIntPtr indirectBufferOffset)
-public abstract void MemoryBarrier (MTLBarrierScope scope)
+public virtual void MemoryBarrier (MTLBarrierScope scope)
-public abstract void MemoryBarrier (IMTLResource[] resources, UIntPtr count)
+public virtual void MemoryBarrier (IMTLResource[] resources, UIntPtr count)
-public abstract void SampleCounters (IMTLCounterSampleBuffer sampleBuffer, UIntPtr sampleIndex, bool barrier)
+public virtual void SampleCounters (IMTLCounterSampleBuffer sampleBuffer, UIntPtr sampleIndex, bool barrier)
-public abstract void SetAccelerationStructure (IMTLAccelerationStructure accelerationStructure, UIntPtr bufferIndex)
+public virtual void SetAccelerationStructure (IMTLAccelerationStructure accelerationStructure, UIntPtr bufferIndex)
-public abstract void SetBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index)
+public virtual void SetBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index)
-public abstract void SetBufferOffset (UIntPtr offset, UIntPtr index)
+public virtual void SetBufferOffset (UIntPtr offset, UIntPtr index)
-public abstract void SetBuffers (IntPtr buffers, IntPtr offsets, Foundation.NSRange range)
+public virtual void SetBuffers (IntPtr buffers, IntPtr offsets, Foundation.NSRange range)
-public abstract void SetBytes (IntPtr bytes, UIntPtr length, UIntPtr index)
+public virtual void SetBytes (IntPtr bytes, UIntPtr length, UIntPtr index)
-public abstract void SetComputePipelineState (IMTLComputePipelineState state)
+public virtual void SetComputePipelineState (IMTLComputePipelineState state)
-public abstract void SetImageblock (UIntPtr width, UIntPtr height)
+public virtual void SetImageblock (UIntPtr width, UIntPtr height)
-public abstract void SetIntersectionFunctionTable (IMTLIntersectionFunctionTable intersectionFunctionTable, UIntPtr bufferIndex)
+public virtual void SetIntersectionFunctionTable (IMTLIntersectionFunctionTable intersectionFunctionTable, UIntPtr bufferIndex)
-public abstract void SetIntersectionFunctionTables (IMTLIntersectionFunctionTable[] intersectionFunctionTables, Foundation.NSRange range)
+public virtual void SetIntersectionFunctionTables (IMTLIntersectionFunctionTable[] intersectionFunctionTables, Foundation.NSRange range)
-public abstract void SetSamplerState (IMTLSamplerState sampler, UIntPtr index)
+public virtual void SetSamplerState (IMTLSamplerState sampler, UIntPtr index)
-public abstract void SetSamplerState (IMTLSamplerState sampler, float lodMinClamp, float lodMaxClamp, UIntPtr index)
+public virtual void SetSamplerState (IMTLSamplerState sampler, float lodMinClamp, float lodMaxClamp, UIntPtr index)
-public abstract void SetSamplerStates (IMTLSamplerState[] samplers, Foundation.NSRange range)
+public virtual void SetSamplerStates (IMTLSamplerState[] samplers, Foundation.NSRange range)
-public abstract void SetSamplerStates (IMTLSamplerState[] samplers, IntPtr floatArrayPtrLodMinClamps, IntPtr floatArrayPtrLodMaxClamps, Foundation.NSRange range)
+public virtual void SetSamplerStates (IMTLSamplerState[] samplers, IntPtr floatArrayPtrLodMinClamps, IntPtr floatArrayPtrLodMaxClamps, Foundation.NSRange range)
-public abstract void SetStage (MTLRegion region)
+public virtual void SetStage (MTLRegion region)
-public abstract void SetStageInRegion (IMTLBuffer indirectBuffer, UIntPtr indirectBufferOffset)
+public virtual void SetStageInRegion (IMTLBuffer indirectBuffer, UIntPtr indirectBufferOffset)
-public abstract void SetTexture (IMTLTexture texture, UIntPtr index)
+public virtual void SetTexture (IMTLTexture texture, UIntPtr index)
-public abstract void SetTextures (IMTLTexture[] textures, Foundation.NSRange range)
+public virtual void SetTextures (IMTLTexture[] textures, Foundation.NSRange range)
-public abstract void SetThreadgroupMemoryLength (UIntPtr length, UIntPtr index)
+public virtual void SetThreadgroupMemoryLength (UIntPtr length, UIntPtr index)
-public abstract void SetVisibleFunctionTable (IMTLVisibleFunctionTable visibleFunctionTable, UIntPtr bufferIndex)
+public virtual void SetVisibleFunctionTable (IMTLVisibleFunctionTable visibleFunctionTable, UIntPtr bufferIndex)
-public abstract void SetVisibleFunctionTables (IMTLVisibleFunctionTable[] visibleFunctionTables, Foundation.NSRange range)
+public virtual void SetVisibleFunctionTables (IMTLVisibleFunctionTable[] visibleFunctionTables, Foundation.NSRange range)
-public abstract void Update (IMTLFence fence)
+public virtual void Update (IMTLFence fence)
-public abstract void UseHeap (IMTLHeap heap)
+public virtual void UseHeap (IMTLHeap heap)
-public abstract void UseHeaps (IMTLHeap[] heaps, UIntPtr count)
+public virtual void UseHeaps (IMTLHeap[] heaps, UIntPtr count)
-public abstract void UseResource (IMTLResource resource, MTLResourceUsage usage)
+public virtual void UseResource (IMTLResource resource, MTLResourceUsage usage)
-public abstract void UseResources (IMTLResource[] resources, UIntPtr count, MTLResourceUsage usage)
+public virtual void UseResources (IMTLResource[] resources, UIntPtr count, MTLResourceUsage usage)
-public abstract void Wait (IMTLFence fence)
+public virtual void Wait (IMTLFence fence)

Added methods:

public virtual void SetBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr stride, UIntPtr index);
public virtual void SetBufferOffset (UIntPtr offset, UIntPtr stride, UIntPtr index);
public virtual void SetBuffers (IntPtr buffers, IntPtr offsets, IntPtr strides, Foundation.NSRange range);
public virtual void SetBytes (IntPtr bytes, UIntPtr length, UIntPtr stride, UIntPtr index);

Type Changed: Metal.IMTLComputePipelineState

Modified properties:

-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract string Label { get; }
+public virtual string Label { get; }
-public abstract UIntPtr MaxTotalThreadsPerThreadgroup { get; }
+public virtual UIntPtr MaxTotalThreadsPerThreadgroup { get; }
-public abstract UIntPtr StaticThreadgroupMemoryLength { get; }
+public virtual UIntPtr StaticThreadgroupMemoryLength { get; }
-public abstract bool SupportIndirectCommandBuffers { get; }
+public virtual bool SupportIndirectCommandBuffers { get; }
-public abstract UIntPtr ThreadExecutionWidth { get; }
+public virtual UIntPtr ThreadExecutionWidth { get; }

Added properties:

public virtual MTLResourceId GpuResourceId { get; }
public virtual MTLShaderValidation ShaderValidation { get; }

Modified methods:

-public abstract IMTLComputePipelineState CreateComputePipelineState (IMTLFunction[] functions, out Foundation.NSError error)
+public virtual IMTLComputePipelineState CreateComputePipelineState (IMTLFunction[] functions, out Foundation.NSError error)
-public abstract IMTLFunctionHandle CreateFunctionHandle (IMTLFunction function)
+public virtual IMTLFunctionHandle CreateFunctionHandle (IMTLFunction function)
-public abstract IMTLIntersectionFunctionTable CreateIntersectionFunctionTable (MTLIntersectionFunctionTableDescriptor descriptor)
+public virtual IMTLIntersectionFunctionTable CreateIntersectionFunctionTable (MTLIntersectionFunctionTableDescriptor descriptor)
-public abstract IMTLVisibleFunctionTable CreateVisibleFunctionTable (MTLVisibleFunctionTableDescriptor descriptor)
+public virtual IMTLVisibleFunctionTable CreateVisibleFunctionTable (MTLVisibleFunctionTableDescriptor descriptor)
-public abstract UIntPtr GetImageblockMemoryLength (MTLSize imageblockDimensions)
+public virtual UIntPtr GetImageblockMemoryLength (MTLSize imageblockDimensions)

Type Changed: Metal.IMTLCounter

Modified properties:

-public abstract string Name { get; }
+public virtual string Name { get; }

Type Changed: Metal.IMTLCounterSampleBuffer

Modified properties:

-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract string Label { get; }
+public virtual string Label { get; }
-public abstract UIntPtr SampleCount { get; }
+public virtual UIntPtr SampleCount { get; }

Modified methods:

-public abstract Foundation.NSData ResolveCounterRange (Foundation.NSRange range)
+public virtual Foundation.NSData ResolveCounterRange (Foundation.NSRange range)

Type Changed: Metal.IMTLCounterSet

Modified properties:

-public abstract IMTLCounter[] Counters { get; }
+public virtual IMTLCounter[] Counters { get; }
-public abstract string Name { get; }
+public virtual string Name { get; }

Type Changed: Metal.IMTLDepthStencilState

Modified properties:

-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract string Label { get; }
+public virtual string Label { get; }

Type Changed: Metal.IMTLDevice

Modified properties:

-public abstract MTLArgumentBuffersTier ArgumentBuffersSupport { get; }
+public virtual MTLArgumentBuffersTier ArgumentBuffersSupport { get; }
-public abstract IMTLCounterSet[] CounterSets { get; }
+public virtual IMTLCounterSet[] CounterSets { get; }
-public abstract UIntPtr CurrentAllocatedSize { get; }
+public virtual UIntPtr CurrentAllocatedSize { get; }
-public abstract bool Depth24Stencil8PixelFormatSupported { get; }
+public virtual bool Depth24Stencil8PixelFormatSupported { get; }
-public abstract bool HasUnifiedMemory { get; }
+public virtual bool HasUnifiedMemory { get; }
-public abstract bool Headless { get; }
+public virtual bool Headless { get; }
-public abstract bool LowPower { get; }
+public virtual bool LowPower { get; }
-public abstract UIntPtr MaxArgumentBufferSamplerCount { get; }
+public virtual UIntPtr MaxArgumentBufferSamplerCount { get; }
-public abstract UIntPtr MaxBufferLength { get; }
+public virtual UIntPtr MaxBufferLength { get; }
-public abstract UIntPtr MaxThreadgroupMemoryLength { get; }
+public virtual UIntPtr MaxThreadgroupMemoryLength { get; }
-public abstract MTLSize MaxThreadsPerThreadgroup { get; }
+public virtual MTLSize MaxThreadsPerThreadgroup { get; }
-public abstract string Name { get; }
+public virtual string Name { get; }
-public abstract bool ProgrammableSamplePositionsSupported { get; }
+public virtual bool ProgrammableSamplePositionsSupported { get; }
-public abstract bool RasterOrderGroupsSupported { get; }
+public virtual bool RasterOrderGroupsSupported { get; }
-public abstract MTLReadWriteTextureTier ReadWriteTextureSupport { get; }
+public virtual MTLReadWriteTextureTier ReadWriteTextureSupport { get; }
-public abstract ulong RecommendedMaxWorkingSetSize { get; }
+public virtual ulong RecommendedMaxWorkingSetSize { get; }
-public abstract ulong RegistryId { get; }
+public virtual ulong RegistryId { get; }
-public abstract bool Removable { get; }
+public virtual bool Removable { get; }
-public abstract UIntPtr SparseTileSizeInBytes { get; }
+public virtual UIntPtr SparseTileSizeInBytes { get; }
-public abstract bool Supports32BitFloatFiltering { get; }
+public virtual bool Supports32BitFloatFiltering { get; }
-public abstract bool Supports32BitMsaa { get; }
+public virtual bool Supports32BitMsaa { get; }
-public abstract bool SupportsDynamicLibraries { get; }
+public virtual bool SupportsDynamicLibraries { get; }
-public abstract bool SupportsFunctionPointers { get; }
+public virtual bool SupportsFunctionPointers { get; }
-public abstract bool SupportsFunctionPointersFromRender { get; }
+public virtual bool SupportsFunctionPointersFromRender { get; }
-public abstract bool SupportsPrimitiveMotionBlur { get; }
+public virtual bool SupportsPrimitiveMotionBlur { get; }
-public abstract bool SupportsPullModelInterpolation { get; }
+public virtual bool SupportsPullModelInterpolation { get; }
-public abstract bool SupportsQueryTextureLod { get; }
+public virtual bool SupportsQueryTextureLod { get; }
-public abstract bool SupportsRaytracing { get; }
+public virtual bool SupportsRaytracing { get; }
-public abstract bool SupportsRaytracingFromRender { get; }
+public virtual bool SupportsRaytracingFromRender { get; }
-public abstract bool SupportsRenderDynamicLibraries { get; }
+public virtual bool SupportsRenderDynamicLibraries { get; }

Added properties:

public virtual MTLArchitecture Architecture { get; }
public virtual bool BarycentricCoordsSupported { get; }
public virtual bool SupportsBCTextureCompression { get; }
public virtual bool SupportsShaderBarycentricCoordinates { get; }

Modified methods:

-public abstract IMTLAccelerationStructure CreateAccelerationStructure (MTLAccelerationStructureDescriptor descriptor)
+public virtual IMTLAccelerationStructure CreateAccelerationStructure (MTLAccelerationStructureDescriptor descriptor)
-public abstract IMTLAccelerationStructure CreateAccelerationStructure (UIntPtr size)
+public virtual IMTLAccelerationStructure CreateAccelerationStructure (UIntPtr size)
-public abstract MTLAccelerationStructureSizes CreateAccelerationStructureSizes (MTLAccelerationStructureDescriptor descriptor)
+public virtual MTLAccelerationStructureSizes CreateAccelerationStructureSizes (MTLAccelerationStructureDescriptor descriptor)
-public abstract IMTLArgumentEncoder CreateArgumentEncoder (MTLArgumentDescriptor[] arguments)
+public virtual IMTLArgumentEncoder CreateArgumentEncoder (MTLArgumentDescriptor[] arguments)
-public abstract IMTLBinaryArchive CreateBinaryArchive (MTLBinaryArchiveDescriptor descriptor, out Foundation.NSError error)
+public virtual IMTLBinaryArchive CreateBinaryArchive (MTLBinaryArchiveDescriptor descriptor, out Foundation.NSError error)
-public abstract IMTLBuffer CreateBuffer (UIntPtr length, MTLResourceOptions options)
+public virtual IMTLBuffer CreateBuffer (UIntPtr length, MTLResourceOptions options)
-public abstract IMTLBuffer CreateBuffer (IntPtr pointer, UIntPtr length, MTLResourceOptions options)
+public virtual IMTLBuffer CreateBuffer (IntPtr pointer, UIntPtr length, MTLResourceOptions options)
-public abstract IMTLBuffer CreateBufferNoCopy (IntPtr pointer, UIntPtr length, MTLResourceOptions options, MTLDeallocator deallocator)
+public virtual IMTLBuffer CreateBufferNoCopy (IntPtr pointer, UIntPtr length, MTLResourceOptions options, MTLDeallocator deallocator)
-public abstract IMTLCommandQueue CreateCommandQueue ()
+public virtual IMTLCommandQueue CreateCommandQueue ()
-public abstract IMTLCommandQueue CreateCommandQueue (UIntPtr maxCommandBufferCount)
+public virtual IMTLCommandQueue CreateCommandQueue (UIntPtr maxCommandBufferCount)
-public abstract void CreateComputePipelineState (IMTLFunction computeFunction, System.Action%LESSERTHANREPLACEMENT%IMTLComputePipelineState,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void CreateComputePipelineState (IMTLFunction computeFunction, System.Action%LESSERTHANREPLACEMENT%IMTLComputePipelineState,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract IMTLComputePipelineState CreateComputePipelineState (IMTLFunction computeFunction, out Foundation.NSError error)
+public virtual IMTLComputePipelineState CreateComputePipelineState (IMTLFunction computeFunction, out Foundation.NSError error)
-public abstract void CreateComputePipelineState (IMTLFunction computeFunction, MTLPipelineOption options, System.Action%LESSERTHANREPLACEMENT%IMTLComputePipelineState,Metal.MTLComputePipelineReflection,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void CreateComputePipelineState (IMTLFunction computeFunction, MTLPipelineOption options, System.Action%LESSERTHANREPLACEMENT%IMTLComputePipelineState,Metal.MTLComputePipelineReflection,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void CreateComputePipelineState (MTLComputePipelineDescriptor descriptor, MTLPipelineOption options, MTLNewComputePipelineStateWithReflectionCompletionHandler completionHandler)
+public virtual void CreateComputePipelineState (MTLComputePipelineDescriptor descriptor, MTLPipelineOption options, MTLNewComputePipelineStateWithReflectionCompletionHandler completionHandler)
-public abstract IMTLComputePipelineState CreateComputePipelineState (IMTLFunction computeFunction, MTLPipelineOption options, out MTLComputePipelineReflection reflection, out Foundation.NSError error)
+public virtual IMTLComputePipelineState CreateComputePipelineState (IMTLFunction computeFunction, MTLPipelineOption options, out MTLComputePipelineReflection reflection, out Foundation.NSError error)
-public abstract IMTLComputePipelineState CreateComputePipelineState (MTLComputePipelineDescriptor descriptor, MTLPipelineOption options, out MTLComputePipelineReflection reflection, out Foundation.NSError error)
+public virtual IMTLComputePipelineState CreateComputePipelineState (MTLComputePipelineDescriptor descriptor, MTLPipelineOption options, out MTLComputePipelineReflection reflection, out Foundation.NSError error)
-public abstract IMTLCounterSampleBuffer CreateCounterSampleBuffer (MTLCounterSampleBufferDescriptor descriptor, out Foundation.NSError error)
+public virtual IMTLCounterSampleBuffer CreateCounterSampleBuffer (MTLCounterSampleBufferDescriptor descriptor, out Foundation.NSError error)
-public abstract IMTLLibrary CreateDefaultLibrary ()
+public virtual IMTLLibrary CreateDefaultLibrary ()
-public abstract IMTLLibrary CreateDefaultLibrary (Foundation.NSBundle bundle, out Foundation.NSError error)
+public virtual IMTLLibrary CreateDefaultLibrary (Foundation.NSBundle bundle, out Foundation.NSError error)
-public abstract IMTLDepthStencilState CreateDepthStencilState (MTLDepthStencilDescriptor descriptor)
+public virtual IMTLDepthStencilState CreateDepthStencilState (MTLDepthStencilDescriptor descriptor)
-public abstract IMTLDynamicLibrary CreateDynamicLibrary (Foundation.NSUrl url, out Foundation.NSError error)
+public virtual IMTLDynamicLibrary CreateDynamicLibrary (Foundation.NSUrl url, out Foundation.NSError error)
-public abstract IMTLDynamicLibrary CreateDynamicLibrary (IMTLLibrary library, out Foundation.NSError error)
+public virtual IMTLDynamicLibrary CreateDynamicLibrary (IMTLLibrary library, out Foundation.NSError error)
-public abstract IMTLEvent CreateEvent ()
+public virtual IMTLEvent CreateEvent ()
-public abstract IMTLFence CreateFence ()
+public virtual IMTLFence CreateFence ()
-public abstract IMTLHeap CreateHeap (MTLHeapDescriptor descriptor)
+public virtual IMTLHeap CreateHeap (MTLHeapDescriptor descriptor)
-public abstract IMTLIndirectCommandBuffer CreateIndirectCommandBuffer (MTLIndirectCommandBufferDescriptor descriptor, UIntPtr maxCount, MTLResourceOptions options)
+public virtual IMTLIndirectCommandBuffer CreateIndirectCommandBuffer (MTLIndirectCommandBufferDescriptor descriptor, UIntPtr maxCount, MTLResourceOptions options)
-public abstract IMTLLibrary CreateLibrary (CoreFoundation.DispatchData data, out Foundation.NSError error)
+public virtual IMTLLibrary CreateLibrary (CoreFoundation.DispatchData data, out Foundation.NSError error)
-public abstract IMTLLibrary CreateLibrary (Foundation.NSUrl url, out Foundation.NSError error)
+public virtual IMTLLibrary CreateLibrary (Foundation.NSUrl url, out Foundation.NSError error)
-public abstract void CreateLibrary (MTLStitchedLibraryDescriptor descriptor, System.Action%LESSERTHANREPLACEMENT%IMTLLibrary,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void CreateLibrary (MTLStitchedLibraryDescriptor descriptor, System.Action%LESSERTHANREPLACEMENT%IMTLLibrary,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract IMTLLibrary CreateLibrary (MTLStitchedLibraryDescriptor descriptor, out Foundation.NSError error)
+public virtual IMTLLibrary CreateLibrary (MTLStitchedLibraryDescriptor descriptor, out Foundation.NSError error)
-public abstract IMTLLibrary CreateLibrary (string filepath, out Foundation.NSError error)
+public virtual IMTLLibrary CreateLibrary (string filepath, out Foundation.NSError error)
-public abstract void CreateLibrary (string source, MTLCompileOptions options, System.Action%LESSERTHANREPLACEMENT%IMTLLibrary,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void CreateLibrary (string source, MTLCompileOptions options, System.Action%LESSERTHANREPLACEMENT%IMTLLibrary,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract IMTLLibrary CreateLibrary (string source, MTLCompileOptions options, out Foundation.NSError error)
+public virtual IMTLLibrary CreateLibrary (string source, MTLCompileOptions options, out Foundation.NSError error)
-public abstract IMTLRasterizationRateMap CreateRasterizationRateMap (MTLRasterizationRateMapDescriptor descriptor)
+public virtual IMTLRasterizationRateMap CreateRasterizationRateMap (MTLRasterizationRateMapDescriptor descriptor)
-public abstract void CreateRenderPipelineState (MTLRenderPipelineDescriptor descriptor, System.Action%LESSERTHANREPLACEMENT%IMTLRenderPipelineState,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void CreateRenderPipelineState (MTLRenderPipelineDescriptor descriptor, System.Action%LESSERTHANREPLACEMENT%IMTLRenderPipelineState,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract IMTLRenderPipelineState CreateRenderPipelineState (MTLRenderPipelineDescriptor descriptor, out Foundation.NSError error)
+public virtual IMTLRenderPipelineState CreateRenderPipelineState (MTLRenderPipelineDescriptor descriptor, out Foundation.NSError error)
-public abstract void CreateRenderPipelineState (MTLRenderPipelineDescriptor descriptor, MTLPipelineOption options, System.Action%LESSERTHANREPLACEMENT%IMTLRenderPipelineState,Metal.MTLRenderPipelineReflection,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void CreateRenderPipelineState (MTLRenderPipelineDescriptor descriptor, MTLPipelineOption options, System.Action%LESSERTHANREPLACEMENT%IMTLRenderPipelineState,Metal.MTLRenderPipelineReflection,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void CreateRenderPipelineState (MTLTileRenderPipelineDescriptor descriptor, MTLPipelineOption options, MTLNewRenderPipelineStateWithReflectionCompletionHandler completionHandler)
+public virtual void CreateRenderPipelineState (MTLTileRenderPipelineDescriptor descriptor, MTLPipelineOption options, MTLNewRenderPipelineStateWithReflectionCompletionHandler completionHandler)
-public abstract IMTLRenderPipelineState CreateRenderPipelineState (MTLRenderPipelineDescriptor descriptor, MTLPipelineOption options, out MTLRenderPipelineReflection reflection, out Foundation.NSError error)
+public virtual IMTLRenderPipelineState CreateRenderPipelineState (MTLRenderPipelineDescriptor descriptor, MTLPipelineOption options, out MTLRenderPipelineReflection reflection, out Foundation.NSError error)
-public abstract IMTLRenderPipelineState CreateRenderPipelineState (MTLTileRenderPipelineDescriptor descriptor, MTLPipelineOption options, out MTLRenderPipelineReflection reflection, out Foundation.NSError error)
+public virtual IMTLRenderPipelineState CreateRenderPipelineState (MTLTileRenderPipelineDescriptor descriptor, MTLPipelineOption options, out MTLRenderPipelineReflection reflection, out Foundation.NSError error)
-public abstract IMTLSamplerState CreateSamplerState (MTLSamplerDescriptor descriptor)
+public virtual IMTLSamplerState CreateSamplerState (MTLSamplerDescriptor descriptor)
-public abstract IMTLSharedEvent CreateSharedEvent ()
+public virtual IMTLSharedEvent CreateSharedEvent ()
-public abstract IMTLSharedEvent CreateSharedEvent (MTLSharedEventHandle sharedEventHandle)
+public virtual IMTLSharedEvent CreateSharedEvent (MTLSharedEventHandle sharedEventHandle)
-public abstract IMTLTexture CreateSharedTexture (MTLSharedTextureHandle sharedHandle)
+public virtual IMTLTexture CreateSharedTexture (MTLSharedTextureHandle sharedHandle)
-public abstract IMTLTexture CreateSharedTexture (MTLTextureDescriptor descriptor)
+public virtual IMTLTexture CreateSharedTexture (MTLTextureDescriptor descriptor)
-public abstract IMTLTexture CreateTexture (MTLTextureDescriptor descriptor)
+public virtual IMTLTexture CreateTexture (MTLTextureDescriptor descriptor)
-public abstract IMTLTexture CreateTexture (MTLTextureDescriptor descriptor, IOSurface.IOSurface iosurface, UIntPtr plane)
+public virtual IMTLTexture CreateTexture (MTLTextureDescriptor descriptor, IOSurface.IOSurface iosurface, UIntPtr plane)
-public abstract void GetDefaultSamplePositions (IntPtr positions, UIntPtr count)
+public virtual void GetDefaultSamplePositions (IntPtr positions, UIntPtr count)
-public abstract MTLSizeAndAlign GetHeapBufferSizeAndAlignWithLength (UIntPtr length, MTLResourceOptions options)
+public virtual MTLSizeAndAlign GetHeapBufferSizeAndAlignWithLength (UIntPtr length, MTLResourceOptions options)
-public abstract MTLSizeAndAlign GetHeapTextureSizeAndAlign (MTLTextureDescriptor desc)
+public virtual MTLSizeAndAlign GetHeapTextureSizeAndAlign (MTLTextureDescriptor desc)
-public abstract UIntPtr GetMinimumLinearTextureAlignment (MTLPixelFormat format)
+public virtual UIntPtr GetMinimumLinearTextureAlignment (MTLPixelFormat format)
-public abstract UIntPtr GetMinimumTextureBufferAlignment (MTLPixelFormat format)
+public virtual UIntPtr GetMinimumTextureBufferAlignment (MTLPixelFormat format)
-public abstract void GetSampleTimestamps (UIntPtr cpuTimestamp, UIntPtr gpuTimestamp)
+public virtual void GetSampleTimestamps (UIntPtr cpuTimestamp, UIntPtr gpuTimestamp)
-public abstract MTLSize GetSparseTileSize (MTLTextureType textureType, MTLPixelFormat pixelFormat, UIntPtr sampleCount)
+public virtual MTLSize GetSparseTileSize (MTLTextureType textureType, MTLPixelFormat pixelFormat, UIntPtr sampleCount)
-public abstract bool SupportsCounterSampling (MTLCounterSamplingPoint samplingPoint)
+public virtual bool SupportsCounterSampling (MTLCounterSamplingPoint samplingPoint)
-public abstract bool SupportsFamily (MTLGpuFamily gpuFamily)
+public virtual bool SupportsFamily (MTLGpuFamily gpuFamily)
-public abstract bool SupportsFeatureSet (MTLFeatureSet featureSet)
+public virtual bool SupportsFeatureSet (MTLFeatureSet featureSet)
-public abstract bool SupportsRasterizationRateMap (UIntPtr layerCount)
+public virtual bool SupportsRasterizationRateMap (UIntPtr layerCount)
-public abstract bool SupportsTextureSampleCount (UIntPtr sampleCount)
+public virtual bool SupportsTextureSampleCount (UIntPtr sampleCount)
-public abstract bool SupportsVertexAmplification (UIntPtr count)
+public virtual bool SupportsVertexAmplification (UIntPtr count)

Added methods:

public virtual void ConvertSparsePixelRegions (IntPtr pixelRegions, IntPtr tileRegions, MTLSize tileSize, MTLSparseTextureRegionAlignmentMode mode, UIntPtr numRegions);
public virtual void ConvertSparseTileRegions (IntPtr tileRegions, IntPtr pixelRegions, MTLSize tileSize, UIntPtr numRegions);
public virtual IMTLArgumentEncoder CreateArgumentEncoder (IMTLBufferBinding bufferBinding);
public virtual IMTLCommandQueue CreateCommandQueue (MTLCommandQueueDescriptor descriptor);
public virtual System.Threading.Tasks.Task<IMTLLibrary> CreateLibraryAsync (MTLStitchedLibraryDescriptor descriptor);
public virtual System.Threading.Tasks.Task<IMTLLibrary> CreateLibraryAsync (string source, MTLCompileOptions options);
public virtual void CreateRenderPipelineState (MTLMeshRenderPipelineDescriptor descriptor, MTLPipelineOption options, MTLNewRenderPipelineStateWithReflectionCompletionHandler completionHandler);
public virtual IMTLRenderPipelineState CreateRenderPipelineState (MTLMeshRenderPipelineDescriptor descriptor, MTLPipelineOption options, out MTLRenderPipelineReflection reflection, out Foundation.NSError error);
public virtual IMTLResidencySet CreateResidencySet (MTLResidencySetDescriptor descriptor, out Foundation.NSError error);
public virtual MTLSizeAndAlign GetHeapAccelerationStructureSizeAndAlign (MTLAccelerationStructureDescriptor descriptor);
public virtual MTLSizeAndAlign GetHeapAccelerationStructureSizeAndAlign (UIntPtr size);
public virtual IMTLLogState GetNewLogState (MTLLogStateDescriptor descriptor, out Foundation.NSError error);
public virtual MTLSize GetSparseTileSize (MTLTextureType textureType, MTLPixelFormat pixelFormat, UIntPtr sampleCount, MTLSparsePageSize sparsePageSize);
public virtual UIntPtr GetSparseTileSizeInBytes (MTLSparsePageSize sparsePageSize);

Type Changed: Metal.IMTLDrawable

Modified properties:

-public abstract UIntPtr DrawableId { get; }
+public virtual UIntPtr DrawableId { get; }
-public abstract double PresentedTime { get; }
+public virtual double PresentedTime { get; }

Modified methods:

-public abstract void AddPresentedHandler (System.Action%LESSERTHANREPLACEMENT%IMTLDrawable%GREATERTHANREPLACEMENT% block)
+public virtual void AddPresentedHandler (System.Action%LESSERTHANREPLACEMENT%IMTLDrawable%GREATERTHANREPLACEMENT% block)
-public abstract void Present ()
+public virtual void Present ()
-public abstract void Present (double presentationTime)
+public virtual void Present (double presentationTime)
-public abstract void PresentAfter (double duration)
+public virtual void PresentAfter (double duration)

Type Changed: Metal.IMTLDynamicLibrary

Modified properties:

-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract string InstallName { get; }
+public virtual string InstallName { get; }
-public abstract string Label { get; set; }
+public virtual string Label { get; set; }

Modified methods:

-public abstract bool Serialize (Foundation.NSUrl url, out Foundation.NSError error)
+public virtual bool Serialize (Foundation.NSUrl url, out Foundation.NSError error)

Type Changed: Metal.IMTLEvent

Modified properties:

-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract string Label { get; set; }
+public virtual string Label { get; set; }

Type Changed: Metal.IMTLFence

Modified properties:

-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract string Label { get; set; }
+public virtual string Label { get; set; }

Type Changed: Metal.IMTLFunction

Modified properties:

-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract Foundation.NSDictionary%LESSERTHANREPLACEMENT%Foundation.NSString,Metal.MTLFunctionConstant%GREATERTHANREPLACEMENT% FunctionConstants { get; }
+public virtual Foundation.NSDictionary%LESSERTHANREPLACEMENT%Foundation.NSString,Metal.MTLFunctionConstant%GREATERTHANREPLACEMENT% FunctionConstants { get; }
-public abstract MTLFunctionType FunctionType { get; }
+public virtual MTLFunctionType FunctionType { get; }
-public abstract string Label { get; set; }
+public virtual string Label { get; set; }
-public abstract string Name { get; }
+public virtual string Name { get; }
-public abstract MTLFunctionOptions Options { get; }
+public virtual MTLFunctionOptions Options { get; }
-public abstract IntPtr PatchControlPointCount { get; }
+public virtual IntPtr PatchControlPointCount { get; }
-public abstract MTLPatchType PatchType { get; }
+public virtual MTLPatchType PatchType { get; }
-public abstract MTLAttribute[] StageInputAttributes { get; }
+public virtual MTLAttribute[] StageInputAttributes { get; }
-public abstract MTLVertexAttribute[] VertexAttributes { get; }
+public virtual MTLVertexAttribute[] VertexAttributes { get; }

Modified methods:

-public abstract IMTLArgumentEncoder CreateArgumentEncoder (UIntPtr bufferIndex)
+public virtual IMTLArgumentEncoder CreateArgumentEncoder (UIntPtr bufferIndex)
-public abstract IMTLArgumentEncoder CreateArgumentEncoder (UIntPtr bufferIndex, out MTLArgument reflection)
+public virtual IMTLArgumentEncoder CreateArgumentEncoder (UIntPtr bufferIndex, out MTLArgument reflection)

Type Changed: Metal.IMTLFunctionHandle

Modified properties:

-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract MTLFunctionType FunctionType { get; }
+public virtual MTLFunctionType FunctionType { get; }
-public abstract string Name { get; }
+public virtual string Name { get; }

Type Changed: Metal.IMTLFunctionLog

Modified properties:

-public abstract IMTLFunctionLogDebugLocation DebugLocation { get; }
+public virtual IMTLFunctionLogDebugLocation DebugLocation { get; }
-public abstract string EncoderLabel { get; }
+public virtual string EncoderLabel { get; }
-public abstract IMTLFunction Function { get; }
+public virtual IMTLFunction Function { get; }
-public abstract MTLFunctionLogType Type { get; }
+public virtual MTLFunctionLogType Type { get; }

Type Changed: Metal.IMTLFunctionLogDebugLocation

Modified properties:

-public abstract UIntPtr Column { get; }
+public virtual UIntPtr Column { get; }
-public abstract string FunctionName { get; }
+public virtual string FunctionName { get; }
-public abstract UIntPtr Line { get; }
+public virtual UIntPtr Line { get; }
-public abstract Foundation.NSUrl Url { get; }
+public virtual Foundation.NSUrl Url { get; }

Type Changed: Metal.IMTLHeap

Added interface:

IMTLAllocation

Modified properties:

-public abstract MTLCpuCacheMode CpuCacheMode { get; }
+public virtual MTLCpuCacheMode CpuCacheMode { get; }
-public abstract UIntPtr CurrentAllocatedSize { get; }
+public virtual UIntPtr CurrentAllocatedSize { get; }
-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract MTLHazardTrackingMode HazardTrackingMode { get; }
+public virtual MTLHazardTrackingMode HazardTrackingMode { get; }
-public abstract string Label { get; set; }
+public virtual string Label { get; set; }
-public abstract MTLResourceOptions ResourceOptions { get; }
+public virtual MTLResourceOptions ResourceOptions { get; }
-public abstract UIntPtr Size { get; }
+public virtual UIntPtr Size { get; }
-public abstract MTLStorageMode StorageMode { get; }
+public virtual MTLStorageMode StorageMode { get; }
-public abstract MTLHeapType Type { get; }
+public virtual MTLHeapType Type { get; }
-public abstract UIntPtr UsedSize { get; }
+public virtual UIntPtr UsedSize { get; }

Modified methods:

-public abstract IMTLBuffer CreateBuffer (UIntPtr length, MTLResourceOptions options)
+public virtual IMTLBuffer CreateBuffer (UIntPtr length, MTLResourceOptions options)
-public abstract IMTLBuffer CreateBuffer (UIntPtr length, MTLResourceOptions options, UIntPtr offset)
+public virtual IMTLBuffer CreateBuffer (UIntPtr length, MTLResourceOptions options, UIntPtr offset)
-public abstract IMTLTexture CreateTexture (MTLTextureDescriptor desc)
+public virtual IMTLTexture CreateTexture (MTLTextureDescriptor desc)
-public abstract IMTLTexture CreateTexture (MTLTextureDescriptor descriptor, UIntPtr offset)
+public virtual IMTLTexture CreateTexture (MTLTextureDescriptor descriptor, UIntPtr offset)
-public abstract UIntPtr GetMaxAvailableSize (UIntPtr alignment)
+public virtual UIntPtr GetMaxAvailableSize (UIntPtr alignment)
-public abstract MTLPurgeableState SetPurgeableState (MTLPurgeableState state)
+public virtual MTLPurgeableState SetPurgeableState (MTLPurgeableState state)

Added methods:

public virtual IMTLAccelerationStructure CreateAccelerationStructure (MTLAccelerationStructureDescriptor descriptor);
public virtual IMTLAccelerationStructure CreateAccelerationStructure (UIntPtr size);
public virtual IMTLAccelerationStructure CreateAccelerationStructure (MTLAccelerationStructureDescriptor descriptor, UIntPtr offset);
public virtual IMTLAccelerationStructure CreateAccelerationStructure (UIntPtr size, UIntPtr offset);

Type Changed: Metal.IMTLIndirectCommandBuffer

Added interface:

IMTLAllocation

Modified properties:

-public abstract UIntPtr Size { get; }
+public virtual UIntPtr Size { get; }

Added property:

public virtual MTLResourceId GpuResourceID { get; }

Modified methods:

-public abstract IMTLIndirectRenderCommand GetCommand (UIntPtr commandIndex)
+public virtual IMTLIndirectRenderCommand GetCommand (UIntPtr commandIndex)
-public abstract IMTLIndirectComputeCommand GetIndirectComputeCommand (UIntPtr commandIndex)
+public virtual IMTLIndirectComputeCommand GetIndirectComputeCommand (UIntPtr commandIndex)
-public abstract void Reset (Foundation.NSRange range)
+public virtual void Reset (Foundation.NSRange range)

Type Changed: Metal.IMTLIndirectComputeCommand

Modified methods:

-public abstract void ClearBarrier ()
+public virtual void ClearBarrier ()
-public abstract void ConcurrentDispatchThreadgroups (MTLSize threadgroupsPerGrid, MTLSize threadsPerThreadgroup)
+public virtual void ConcurrentDispatchThreadgroups (MTLSize threadgroupsPerGrid, MTLSize threadsPerThreadgroup)
-public abstract void ConcurrentDispatchThreads (MTLSize threadsPerGrid, MTLSize threadsPerThreadgroup)
+public virtual void ConcurrentDispatchThreads (MTLSize threadsPerGrid, MTLSize threadsPerThreadgroup)
-public abstract void Reset ()
+public virtual void Reset ()
-public abstract void SetBarrier ()
+public virtual void SetBarrier ()
-public abstract void SetComputePipelineState (IMTLComputePipelineState pipelineState)
+public virtual void SetComputePipelineState (IMTLComputePipelineState pipelineState)
-public abstract void SetImageblock (UIntPtr width, UIntPtr height)
+public virtual void SetImageblock (UIntPtr width, UIntPtr height)
-public abstract void SetKernelBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index)
+public virtual void SetKernelBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index)
-public abstract void SetStageInRegion (MTLRegion region)
+public virtual void SetStageInRegion (MTLRegion region)
-public abstract void SetThreadgroupMemoryLength (UIntPtr length, UIntPtr index)
+public virtual void SetThreadgroupMemoryLength (UIntPtr length, UIntPtr index)

Added method:

public virtual void SetKernelBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr stride, UIntPtr index);

Type Changed: Metal.IMTLIndirectRenderCommand

Modified methods:

-public abstract void DrawIndexedPatches (UIntPtr numberOfPatchControlPoints, UIntPtr patchStart, UIntPtr patchCount, IMTLBuffer patchIndexBuffer, UIntPtr patchIndexBufferOffset, IMTLBuffer controlPointIndexBuffer, UIntPtr controlPointIndexBufferOffset, UIntPtr instanceCount, UIntPtr baseInstance, IMTLBuffer buffer, UIntPtr offset, UIntPtr instanceStride)
+public virtual void DrawIndexedPatches (UIntPtr numberOfPatchControlPoints, UIntPtr patchStart, UIntPtr patchCount, IMTLBuffer patchIndexBuffer, UIntPtr patchIndexBufferOffset, IMTLBuffer controlPointIndexBuffer, UIntPtr controlPointIndexBufferOffset, UIntPtr instanceCount, UIntPtr baseInstance, IMTLBuffer buffer, UIntPtr offset, UIntPtr instanceStride)
-public abstract void DrawIndexedPrimitives (MTLPrimitiveType primitiveType, UIntPtr indexCount, MTLIndexType indexType, IMTLBuffer indexBuffer, UIntPtr indexBufferOffset, UIntPtr instanceCount, IntPtr baseVertex, UIntPtr baseInstance)
+public virtual void DrawIndexedPrimitives (MTLPrimitiveType primitiveType, UIntPtr indexCount, MTLIndexType indexType, IMTLBuffer indexBuffer, UIntPtr indexBufferOffset, UIntPtr instanceCount, IntPtr baseVertex, UIntPtr baseInstance)
-public abstract void DrawPatches (UIntPtr numberOfPatchControlPoints, UIntPtr patchStart, UIntPtr patchCount, IMTLBuffer patchIndexBuffer, UIntPtr patchIndexBufferOffset, UIntPtr instanceCount, UIntPtr baseInstance, IMTLBuffer buffer, UIntPtr offset, UIntPtr instanceStride)
+public virtual void DrawPatches (UIntPtr numberOfPatchControlPoints, UIntPtr patchStart, UIntPtr patchCount, IMTLBuffer patchIndexBuffer, UIntPtr patchIndexBufferOffset, UIntPtr instanceCount, UIntPtr baseInstance, IMTLBuffer buffer, UIntPtr offset, UIntPtr instanceStride)
-public abstract void DrawPrimitives (MTLPrimitiveType primitiveType, UIntPtr vertexStart, UIntPtr vertexCount, UIntPtr instanceCount, UIntPtr baseInstance)
+public virtual void DrawPrimitives (MTLPrimitiveType primitiveType, UIntPtr vertexStart, UIntPtr vertexCount, UIntPtr instanceCount, UIntPtr baseInstance)
-public abstract void Reset ()
+public virtual void Reset ()
-public abstract void SetFragmentBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index)
+public virtual void SetFragmentBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index)
-public abstract void SetRenderPipelineState (IMTLRenderPipelineState pipelineState)
+public virtual void SetRenderPipelineState (IMTLRenderPipelineState pipelineState)
-public abstract void SetVertexBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index)
+public virtual void SetVertexBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index)

Added methods:

public virtual void ClearBarrier ();
public virtual void DrawMeshThreadgroups (MTLSize threadgroupsPerGrid, MTLSize threadsPerObjectThreadgroup, MTLSize threadsPerMeshThreadgroup);
public virtual void DrawMeshThreads (MTLSize threadsPerGrid, MTLSize threadsPerObjectThreadgroup, MTLSize threadsPerMeshThreadgroup);
public virtual void SetBarrier ();
public virtual void SetMeshBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index);
public virtual void SetObjectBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index);
public virtual void SetObjectThreadgroupMemoryLength (UIntPtr length, UIntPtr index);
public virtual void SetVertexBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr stride, UIntPtr index);

Type Changed: Metal.IMTLIntersectionFunctionTable

Added interface:

IMTLAllocation

Added property:

public virtual MTLResourceId GpuResourceId { get; }

Modified methods:

-public abstract void SetBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index)
+public virtual void SetBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index)
-public abstract void SetBuffers (IntPtr buffers, IntPtr offsets, Foundation.NSRange range)
+public virtual void SetBuffers (IntPtr buffers, IntPtr offsets, Foundation.NSRange range)
-public abstract void SetFunction (IMTLFunctionHandle function, UIntPtr index)
+public virtual void SetFunction (IMTLFunctionHandle function, UIntPtr index)
-public abstract void SetFunctions (IMTLFunctionHandle[] functions, Foundation.NSRange range)
+public virtual void SetFunctions (IMTLFunctionHandle[] functions, Foundation.NSRange range)
-public abstract void SetOpaqueTriangleIntersectionFunction (MTLIntersectionFunctionSignature signature, Foundation.NSRange range)
+public virtual void SetOpaqueTriangleIntersectionFunction (MTLIntersectionFunctionSignature signature, Foundation.NSRange range)
-public abstract void SetOpaqueTriangleIntersectionFunction (MTLIntersectionFunctionSignature signature, UIntPtr index)
+public virtual void SetOpaqueTriangleIntersectionFunction (MTLIntersectionFunctionSignature signature, UIntPtr index)
-public abstract void SetVisibleFunctionTable (IMTLVisibleFunctionTable functionTable, UIntPtr bufferIndex)
+public virtual void SetVisibleFunctionTable (IMTLVisibleFunctionTable functionTable, UIntPtr bufferIndex)
-public abstract void SetVisibleFunctionTables (IMTLVisibleFunctionTable[] functionTables, Foundation.NSRange bufferRange)
+public virtual void SetVisibleFunctionTables (IMTLVisibleFunctionTable[] functionTables, Foundation.NSRange bufferRange)

Added methods:

public virtual void SetOpaqueCurveIntersectionFunction (MTLIntersectionFunctionSignature signature, Foundation.NSRange range);
public virtual void SetOpaqueCurveIntersectionFunction (MTLIntersectionFunctionSignature signature, UIntPtr index);

Type Changed: Metal.IMTLLibrary

Modified properties:

-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract string[] FunctionNames { get; }
+public virtual string[] FunctionNames { get; }
-public abstract string InstallName { get; }
+public virtual string InstallName { get; }
-public abstract string Label { get; set; }
+public virtual string Label { get; set; }
-public abstract MTLLibraryType Type { get; }
+public virtual MTLLibraryType Type { get; }

Modified methods:

-public abstract IMTLFunction CreateFunction (string functionName)
+public virtual IMTLFunction CreateFunction (string functionName)
-public abstract void CreateFunction (MTLFunctionDescriptor descriptor, System.Action%LESSERTHANREPLACEMENT%IMTLFunction,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void CreateFunction (MTLFunctionDescriptor descriptor, System.Action%LESSERTHANREPLACEMENT%IMTLFunction,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract IMTLFunction CreateFunction (MTLFunctionDescriptor descriptor, out Foundation.NSError error)
+public virtual IMTLFunction CreateFunction (MTLFunctionDescriptor descriptor, out Foundation.NSError error)
-public abstract void CreateFunction (string name, MTLFunctionConstantValues constantValues, System.Action%LESSERTHANREPLACEMENT%IMTLFunction,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void CreateFunction (string name, MTLFunctionConstantValues constantValues, System.Action%LESSERTHANREPLACEMENT%IMTLFunction,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract IMTLFunction CreateFunction (string name, MTLFunctionConstantValues constantValues, out Foundation.NSError error)
+public virtual IMTLFunction CreateFunction (string name, MTLFunctionConstantValues constantValues, out Foundation.NSError error)
-public abstract void CreateIntersectionFunction (MTLIntersectionFunctionDescriptor descriptor, System.Action%LESSERTHANREPLACEMENT%IMTLFunction,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void CreateIntersectionFunction (MTLIntersectionFunctionDescriptor descriptor, System.Action%LESSERTHANREPLACEMENT%IMTLFunction,Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
-public abstract IMTLFunction CreateIntersectionFunction (MTLIntersectionFunctionDescriptor descriptor, out Foundation.NSError error)
+public virtual IMTLFunction CreateIntersectionFunction (MTLIntersectionFunctionDescriptor descriptor, out Foundation.NSError error)

Added method:

public virtual System.Threading.Tasks.Task<IMTLFunction> CreateFunctionAsync (string name, MTLFunctionConstantValues constantValues);

Type Changed: Metal.IMTLParallelRenderCommandEncoder

Modified methods:

-public abstract IMTLRenderCommandEncoder CreateRenderCommandEncoder ()
+public virtual IMTLRenderCommandEncoder CreateRenderCommandEncoder ()
-public abstract void SetColorStoreAction (MTLStoreAction storeAction, UIntPtr colorAttachmentIndex)
+public virtual void SetColorStoreAction (MTLStoreAction storeAction, UIntPtr colorAttachmentIndex)
-public abstract void SetColorStoreActionOptions (MTLStoreActionOptions storeActionOptions, UIntPtr colorAttachmentIndex)
+public virtual void SetColorStoreActionOptions (MTLStoreActionOptions storeActionOptions, UIntPtr colorAttachmentIndex)
-public abstract void SetDepthStoreAction (MTLStoreAction storeAction)
+public virtual void SetDepthStoreAction (MTLStoreAction storeAction)
-public abstract void SetDepthStoreActionOptions (MTLStoreActionOptions storeActionOptions)
+public virtual void SetDepthStoreActionOptions (MTLStoreActionOptions storeActionOptions)
-public abstract void SetStencilStoreAction (MTLStoreAction storeAction)
+public virtual void SetStencilStoreAction (MTLStoreAction storeAction)
-public abstract void SetStencilStoreActionOptions (MTLStoreActionOptions storeActionOptions)
+public virtual void SetStencilStoreActionOptions (MTLStoreActionOptions storeActionOptions)

Type Changed: Metal.IMTLRasterizationRateMap

Modified properties:

-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract string Label { get; }
+public virtual string Label { get; }
-public abstract UIntPtr LayerCount { get; }
+public virtual UIntPtr LayerCount { get; }
-public abstract MTLSizeAndAlign ParameterBufferSizeAndAlign { get; }
+public virtual MTLSizeAndAlign ParameterBufferSizeAndAlign { get; }
-public abstract MTLSize PhysicalGranularity { get; }
+public virtual MTLSize PhysicalGranularity { get; }
-public abstract MTLSize ScreenSize { get; }
+public virtual MTLSize ScreenSize { get; }

Modified methods:

-public abstract void CopyParameterData (IMTLBuffer buffer, UIntPtr offset)
+public virtual void CopyParameterData (IMTLBuffer buffer, UIntPtr offset)
-public abstract MTLSize GetPhysicalSize (UIntPtr layerIndex)
+public virtual MTLSize GetPhysicalSize (UIntPtr layerIndex)
-public abstract MTLCoordinate2D MapPhysicalToScreenCoordinates (MTLCoordinate2D physicalCoordinates, UIntPtr layerIndex)
+public virtual MTLCoordinate2D MapPhysicalToScreenCoordinates (MTLCoordinate2D physicalCoordinates, UIntPtr layerIndex)
-public abstract MTLCoordinate2D MapScreenToPhysicalCoordinates (MTLCoordinate2D screenCoordinates, UIntPtr layerIndex)
+public virtual MTLCoordinate2D MapScreenToPhysicalCoordinates (MTLCoordinate2D screenCoordinates, UIntPtr layerIndex)

Type Changed: Metal.IMTLRenderCommandEncoder

Modified properties:

-public abstract UIntPtr TileHeight { get; }
+public virtual UIntPtr TileHeight { get; }
-public abstract UIntPtr TileWidth { get; }
+public virtual UIntPtr TileWidth { get; }

Modified methods:

-public abstract void DispatchThreadsPerTile (MTLSize threadsPerTile)
+public virtual void DispatchThreadsPerTile (MTLSize threadsPerTile)
-public abstract void DrawIndexedPatches (UIntPtr numberOfPatchControlPoints, IMTLBuffer patchIndexBuffer, UIntPtr patchIndexBufferOffset, IMTLBuffer controlPointIndexBuffer, UIntPtr controlPointIndexBufferOffset, IMTLBuffer indirectBuffer, UIntPtr indirectBufferOffset)
+public virtual void DrawIndexedPatches (UIntPtr numberOfPatchControlPoints, IMTLBuffer patchIndexBuffer, UIntPtr patchIndexBufferOffset, IMTLBuffer controlPointIndexBuffer, UIntPtr controlPointIndexBufferOffset, IMTLBuffer indirectBuffer, UIntPtr indirectBufferOffset)
-public abstract void DrawIndexedPatches (UIntPtr numberOfPatchControlPoints, UIntPtr patchStart, UIntPtr patchCount, IMTLBuffer patchIndexBuffer, UIntPtr patchIndexBufferOffset, IMTLBuffer controlPointIndexBuffer, UIntPtr controlPointIndexBufferOffset, UIntPtr instanceCount, UIntPtr baseInstance)
+public virtual void DrawIndexedPatches (UIntPtr numberOfPatchControlPoints, UIntPtr patchStart, UIntPtr patchCount, IMTLBuffer patchIndexBuffer, UIntPtr patchIndexBufferOffset, IMTLBuffer controlPointIndexBuffer, UIntPtr controlPointIndexBufferOffset, UIntPtr instanceCount, UIntPtr baseInstance)
-public abstract void DrawIndexedPrimitives (MTLPrimitiveType primitiveType, UIntPtr indexCount, MTLIndexType indexType, IMTLBuffer indexBuffer, UIntPtr indexBufferOffset)
+public virtual void DrawIndexedPrimitives (MTLPrimitiveType primitiveType, UIntPtr indexCount, MTLIndexType indexType, IMTLBuffer indexBuffer, UIntPtr indexBufferOffset)
-public abstract void DrawIndexedPrimitives (MTLPrimitiveType primitiveType, MTLIndexType indexType, IMTLBuffer indexBuffer, UIntPtr indexBufferOffset, IMTLBuffer indirectBuffer, UIntPtr indirectBufferOffset)
+public virtual void DrawIndexedPrimitives (MTLPrimitiveType primitiveType, MTLIndexType indexType, IMTLBuffer indexBuffer, UIntPtr indexBufferOffset, IMTLBuffer indirectBuffer, UIntPtr indirectBufferOffset)
-public abstract void DrawIndexedPrimitives (MTLPrimitiveType primitiveType, UIntPtr indexCount, MTLIndexType indexType, IMTLBuffer indexBuffer, UIntPtr indexBufferOffset, UIntPtr instanceCount)
+public virtual void DrawIndexedPrimitives (MTLPrimitiveType primitiveType, UIntPtr indexCount, MTLIndexType indexType, IMTLBuffer indexBuffer, UIntPtr indexBufferOffset, UIntPtr instanceCount)
-public abstract void DrawIndexedPrimitives (MTLPrimitiveType primitiveType, UIntPtr indexCount, MTLIndexType indexType, IMTLBuffer indexBuffer, UIntPtr indexBufferOffset, UIntPtr instanceCount, IntPtr baseVertex, UIntPtr baseInstance)
+public virtual void DrawIndexedPrimitives (MTLPrimitiveType primitiveType, UIntPtr indexCount, MTLIndexType indexType, IMTLBuffer indexBuffer, UIntPtr indexBufferOffset, UIntPtr instanceCount, IntPtr baseVertex, UIntPtr baseInstance)
-public abstract void DrawPatches (UIntPtr numberOfPatchControlPoints, IMTLBuffer patchIndexBuffer, UIntPtr patchIndexBufferOffset, IMTLBuffer indirectBuffer, UIntPtr indirectBufferOffset)
+public virtual void DrawPatches (UIntPtr numberOfPatchControlPoints, IMTLBuffer patchIndexBuffer, UIntPtr patchIndexBufferOffset, IMTLBuffer indirectBuffer, UIntPtr indirectBufferOffset)
-public abstract void DrawPatches (UIntPtr numberOfPatchControlPoints, UIntPtr patchStart, UIntPtr patchCount, IMTLBuffer patchIndexBuffer, UIntPtr patchIndexBufferOffset, UIntPtr instanceCount, UIntPtr baseInstance)
+public virtual void DrawPatches (UIntPtr numberOfPatchControlPoints, UIntPtr patchStart, UIntPtr patchCount, IMTLBuffer patchIndexBuffer, UIntPtr patchIndexBufferOffset, UIntPtr instanceCount, UIntPtr baseInstance)
-public abstract void DrawPrimitives (MTLPrimitiveType primitiveType, IMTLBuffer indirectBuffer, UIntPtr indirectBufferOffset)
+public virtual void DrawPrimitives (MTLPrimitiveType primitiveType, IMTLBuffer indirectBuffer, UIntPtr indirectBufferOffset)
-public abstract void DrawPrimitives (MTLPrimitiveType primitiveType, UIntPtr vertexStart, UIntPtr vertexCount)
+public virtual void DrawPrimitives (MTLPrimitiveType primitiveType, UIntPtr vertexStart, UIntPtr vertexCount)
-public abstract void DrawPrimitives (MTLPrimitiveType primitiveType, UIntPtr vertexStart, UIntPtr vertexCount, UIntPtr instanceCount)
+public virtual void DrawPrimitives (MTLPrimitiveType primitiveType, UIntPtr vertexStart, UIntPtr vertexCount, UIntPtr instanceCount)
-public abstract void DrawPrimitives (MTLPrimitiveType primitiveType, UIntPtr vertexStart, UIntPtr vertexCount, UIntPtr instanceCount, UIntPtr baseInstance)
+public virtual void DrawPrimitives (MTLPrimitiveType primitiveType, UIntPtr vertexStart, UIntPtr vertexCount, UIntPtr instanceCount, UIntPtr baseInstance)
-public abstract void ExecuteCommands (IMTLIndirectCommandBuffer indirectCommandBuffer, Foundation.NSRange executionRange)
+public virtual void ExecuteCommands (IMTLIndirectCommandBuffer indirectCommandBuffer, Foundation.NSRange executionRange)
-public abstract void ExecuteCommands (IMTLIndirectCommandBuffer indirectCommandbuffer, IMTLBuffer indirectRangeBuffer, UIntPtr indirectBufferOffset)
+public virtual void ExecuteCommands (IMTLIndirectCommandBuffer indirectCommandbuffer, IMTLBuffer indirectRangeBuffer, UIntPtr indirectBufferOffset)
-public abstract void MemoryBarrier (MTLBarrierScope scope, MTLRenderStages after, MTLRenderStages before)
+public virtual void MemoryBarrier (MTLBarrierScope scope, MTLRenderStages after, MTLRenderStages before)
-public abstract void MemoryBarrier (IMTLResource[] resources, UIntPtr count, MTLRenderStages after, MTLRenderStages before)
+public virtual void MemoryBarrier (IMTLResource[] resources, UIntPtr count, MTLRenderStages after, MTLRenderStages before)
-public abstract void SampleCounters (IMTLCounterSampleBuffer sampleBuffer, UIntPtr sampleIndex, bool barrier)
+public virtual void SampleCounters (IMTLCounterSampleBuffer sampleBuffer, UIntPtr sampleIndex, bool barrier)
-public abstract void SetBlendColor (float red, float green, float blue, float alpha)
+public virtual void SetBlendColor (float red, float green, float blue, float alpha)
-public abstract void SetColorStoreAction (MTLStoreAction storeAction, UIntPtr colorAttachmentIndex)
+public virtual void SetColorStoreAction (MTLStoreAction storeAction, UIntPtr colorAttachmentIndex)
-public abstract void SetColorStoreActionOptions (MTLStoreActionOptions storeActionOptions, UIntPtr colorAttachmentIndex)
+public virtual void SetColorStoreActionOptions (MTLStoreActionOptions storeActionOptions, UIntPtr colorAttachmentIndex)
-public abstract void SetCullMode (MTLCullMode cullMode)
+public virtual void SetCullMode (MTLCullMode cullMode)
-public abstract void SetDepthBias (float depthBias, float slopeScale, float clamp)
+public virtual void SetDepthBias (float depthBias, float slopeScale, float clamp)
-public abstract void SetDepthClipMode (MTLDepthClipMode depthClipMode)
+public virtual void SetDepthClipMode (MTLDepthClipMode depthClipMode)
-public abstract void SetDepthStencilState (IMTLDepthStencilState depthStencilState)
+public virtual void SetDepthStencilState (IMTLDepthStencilState depthStencilState)
-public abstract void SetDepthStoreAction (MTLStoreAction storeAction)
+public virtual void SetDepthStoreAction (MTLStoreAction storeAction)
-public abstract void SetDepthStoreActionOptions (MTLStoreActionOptions storeActionOptions)
+public virtual void SetDepthStoreActionOptions (MTLStoreActionOptions storeActionOptions)
-public abstract void SetFragmentAccelerationStructure (IMTLAccelerationStructure accelerationStructure, UIntPtr bufferIndex)
+public virtual void SetFragmentAccelerationStructure (IMTLAccelerationStructure accelerationStructure, UIntPtr bufferIndex)
-public abstract void SetFragmentBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index)
+public virtual void SetFragmentBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index)
-public abstract void SetFragmentBufferOffset (UIntPtr offset, UIntPtr index)
+public virtual void SetFragmentBufferOffset (UIntPtr offset, UIntPtr index)
-public abstract void SetFragmentBuffers (IMTLBuffer buffers, IntPtr IntPtrOffsets, Foundation.NSRange range)
+public virtual void SetFragmentBuffers (IMTLBuffer buffers, IntPtr IntPtrOffsets, Foundation.NSRange range)
-public abstract void SetFragmentBytes (IntPtr bytes, UIntPtr length, UIntPtr index)
+public virtual void SetFragmentBytes (IntPtr bytes, UIntPtr length, UIntPtr index)
-public abstract void SetFragmentIntersectionFunctionTable (IMTLIntersectionFunctionTable intersectionFunctionTable, UIntPtr bufferIndex)
+public virtual void SetFragmentIntersectionFunctionTable (IMTLIntersectionFunctionTable intersectionFunctionTable, UIntPtr bufferIndex)
-public abstract void SetFragmentIntersectionFunctionTables (IMTLIntersectionFunctionTable[] intersectionFunctionTable, Foundation.NSRange range)
+public virtual void SetFragmentIntersectionFunctionTables (IMTLIntersectionFunctionTable[] intersectionFunctionTable, Foundation.NSRange range)
-public abstract void SetFragmentSamplerState (IMTLSamplerState sampler, UIntPtr index)
+public virtual void SetFragmentSamplerState (IMTLSamplerState sampler, UIntPtr index)
-public abstract void SetFragmentSamplerState (IMTLSamplerState sampler, float lodMinClamp, float lodMaxClamp, UIntPtr index)
+public virtual void SetFragmentSamplerState (IMTLSamplerState sampler, float lodMinClamp, float lodMaxClamp, UIntPtr index)
-public abstract void SetFragmentSamplerStates (IMTLSamplerState[] samplers, Foundation.NSRange range)
+public virtual void SetFragmentSamplerStates (IMTLSamplerState[] samplers, Foundation.NSRange range)
-public abstract void SetFragmentSamplerStates (IMTLSamplerState[] samplers, IntPtr floatArrayPtrLodMinClamps, IntPtr floatArrayPtrLodMaxClamps, Foundation.NSRange range)
+public virtual void SetFragmentSamplerStates (IMTLSamplerState[] samplers, IntPtr floatArrayPtrLodMinClamps, IntPtr floatArrayPtrLodMaxClamps, Foundation.NSRange range)
-public abstract void SetFragmentTexture (IMTLTexture texture, UIntPtr index)
+public virtual void SetFragmentTexture (IMTLTexture texture, UIntPtr index)
-public abstract void SetFragmentTextures (IMTLTexture[] textures, Foundation.NSRange range)
+public virtual void SetFragmentTextures (IMTLTexture[] textures, Foundation.NSRange range)
-public abstract void SetFragmentVisibleFunctionTable (IMTLVisibleFunctionTable functionTable, UIntPtr bufferIndex)
+public virtual void SetFragmentVisibleFunctionTable (IMTLVisibleFunctionTable functionTable, UIntPtr bufferIndex)
-public abstract void SetFragmentVisibleFunctionTables (IMTLVisibleFunctionTable[] functionTables, Foundation.NSRange range)
+public virtual void SetFragmentVisibleFunctionTables (IMTLVisibleFunctionTable[] functionTables, Foundation.NSRange range)
-public abstract void SetFrontFacingWinding (MTLWinding frontFacingWinding)
+public virtual void SetFrontFacingWinding (MTLWinding frontFacingWinding)
-public abstract void SetRenderPipelineState (IMTLRenderPipelineState pipelineState)
+public virtual void SetRenderPipelineState (IMTLRenderPipelineState pipelineState)
-public abstract void SetScissorRect (MTLScissorRect rect)
+public virtual void SetScissorRect (MTLScissorRect rect)
-public abstract void SetScissorRects (IntPtr scissorRects, UIntPtr count)
+public virtual void SetScissorRects (IntPtr scissorRects, UIntPtr count)
-public abstract void SetStencilFrontReferenceValue (uint frontReferenceValue, uint backReferenceValue)
+public virtual void SetStencilFrontReferenceValue (uint frontReferenceValue, uint backReferenceValue)
-public abstract void SetStencilReferenceValue (uint referenceValue)
+public virtual void SetStencilReferenceValue (uint referenceValue)
-public abstract void SetStencilStoreAction (MTLStoreAction storeAction)
+public virtual void SetStencilStoreAction (MTLStoreAction storeAction)
-public abstract void SetStencilStoreActionOptions (MTLStoreActionOptions storeActionOptions)
+public virtual void SetStencilStoreActionOptions (MTLStoreActionOptions storeActionOptions)
-public abstract void SetTessellationFactorBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr instanceStride)
+public virtual void SetTessellationFactorBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr instanceStride)
-public abstract void SetTessellationFactorScale (float scale)
+public virtual void SetTessellationFactorScale (float scale)
-public abstract void SetThreadgroupMemoryLength (UIntPtr length, UIntPtr offset, UIntPtr index)
+public virtual void SetThreadgroupMemoryLength (UIntPtr length, UIntPtr offset, UIntPtr index)
-public abstract void SetTileAccelerationStructure (IMTLAccelerationStructure accelerationStructure, UIntPtr bufferIndex)
+public virtual void SetTileAccelerationStructure (IMTLAccelerationStructure accelerationStructure, UIntPtr bufferIndex)
-public abstract void SetTileBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index)
+public virtual void SetTileBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index)
-public abstract void SetTileBufferOffset (UIntPtr offset, UIntPtr index)
+public virtual void SetTileBufferOffset (UIntPtr offset, UIntPtr index)
-public abstract void SetTileBuffers (IMTLBuffer[] buffers, IntPtr offsets, Foundation.NSRange range)
+public virtual void SetTileBuffers (IMTLBuffer[] buffers, IntPtr offsets, Foundation.NSRange range)
-public abstract void SetTileBytes (IntPtr bytes, UIntPtr length, UIntPtr index)
+public virtual void SetTileBytes (IntPtr bytes, UIntPtr length, UIntPtr index)
-public abstract void SetTileIntersectionFunctionTable (IMTLIntersectionFunctionTable intersectionFunctionTable, UIntPtr bufferIndex)
+public virtual void SetTileIntersectionFunctionTable (IMTLIntersectionFunctionTable intersectionFunctionTable, UIntPtr bufferIndex)
-public abstract void SetTileIntersectionFunctionTables (IMTLIntersectionFunctionTable[] intersectionFunctionTable, Foundation.NSRange range)
+public virtual void SetTileIntersectionFunctionTables (IMTLIntersectionFunctionTable[] intersectionFunctionTable, Foundation.NSRange range)
-public abstract void SetTileSamplerState (IMTLSamplerState sampler, UIntPtr index)
+public virtual void SetTileSamplerState (IMTLSamplerState sampler, UIntPtr index)
-public abstract void SetTileSamplerState (IMTLSamplerState sampler, float lodMinClamp, float lodMaxClamp, UIntPtr index)
+public virtual void SetTileSamplerState (IMTLSamplerState sampler, float lodMinClamp, float lodMaxClamp, UIntPtr index)
-public abstract void SetTileSamplerStates (IMTLSamplerState[] samplers, Foundation.NSRange range)
+public virtual void SetTileSamplerStates (IMTLSamplerState[] samplers, Foundation.NSRange range)
-public abstract void SetTileSamplerStates (IMTLSamplerState[] samplers, IntPtr lodMinClamps, IntPtr lodMaxClamps, Foundation.NSRange range)
+public virtual void SetTileSamplerStates (IMTLSamplerState[] samplers, IntPtr lodMinClamps, IntPtr lodMaxClamps, Foundation.NSRange range)
-public abstract void SetTileTexture (IMTLTexture texture, UIntPtr index)
+public virtual void SetTileTexture (IMTLTexture texture, UIntPtr index)
-public abstract void SetTileTextures (IMTLTexture[] textures, Foundation.NSRange range)
+public virtual void SetTileTextures (IMTLTexture[] textures, Foundation.NSRange range)
-public abstract void SetTileVisibleFunctionTable (IMTLVisibleFunctionTable functionTable, UIntPtr bufferIndex)
+public virtual void SetTileVisibleFunctionTable (IMTLVisibleFunctionTable functionTable, UIntPtr bufferIndex)
-public abstract void SetTileVisibleFunctionTables (IMTLVisibleFunctionTable[] functionTables, Foundation.NSRange range)
+public virtual void SetTileVisibleFunctionTables (IMTLVisibleFunctionTable[] functionTables, Foundation.NSRange range)
-public abstract void SetTriangleFillMode (MTLTriangleFillMode fillMode)
+public virtual void SetTriangleFillMode (MTLTriangleFillMode fillMode)
-public abstract void SetVertexAccelerationStructure (IMTLAccelerationStructure accelerationStructure, UIntPtr bufferIndex)
+public virtual void SetVertexAccelerationStructure (IMTLAccelerationStructure accelerationStructure, UIntPtr bufferIndex)
-public abstract void SetVertexAmplificationCount (UIntPtr count, MTLVertexAmplificationViewMapping viewMappings)
+public virtual void SetVertexAmplificationCount (UIntPtr count, MTLVertexAmplificationViewMapping viewMappings)
-public abstract void SetVertexBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index)
+public virtual void SetVertexBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index)
-public abstract void SetVertexBufferOffset (UIntPtr offset, UIntPtr index)
+public virtual void SetVertexBufferOffset (UIntPtr offset, UIntPtr index)
-public abstract void SetVertexBuffers (IMTLBuffer[] buffers, IntPtr uintArrayPtrOffsets, Foundation.NSRange range)
+public virtual void SetVertexBuffers (IMTLBuffer[] buffers, IntPtr uintArrayPtrOffsets, Foundation.NSRange range)
-public abstract void SetVertexBytes (IntPtr bytes, UIntPtr length, UIntPtr index)
+public virtual void SetVertexBytes (IntPtr bytes, UIntPtr length, UIntPtr index)
-public abstract void SetVertexIntersectionFunctionTable (IMTLIntersectionFunctionTable intersectionFunctionTable, UIntPtr bufferIndex)
+public virtual void SetVertexIntersectionFunctionTable (IMTLIntersectionFunctionTable intersectionFunctionTable, UIntPtr bufferIndex)
-public abstract void SetVertexIntersectionFunctionTables (IMTLIntersectionFunctionTable[] intersectionFunctionTable, Foundation.NSRange range)
+public virtual void SetVertexIntersectionFunctionTables (IMTLIntersectionFunctionTable[] intersectionFunctionTable, Foundation.NSRange range)
-public abstract void SetVertexSamplerState (IMTLSamplerState sampler, UIntPtr index)
+public virtual void SetVertexSamplerState (IMTLSamplerState sampler, UIntPtr index)
-public abstract void SetVertexSamplerState (IMTLSamplerState sampler, float lodMinClamp, float lodMaxClamp, UIntPtr index)
+public virtual void SetVertexSamplerState (IMTLSamplerState sampler, float lodMinClamp, float lodMaxClamp, UIntPtr index)
-public abstract void SetVertexSamplerStates (IMTLSamplerState[] samplers, Foundation.NSRange range)
+public virtual void SetVertexSamplerStates (IMTLSamplerState[] samplers, Foundation.NSRange range)
-public abstract void SetVertexSamplerStates (IMTLSamplerState[] samplers, IntPtr floatArrayPtrLodMinClamps, IntPtr floatArrayPtrLodMaxClamps, Foundation.NSRange range)
+public virtual void SetVertexSamplerStates (IMTLSamplerState[] samplers, IntPtr floatArrayPtrLodMinClamps, IntPtr floatArrayPtrLodMaxClamps, Foundation.NSRange range)
-public abstract void SetVertexTexture (IMTLTexture texture, UIntPtr index)
+public virtual void SetVertexTexture (IMTLTexture texture, UIntPtr index)
-public abstract void SetVertexTextures (IMTLTexture[] textures, Foundation.NSRange range)
+public virtual void SetVertexTextures (IMTLTexture[] textures, Foundation.NSRange range)
-public abstract void SetVertexVisibleFunctionTable (IMTLVisibleFunctionTable functionTable, UIntPtr bufferIndex)
+public virtual void SetVertexVisibleFunctionTable (IMTLVisibleFunctionTable functionTable, UIntPtr bufferIndex)
-public abstract void SetVertexVisibleFunctionTables (IMTLVisibleFunctionTable[] functionTables, Foundation.NSRange range)
+public virtual void SetVertexVisibleFunctionTables (IMTLVisibleFunctionTable[] functionTables, Foundation.NSRange range)
-public abstract void SetViewport (MTLViewport viewport)
+public virtual void SetViewport (MTLViewport viewport)
-public abstract void SetViewports (IntPtr viewports, UIntPtr count)
+public virtual void SetViewports (IntPtr viewports, UIntPtr count)
-public abstract void SetVisibilityResultMode (MTLVisibilityResultMode mode, UIntPtr offset)
+public virtual void SetVisibilityResultMode (MTLVisibilityResultMode mode, UIntPtr offset)
-public abstract void Update (IMTLFence fence, MTLRenderStages stages)
+public virtual void Update (IMTLFence fence, MTLRenderStages stages)
-public abstract void UseHeap (IMTLHeap heap)
+public virtual void UseHeap (IMTLHeap heap)
-public abstract void UseHeap (IMTLHeap heap, MTLRenderStages stages)
+public virtual void UseHeap (IMTLHeap heap, MTLRenderStages stages)
-public abstract void UseHeaps (IMTLHeap[] heaps, UIntPtr count)
+public virtual void UseHeaps (IMTLHeap[] heaps, UIntPtr count)
-public abstract void UseHeaps (IMTLHeap[] heaps, UIntPtr count, MTLRenderStages stages)
+public virtual void UseHeaps (IMTLHeap[] heaps, UIntPtr count, MTLRenderStages stages)
-public abstract void UseResource (IMTLResource resource, MTLResourceUsage usage)
+public virtual void UseResource (IMTLResource resource, MTLResourceUsage usage)
-public abstract void UseResource (IMTLResource resource, MTLResourceUsage usage, MTLRenderStages stages)
+public virtual void UseResource (IMTLResource resource, MTLResourceUsage usage, MTLRenderStages stages)
-public abstract void UseResources (IMTLResource[] resources, UIntPtr count, MTLResourceUsage usage)
+public virtual void UseResources (IMTLResource[] resources, UIntPtr count, MTLResourceUsage usage)
-public abstract void UseResources (IMTLResource[] resources, UIntPtr count, MTLResourceUsage usage, MTLRenderStages stages)
+public virtual void UseResources (IMTLResource[] resources, UIntPtr count, MTLResourceUsage usage, MTLRenderStages stages)
-public abstract void Wait (IMTLFence fence, MTLRenderStages stages)
+public virtual void Wait (IMTLFence fence, MTLRenderStages stages)

Added methods:

public virtual void DrawMeshThreadgroups (MTLSize threadgroupsPerGrid, MTLSize threadsPerObjectThreadgroup, MTLSize threadsPerMeshThreadgroup);
public virtual void DrawMeshThreadgroups (IMTLBuffer indirectBuffer, UIntPtr indirectBufferOffset, MTLSize threadsPerObjectThreadgroup, MTLSize threadsPerMeshThreadgroup);
public virtual void DrawMeshThreads (MTLSize threadsPerGrid, MTLSize threadsPerObjectThreadgroup, MTLSize threadsPerMeshThreadgroup);
public virtual void SetMeshBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index);
public virtual void SetMeshBufferOffset (UIntPtr offset, UIntPtr index);
public virtual void SetMeshBuffers (IntPtr buffers, IntPtr offsets, Foundation.NSRange range);
public virtual void SetMeshBytes (IntPtr bytes, UIntPtr length, UIntPtr index);
public virtual void SetMeshSamplerState (IMTLSamplerState sampler, UIntPtr index);
public virtual void SetMeshSamplerState (IMTLSamplerState sampler, float lodMinClamp, float lodMaxClamp, UIntPtr index);
public virtual void SetMeshSamplerStates (IntPtr samplers, Foundation.NSRange range);
public virtual void SetMeshSamplerStates (IntPtr samplers, IntPtr lodMinClamps, IntPtr lodMaxClamps, Foundation.NSRange range);
public virtual void SetMeshTexture (IMTLTexture texture, UIntPtr index);
public virtual void SetMeshTextures (IntPtr textures, Foundation.NSRange range);
public virtual void SetObjectBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr index);
public virtual void SetObjectBufferOffset (UIntPtr offset, UIntPtr index);
public virtual void SetObjectBuffers (IntPtr buffers, IntPtr offsets, Foundation.NSRange range);
public virtual void SetObjectBytes (IntPtr bytes, UIntPtr length, UIntPtr index);
public virtual void SetObjectSamplerState (IMTLSamplerState sampler, UIntPtr index);
public virtual void SetObjectSamplerState (IMTLSamplerState sampler, float lodMinClamp, float lodMaxClamp, UIntPtr index);
public virtual void SetObjectSamplerStates (IntPtr samplers, Foundation.NSRange range);
public virtual void SetObjectSamplerStates (IntPtr samplers, IntPtr lodMinClamps, IntPtr lodMaxClamps, Foundation.NSRange range);
public virtual void SetObjectTexture (IMTLTexture texture, UIntPtr index);
public virtual void SetObjectTextures (IntPtr textures, Foundation.NSRange range);
public virtual void SetObjectThreadgroupMemoryLength (UIntPtr length, UIntPtr index);
public virtual void SetVertexBuffer (IMTLBuffer buffer, UIntPtr offset, UIntPtr stride, UIntPtr index);
public virtual void SetVertexBufferOffset (UIntPtr offset, UIntPtr stride, UIntPtr index);
public virtual void SetVertexBuffers (IntPtr buffers, IntPtr offsets, IntPtr strides, Foundation.NSRange range);
public virtual void SetVertexBytes (IntPtr bytes, UIntPtr length, UIntPtr stride, UIntPtr index);

Type Changed: Metal.IMTLRenderPipelineState

Modified properties:

-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract UIntPtr ImageblockSampleLength { get; }
+public virtual UIntPtr ImageblockSampleLength { get; }
-public abstract string Label { get; }
+public virtual string Label { get; }
-public abstract UIntPtr MaxTotalThreadsPerThreadgroup { get; }
+public virtual UIntPtr MaxTotalThreadsPerThreadgroup { get; }
-public abstract bool SupportIndirectCommandBuffers { get; }
+public virtual bool SupportIndirectCommandBuffers { get; }
-public abstract bool ThreadgroupSizeMatchesTileSize { get; }
+public virtual bool ThreadgroupSizeMatchesTileSize { get; }

Added properties:

public virtual MTLResourceId GpuResourceId { get; }
public virtual UIntPtr MaxTotalThreadgroupsPerMeshGrid { get; }
public virtual UIntPtr MaxTotalThreadsPerMeshThreadgroup { get; }
public virtual UIntPtr MaxTotalThreadsPerObjectThreadgroup { get; }
public virtual UIntPtr MeshThreadExecutionWidth { get; }
public virtual UIntPtr ObjectThreadExecutionWidth { get; }
public virtual MTLShaderValidation ShaderValidation { get; }

Modified methods:

-public abstract IMTLFunctionHandle FunctionHandleWithFunction (IMTLFunction function, MTLRenderStages stage)
+public virtual IMTLFunctionHandle FunctionHandleWithFunction (IMTLFunction function, MTLRenderStages stage)
-public abstract UIntPtr GetImageblockMemoryLength (MTLSize imageblockDimensions)
+public virtual UIntPtr GetImageblockMemoryLength (MTLSize imageblockDimensions)
-public abstract IMTLIntersectionFunctionTable NewIntersectionFunctionTableWithDescriptor (MTLIntersectionFunctionTableDescriptor descriptor, MTLRenderStages stage)
+public virtual IMTLIntersectionFunctionTable NewIntersectionFunctionTableWithDescriptor (MTLIntersectionFunctionTableDescriptor descriptor, MTLRenderStages stage)
-public abstract IMTLRenderPipelineState NewRenderPipelineStateWithAdditionalBinaryFunctions (MTLRenderPipelineFunctionsDescriptor additionalBinaryFunctions, out Foundation.NSError error)
+public virtual IMTLRenderPipelineState NewRenderPipelineStateWithAdditionalBinaryFunctions (MTLRenderPipelineFunctionsDescriptor additionalBinaryFunctions, out Foundation.NSError error)
-public abstract IMTLVisibleFunctionTable NewVisibleFunctionTableWithDescriptor (MTLVisibleFunctionTableDescriptor descriptor, MTLRenderStages stage)
+public virtual IMTLVisibleFunctionTable NewVisibleFunctionTableWithDescriptor (MTLVisibleFunctionTableDescriptor descriptor, MTLRenderStages stage)

Type Changed: Metal.IMTLResource

Added interface:

IMTLAllocation

Modified properties:

-public abstract UIntPtr AllocatedSize { get; }
+public virtual UIntPtr AllocatedSize { get; }
-public abstract MTLCpuCacheMode CpuCacheMode { get; }
+public virtual MTLCpuCacheMode CpuCacheMode { get; }
-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract MTLHazardTrackingMode HazardTrackingMode { get; }
+public virtual MTLHazardTrackingMode HazardTrackingMode { get; }
-public abstract IMTLHeap Heap { get; }
+public virtual IMTLHeap Heap { get; }
-public abstract UIntPtr HeapOffset { get; }
+public virtual UIntPtr HeapOffset { get; }
-public abstract bool IsAliasable { get; }
+public virtual bool IsAliasable { get; }
-public abstract string Label { get; set; }
+public virtual string Label { get; set; }
-public abstract MTLResourceOptions ResourceOptions { get; }
+public virtual MTLResourceOptions ResourceOptions { get; }
-public abstract MTLStorageMode StorageMode { get; }
+public virtual MTLStorageMode StorageMode { get; }

Modified methods:

-public abstract void MakeAliasable ()
+public virtual void MakeAliasable ()
-public abstract MTLPurgeableState SetPurgeableState (MTLPurgeableState state)
+public virtual MTLPurgeableState SetPurgeableState (MTLPurgeableState state)

Added method:

public virtual int SetOwnerWithIdentity (uint taskIdToken);

Type Changed: Metal.IMTLResourceStateCommandEncoder

Added methods:

public virtual void MoveTextureMappings (IMTLTexture sourceTexture, UIntPtr sourceSlice, UIntPtr sourceLevel, MTLOrigin sourceOrigin, MTLSize sourceSize, IMTLTexture destinationTexture, UIntPtr destinationSlice, UIntPtr destinationLevel, MTLOrigin destinationOrigin);
public virtual void Update (IMTLFence fence);
public virtual void Update (IMTLTexture texture, MTLSparseTextureMappingMode mode, IMTLBuffer indirectBuffer, UIntPtr indirectBufferOffset);
public virtual void Update (IMTLTexture texture, MTLSparseTextureMappingMode mode, MTLRegion region, UIntPtr mipLevel, UIntPtr slice);
public virtual void Update (IMTLTexture texture, MTLSparseTextureMappingMode mode, IntPtr regions, IntPtr mipLevels, IntPtr slices, UIntPtr numRegions);
public virtual void Wait (IMTLFence fence);

Type Changed: Metal.IMTLSamplerState

Modified properties:

-public abstract IMTLDevice Device { get; }
+public virtual IMTLDevice Device { get; }
-public abstract string Label { get; }
+public virtual string Label { get; }

Added property:

public virtual MTLResourceId GpuResourceId { get; }

Type Changed: Metal.IMTLSharedEvent

Modified properties:

-public abstract ulong SignaledValue { get; set; }
+public virtual ulong SignaledValue { get; set; }

Modified methods:

-public abstract MTLSharedEventHandle CreateSharedEventHandle ()
+public virtual MTLSharedEventHandle CreateSharedEventHandle ()
-public abstract void NotifyListener (MTLSharedEventListener listener, ulong atValue, MTLSharedEventNotificationBlock block)
+public virtual void NotifyListener (MTLSharedEventListener listener, ulong atValue, MTLSharedEventNotificationBlock block)

Added method:

public virtual bool WaitUntilSignaledValue (ulong value, ulong milliseconds);

Type Changed: Metal.IMTLTexture

Added interface:

IMTLAllocation

Modified properties:

-public abstract bool AllowGpuOptimizedContents { get; }
+public virtual bool AllowGpuOptimizedContents { get; }
-public abstract UIntPtr ArrayLength { get; }
+public virtual UIntPtr ArrayLength { get; }
-public abstract IMTLBuffer Buffer { get; }
+public virtual IMTLBuffer Buffer { get; }
-public abstract UIntPtr BufferBytesPerRow { get; }
+public virtual UIntPtr BufferBytesPerRow { get; }
-public abstract UIntPtr BufferOffset { get; }
+public virtual UIntPtr BufferOffset { get; }
-public abstract UIntPtr Depth { get; }
+public virtual UIntPtr Depth { get; }
-public abstract bool FramebufferOnly { get; }
+public virtual bool FramebufferOnly { get; }
-public abstract UIntPtr Height { get; }
+public virtual UIntPtr Height { get; }
-public abstract IOSurface.IOSurface IOSurface { get; }
+public virtual IOSurface.IOSurface IOSurface { get; }
-public abstract UIntPtr IOSurfacePlane { get; }
+public virtual UIntPtr IOSurfacePlane { get; }
-public abstract UIntPtr MipmapLevelCount { get; }
+public virtual UIntPtr MipmapLevelCount { get; }
-public abstract UIntPtr ParentRelativeLevel { get; }
+public virtual UIntPtr ParentRelativeLevel { get; }
-public abstract UIntPtr ParentRelativeSlice { get; }
+public virtual UIntPtr ParentRelativeSlice { get; }
-public abstract IMTLTexture ParentTexture { get; }
+public virtual IMTLTexture ParentTexture { get; }
-public abstract MTLPixelFormat PixelFormat { get; }
+public virtual MTLPixelFormat PixelFormat { get; }
-public abstract IMTLResource RootResource { get; }
+public virtual IMTLResource RootResource { get; }
-public abstract UIntPtr SampleCount { get; }
+public virtual UIntPtr SampleCount { get; }
-public abstract bool Shareable { get; }
+public virtual bool Shareable { get; }
-public abstract MTLTextureSwizzleChannels Swizzle { get; }
+public virtual MTLTextureSwizzleChannels Swizzle { get; }
-public abstract MTLTextureType TextureType { get; }
+public virtual MTLTextureType TextureType { get; }
-public abstract MTLTextureUsage Usage { get; }
+public virtual MTLTextureUsage Usage { get; }
-public abstract UIntPtr Width { get; }
+public virtual UIntPtr Width { get; }

Added properties:

public virtual MTLTextureCompressionType CompressionType { get; }
public virtual UIntPtr FirstMipmapInTail { get; }
public virtual MTLResourceId GpuResourceId { get; }
public virtual bool IsSparse { get; }
public virtual UIntPtr TailSizeInBytes { get; }

Modified methods:

-public abstract IMTLTexture Create (MTLPixelFormat pixelFormat, MTLTextureType textureType, Foundation.NSRange levelRange, Foundation.NSRange sliceRange, MTLTextureSwizzleChannels swizzle)
+public virtual IMTLTexture Create (MTLPixelFormat pixelFormat, MTLTextureType textureType, Foundation.NSRange levelRange, Foundation.NSRange sliceRange, MTLTextureSwizzleChannels swizzle)
-public abstract MTLSharedTextureHandle CreateSharedTextureHandle ()
+public virtual MTLSharedTextureHandle CreateSharedTextureHandle ()
-public abstract IMTLTexture CreateTextureView (MTLPixelFormat pixelFormat)
+public virtual IMTLTexture CreateTextureView (MTLPixelFormat pixelFormat)
-public abstract IMTLTexture CreateTextureView (MTLPixelFormat pixelFormat, MTLTextureType textureType, Foundation.NSRange levelRange, Foundation.NSRange sliceRange)
+public virtual IMTLTexture CreateTextureView (MTLPixelFormat pixelFormat, MTLTextureType textureType, Foundation.NSRange levelRange, Foundation.NSRange sliceRange)
-public abstract void GetBytes (IntPtr pixelBytes, UIntPtr bytesPerRow, MTLRegion region, UIntPtr level)
+public virtual void GetBytes (IntPtr pixelBytes, UIntPtr bytesPerRow, MTLRegion region, UIntPtr level)
-public abstract void GetBytes (IntPtr pixelBytes, UIntPtr bytesPerRow, UIntPtr bytesPerImage, MTLRegion region, UIntPtr level, UIntPtr slice)
+public virtual void GetBytes (IntPtr pixelBytes, UIntPtr bytesPerRow, UIntPtr bytesPerImage, MTLRegion region, UIntPtr level, UIntPtr slice)
-public abstract void ReplaceRegion (MTLRegion region, UIntPtr level, IntPtr pixelBytes, UIntPtr bytesPerRow)
+public virtual void ReplaceRegion (MTLRegion region, UIntPtr level, IntPtr pixelBytes, UIntPtr bytesPerRow)
-public abstract void ReplaceRegion (MTLRegion region, UIntPtr level, UIntPtr slice, IntPtr pixelBytes, UIntPtr bytesPerRow, UIntPtr bytesPerImage)
+public virtual void ReplaceRegion (MTLRegion region, UIntPtr level, UIntPtr slice, IntPtr pixelBytes, UIntPtr bytesPerRow, UIntPtr bytesPerImage)

Type Changed: Metal.IMTLVisibleFunctionTable

Added interface:

IMTLAllocation

Added property:

public virtual MTLResourceId GpuResourceId { get; }

Modified methods:

-public abstract void SetFunction (IMTLFunctionHandle function, UIntPtr index)
+public virtual void SetFunction (IMTLFunctionHandle function, UIntPtr index)
-public abstract void SetFunctions (IMTLFunctionHandle[] functions, Foundation.NSRange range)
+public virtual void SetFunctions (IMTLFunctionHandle[] functions, Foundation.NSRange range)

Type Changed: Metal.MTLAccelerationStructureGeometryDescriptor

Added properties:

public virtual IMTLBuffer PrimitiveDataBuffer { get; set; }
public virtual UIntPtr PrimitiveDataBufferOffset { get; set; }
public virtual UIntPtr PrimitiveDataElementSize { get; set; }
public virtual UIntPtr PrimitiveDataStride { get; set; }

Type Changed: Metal.MTLAccelerationStructureInstanceDescriptorType

Added values:

Indirect = 3,
IndirectMotion = 4,

Type Changed: Metal.MTLAccelerationStructureMotionTriangleGeometryDescriptor

Added properties:

public virtual IMTLBuffer TransformationMatrixBuffer { get; set; }
public virtual UIntPtr TransformationMatrixBufferOffset { get; set; }
public virtual MTLMatrixLayout TransformationMatrixLayout { get; set; }
public virtual MTLAttributeFormat VertexFormat { get; set; }

Type Changed: Metal.MTLAccelerationStructureTriangleGeometryDescriptor

Added properties:

public virtual IMTLBuffer TransformationMatrixBuffer { get; set; }
public virtual UIntPtr TransformationMatrixBufferOffset { get; set; }
public virtual MTLMatrixLayout TransformationMatrixLayout { get; set; }
public virtual MTLAttributeFormat VertexFormat { get; set; }

Type Changed: Metal.MTLArgumentEncoder_Extensions

Added methods:

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

Type Changed: Metal.MTLAttributeFormat

Added values:

FloatRG11B10 = 54,
FloatRGB9E5 = 55,

Type Changed: Metal.MTLBinaryArchiveError

Added value:

InternalError = 4,

Type Changed: Metal.MTLCommandBufferDescriptor

Added property:

public virtual IMTLLogState LogState { get; set; }

Type Changed: Metal.MTLCompileOptions

Added properties:

public virtual bool AllowReferencingUndefinedSymbols { get; set; }
public virtual MTLCompileSymbolVisibility CompileSymbolVisibility { get; set; }
public virtual bool EnableLogging { get; set; }
public virtual MTLMathFloatingPointFunctions MathFloatingPointFunctions { get; set; }
public virtual MTLMathMode MathMode { get; set; }
public virtual UIntPtr MaxTotalThreadsPerThreadgroup { get; set; }
public virtual MTLLibraryOptimizationLevel OptimizationLevel { get; set; }

Type Changed: Metal.MTLComputePipelineDescriptor

Added property:

public virtual MTLShaderValidation ShaderValidation { get; set; }

Type Changed: Metal.MTLComputePipelineReflection

Added property:

public virtual IMTLBinding[] Bindings { get; }

Type Changed: Metal.MTLDataType

Added values:

BFloat = 121,
BFloat2 = 122,
BFloat3 = 123,
BFloat4 = 124,

Type Changed: Metal.MTLDevice_Extensions

Added methods:

public static IMTLAccelerationStructure CreateAccelerationStructure (this IMTLDevice This, MTLAccelerationStructureDescriptor descriptor);
public static IMTLAccelerationStructure CreateAccelerationStructure (this IMTLDevice This, UIntPtr size);
public static MTLAccelerationStructureSizes CreateAccelerationStructureSizes (this IMTLDevice This, MTLAccelerationStructureDescriptor descriptor);
public static IMTLArgumentEncoder CreateArgumentEncoder (this IMTLDevice This, IMTLBufferBinding bufferBinding);
public static IMTLRasterizationRateMap CreateRasterizationRateMap (this IMTLDevice This, MTLRasterizationRateMapDescriptor descriptor);
public static void CreateRenderPipelineState (this IMTLDevice This, MTLMeshRenderPipelineDescriptor descriptor, MTLPipelineOption options, MTLNewRenderPipelineStateWithReflectionCompletionHandler completionHandler);
public static IMTLRenderPipelineState CreateRenderPipelineState (this IMTLDevice This, MTLMeshRenderPipelineDescriptor descriptor, MTLPipelineOption options, out MTLRenderPipelineReflection reflection, out Foundation.NSError error);
public static MTLArchitecture GetArchitecture (this IMTLDevice This);
public static MTLSizeAndAlign GetHeapAccelerationStructureSizeAndAlign (this IMTLDevice This, MTLAccelerationStructureDescriptor descriptor);
public static MTLSizeAndAlign GetHeapAccelerationStructureSizeAndAlign (this IMTLDevice This, UIntPtr size);
public static MTLSize GetSparseTileSize (this IMTLDevice This, MTLTextureType textureType, MTLPixelFormat pixelFormat, UIntPtr sampleCount);
public static MTLSize GetSparseTileSize (this IMTLDevice This, MTLTextureType textureType, MTLPixelFormat pixelFormat, UIntPtr sampleCount, MTLSparsePageSize sparsePageSize);
public static UIntPtr GetSparseTileSizeInBytes (this IMTLDevice This);
public static UIntPtr GetSparseTileSizeInBytes (this IMTLDevice This, MTLSparsePageSize sparsePageSize);
public static bool GetSupports32BitFloatFiltering (this IMTLDevice This);
public static bool GetSupports32BitMsaa (this IMTLDevice This);
public static bool GetSupportsFunctionPointers (this IMTLDevice This);
public static bool GetSupportsFunctionPointersFromRender (this IMTLDevice This);
public static bool GetSupportsPrimitiveMotionBlur (this IMTLDevice This);
public static bool GetSupportsQueryTextureLod (this IMTLDevice This);
public static bool GetSupportsRaytracing (this IMTLDevice This);
public static bool GetSupportsRaytracingFromRender (this IMTLDevice This);
public static bool GetSupportsShaderBarycentricCoordinates (this IMTLDevice This);
public static bool SupportsRasterizationRateMap (this IMTLDevice This, UIntPtr layerCount);
public static bool SupportsVertexAmplification (this IMTLDevice This, UIntPtr count);

Type Changed: Metal.MTLFunctionOptions

Added values:

FailOnBinaryArchiveMiss = 4,
StoreFunctionInMetalPipelinesScript = 2,
StoreFunctionInMetalScript = 2,

Type Changed: Metal.MTLFunctionType

Added values:

Mesh = 7,
Object = 8,

Type Changed: Metal.MTLGpuFamily

Added values:

Apple8 = 1008,
Apple9 = 1009,
Metal3 = 5001,

Type Changed: Metal.MTLHeapDescriptor

Added property:

public virtual MTLSparsePageSize SparsePageSize { get; set; }

Type Changed: Metal.MTLIndirectCommandBufferDescriptor

Added properties:

public virtual UIntPtr MaxKernelThreadgroupMemoryBindCount { get; set; }
public virtual UIntPtr MaxMeshBufferBindCount { get; set; }
public virtual UIntPtr MaxObjectBufferBindCount { get; set; }
public virtual UIntPtr MaxObjectThreadgroupMemoryBindCount { get; set; }
public virtual bool SupportDynamicAttributeStride { get; set; }
public virtual bool SupportRayTracing { get; set; }

Type Changed: Metal.MTLIndirectCommandType

Added values:

DrawMeshThreadgroups = 128,
DrawMeshThreads = 256,

Type Changed: Metal.MTLInstanceAccelerationStructureDescriptor

Added properties:

public virtual MTLMatrixLayout InstanceTransformationMatrixLayout { get; set; }
public virtual UIntPtr MotionTransformStride { get; set; }
public virtual MTLTransformType MotionTransformType { get; set; }

Type Changed: Metal.MTLIntersectionFunctionSignature

Added values:

CurveData = 128,
MaxLevels = 64,

Type Changed: Metal.MTLLanguageVersion

Added values:

v3_0 = 196608,
v3_1 = 196609,
v3_2 = 196610,

Type Changed: Metal.MTLLibrary_Extensions

Added methods:

public static void CreateIntersectionFunction (this IMTLLibrary This, MTLIntersectionFunctionDescriptor descriptor, System.Action<IMTLFunction,Foundation.NSError> completionHandler);
public static IMTLFunction CreateIntersectionFunction (this IMTLLibrary This, MTLIntersectionFunctionDescriptor descriptor, out Foundation.NSError error);

Type Changed: Metal.MTLPipelineOption

Added value:

BindingInfo = 1,

Type Changed: Metal.MTLRenderPipelineDescriptor

Added property:

public virtual MTLShaderValidation ShaderValidation { get; set; }

Type Changed: Metal.MTLRenderPipelineReflection

Added properties:

public virtual IMTLBinding[] FragmentBindings { get; }
public virtual IMTLBinding[] MeshBindings { get; }
public virtual IMTLBinding[] ObjectBindings { get; }
public virtual IMTLBinding[] TileBindings { get; }
public virtual IMTLBinding[] VertexBindings { get; }

Type Changed: Metal.MTLRenderStages

Added values:

Mesh = 16,
Object = 8,

Type Changed: Metal.MTLResourceStateCommandEncoder_Extensions

Added method:

public static void MoveTextureMappings (this IMTLResourceStateCommandEncoder This, IMTLTexture sourceTexture, UIntPtr sourceSlice, UIntPtr sourceLevel, MTLOrigin sourceOrigin, MTLSize sourceSize, IMTLTexture destinationTexture, UIntPtr destinationSlice, UIntPtr destinationLevel, MTLOrigin destinationOrigin);

Type Changed: Metal.MTLStitchedLibraryDescriptor

Added properties:

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

Type Changed: Metal.MTLTextureDescriptor

Added property:

public virtual MTLTextureCompressionType CompressionType { get; set; }

Type Changed: Metal.MTLTextureUsage

Added value:

ShaderAtomic = 32,

Type Changed: Metal.MTLTexture_Extensions

Added methods:

public static MTLTextureCompressionType GetCompressionType (this IMTLTexture This);
public static MTLResourceId GetGpuResourceId (this IMTLTexture This);

Type Changed: Metal.MTLTileRenderPipelineDescriptor

Added property:

public virtual MTLShaderValidation ShaderValidation { get; set; }

Type Changed: Metal.MTLVertexFormat

Added values:

FloatRG11B10 = 54,
FloatRgb9E5 = 55,

New Type: Metal.IMTLAllocation

public interface IMTLAllocation : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual UIntPtr AllocatedSize { get; }
}

New Type: Metal.IMTLBinding

public interface IMTLBinding : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual MTLBindingAccess Access { get; }
	public virtual bool Argument { get; }
	public virtual UIntPtr Index { get; }
	public virtual string Name { get; }
	public virtual MTLBindingType Type { get; }
	public virtual bool Used { get; }
}

New Type: Metal.IMTLBufferBinding

public interface IMTLBufferBinding : IMTLBinding, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual UIntPtr BufferAlignment { get; }
	public virtual UIntPtr BufferDataSize { get; }
	public virtual MTLDataType BufferDataType { get; }
	public virtual MTLPointerType BufferPointerType { get; }
	public virtual MTLStructType BufferStructType { get; }
}

New Type: Metal.IMTLLogState

public interface IMTLLogState : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void AddLogHandler (MTLLogStateLogHandler handler);
}

New Type: Metal.IMTLObjectPayloadBinding

public interface IMTLObjectPayloadBinding : IMTLBinding, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual UIntPtr ObjectPayloadAlignment { get; }
	public virtual UIntPtr ObjectPayloadDataSize { get; }
}

New Type: Metal.IMTLResidencySet

public interface IMTLResidencySet : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual IMTLAllocation[] AllAllocations { get; }
	public virtual ulong AllocatedSize { get; }
	public virtual UIntPtr AllocationCount { get; }
	public virtual IMTLDevice Device { get; }
	public virtual string Label { get; }
	// methods
	public virtual void AddAllocation (IMTLAllocation allocation);
	public virtual void AddAllocations (IMTLAllocation[] allocations);
	public virtual void AddAllocations (IntPtr allocations, UIntPtr count);
	public virtual void Commit ();
	public virtual bool ContainsAllocation (IMTLAllocation allocation);
	public virtual void EndResidency ();
	public virtual void RemoveAllAllocations ();
	public virtual void RemoveAllocation (IMTLAllocation allocation);
	public virtual void RemoveAllocations (IMTLAllocation[] allocations);
	public virtual void RemoveAllocations (IntPtr allocations, UIntPtr count);
	public virtual void RequestResidency ();
}

New Type: Metal.IMTLTextureBinding

public interface IMTLTextureBinding : IMTLBinding, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual UIntPtr ArrayLength { get; }
	public virtual bool DepthTexture { get; }
	public virtual MTLDataType TextureDataType { get; }
	public virtual MTLTextureType TextureType { get; }
}

New Type: Metal.IMTLThreadgroupBinding

public interface IMTLThreadgroupBinding : IMTLBinding, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual UIntPtr ThreadgroupMemoryAlignment { get; }
	public virtual UIntPtr ThreadgroupMemoryDataSize { get; }
}

New Type: Metal.MTLAccelerationStructureCommandEncoder_Extensions

public static class MTLAccelerationStructureCommandEncoder_Extensions {
	// methods
	public static void RefitAccelerationStructure (this IMTLAccelerationStructureCommandEncoder This, IMTLAccelerationStructure sourceAccelerationStructure, MTLAccelerationStructureDescriptor descriptor, IMTLAccelerationStructure destinationAccelerationStructure, IMTLBuffer scratchBuffer, UIntPtr scratchBufferOffset, MTLAccelerationStructureRefitOptions options);
}

New Type: Metal.MTLAccelerationStructureCurveGeometryDescriptor

public class MTLAccelerationStructureCurveGeometryDescriptor : Metal.MTLAccelerationStructureGeometryDescriptor {
	// constructors
	public MTLAccelerationStructureCurveGeometryDescriptor ();
	protected MTLAccelerationStructureCurveGeometryDescriptor (Foundation.NSObjectFlag t);
	protected MTLAccelerationStructureCurveGeometryDescriptor (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual IMTLBuffer ControlPointBuffer { get; set; }
	public virtual UIntPtr ControlPointBufferOffset { get; set; }
	public virtual UIntPtr ControlPointCount { get; set; }
	public virtual MTLAttributeFormat ControlPointFormat { get; set; }
	public virtual UIntPtr ControlPointStride { get; set; }
	public virtual MTLCurveBasis CurveBasis { get; set; }
	public virtual MTLCurveEndCaps CurveEndCaps { get; set; }
	public virtual MTLCurveType CurveType { get; set; }
	public virtual IMTLBuffer IndexBuffer { get; set; }
	public virtual UIntPtr IndexBufferOffset { get; set; }
	public virtual MTLIndexType IndexType { get; set; }
	public virtual IMTLBuffer RadiusBuffer { get; set; }
	public virtual UIntPtr RadiusBufferOffset { get; set; }
	public virtual MTLAttributeFormat RadiusFormat { get; set; }
	public virtual UIntPtr RadiusStride { get; set; }
	public virtual UIntPtr SegmentControlPointCount { get; set; }
	public virtual UIntPtr SegmentCount { get; set; }
	// methods
	public static MTLAccelerationStructureCurveGeometryDescriptor GetDescriptor ();
}

New Type: Metal.MTLAccelerationStructureMotionCurveGeometryDescriptor

public class MTLAccelerationStructureMotionCurveGeometryDescriptor : Metal.MTLAccelerationStructureGeometryDescriptor {
	// constructors
	public MTLAccelerationStructureMotionCurveGeometryDescriptor ();
	protected MTLAccelerationStructureMotionCurveGeometryDescriptor (Foundation.NSObjectFlag t);
	protected MTLAccelerationStructureMotionCurveGeometryDescriptor (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual MTLMotionKeyframeData[] ControlPointBuffers { get; set; }
	public virtual UIntPtr ControlPointCount { get; set; }
	public virtual MTLAttributeFormat ControlPointFormat { get; set; }
	public virtual UIntPtr ControlPointStride { get; set; }
	public virtual MTLCurveBasis CurveBasis { get; set; }
	public virtual MTLCurveEndCaps CurveEndCaps { get; set; }
	public virtual MTLCurveType CurveType { get; set; }
	public virtual IMTLBuffer IndexBuffer { get; set; }
	public virtual UIntPtr IndexBufferOffset { get; set; }
	public virtual MTLIndexType IndexType { get; set; }
	public virtual MTLMotionKeyframeData[] RadiusBuffers { get; set; }
	public virtual MTLAttributeFormat RadiusFormat { get; set; }
	public virtual UIntPtr RadiusStride { get; set; }
	public virtual UIntPtr SegmentControlPointCount { get; set; }
	public virtual UIntPtr SegmentCount { get; set; }
	// methods
	public static MTLAccelerationStructureMotionCurveGeometryDescriptor GetDescriptor ();
}

New Type: Metal.MTLAccelerationStructurePassDescriptor

public class MTLAccelerationStructurePassDescriptor : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public MTLAccelerationStructurePassDescriptor ();
	protected MTLAccelerationStructurePassDescriptor (Foundation.NSObjectFlag t);
	protected MTLAccelerationStructurePassDescriptor (ObjCRuntime.NativeHandle handle);
	// properties
	public static MTLAccelerationStructurePassDescriptor AccelerationStructurePassDescriptor { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual MTLAccelerationStructurePassSampleBufferAttachmentDescriptorArray SampleBufferAttachments { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: Metal.MTLAccelerationStructurePassSampleBufferAttachmentDescriptor

public class MTLAccelerationStructurePassSampleBufferAttachmentDescriptor : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public MTLAccelerationStructurePassSampleBufferAttachmentDescriptor ();
	protected MTLAccelerationStructurePassSampleBufferAttachmentDescriptor (Foundation.NSObjectFlag t);
	protected MTLAccelerationStructurePassSampleBufferAttachmentDescriptor (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual UIntPtr EndOfEncoderSampleIndex { get; set; }
	public virtual IMTLCounterSampleBuffer SampleBuffer { get; set; }
	public virtual UIntPtr StartOfEncoderSampleIndex { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: Metal.MTLAccelerationStructurePassSampleBufferAttachmentDescriptorArray

public class MTLAccelerationStructurePassSampleBufferAttachmentDescriptorArray : Foundation.NSObject {
	// constructors
	public MTLAccelerationStructurePassSampleBufferAttachmentDescriptorArray ();
	protected MTLAccelerationStructurePassSampleBufferAttachmentDescriptorArray (Foundation.NSObjectFlag t);
	protected MTLAccelerationStructurePassSampleBufferAttachmentDescriptorArray (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	// methods
	public virtual MTLAccelerationStructurePassSampleBufferAttachmentDescriptor GetObject (UIntPtr attachmentIndex);
	public virtual void SetObject (MTLAccelerationStructurePassSampleBufferAttachmentDescriptor attachment, UIntPtr attachmentIndex);
}

New Type: Metal.MTLAccelerationStructureRefitOptions

[Serializable]
[Flags]
public enum MTLAccelerationStructureRefitOptions {
	PerPrimitiveData = 2,
	VertexData = 1,
}

New Type: Metal.MTLArchitecture

public class MTLArchitecture : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public MTLArchitecture ();
	protected MTLArchitecture (Foundation.NSObjectFlag t);
	protected MTLArchitecture (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual string Name { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: Metal.MTLBindingAccess

[Serializable]
public enum MTLBindingAccess {
	ReadOnly = 0,
	ReadWrite = 1,
	WriteOnly = 2,
}

New Type: Metal.MTLBindingType

[Serializable]
public enum MTLBindingType {
	Buffer = 0,
	Imageblock = 17,
	ImageblockData = 16,
	InstanceAccelerationStructure = 26,
	IntersectionFunctionTable = 27,
	ObjectPayload = 34,
	PrimitiveAccelerationStructure = 25,
	Sampler = 3,
	Texture = 2,
	ThreadgroupMemory = 1,
	VisibleFunctionTable = 24,
}

New Type: Metal.MTLBuffer_Extensions

public static class MTLBuffer_Extensions {
	// methods
	public static ulong GetGpuAddress (this IMTLBuffer This);
}

New Type: Metal.MTLCommandBuffer_Extensions

public static class MTLCommandBuffer_Extensions {
	// methods
	public static IMTLAccelerationStructureCommandEncoder CreateAccelerationStructureCommandEncoder (this IMTLCommandBuffer This);
	public static IMTLAccelerationStructureCommandEncoder CreateAccelerationStructureCommandEncoder (this IMTLCommandBuffer This, MTLAccelerationStructurePassDescriptor descriptor);
	public static IMTLResourceStateCommandEncoder CreateResourceStateCommandEncoder (this IMTLCommandBuffer This, MTLResourceStatePassDescriptor resourceStatePassDescriptor);
	public static IMTLResourceStateCommandEncoder GetResourceStateCommandEncoder (this IMTLCommandBuffer This);
}

New Type: Metal.MTLCommandQueueDescriptor

public class MTLCommandQueueDescriptor : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public MTLCommandQueueDescriptor ();
	protected MTLCommandQueueDescriptor (Foundation.NSObjectFlag t);
	protected MTLCommandQueueDescriptor (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual IMTLLogState LogState { get; set; }
	public virtual UIntPtr MaxCommandBufferCount { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: Metal.MTLCompileSymbolVisibility

[Serializable]
public enum MTLCompileSymbolVisibility {
	Default = 0,
	Hidden = 1,
}

New Type: Metal.MTLComputeCommandEncoder_Extensions

public static class MTLComputeCommandEncoder_Extensions {
	// methods
	public static void SetAccelerationStructure (this IMTLComputeCommandEncoder This, IMTLAccelerationStructure accelerationStructure, UIntPtr bufferIndex);
	public static void SetBuffer (this IMTLComputeCommandEncoder This, IMTLBuffer buffer, UIntPtr offset, UIntPtr stride, UIntPtr index);
	public static void SetBufferOffset (this IMTLComputeCommandEncoder This, UIntPtr offset, UIntPtr stride, UIntPtr index);
	public static void SetBuffers (this IMTLComputeCommandEncoder This, IntPtr buffers, IntPtr offsets, IntPtr strides, Foundation.NSRange range);
	public static void SetBytes (this IMTLComputeCommandEncoder This, IntPtr bytes, UIntPtr length, UIntPtr stride, UIntPtr index);
	public static void SetIntersectionFunctionTable (this IMTLComputeCommandEncoder This, IMTLIntersectionFunctionTable intersectionFunctionTable, UIntPtr bufferIndex);
	public static void SetIntersectionFunctionTables (this IMTLComputeCommandEncoder This, IMTLIntersectionFunctionTable[] intersectionFunctionTables, Foundation.NSRange range);
	public static void SetVisibleFunctionTable (this IMTLComputeCommandEncoder This, IMTLVisibleFunctionTable visibleFunctionTable, UIntPtr bufferIndex);
	public static void SetVisibleFunctionTables (this IMTLComputeCommandEncoder This, IMTLVisibleFunctionTable[] visibleFunctionTables, Foundation.NSRange range);
}

New Type: Metal.MTLComputePipelineState_Extensions

public static class MTLComputePipelineState_Extensions {
	// methods
	public static IMTLComputePipelineState CreateComputePipelineState (this IMTLComputePipelineState This, IMTLFunction[] functions, out Foundation.NSError error);
	public static IMTLFunctionHandle CreateFunctionHandle (this IMTLComputePipelineState This, IMTLFunction function);
	public static IMTLIntersectionFunctionTable CreateIntersectionFunctionTable (this IMTLComputePipelineState This, MTLIntersectionFunctionTableDescriptor descriptor);
	public static IMTLVisibleFunctionTable CreateVisibleFunctionTable (this IMTLComputePipelineState This, MTLVisibleFunctionTableDescriptor descriptor);
	public static MTLResourceId GetGpuResourceId (this IMTLComputePipelineState This);
}

New Type: Metal.MTLCurveBasis

[Serializable]
public enum MTLCurveBasis {
	BSpline = 0,
	Bezier = 3,
	CatmullRom = 1,
	Linear = 2,
}

New Type: Metal.MTLCurveEndCaps

[Serializable]
public enum MTLCurveEndCaps {
	Disk = 1,
	None = 0,
	Sphere = 2,
}

New Type: Metal.MTLCurveType

[Serializable]
public enum MTLCurveType {
	Flat = 1,
	Round = 0,
}

New Type: Metal.MTLFunction_Extensions

public static class MTLFunction_Extensions {
	// methods
	public static MTLFunctionOptions GetOptions (this IMTLFunction This);
}

New Type: Metal.MTLHeap_Extensions

public static class MTLHeap_Extensions {
	// methods
	public static IMTLAccelerationStructure CreateAccelerationStructure (this IMTLHeap This, MTLAccelerationStructureDescriptor descriptor);
	public static IMTLAccelerationStructure CreateAccelerationStructure (this IMTLHeap This, UIntPtr size);
	public static IMTLAccelerationStructure CreateAccelerationStructure (this IMTLHeap This, MTLAccelerationStructureDescriptor descriptor, UIntPtr offset);
	public static IMTLAccelerationStructure CreateAccelerationStructure (this IMTLHeap This, UIntPtr size, UIntPtr offset);
}

New Type: Metal.MTLIOCommandQueueType

[Serializable]
public enum MTLIOCommandQueueType {
	Concurrent = 0,
	Serial = 1,
}

New Type: Metal.MTLIOCompressionContext

public class MTLIOCompressionContext : ObjCRuntime.DisposableObject {
	// properties
	public static IntPtr DefaultChunkSize { get; }
	// methods
	public void AppendData (Foundation.NSData data);
	public void AppendData (byte[] data);
	public void AppendData (System.ReadOnlySpan<byte> data);
	public static MTLIOCompressionContext Create (string path, MTLIOCompressionMethod type, long chunkSize);
	protected override void Dispose (bool disposing);
	public MTLIOCompressionStatus FlushAndDestroy ();
}

New Type: Metal.MTLIOCompressionMethod

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

New Type: Metal.MTLIOCompressionStatus

[Serializable]
public enum MTLIOCompressionStatus {
	Complete = 0,
	Error = 1,
}

New Type: Metal.MTLIOError

[Serializable]
public enum MTLIOError {
	Internal = 2,
	UrlInvalid = 1,
}

New Type: Metal.MTLIOErrorExtensions

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

New Type: Metal.MTLIOPriority

[Serializable]
public enum MTLIOPriority {
	High = 0,
	Low = 2,
	Normal = 1,
}

New Type: Metal.MTLIOStatus

[Serializable]
public enum MTLIOStatus {
	Cancelled = 1,
	Complete = 3,
	Error = 2,
	Pending = 0,
}

New Type: Metal.MTLIndirectCommandBuffer_Extensions

public static class MTLIndirectCommandBuffer_Extensions {
	// methods
	public static MTLResourceId GetGpuResourceID (this IMTLIndirectCommandBuffer This);
}

New Type: Metal.MTLIndirectComputeCommand_Extensions

public static class MTLIndirectComputeCommand_Extensions {
	// methods
	public static void SetKernelBuffer (this IMTLIndirectComputeCommand This, IMTLBuffer buffer, UIntPtr offset, UIntPtr stride, UIntPtr index);
}

New Type: Metal.MTLIndirectInstanceAccelerationStructureDescriptor

public class MTLIndirectInstanceAccelerationStructureDescriptor : Metal.MTLAccelerationStructureDescriptor {
	// constructors
	public MTLIndirectInstanceAccelerationStructureDescriptor ();
	protected MTLIndirectInstanceAccelerationStructureDescriptor (Foundation.NSObjectFlag t);
	protected MTLIndirectInstanceAccelerationStructureDescriptor (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual IMTLBuffer InstanceCountBuffer { get; set; }
	public virtual UIntPtr InstanceCountBufferOffset { get; set; }
	public virtual IMTLBuffer InstanceDescriptorBuffer { get; set; }
	public virtual UIntPtr InstanceDescriptorBufferOffset { get; set; }
	public virtual UIntPtr InstanceDescriptorStride { get; set; }
	public virtual MTLAccelerationStructureInstanceDescriptorType InstanceDescriptorType { get; set; }
	public virtual MTLMatrixLayout InstanceTransformationMatrixLayout { get; set; }
	public virtual UIntPtr MaxInstanceCount { get; set; }
	public virtual UIntPtr MaxMotionTransformCount { get; set; }
	public virtual IMTLBuffer MotionTransformBuffer { get; set; }
	public virtual UIntPtr MotionTransformBufferOffset { get; set; }
	public virtual IMTLBuffer MotionTransformCountBuffer { get; set; }
	public virtual UIntPtr MotionTransformCountBufferOffset { get; set; }
	public virtual UIntPtr MotionTransformStride { get; set; }
	public virtual MTLTransformType MotionTransformType { get; set; }
	// methods
	public static MTLIndirectInstanceAccelerationStructureDescriptor GetDescriptor ();
}

New Type: Metal.MTLIndirectRenderCommand_Extensions

public static class MTLIndirectRenderCommand_Extensions {
	// methods
	public static void ClearBarrier (this IMTLIndirectRenderCommand This);
	public static void DrawMeshThreadgroups (this IMTLIndirectRenderCommand This, MTLSize threadgroupsPerGrid, MTLSize threadsPerObjectThreadgroup, MTLSize threadsPerMeshThreadgroup);
	public static void DrawMeshThreads (this IMTLIndirectRenderCommand This, MTLSize threadsPerGrid, MTLSize threadsPerObjectThreadgroup, MTLSize threadsPerMeshThreadgroup);
	public static void SetBarrier (this IMTLIndirectRenderCommand This);
	public static void SetMeshBuffer (this IMTLIndirectRenderCommand This, IMTLBuffer buffer, UIntPtr offset, UIntPtr index);
	public static void SetObjectBuffer (this IMTLIndirectRenderCommand This, IMTLBuffer buffer, UIntPtr offset, UIntPtr index);
	public static void SetObjectThreadgroupMemoryLength (this IMTLIndirectRenderCommand This, UIntPtr length, UIntPtr index);
	public static void SetVertexBuffer (this IMTLIndirectRenderCommand This, IMTLBuffer buffer, UIntPtr offset, UIntPtr stride, UIntPtr index);
}

New Type: Metal.MTLIntersectionFunctionTable_Extensions

public static class MTLIntersectionFunctionTable_Extensions {
	// methods
	public static MTLResourceId GetGpuResourceId (this IMTLIntersectionFunctionTable This);
	public static void SetOpaqueCurveIntersectionFunction (this IMTLIntersectionFunctionTable This, MTLIntersectionFunctionSignature signature, Foundation.NSRange range);
	public static void SetOpaqueCurveIntersectionFunction (this IMTLIntersectionFunctionTable This, MTLIntersectionFunctionSignature signature, UIntPtr index);
}

New Type: Metal.MTLLibraryOptimizationLevel

[Serializable]
public enum MTLLibraryOptimizationLevel {
	Default = 0,
	Size = 1,
}

New Type: Metal.MTLLogLevel

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

New Type: Metal.MTLLogStateDescriptor

public class MTLLogStateDescriptor : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public MTLLogStateDescriptor ();
	protected MTLLogStateDescriptor (Foundation.NSObjectFlag t);
	protected MTLLogStateDescriptor (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual IntPtr BufferSize { get; set; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual MTLLogLevel Level { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: Metal.MTLLogStateError

[Serializable]
public enum MTLLogStateError {
	Invalid = 2,
	InvalidSize = 1,
}

New Type: Metal.MTLLogStateErrorExtensions

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

New Type: Metal.MTLLogStateLogHandler

public sealed delegate MTLLogStateLogHandler : System.MulticastDelegate {
	// constructors
	public MTLLogStateLogHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (string subSystem, string category, MTLLogLevel logLevel, string message, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (string subSystem, string category, MTLLogLevel logLevel, string message);
}

New Type: Metal.MTLMathFloatingPointFunctions

[Serializable]
public enum MTLMathFloatingPointFunctions {
	Fast = 0,
	Precise = 1,
}

New Type: Metal.MTLMathMode

[Serializable]
public enum MTLMathMode {
	Fast = 2,
	Relaxed = 1,
	Safe = 0,
}

New Type: Metal.MTLMatrixLayout

[Serializable]
public enum MTLMatrixLayout {
	ColumnMajor = 0,
	RowMajor = 1,
}

New Type: Metal.MTLMeshRenderPipelineDescriptor

public class MTLMeshRenderPipelineDescriptor : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public MTLMeshRenderPipelineDescriptor ();
	protected MTLMeshRenderPipelineDescriptor (Foundation.NSObjectFlag t);
	protected MTLMeshRenderPipelineDescriptor (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual bool AlphaToCoverageEnabled { get; set; }
	public virtual bool AlphaToOneEnabled { get; set; }
	public virtual IMTLBinaryArchive[] BinaryArchives { get; set; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual MTLRenderPipelineColorAttachmentDescriptorArray ColorAttachments { get; }
	public virtual MTLPixelFormat DepthAttachmentPixelFormat { get; set; }
	public virtual MTLPipelineBufferDescriptorArray FragmentBuffers { get; }
	public virtual IMTLFunction FragmentFunction { get; set; }
	public virtual MTLLinkedFunctions FragmentLinkedFunctions { get; set; }
	public virtual string Label { get; set; }
	public virtual UIntPtr MaxTotalThreadgroupsPerMeshGrid { get; set; }
	public virtual UIntPtr MaxTotalThreadsPerMeshThreadgroup { get; set; }
	public virtual UIntPtr MaxTotalThreadsPerObjectThreadgroup { get; set; }
	public virtual UIntPtr MaxVertexAmplificationCount { get; set; }
	public virtual MTLPipelineBufferDescriptorArray MeshBuffers { get; }
	public virtual IMTLFunction MeshFunction { get; set; }
	public virtual MTLLinkedFunctions MeshLinkedFunctions { get; set; }
	public virtual bool MeshThreadgroupSizeIsMultipleOfThreadExecutionWidth { get; set; }
	public virtual MTLPipelineBufferDescriptorArray ObjectBuffers { get; }
	public virtual IMTLFunction ObjectFunction { get; set; }
	public virtual MTLLinkedFunctions ObjectLinkedFunctions { get; set; }
	public virtual bool ObjectThreadgroupSizeIsMultipleOfThreadExecutionWidth { get; set; }
	public virtual UIntPtr PayloadMemoryLength { get; set; }
	public virtual UIntPtr RasterSampleCount { get; set; }
	public virtual bool RasterizationEnabled { get; set; }
	public virtual MTLShaderValidation ShaderValidation { get; set; }
	public virtual MTLPixelFormat StencilAttachmentPixelFormat { get; set; }
	public virtual bool SupportIndirectCommandBuffers { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void Reset ();
}

New Type: Metal.MTLRenderCommandEncoder_Extensions

public static class MTLRenderCommandEncoder_Extensions {
	// methods
	public static void DrawMeshThreadgroups (this IMTLRenderCommandEncoder This, MTLSize threadgroupsPerGrid, MTLSize threadsPerObjectThreadgroup, MTLSize threadsPerMeshThreadgroup);
	public static void DrawMeshThreadgroups (this IMTLRenderCommandEncoder This, IMTLBuffer indirectBuffer, UIntPtr indirectBufferOffset, MTLSize threadsPerObjectThreadgroup, MTLSize threadsPerMeshThreadgroup);
	public static void DrawMeshThreads (this IMTLRenderCommandEncoder This, MTLSize threadsPerGrid, MTLSize threadsPerObjectThreadgroup, MTLSize threadsPerMeshThreadgroup);
	public static void MemoryBarrier (this IMTLRenderCommandEncoder This, MTLBarrierScope scope, MTLRenderStages after, MTLRenderStages before);
	public static void MemoryBarrier (this IMTLRenderCommandEncoder This, IMTLResource[] resources, UIntPtr count, MTLRenderStages after, MTLRenderStages before);
	public static void SetFragmentAccelerationStructure (this IMTLRenderCommandEncoder This, IMTLAccelerationStructure accelerationStructure, UIntPtr bufferIndex);
	public static void SetFragmentIntersectionFunctionTable (this IMTLRenderCommandEncoder This, IMTLIntersectionFunctionTable intersectionFunctionTable, UIntPtr bufferIndex);
	public static void SetFragmentIntersectionFunctionTables (this IMTLRenderCommandEncoder This, IMTLIntersectionFunctionTable[] intersectionFunctionTable, Foundation.NSRange range);
	public static void SetFragmentVisibleFunctionTable (this IMTLRenderCommandEncoder This, IMTLVisibleFunctionTable functionTable, UIntPtr bufferIndex);
	public static void SetFragmentVisibleFunctionTables (this IMTLRenderCommandEncoder This, IMTLVisibleFunctionTable[] functionTables, Foundation.NSRange range);
	public static void SetMeshBuffer (this IMTLRenderCommandEncoder This, IMTLBuffer buffer, UIntPtr offset, UIntPtr index);
	public static void SetMeshBufferOffset (this IMTLRenderCommandEncoder This, UIntPtr offset, UIntPtr index);
	public static void SetMeshBuffers (this IMTLRenderCommandEncoder This, IntPtr buffers, IntPtr offsets, Foundation.NSRange range);
	public static void SetMeshBytes (this IMTLRenderCommandEncoder This, IntPtr bytes, UIntPtr length, UIntPtr index);
	public static void SetMeshSamplerState (this IMTLRenderCommandEncoder This, IMTLSamplerState sampler, UIntPtr index);
	public static void SetMeshSamplerState (this IMTLRenderCommandEncoder This, IMTLSamplerState sampler, float lodMinClamp, float lodMaxClamp, UIntPtr index);
	public static void SetMeshSamplerStates (this IMTLRenderCommandEncoder This, IntPtr samplers, Foundation.NSRange range);
	public static void SetMeshSamplerStates (this IMTLRenderCommandEncoder This, IntPtr samplers, IntPtr lodMinClamps, IntPtr lodMaxClamps, Foundation.NSRange range);
	public static void SetMeshTexture (this IMTLRenderCommandEncoder This, IMTLTexture texture, UIntPtr index);
	public static void SetMeshTextures (this IMTLRenderCommandEncoder This, IntPtr textures, Foundation.NSRange range);
	public static void SetObjectBuffer (this IMTLRenderCommandEncoder This, IMTLBuffer buffer, UIntPtr offset, UIntPtr index);
	public static void SetObjectBufferOffset (this IMTLRenderCommandEncoder This, UIntPtr offset, UIntPtr index);
	public static void SetObjectBuffers (this IMTLRenderCommandEncoder This, IntPtr buffers, IntPtr offsets, Foundation.NSRange range);
	public static void SetObjectBytes (this IMTLRenderCommandEncoder This, IntPtr bytes, UIntPtr length, UIntPtr index);
	public static void SetObjectSamplerState (this IMTLRenderCommandEncoder This, IMTLSamplerState sampler, UIntPtr index);
	public static void SetObjectSamplerState (this IMTLRenderCommandEncoder This, IMTLSamplerState sampler, float lodMinClamp, float lodMaxClamp, UIntPtr index);
	public static void SetObjectSamplerStates (this IMTLRenderCommandEncoder This, IntPtr samplers, Foundation.NSRange range);
	public static void SetObjectSamplerStates (this IMTLRenderCommandEncoder This, IntPtr samplers, IntPtr lodMinClamps, IntPtr lodMaxClamps, Foundation.NSRange range);
	public static void SetObjectTexture (this IMTLRenderCommandEncoder This, IMTLTexture texture, UIntPtr index);
	public static void SetObjectTextures (this IMTLRenderCommandEncoder This, IntPtr textures, Foundation.NSRange range);
	public static void SetObjectThreadgroupMemoryLength (this IMTLRenderCommandEncoder This, UIntPtr length, UIntPtr index);
	public static void SetTileAccelerationStructure (this IMTLRenderCommandEncoder This, IMTLAccelerationStructure accelerationStructure, UIntPtr bufferIndex);
	public static void SetTileIntersectionFunctionTable (this IMTLRenderCommandEncoder This, IMTLIntersectionFunctionTable intersectionFunctionTable, UIntPtr bufferIndex);
	public static void SetTileIntersectionFunctionTables (this IMTLRenderCommandEncoder This, IMTLIntersectionFunctionTable[] intersectionFunctionTable, Foundation.NSRange range);
	public static void SetTileVisibleFunctionTable (this IMTLRenderCommandEncoder This, IMTLVisibleFunctionTable functionTable, UIntPtr bufferIndex);
	public static void SetTileVisibleFunctionTables (this IMTLRenderCommandEncoder This, IMTLVisibleFunctionTable[] functionTables, Foundation.NSRange range);
	public static void SetVertexAccelerationStructure (this IMTLRenderCommandEncoder This, IMTLAccelerationStructure accelerationStructure, UIntPtr bufferIndex);
	public static void SetVertexAmplificationCount (this IMTLRenderCommandEncoder This, UIntPtr count, MTLVertexAmplificationViewMapping viewMappings);
	public static void SetVertexBuffer (this IMTLRenderCommandEncoder This, IMTLBuffer buffer, UIntPtr offset, UIntPtr stride, UIntPtr index);
	public static void SetVertexBufferOffset (this IMTLRenderCommandEncoder This, UIntPtr offset, UIntPtr stride, UIntPtr index);
	public static void SetVertexBuffers (this IMTLRenderCommandEncoder This, IntPtr buffers, IntPtr offsets, IntPtr strides, Foundation.NSRange range);
	public static void SetVertexBytes (this IMTLRenderCommandEncoder This, IntPtr bytes, UIntPtr length, UIntPtr stride, UIntPtr index);
	public static void SetVertexIntersectionFunctionTable (this IMTLRenderCommandEncoder This, IMTLIntersectionFunctionTable intersectionFunctionTable, UIntPtr bufferIndex);
	public static void SetVertexIntersectionFunctionTables (this IMTLRenderCommandEncoder This, IMTLIntersectionFunctionTable[] intersectionFunctionTable, Foundation.NSRange range);
	public static void SetVertexVisibleFunctionTable (this IMTLRenderCommandEncoder This, IMTLVisibleFunctionTable functionTable, UIntPtr bufferIndex);
	public static void SetVertexVisibleFunctionTables (this IMTLRenderCommandEncoder This, IMTLVisibleFunctionTable[] functionTables, Foundation.NSRange range);
}

New Type: Metal.MTLRenderPipelineState_Extensions

public static class MTLRenderPipelineState_Extensions {
	// methods
	public static IMTLFunctionHandle FunctionHandleWithFunction (this IMTLRenderPipelineState This, IMTLFunction function, MTLRenderStages stage);
	public static UIntPtr GetMaxTotalThreadsPerMeshThreadgroup (this IMTLRenderPipelineState This);
	public static UIntPtr GetMaxTotalThreadsPerObjectThreadgroup (this IMTLRenderPipelineState This);
	public static UIntPtr GetObjectThreadExecutionWidth (this IMTLRenderPipelineState This);
	public static IMTLIntersectionFunctionTable NewIntersectionFunctionTableWithDescriptor (this IMTLRenderPipelineState This, MTLIntersectionFunctionTableDescriptor descriptor, MTLRenderStages stage);
	public static IMTLRenderPipelineState NewRenderPipelineStateWithAdditionalBinaryFunctions (this IMTLRenderPipelineState This, MTLRenderPipelineFunctionsDescriptor additionalBinaryFunctions, out Foundation.NSError error);
	public static IMTLVisibleFunctionTable NewVisibleFunctionTableWithDescriptor (this IMTLRenderPipelineState This, MTLVisibleFunctionTableDescriptor descriptor, MTLRenderStages stage);
}

New Type: Metal.MTLResidencySetDescriptor

public class MTLResidencySetDescriptor : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public MTLResidencySetDescriptor ();
	protected MTLResidencySetDescriptor (Foundation.NSObjectFlag t);
	protected MTLResidencySetDescriptor (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual UIntPtr InitialCapacity { get; set; }
	public virtual string Label { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: Metal.MTLResourceId

public struct MTLResourceId {
	// fields
	public ulong Impl;
}

New Type: Metal.MTLSamplerState_Extensions

public static class MTLSamplerState_Extensions {
	// methods
	public static MTLResourceId GetGpuResourceId (this IMTLSamplerState This);
}

New Type: Metal.MTLShaderValidation

[Serializable]
public enum MTLShaderValidation {
	Default = 0,
	Disabled = 2,
	Enabled = 1,
}

New Type: Metal.MTLSparsePageSize

[Serializable]
public enum MTLSparsePageSize {
	Size16 = 101,
	Size256 = 103,
	Size64 = 102,
}

New Type: Metal.MTLStitchedLibraryOptions

[Serializable]
[Flags]
public enum MTLStitchedLibraryOptions {
	FailOnBinaryArchiveMiss = 1,
	None = 0,
	StoreLibraryInMetalPipelinesScript = 2,
}

New Type: Metal.MTLTextureCompressionType

[Serializable]
public enum MTLTextureCompressionType {
	Lossless = 0,
	Lossy = 1,
}

New Type: Metal.MTLTransformType

[Serializable]
public enum MTLTransformType {
	Component = 1,
	PackedFloat4x3 = 0,
}

New Type: Metal.MTLVisibleFunctionTable_Extensions

public static class MTLVisibleFunctionTable_Extensions {
	// methods
	public static MTLResourceId GetGpuResourceId (this IMTLVisibleFunctionTable This);
}

New Type: Metal.NSDeviceCertification

[Serializable]
public enum NSDeviceCertification {
	iPhonePerformanceGaming = 0,
}

New Type: Metal.NSDeviceCertificationExtensions

public static class NSDeviceCertificationExtensions {
	// methods
	public static IntPtr? GetConstant (this NSDeviceCertification self);
	public static NSDeviceCertification GetValue (IntPtr constant);
}

New Type: Metal.NSProcessInfo_NSDeviceCertification

public static class NSProcessInfo_NSDeviceCertification {
	// methods
	public static bool HasPerformanceProfile (this Foundation.NSProcessInfo This, NSProcessPerformanceProfile performanceProfile);
	public static bool IsDeviceCertifiedFor (this Foundation.NSProcessInfo This, NSDeviceCertification performanceTier);
}

New Type: Metal.NSProcessPerformanceProfile

[Serializable]
public enum NSProcessPerformanceProfile {
	Default = 0,
	Sustained = 1,
}

New Type: Metal.NSProcessPerformanceProfileExtensions

public static class NSProcessPerformanceProfileExtensions {
	// methods
	public static IntPtr? GetConstant (this NSProcessPerformanceProfile self);
	public static NSProcessPerformanceProfile GetValue (IntPtr constant);
}

Namespace MetalKit

Type Changed: MetalKit.IMTKViewDelegate

Modified methods:

-public abstract void Draw (MTKView view)
+public virtual void Draw (MTKView view)
-public abstract void DrawableSizeWillChange (MTKView view, CoreGraphics.CGSize size)
+public virtual void DrawableSizeWillChange (MTKView view, CoreGraphics.CGSize size)

Namespace MetalPerformanceShaders

Type Changed: MetalPerformanceShaders.IMPSCnnBatchNormalizationDataSource

Modified properties:

-public abstract IntPtr Beta { get; }
+public virtual IntPtr Beta { get; }
-public abstract IntPtr Gamma { get; }
+public virtual IntPtr Gamma { get; }
-public abstract string Label { get; }
+public virtual string Label { get; }
-public abstract bool Load { get; }
+public virtual bool Load { get; }
-public abstract IntPtr Mean { get; }
+public virtual IntPtr Mean { get; }
-public abstract UIntPtr NumberOfFeatureChannels { get; }
+public virtual UIntPtr NumberOfFeatureChannels { get; }
-public abstract IntPtr Variance { get; }
+public virtual IntPtr Variance { get; }

Added property:

public virtual float Epsilon { get; }

Modified methods:

-public abstract void Purge ()
+public virtual void Purge ()

Added methods:

public virtual IMPSCnnBatchNormalizationDataSource Copy (Foundation.NSZone zone, Metal.IMTLDevice device);
public static T CreateInstance<T> (Foundation.NSCoder decoder);
public virtual void Encode (Foundation.NSCoder coder);
public static bool GetSupportsSecureCoding<T> ();
public virtual bool UpdateGammaAndBeta (MPSCnnBatchNormalizationState batchNormalizationState);
public virtual MPSCnnNormalizationGammaAndBetaState UpdateGammaAndBeta (Metal.IMTLCommandBuffer commandBuffer, MPSCnnBatchNormalizationState batchNormalizationState);
public virtual bool UpdateMeanAndVariance (MPSCnnBatchNormalizationState batchNormalizationState);
public virtual MPSCnnNormalizationMeanAndVarianceState UpdateMeanAndVariance (Metal.IMTLCommandBuffer commandBuffer, MPSCnnBatchNormalizationState batchNormalizationState);

Type Changed: MetalPerformanceShaders.IMPSCnnConvolutionDataSource

Modified properties:

-public abstract IntPtr BiasTerms { get; }
+public virtual IntPtr BiasTerms { get; }
-public abstract MPSDataType DataType { get; }
+public virtual MPSDataType DataType { get; }
-public abstract MPSCnnConvolutionDescriptor Descriptor { get; }
+public virtual MPSCnnConvolutionDescriptor Descriptor { get; }
-public abstract string Label { get; }
+public virtual string Label { get; }
-public abstract IntPtr Weights { get; }
+public virtual IntPtr Weights { get; }

Added property:

public virtual MPSDataType KernelWeightsDataType { get; }

Modified methods:

-public abstract bool Load ()
+public virtual bool Load ()
-public abstract void Purge ()
+public virtual void Purge ()

Added methods:

public virtual IMPSCnnConvolutionDataSource Copy (Foundation.NSZone zone, Metal.IMTLDevice device);
public virtual IntPtr GetLookupTableForUInt8Kernel ();
public virtual IntPtr GetRangesForUInt8Kernel ();
public virtual MPSCnnWeightsQuantizationType GetWeightsQuantizationType ();
public virtual bool Update (MPSCnnConvolutionGradientState gradientState, MPSCnnConvolutionWeightsAndBiasesState sourceState);
public virtual MPSCnnConvolutionWeightsAndBiasesState Update (Metal.IMTLCommandBuffer commandBuffer, MPSCnnConvolutionGradientState gradientState, MPSCnnConvolutionWeightsAndBiasesState sourceState);

Type Changed: MetalPerformanceShaders.IMPSCnnInstanceNormalizationDataSource

Modified properties:

-public abstract IntPtr Beta { get; }
+public virtual IntPtr Beta { get; }
-public abstract IntPtr Gamma { get; }
+public virtual IntPtr Gamma { get; }
-public abstract string Label { get; }
+public virtual string Label { get; }
-public abstract UIntPtr NumberOfFeatureChannels { get; }
+public virtual UIntPtr NumberOfFeatureChannels { get; }

Added methods:

public virtual IMPSCnnInstanceNormalizationDataSource Copy (Foundation.NSZone zone, Metal.IMTLDevice device);
public static T CreateInstance<T> (Foundation.NSCoder decoder);
public virtual void Encode (Foundation.NSCoder coder);
public virtual float GetEpsilon ();
public virtual bool UpdateGammaAndBeta (MPSCnnInstanceNormalizationGradientState[] instanceNormalizationStateBatch);
public virtual MPSCnnNormalizationGammaAndBetaState UpdateGammaAndBeta (Metal.IMTLCommandBuffer commandBuffer, MPSCnnInstanceNormalizationGradientState[] instanceNormalizationStateBatch);

Type Changed: MetalPerformanceShaders.IMPSDeviceProvider

Modified methods:

-public abstract Metal.IMTLDevice GetMTLDevice ()
+public virtual Metal.IMTLDevice GetMTLDevice ()

Type Changed: MetalPerformanceShaders.IMPSHandle

Modified properties:

-public abstract string Label { get; }
+public virtual string Label { get; }

Type Changed: MetalPerformanceShaders.IMPSHeapProvider

Modified methods:

-public abstract Metal.IMTLHeap GetNewHeap (Metal.MTLHeapDescriptor descriptor)
+public virtual Metal.IMTLHeap GetNewHeap (Metal.MTLHeapDescriptor descriptor)

Added method:

public virtual void RetireHeap (Metal.IMTLHeap heap, double seconds);

Type Changed: MetalPerformanceShaders.IMPSImageAllocator

Modified methods:

-public abstract MPSImage GetImage (Metal.IMTLCommandBuffer cmdBuf, MPSImageDescriptor descriptor, MPSKernel kernel)
+public virtual MPSImage GetImage (Metal.IMTLCommandBuffer cmdBuf, MPSImageDescriptor descriptor, MPSKernel kernel)

Added method:

public virtual Foundation.NSArray<MPSImage> GetImageBatch (Metal.IMTLCommandBuffer commandBuffer, MPSImageDescriptor descriptor, MPSKernel kernel, UIntPtr count);

Type Changed: MetalPerformanceShaders.IMPSImageSizeEncodingState

Modified properties:

-public abstract UIntPtr SourceHeight { get; }
+public virtual UIntPtr SourceHeight { get; }
-public abstract UIntPtr SourceWidth { get; }
+public virtual UIntPtr SourceWidth { get; }

Type Changed: MetalPerformanceShaders.IMPSImageTransformProvider

Modified methods:

-public abstract MPSScaleTransform GetTransform (MPSImage image, IMPSHandle handle)
+public virtual MPSScaleTransform GetTransform (MPSImage image, IMPSHandle handle)

Type Changed: MetalPerformanceShaders.IMPSNDArrayAllocator

Modified methods:

-public abstract MPSNDArray AllocateArray (Metal.IMTLCommandBuffer cmdBuf, MPSNDArrayDescriptor descriptor, MPSKernel kernel)
+public virtual MPSNDArray AllocateArray (Metal.IMTLCommandBuffer cmdBuf, MPSNDArrayDescriptor descriptor, MPSKernel kernel)

Type Changed: MetalPerformanceShaders.IMPSNNLossCallback

Modified methods:

-public abstract float GetScalarWeight (MPSImage sourceImage, MPSImage destinationImage)
+public virtual float GetScalarWeight (MPSImage sourceImage, MPSImage destinationImage)

Type Changed: MetalPerformanceShaders.IMPSNNPadding

Modified properties:

-public abstract MPSNNPaddingMethod PaddingMethod { get; }
+public virtual MPSNNPaddingMethod PaddingMethod { get; }

Added methods:

public virtual MPSImageDescriptor GetDestinationImageDescriptor (MPSImage[] sourceImages, MPSState[] sourceStates, MPSKernel kernel, MPSImageDescriptor inDescriptor);
public virtual IMPSNNPadding GetInverse ();
public virtual string GetLabel ();

Type Changed: MetalPerformanceShaders.IMPSNNTrainableNode

Modified properties:

-public abstract MPSNNTrainingStyle TrainingStyle { get; set; }
+public virtual MPSNNTrainingStyle TrainingStyle { get; set; }

Type Changed: MetalPerformanceShaders.MPSCommandBuffer

Added methods:

public virtual Metal.IMTLAccelerationStructureCommandEncoder CreateAccelerationStructureCommandEncoder (Metal.MTLAccelerationStructurePassDescriptor descriptor);
public virtual void UseResidencySet (Metal.IMTLResidencySet residencySet);
public virtual void UseResidencySets (IntPtr residencySets, UIntPtr count);

Namespace MetalPerformanceShadersGraph

Type Changed: MetalPerformanceShadersGraph.MPSGraph

Modified base type:

-Foundation.NSObject
+MetalPerformanceShadersGraph.MPSGraphObject

Type Changed: MetalPerformanceShadersGraph.MPSGraphCompilationDescriptor

Modified base type:

-Foundation.NSObject
+MetalPerformanceShadersGraph.MPSGraphObject

Added properties:

public virtual Foundation.NSDictionary<Foundation.NSString,MetalPerformanceShadersGraph.MPSGraphExecutable> Callables { get; set; }
public virtual MPSGraphCompilationCompletionHandler CompilationCompletionHandler { get; set; }
public virtual CoreFoundation.DispatchQueue DispatchQueue { get; set; }
public virtual MPSGraphOptimization OptimizationLevel { get; set; }
public virtual MPSGraphOptimizationProfile OptimizationProfile { get; set; }
public virtual bool WaitForCompilationCompletion { get; set; }

Type Changed: MetalPerformanceShadersGraph.MPSGraphConvolution2DOpDescriptor

Modified base type:

-Foundation.NSObject
+MetalPerformanceShadersGraph.MPSGraphObject

Type Changed: MetalPerformanceShadersGraph.MPSGraphCreateSparseOpDescriptor

Modified base type:

-Foundation.NSObject
+MetalPerformanceShadersGraph.MPSGraphObject

Type Changed: MetalPerformanceShadersGraph.MPSGraphDepthwiseConvolution2DOpDescriptor

Modified base type:

-Foundation.NSObject
+MetalPerformanceShadersGraph.MPSGraphObject

Type Changed: MetalPerformanceShadersGraph.MPSGraphDepthwiseConvolution3DOpDescriptor

Modified base type:

-Foundation.NSObject
+MetalPerformanceShadersGraph.MPSGraphObject

Type Changed: MetalPerformanceShadersGraph.MPSGraphDevice

Modified base type:

-Foundation.NSObject
+MetalPerformanceShadersGraph.MPSGraphObject

Type Changed: MetalPerformanceShadersGraph.MPSGraphExecutable

Modified base type:

-Foundation.NSObject
+MetalPerformanceShadersGraph.MPSGraphObject

Added constructor:

public MPSGraphExecutable (Foundation.NSUrl packageUrl, MPSGraphCompilationDescriptor compilationDescriptor, MPSGraphExecutableInitializationOption option);

Added methods:

public virtual MPSGraphShapedType[] GetOutputTypes (MPSGraphDevice device, MPSGraphType[] inputTypes, MPSGraphCompilationDescriptor compilationDescriptor);
public virtual void SerializeToMPSGraphPackage (Foundation.NSUrl url, MPSGraphExecutableSerializationDescriptor descriptor);

Type Changed: MetalPerformanceShadersGraph.MPSGraphExecutableExecutionDescriptor

Modified base type:

-Foundation.NSObject
+MetalPerformanceShadersGraph.MPSGraphObject

Added methods:

public virtual void SignalEvent (Metal.IMTLSharedEvent event, MPSGraphExecutionStage executionStage, ulong value);
public virtual void WaitForEvent (Metal.IMTLSharedEvent event, ulong value);

Type Changed: MetalPerformanceShadersGraph.MPSGraphExecutionDescriptor

Modified base type:

-Foundation.NSObject
+MetalPerformanceShadersGraph.MPSGraphObject

Added property:

public virtual MPSGraphCompilationDescriptor CompilationDescriptor { get; set; }

Added methods:

public virtual void SignalEvent (Metal.IMTLSharedEvent event, MPSGraphExecutionStage executionStage, ulong value);
public virtual void WaitForEvent (Metal.IMTLSharedEvent event, ulong value);

Type Changed: MetalPerformanceShadersGraph.MPSGraphOperation

Modified base type:

-Foundation.NSObject
+MetalPerformanceShadersGraph.MPSGraphObject

Type Changed: MetalPerformanceShadersGraph.MPSGraphPaddingStyle

Added value:

OnnxSameLower = 4,

Type Changed: MetalPerformanceShadersGraph.MPSGraphPooling2DOpDescriptor

Modified base type:

-Foundation.NSObject
+MetalPerformanceShadersGraph.MPSGraphObject

Added properties:

public virtual MetalPerformanceShaders.MPSDataType ReturnIndicesDataType { get; set; }
public virtual MPSGraphPoolingReturnIndicesMode ReturnIndicesMode { get; set; }

Type Changed: MetalPerformanceShadersGraph.MPSGraphPooling4DOpDescriptor

Modified base type:

-Foundation.NSObject
+MetalPerformanceShadersGraph.MPSGraphObject

Added properties:

public virtual MetalPerformanceShaders.MPSDataType ReturnIndicesDataType { get; set; }
public virtual MPSGraphPoolingReturnIndicesMode ReturnIndicesMode { get; set; }

Type Changed: MetalPerformanceShadersGraph.MPSGraphRandomOpDescriptor

Modified base type:

-Foundation.NSObject
+MetalPerformanceShadersGraph.MPSGraphObject

Type Changed: MetalPerformanceShadersGraph.MPSGraphStencilOpDescriptor

Modified base type:

-Foundation.NSObject
+MetalPerformanceShadersGraph.MPSGraphObject

Type Changed: MetalPerformanceShadersGraph.MPSGraphTensor

Modified base type:

-Foundation.NSObject
+MetalPerformanceShadersGraph.MPSGraphObject

Type Changed: MetalPerformanceShadersGraph.MPSGraphTensorData

Modified base type:

-Foundation.NSObject
+MetalPerformanceShadersGraph.MPSGraphObject

Added constructor:

public MPSGraphTensorData (Metal.IMTLBuffer buffer, int[] shape, MetalPerformanceShaders.MPSDataType dataType, UIntPtr rowBytes);

Type Changed: MetalPerformanceShadersGraph.MPSGraphTensorNamedDataLayout

Added values:

Dhwio = 10,
Ncdhw = 7,
Ndhwc = 8,
Oidhw = 9,

Type Changed: MetalPerformanceShadersGraph.MPSGraphType

Modified base type:

-Foundation.NSObject
+MetalPerformanceShadersGraph.MPSGraphObject

Type Changed: MetalPerformanceShadersGraph.MPSGraph_MPSGraphArithmeticOps

Added methods:

public static MPSGraphTensor AbsoluteSquare (this MPSGraph This, MPSGraphTensor tensor, string name);
public static MPSGraphTensor BitwiseAnd (this MPSGraph This, MPSGraphTensor primaryTensor, MPSGraphTensor secondaryTensor, string name);
public static MPSGraphTensor BitwiseLeftShift (this MPSGraph This, MPSGraphTensor primaryTensor, MPSGraphTensor secondaryTensor, string name);
public static MPSGraphTensor BitwiseNot (this MPSGraph This, MPSGraphTensor tensor, string name);
public static MPSGraphTensor BitwiseOr (this MPSGraph This, MPSGraphTensor primaryTensor, MPSGraphTensor secondaryTensor, string name);
public static MPSGraphTensor BitwisePopulationCount (this MPSGraph This, MPSGraphTensor tensor, string name);
public static MPSGraphTensor BitwiseRightShift (this MPSGraph This, MPSGraphTensor primaryTensor, MPSGraphTensor secondaryTensor, string name);
public static MPSGraphTensor BitwiseXor (this MPSGraph This, MPSGraphTensor primaryTensor, MPSGraphTensor secondaryTensor, string name);
public static MPSGraphTensor ComplexTensor (this MPSGraph This, MPSGraphTensor realTensor, MPSGraphTensor imaginaryTensor, string name);
public static MPSGraphTensor Conjugate (this MPSGraph This, MPSGraphTensor tensor, string name);
public static MPSGraphTensor ImaginaryPart (this MPSGraph This, MPSGraphTensor tensor, string name);
public static MPSGraphTensor RealPart (this MPSGraph This, MPSGraphTensor tensor, string name);
public static MPSGraphTensor ReciprocalSquareRoot (this MPSGraph This, MPSGraphTensor tensor, string name);
public static MPSGraphTensor Truncate (this MPSGraph This, MPSGraphTensor tensor, string name);

Type Changed: MetalPerformanceShadersGraph.MPSGraph_MPSGraphConvolutionOps

Added methods:

public static MPSGraphTensor Convolution3D (this MPSGraph This, MPSGraphTensor source, MPSGraphTensor weights, MPSGraphConvolution3DOpDescriptor descriptor, string name);
public static MPSGraphTensor Convolution3DDataGradient (this MPSGraph This, MPSGraphTensor gradient, MPSGraphTensor weights, MPSGraphTensor outputShapeTensor, MPSGraphConvolution3DOpDescriptor forwardConvolutionDescriptor, string name);
public static MPSGraphTensor Convolution3DDataGradient (this MPSGraph This, MPSGraphTensor incomingGradient, MPSGraphTensor weights, int[] outputShape, MPSGraphConvolution3DOpDescriptor forwardConvolutionDescriptor, string name);
public static MPSGraphTensor Convolution3DWeightsGradient (this MPSGraph This, MPSGraphTensor gradient, MPSGraphTensor source, MPSGraphTensor outputShapeTensor, MPSGraphConvolution3DOpDescriptor forwardConvolutionDescriptor, string name);
public static MPSGraphTensor Convolution3DWeightsGradient (this MPSGraph This, MPSGraphTensor incomingGradient, MPSGraphTensor source, int[] outputShape, MPSGraphConvolution3DOpDescriptor forwardConvolutionDescriptor, string name);

Type Changed: MetalPerformanceShadersGraph.MPSGraph_MPSGraphMatrixMultiplicationOps

Added methods:

public static MPSGraphTensor HammingDistance (this MPSGraph This, MPSGraphTensor primaryTensor, MPSGraphTensor secondaryTensor, MetalPerformanceShaders.MPSDataType resultDataType, string name);
public static MPSGraphTensor ScaledDotProductAttention (this MPSGraph This, MPSGraphTensor queryTensor, MPSGraphTensor keyTensor, MPSGraphTensor valueTensor, float scale, string name);
public static MPSGraphTensor ScaledDotProductAttention (this MPSGraph This, MPSGraphTensor queryTensor, MPSGraphTensor keyTensor, MPSGraphTensor valueTensor, MPSGraphTensor maskTensor, float scale, string name);

Type Changed: MetalPerformanceShadersGraph.MPSGraph_MPSGraphOptimizerOps

Added methods:

public static MPSGraphTensor[] Adam (this MPSGraph This, MPSGraphTensor currentLearningRateTensor, MPSGraphTensor beta1Tensor, MPSGraphTensor beta2Tensor, MPSGraphTensor epsilonTensor, MPSGraphTensor valuesTensor, MPSGraphTensor momentumTensor, MPSGraphTensor velocityTensor, MPSGraphTensor maximumVelocityTensor, MPSGraphTensor gradientTensor, string name);
public static MPSGraphTensor[] Adam (this MPSGraph This, MPSGraphTensor learningRateTensor, MPSGraphTensor beta1Tensor, MPSGraphTensor beta2Tensor, MPSGraphTensor epsilonTensor, MPSGraphTensor beta1PowerTensor, MPSGraphTensor beta2PowerTensor, MPSGraphTensor valuesTensor, MPSGraphTensor momentumTensor, MPSGraphTensor velocityTensor, MPSGraphTensor maximumVelocityTensor, MPSGraphTensor gradientTensor, string name);

Type Changed: MetalPerformanceShadersGraph.MPSGraph_MPSGraphPoolingOps

Added methods:

public static MPSGraphTensor MaxPooling2DGradient (this MPSGraph This, MPSGraphTensor gradient, MPSGraphTensor indices, MPSGraphTensor outputShape, MPSGraphPooling2DOpDescriptor descriptor, string name);
public static MPSGraphTensor MaxPooling2DGradient (this MPSGraph This, MPSGraphTensor gradient, MPSGraphTensor indices, int[] outputShape, MPSGraphPooling2DOpDescriptor descriptor, string name);
public static MPSGraphTensor[] MaxPooling2DReturnIndices (this MPSGraph This, MPSGraphTensor source, MPSGraphPooling2DOpDescriptor descriptor, string name);
public static MPSGraphTensor MaxPooling4DGradient (this MPSGraph This, MPSGraphTensor gradient, MPSGraphTensor indices, MPSGraphTensor outputShape, MPSGraphPooling4DOpDescriptor descriptor, string name);
public static MPSGraphTensor MaxPooling4DGradient (this MPSGraph This, MPSGraphTensor gradient, MPSGraphTensor indices, int[] outputShape, MPSGraphPooling4DOpDescriptor descriptor, string name);
public static MPSGraphTensor[] MaxPooling4DReturnIndices (this MPSGraph This, MPSGraphTensor source, MPSGraphPooling4DOpDescriptor descriptor, string name);

Type Changed: MetalPerformanceShadersGraph.MPSGraph_MPSGraphReductionOps

Added methods:

public static MPSGraphTensor ReductionAnd (this MPSGraph This, MPSGraphTensor tensor, int[] axes, string name);
public static MPSGraphTensor ReductionAnd (this MPSGraph This, MPSGraphTensor tensor, IntPtr axis, string name);
public static MPSGraphTensor ReductionOr (this MPSGraph This, MPSGraphTensor tensor, int[] axes, string name);
public static MPSGraphTensor ReductionOr (this MPSGraph This, MPSGraphTensor tensor, IntPtr axis, string name);

Type Changed: MetalPerformanceShadersGraph.MPSGraph_MPSGraphResizeOps

Added methods:

public static MPSGraphTensor Resize (this MPSGraph This, MPSGraphTensor imagesTensor, MPSGraphTensor size, MPSGraphResizeMode mode, bool centerResult, bool alignCorners, string name);
public static MPSGraphTensor Resize (this MPSGraph This, MPSGraphTensor imagesTensor, MPSGraphTensor size, MPSGraphTensor scaleOffset, MPSGraphResizeMode mode, MPSGraphTensorNamedDataLayout layout, string name);
public static MPSGraphTensor Resize (this MPSGraph This, MPSGraphTensor imagesTensor, MPSGraphTensor size, MPSGraphTensor scale, MPSGraphTensor offset, MPSGraphResizeMode mode, string name);
public static MPSGraphTensor ResizeBilinear (this MPSGraph This, MPSGraphTensor imagesTensor, MPSGraphTensor size, MPSGraphTensor scale, MPSGraphTensor offset, string name);
public static MPSGraphTensor ResizeBilinear (this MPSGraph This, MPSGraphTensor imagesTensor, MPSGraphTensor size, MPSGraphTensor scaleOffset, MPSGraphTensorNamedDataLayout layout, string name);
public static MPSGraphTensor ResizeBilinear (this MPSGraph This, MPSGraphTensor imagesTensor, MPSGraphTensor size, bool centerResult, bool alignCorners, string name);
public static MPSGraphTensor ResizeBilinear (this MPSGraph This, MPSGraphTensor imagesTensor, MPSGraphTensor size, bool centerResult, bool alignCorners, MPSGraphTensorNamedDataLayout layout, string name);
public static MPSGraphTensor ResizeBilinearWithGradient (this MPSGraph This, MPSGraphTensor gradient, MPSGraphTensor input, MPSGraphTensor scale, MPSGraphTensor offset, string name);
public static MPSGraphTensor ResizeBilinearWithGradient (this MPSGraph This, MPSGraphTensor gradient, MPSGraphTensor input, MPSGraphTensor scaleOffset, MPSGraphTensorNamedDataLayout layout, string name);
public static MPSGraphTensor ResizeBilinearWithGradient (this MPSGraph This, MPSGraphTensor gradient, MPSGraphTensor input, bool centerResult, bool alignCorners, MPSGraphTensorNamedDataLayout layout, string name);
public static MPSGraphTensor ResizeNearest (this MPSGraph This, MPSGraphTensor imagesTensor, MPSGraphTensor size, MPSGraphResizeNearestRoundingMode nearestRoundingMode, bool centerResult, bool alignCorners, string name);
public static MPSGraphTensor ResizeNearest (this MPSGraph This, MPSGraphTensor imagesTensor, MPSGraphTensor size, MPSGraphTensor scaleOffset, MPSGraphResizeNearestRoundingMode nearestRoundingMode, MPSGraphTensorNamedDataLayout layout, string name);
public static MPSGraphTensor ResizeNearest (this MPSGraph This, MPSGraphTensor imagesTensor, MPSGraphTensor size, MPSGraphTensor scale, MPSGraphTensor offset, MPSGraphResizeNearestRoundingMode nearestRoundingMode, string name);
public static MPSGraphTensor ResizeNearest (this MPSGraph This, MPSGraphTensor imagesTensor, MPSGraphTensor size, MPSGraphResizeNearestRoundingMode nearestRoundingMode, bool centerResult, bool alignCorners, MPSGraphTensorNamedDataLayout layout, string name);
public static MPSGraphTensor ResizeNearestWithGradient (this MPSGraph This, MPSGraphTensor gradient, MPSGraphTensor input, MPSGraphTensor scaleOffset, MPSGraphResizeNearestRoundingMode nearestRoundingMode, MPSGraphTensorNamedDataLayout layout, string name);
public static MPSGraphTensor ResizeNearestWithGradient (this MPSGraph This, MPSGraphTensor gradient, MPSGraphTensor input, MPSGraphTensor scale, MPSGraphTensor offset, MPSGraphResizeNearestRoundingMode nearestRoundingMode, string name);
public static MPSGraphTensor ResizeNearestWithGradient (this MPSGraph This, MPSGraphTensor gradient, MPSGraphTensor input, MPSGraphResizeNearestRoundingMode nearestRoundingMode, bool centerResult, bool alignCorners, MPSGraphTensorNamedDataLayout layout, string name);
public static MPSGraphTensor ResizeWithGradient (this MPSGraph This, MPSGraphTensor gradient, MPSGraphTensor input, MPSGraphTensor scaleOffset, MPSGraphResizeMode mode, MPSGraphTensorNamedDataLayout layout, string name);
public static MPSGraphTensor ResizeWithGradient (this MPSGraph This, MPSGraphTensor gradient, MPSGraphTensor input, MPSGraphTensor scale, MPSGraphTensor offset, MPSGraphResizeMode mode, string name);

Type Changed: MetalPerformanceShadersGraph.MPSGraph_MPSGraphTensorShapeOps

Added methods:

public static MPSGraphTensor BatchToSpace (this MPSGraph This, MPSGraphTensor tensor, MPSGraphTensor spatialAxesTensor, MPSGraphTensor batchAxisTensor, MPSGraphTensor blockDimensionsTensor, bool usePixelShuffleOrder, string name);
public static MPSGraphTensor BatchToSpace (this MPSGraph This, MPSGraphTensor tensor, int[] spatialAxes, IntPtr batchAxis, int[] blockDimensions, bool usePixelShuffleOrder, string name);
public static MPSGraphTensor CoordinateAlongAxis (this MPSGraph This, MPSGraphTensor axisTensor, MPSGraphTensor shapeTensor, string name);
public static MPSGraphTensor CoordinateAlongAxis (this MPSGraph This, MPSGraphTensor axisTensor, int[] shape, string name);
public static MPSGraphTensor CoordinateAlongAxis (this MPSGraph This, IntPtr axis, MPSGraphTensor shapeTensor, string name);
public static MPSGraphTensor CoordinateAlongAxis (this MPSGraph This, IntPtr axis, int[] shape, string name);
public static MPSGraphTensor ExpandDims (this MPSGraph This, MPSGraphTensor tensor, MPSGraphTensor axesTensor, string name);
public static MPSGraphTensor ExpandDims (this MPSGraph This, MPSGraphTensor tensor, int[] axes, string name);
public static MPSGraphTensor ExpandDims (this MPSGraph This, MPSGraphTensor tensor, IntPtr axis, string name);
public static MPSGraphTensor ReinterpretCast (this MPSGraph This, MPSGraphTensor tensor, MetalPerformanceShaders.MPSDataType type, string name);
public static MPSGraphTensor SliceUpdateData (this MPSGraph This, MPSGraphTensor dataTensor, MPSGraphTensor updatesTensor, MPSGraphTensor startsTensor, MPSGraphTensor endsTensor, MPSGraphTensor stridesTensor, string name);
public static MPSGraphTensor SliceUpdateData (this MPSGraph This, MPSGraphTensor dataTensor, MPSGraphTensor updatesTensor, int[] starts, int[] ends, int[] strides, string name);
public static MPSGraphTensor SliceUpdateData (this MPSGraph This, MPSGraphTensor dataTensor, MPSGraphTensor updateTensor, MPSGraphTensor startsTensor, MPSGraphTensor endsTensor, MPSGraphTensor stridesTensor, uint startMask, uint endMask, uint squeezeMask, string name);
public static MPSGraphTensor SliceUpdateData (this MPSGraph This, MPSGraphTensor dataTensor, MPSGraphTensor updateTensor, int[] starts, int[] ends, int[] strides, uint startMask, uint endMask, uint squeezeMask, string name);
public static MPSGraphTensor SpaceToBatch (this MPSGraph This, MPSGraphTensor tensor, MPSGraphTensor spatialAxesTensor, MPSGraphTensor batchAxisTensor, MPSGraphTensor blockDimensionsTensor, bool usePixelShuffleOrder, string name);
public static MPSGraphTensor SpaceToBatch (this MPSGraph This, MPSGraphTensor tensor, int[] spatialAxes, IntPtr batchAxis, int[] blockDimensions, bool usePixelShuffleOrder, string name);
public static MPSGraphTensor[] Split (this MPSGraph This, MPSGraphTensor tensor, MPSGraphTensor splitSizesTensor, IntPtr axis, string name);
public static MPSGraphTensor[] Split (this MPSGraph This, MPSGraphTensor tensor, int[] splitSizes, IntPtr axis, string name);
public static MPSGraphTensor[] Split (this MPSGraph This, MPSGraphTensor tensor, UIntPtr numSplits, IntPtr axis, string name);
public static MPSGraphTensor Squeeze (this MPSGraph This, MPSGraphTensor tensor, string name);
public static MPSGraphTensor Squeeze (this MPSGraph This, MPSGraphTensor tensor, MPSGraphTensor axesTensor, string name);
public static MPSGraphTensor Squeeze (this MPSGraph This, MPSGraphTensor tensor, int[] axes, string name);
public static MPSGraphTensor Squeeze (this MPSGraph This, MPSGraphTensor tensor, IntPtr axis, string name);
public static MPSGraphTensor Stack (this MPSGraph This, MPSGraphTensor[] inputTensors, IntPtr axis, string name);
public static MPSGraphTensor Transpose (this MPSGraph This, MPSGraphTensor tensor, int[] permutation, string name);

Type Changed: MetalPerformanceShadersGraph.MPSGraph_MPSGraphTopKGradientOps

Added methods:

public static MPSGraphTensor BottomKWithGradient (this MPSGraph This, MPSGraphTensor gradient, MPSGraphTensor source, MPSGraphTensor axisTensor, MPSGraphTensor kTensor, string name);
public static MPSGraphTensor BottomKWithGradient (this MPSGraph This, MPSGraphTensor gradient, MPSGraphTensor source, IntPtr axis, UIntPtr k, string name);
public static MPSGraphTensor TopKWithGradient (this MPSGraph This, MPSGraphTensor gradient, MPSGraphTensor source, MPSGraphTensor axisTensor, MPSGraphTensor kTensor, string name);
public static MPSGraphTensor TopKWithGradient (this MPSGraph This, MPSGraphTensor gradient, MPSGraphTensor source, IntPtr axis, UIntPtr k, string name);

Type Changed: MetalPerformanceShadersGraph.MPSGraph_MPSGraphTopKOps

Added methods:

public static MPSGraphTensor[] BottomK (this MPSGraph This, MPSGraphTensor source, MPSGraphTensor axisTensor, MPSGraphTensor kTensor, string name);
public static MPSGraphTensor[] BottomK (this MPSGraph This, MPSGraphTensor source, IntPtr axis, UIntPtr k, string name);
public static MPSGraphTensor[] TopK (this MPSGraph This, MPSGraphTensor source, MPSGraphTensor axisTensor, MPSGraphTensor kTensor, string name);
public static MPSGraphTensor[] TopK (this MPSGraph This, MPSGraphTensor source, IntPtr axis, UIntPtr k, string name);

Type Changed: MetalPerformanceShadersGraph.MPSGraph_MemoryOps

Added methods:

public static MPSGraphTensor Constant (this MPSGraph This, double realPart, double imaginaryPart);
public static MPSGraphTensor Constant (this MPSGraph This, double realPart, double imaginaryPart, MetalPerformanceShaders.MPSDataType dataType);
public static MPSGraphTensor Constant (this MPSGraph This, double realPart, double imaginaryPart, int[] shape, MetalPerformanceShaders.MPSDataType dataType);
public static MPSGraphTensor Variable (this MPSGraph This, MPSGraphTensor tensor, string name);

New Type: MetalPerformanceShadersGraph.MPSGraphCompilationCompletionHandler

public sealed delegate MPSGraphCompilationCompletionHandler : System.MulticastDelegate {
	// constructors
	public MPSGraphCompilationCompletionHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (MPSGraphExecutable executable, Foundation.NSError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (MPSGraphExecutable executable, Foundation.NSError error);
}

New Type: MetalPerformanceShadersGraph.MPSGraphConvolution3DOpDescriptor

public class MPSGraphConvolution3DOpDescriptor : MetalPerformanceShadersGraph.MPSGraphObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public MPSGraphConvolution3DOpDescriptor ();
	protected MPSGraphConvolution3DOpDescriptor (Foundation.NSObjectFlag t);
	protected MPSGraphConvolution3DOpDescriptor (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual MPSGraphTensorNamedDataLayout DataLayout { get; set; }
	public virtual UIntPtr DilationRateInX { get; set; }
	public virtual UIntPtr DilationRateInY { get; set; }
	public virtual UIntPtr DilationRateInZ { get; set; }
	public virtual UIntPtr Groups { get; set; }
	public virtual UIntPtr PaddingBack { get; set; }
	public virtual UIntPtr PaddingBottom { get; set; }
	public virtual UIntPtr PaddingFront { get; set; }
	public virtual UIntPtr PaddingLeft { get; set; }
	public virtual UIntPtr PaddingRight { get; set; }
	public virtual MPSGraphPaddingStyle PaddingStyle { get; set; }
	public virtual UIntPtr PaddingTop { get; set; }
	public virtual UIntPtr StrideInX { get; set; }
	public virtual UIntPtr StrideInY { get; set; }
	public virtual UIntPtr StrideInZ { get; set; }
	public virtual MPSGraphTensorNamedDataLayout WeightsLayout { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static MPSGraphConvolution3DOpDescriptor Create (UIntPtr strideInX, UIntPtr strideInY, UIntPtr strideInZ, UIntPtr dilationRateInX, UIntPtr dilationRateInY, UIntPtr dilationRateInZ, UIntPtr groups, MPSGraphPaddingStyle paddingStyle, MPSGraphTensorNamedDataLayout dataLayout, MPSGraphTensorNamedDataLayout weightsLayout);
	public static MPSGraphConvolution3DOpDescriptor Create (UIntPtr strideInX, UIntPtr strideInY, UIntPtr strideInZ, UIntPtr dilationRateInX, UIntPtr dilationRateInY, UIntPtr dilationRateInZ, UIntPtr groups, UIntPtr paddingLeft, UIntPtr paddingRight, UIntPtr paddingTop, UIntPtr paddingBottom, UIntPtr paddingFront, UIntPtr paddingBack, MPSGraphPaddingStyle paddingStyle, MPSGraphTensorNamedDataLayout dataLayout, MPSGraphTensorNamedDataLayout weightsLayout);
	public virtual void SetExplicitPadding (UIntPtr paddingLeft, UIntPtr paddingRight, UIntPtr paddingTop, UIntPtr paddingBottom, UIntPtr paddingFront, UIntPtr paddingBack);
}

New Type: MetalPerformanceShadersGraph.MPSGraphDeploymentPlatform

[Serializable]
public enum MPSGraphDeploymentPlatform {
	iOS = 1,
	macOS = 0,
	tvOS = 2,
	visionOS = 3,
}

New Type: MetalPerformanceShadersGraph.MPSGraphExecutableInitializationOption

[Serializable]
public enum MPSGraphExecutableInitializationOption {
	CoreMLPackage = 0,
	MPSGraphPackage = 1,
}

New Type: MetalPerformanceShadersGraph.MPSGraphExecutableSerializationDescriptor

public class MPSGraphExecutableSerializationDescriptor : MetalPerformanceShadersGraph.MPSGraphObject {
	// constructors
	public MPSGraphExecutableSerializationDescriptor ();
	protected MPSGraphExecutableSerializationDescriptor (Foundation.NSObjectFlag t);
	protected MPSGraphExecutableSerializationDescriptor (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual bool Append { get; set; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual MPSGraphDeploymentPlatform DeploymentPlatform { get; set; }
	public virtual string MinimumDeploymentTarget { get; set; }
}

New Type: MetalPerformanceShadersGraph.MPSGraphExecutionStage

[Serializable]
public enum MPSGraphExecutionStage {
	Completed = 0,
}

New Type: MetalPerformanceShadersGraph.MPSGraphFftDescriptor

public class MPSGraphFftDescriptor : MetalPerformanceShadersGraph.MPSGraphObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public MPSGraphFftDescriptor ();
	protected MPSGraphFftDescriptor (Foundation.NSObjectFlag t);
	protected MPSGraphFftDescriptor (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual bool Inverse { get; set; }
	public virtual bool RoundToOddHermitean { get; set; }
	public virtual MPSGraphFftScalingMode ScalingMode { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static MPSGraphFftDescriptor Create ();
}

New Type: MetalPerformanceShadersGraph.MPSGraphFftScalingMode

[Serializable]
public enum MPSGraphFftScalingMode {
	None = 0,
	Size = 1,
	Unitary = 2,
}

New Type: MetalPerformanceShadersGraph.MPSGraphGruDescriptor

public class MPSGraphGruDescriptor : MetalPerformanceShadersGraph.MPSGraphObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public MPSGraphGruDescriptor ();
	protected MPSGraphGruDescriptor (Foundation.NSObjectFlag t);
	protected MPSGraphGruDescriptor (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual bool Bidirectional { get; set; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual bool FlipZ { get; set; }
	public virtual MPSGraphRnnActivation OutputGateActivation { get; set; }
	public virtual bool ResetAfter { get; set; }
	public virtual MPSGraphRnnActivation ResetGateActivation { get; set; }
	public virtual bool ResetGateFirst { get; set; }
	public virtual bool Reverse { get; set; }
	public virtual bool Training { get; set; }
	public virtual MPSGraphRnnActivation UpdateGateActivation { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static MPSGraphGruDescriptor Create ();
}

New Type: MetalPerformanceShadersGraph.MPSGraphImToColOpDescriptor

public class MPSGraphImToColOpDescriptor : MetalPerformanceShadersGraph.MPSGraphObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public MPSGraphImToColOpDescriptor ();
	protected MPSGraphImToColOpDescriptor (Foundation.NSObjectFlag t);
	protected MPSGraphImToColOpDescriptor (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual MPSGraphTensorNamedDataLayout DataLayout { get; set; }
	public virtual UIntPtr DilationRateInX { get; set; }
	public virtual UIntPtr DilationRateInY { get; set; }
	public virtual UIntPtr KernelHeight { get; set; }
	public virtual UIntPtr KernelWidth { get; set; }
	public virtual UIntPtr PaddingBottom { get; set; }
	public virtual UIntPtr PaddingLeft { get; set; }
	public virtual UIntPtr PaddingRight { get; set; }
	public virtual UIntPtr PaddingTop { get; set; }
	public virtual UIntPtr StrideInX { get; set; }
	public virtual UIntPtr StrideInY { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static MPSGraphImToColOpDescriptor Create (UIntPtr kernelWidth, UIntPtr kernelHeight, UIntPtr strideInX, UIntPtr strideInY, UIntPtr dilationRateInX, UIntPtr dilationRateInY, MPSGraphTensorNamedDataLayout dataLayout);
	public static MPSGraphImToColOpDescriptor Create (UIntPtr kernelWidth, UIntPtr kernelHeight, UIntPtr strideInX, UIntPtr strideInY, UIntPtr dilationRateInX, UIntPtr dilationRateInY, UIntPtr paddingLeft, UIntPtr paddingRight, UIntPtr paddingTop, UIntPtr paddingBottom, MPSGraphTensorNamedDataLayout dataLayout);
	public virtual void SetExplicitPadding (UIntPtr paddingLeft, UIntPtr paddingRight, UIntPtr paddingTop, UIntPtr paddingBottom);
}

New Type: MetalPerformanceShadersGraph.MPSGraphLstmDescriptor

public class MPSGraphLstmDescriptor : MetalPerformanceShadersGraph.MPSGraphObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public MPSGraphLstmDescriptor ();
	protected MPSGraphLstmDescriptor (Foundation.NSObjectFlag t);
	protected MPSGraphLstmDescriptor (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual MPSGraphRnnActivation Activation { get; set; }
	public virtual bool Bidirectional { get; set; }
	public virtual MPSGraphRnnActivation CellGateActivation { get; set; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual MPSGraphRnnActivation ForgetGateActivation { get; set; }
	public virtual bool ForgetGateLast { get; set; }
	public virtual MPSGraphRnnActivation InputGateActivation { get; set; }
	public virtual MPSGraphRnnActivation OutputGateActivation { get; set; }
	public virtual bool ProduceCell { get; set; }
	public virtual bool Reverse { get; set; }
	public virtual bool Training { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static MPSGraphLstmDescriptor Create ();
}

New Type: MetalPerformanceShadersGraph.MPSGraphNonMaximumSuppressionCoordinateMode

[Serializable]
public enum MPSGraphNonMaximumSuppressionCoordinateMode {
	CentersHeightFirst = 2,
	CentersWidthFirst = 3,
	CornersHeightFirst = 0,
	CornersWidthFirst = 1,
}

New Type: MetalPerformanceShadersGraph.MPSGraphObject

public class MPSGraphObject : Foundation.NSObject {
	// constructors
	public MPSGraphObject ();
	protected MPSGraphObject (Foundation.NSObjectFlag t);
	protected MPSGraphObject (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
}

New Type: MetalPerformanceShadersGraph.MPSGraphOptimization

[Serializable]
public enum MPSGraphOptimization {
	Level0 = 0,
	Level1 = 1,
}

New Type: MetalPerformanceShadersGraph.MPSGraphOptimizationProfile

[Serializable]
public enum MPSGraphOptimizationProfile {
	Performance = 0,
	PowerEfficiency = 1,
}

New Type: MetalPerformanceShadersGraph.MPSGraphPoolingReturnIndicesMode

[Serializable]
public enum MPSGraphPoolingReturnIndicesMode {
	GlobalFlatten1d = 1,
	GlobalFlatten2d = 2,
	GlobalFlatten3d = 3,
	GlobalFlatten4d = 4,
	LocalFlatten1d = 5,
	LocalFlatten2d = 6,
	LocalFlatten3d = 7,
	LocalFlatten4d = 8,
	None = 0,
}

New Type: MetalPerformanceShadersGraph.MPSGraphResizeNearestRoundingMode

[Serializable]
public enum MPSGraphResizeNearestRoundingMode {
	Ceil = 2,
	Floor = 3,
	RoundPreferCeil = 0,
	RoundPreferFloor = 1,
	RoundToEven = 4,
	RoundToOdd = 5,
}

New Type: MetalPerformanceShadersGraph.MPSGraphRnnActivation

[Serializable]
public enum MPSGraphRnnActivation {
	HardSigmoid = 4,
	None = 0,
	Relu = 1,
	Sigmoid = 3,
	Tanh = 2,
}

New Type: MetalPerformanceShadersGraph.MPSGraphSingleGateRnnDescriptor

public class MPSGraphSingleGateRnnDescriptor : MetalPerformanceShadersGraph.MPSGraphObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public MPSGraphSingleGateRnnDescriptor ();
	protected MPSGraphSingleGateRnnDescriptor (Foundation.NSObjectFlag t);
	protected MPSGraphSingleGateRnnDescriptor (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual MPSGraphRnnActivation Activation { get; set; }
	public virtual bool Bidirectional { get; set; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual bool Reverse { get; set; }
	public virtual bool Training { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static MPSGraphSingleGateRnnDescriptor Create ();
}

New Type: MetalPerformanceShadersGraph.MPSGraph_CallOp

public static class MPSGraph_CallOp {
	// methods
	public static MPSGraphTensor[] Call (this MPSGraph This, string symbolName, MPSGraphTensor[] inputTensors, MPSGraphType[] outputTypes, string name);
}

New Type: MetalPerformanceShadersGraph.MPSGraph_MPSGraphCumulativeOps

public static class MPSGraph_MPSGraphCumulativeOps {
	// methods
	public static MPSGraphTensor CumulativeMaximum (this MPSGraph This, MPSGraphTensor tensor, MPSGraphTensor axisTensor, string name);
	public static MPSGraphTensor CumulativeMaximum (this MPSGraph This, MPSGraphTensor tensor, IntPtr axis, string name);
	public static MPSGraphTensor CumulativeMaximum (this MPSGraph This, MPSGraphTensor tensor, MPSGraphTensor axisTensor, bool exclusive, bool reverse, string name);
	public static MPSGraphTensor CumulativeMaximum (this MPSGraph This, MPSGraphTensor tensor, IntPtr axis, bool exclusive, bool reverse, string name);
	public static MPSGraphTensor CumulativeMinimum (this MPSGraph This, MPSGraphTensor tensor, MPSGraphTensor axisTensor, string name);
	public static MPSGraphTensor CumulativeMinimum (this MPSGraph This, MPSGraphTensor tensor, IntPtr axis, string name);
	public static MPSGraphTensor CumulativeMinimum (this MPSGraph This, MPSGraphTensor tensor, MPSGraphTensor axisTensor, bool exclusive, bool reverse, string name);
	public static MPSGraphTensor CumulativeMinimum (this MPSGraph This, MPSGraphTensor tensor, IntPtr axis, bool exclusive, bool reverse, string name);
	public static MPSGraphTensor CumulativeProduct (this MPSGraph This, MPSGraphTensor tensor, MPSGraphTensor axisTensor, string name);
	public static MPSGraphTensor CumulativeProduct (this MPSGraph This, MPSGraphTensor tensor, IntPtr axis, string name);
	public static MPSGraphTensor CumulativeProduct (this MPSGraph This, MPSGraphTensor tensor, MPSGraphTensor axisTensor, bool exclusive, bool reverse, string name);
	public static MPSGraphTensor CumulativeProduct (this MPSGraph This, MPSGraphTensor tensor, IntPtr axis, bool exclusive, bool reverse, string name);
	public static MPSGraphTensor CumulativeSum (this MPSGraph This, MPSGraphTensor tensor, MPSGraphTensor axisTensor, string name);
	public static MPSGraphTensor CumulativeSum (this MPSGraph This, MPSGraphTensor tensor, IntPtr axis, string name);
	public static MPSGraphTensor CumulativeSum (this MPSGraph This, MPSGraphTensor tensor, MPSGraphTensor axisTensor, bool exclusive, bool reverse, string name);
	public static MPSGraphTensor CumulativeSum (this MPSGraph This, MPSGraphTensor tensor, IntPtr axis, bool exclusive, bool reverse, string name);
}

New Type: MetalPerformanceShadersGraph.MPSGraph_MPSGraphFourierTransformOps

public static class MPSGraph_MPSGraphFourierTransformOps {
	// methods
	public static MPSGraphTensor FastFourierTransform (this MPSGraph This, MPSGraphTensor tensor, MPSGraphTensor axesTensor, MPSGraphFftDescriptor descriptor, string name);
	public static MPSGraphTensor FastFourierTransform (this MPSGraph This, MPSGraphTensor tensor, int[] axes, MPSGraphFftDescriptor descriptor, string name);
	public static MPSGraphTensor HermiteanToRealFft (this MPSGraph This, MPSGraphTensor tensor, MPSGraphTensor axesTensor, MPSGraphFftDescriptor descriptor, string name);
	public static MPSGraphTensor HermiteanToRealFft (this MPSGraph This, MPSGraphTensor tensor, int[] axes, MPSGraphFftDescriptor descriptor, string name);
	public static MPSGraphTensor RealToHermiteanFft (this MPSGraph This, MPSGraphTensor tensor, MPSGraphTensor axesTensor, MPSGraphFftDescriptor descriptor, string name);
	public static MPSGraphTensor RealToHermiteanFft (this MPSGraph This, MPSGraphTensor tensor, int[] axes, MPSGraphFftDescriptor descriptor, string name);
}

New Type: MetalPerformanceShadersGraph.MPSGraph_MPSGraphGatherAlongAxisOps

public static class MPSGraph_MPSGraphGatherAlongAxisOps {
	// methods
	public static MPSGraphTensor GatherAlongAxis (this MPSGraph This, MPSGraphTensor axisTensor, MPSGraphTensor updatesTensor, MPSGraphTensor indicesTensor, string name);
	public static MPSGraphTensor GatherAlongAxis (this MPSGraph This, IntPtr axis, MPSGraphTensor updatesTensor, MPSGraphTensor indicesTensor, string name);
}

New Type: MetalPerformanceShadersGraph.MPSGraph_MPSGraphImToColOps

public static class MPSGraph_MPSGraphImToColOps {
	// methods
	public static MPSGraphTensor ColToIm (this MPSGraph This, MPSGraphTensor source, int[] outputShape, MPSGraphImToColOpDescriptor descriptor, string name);
	public static MPSGraphTensor ImToCol (this MPSGraph This, MPSGraphTensor source, MPSGraphImToColOpDescriptor descriptor, string name);
}

New Type: MetalPerformanceShadersGraph.MPSGraph_MPSGraphLinearAlgebraOps

public static class MPSGraph_MPSGraphLinearAlgebraOps {
	// methods
	public static MPSGraphTensor BandPart (this MPSGraph This, MPSGraphTensor inputTensor, MPSGraphTensor numLowerTensor, MPSGraphTensor numUpperTensor, string name);
	public static MPSGraphTensor BandPart (this MPSGraph This, MPSGraphTensor inputTensor, IntPtr numLower, IntPtr numUpper, string name);
}

New Type: MetalPerformanceShadersGraph.MPSGraph_MPSGraphMatrixInverseOps

public static class MPSGraph_MPSGraphMatrixInverseOps {
	// methods
	public static MPSGraphTensor Inverse (this MPSGraph This, MPSGraphTensor inputTensor, string name);
}

New Type: MetalPerformanceShadersGraph.MPSGraph_MPSGraphNonMaximumSuppressionOps

public static class MPSGraph_MPSGraphNonMaximumSuppressionOps {
	// methods
	public static MPSGraphTensor NonMaximumSuppression (this MPSGraph This, MPSGraphTensor boxesTensor, MPSGraphTensor scoresTensor, float iouThreshold, float scoreThreshold, bool perClassSuppression, MPSGraphNonMaximumSuppressionCoordinateMode coordinateMode, string name);
	public static MPSGraphTensor NonMaximumSuppression (this MPSGraph This, MPSGraphTensor boxesTensor, MPSGraphTensor scoresTensor, MPSGraphTensor classIndicesTensor, float iouThreshold, float scoreThreshold, bool perClassSuppression, MPSGraphNonMaximumSuppressionCoordinateMode coordinateMode, string name);
}

New Type: MetalPerformanceShadersGraph.MPSGraph_MPSGraphQuantizationOps

public static class MPSGraph_MPSGraphQuantizationOps {
	// methods
	public static MPSGraphTensor Dequantize (this MPSGraph This, MPSGraphTensor tensor, MPSGraphTensor lookupTableTensor, string name);
	public static MPSGraphTensor Dequantize (this MPSGraph This, MPSGraphTensor tensor, MPSGraphTensor scaleTensor, MetalPerformanceShaders.MPSDataType dataType, string name);
	public static MPSGraphTensor Dequantize (this MPSGraph This, MPSGraphTensor tensor, MPSGraphTensor lookupTableTensor, IntPtr axis, string name);
	public static MPSGraphTensor Dequantize (this MPSGraph This, MPSGraphTensor tensor, MPSGraphTensor scaleTensor, MPSGraphTensor zeroPointTensor, MetalPerformanceShaders.MPSDataType dataType, string name);
	public static MPSGraphTensor Dequantize (this MPSGraph This, MPSGraphTensor tensor, double scale, double zeroPoint, MetalPerformanceShaders.MPSDataType dataType, string name);
	public static MPSGraphTensor Dequantize (this MPSGraph This, MPSGraphTensor tensor, MPSGraphTensor scaleTensor, MPSGraphTensor zeroPointTensor, MetalPerformanceShaders.MPSDataType dataType, IntPtr axis, string name);
	public static MPSGraphTensor Dequantize (this MPSGraph This, MPSGraphTensor tensor, MPSGraphTensor scaleTensor, double zeroPoint, MetalPerformanceShaders.MPSDataType dataType, IntPtr axis, string name);
	public static MPSGraphTensor Quantize (this MPSGraph This, MPSGraphTensor tensor, double scale, double zeroPoint, MetalPerformanceShaders.MPSDataType dataType, string name);
	public static MPSGraphTensor Quantize (this MPSGraph This, MPSGraphTensor tensor, MPSGraphTensor scaleTensor, MPSGraphTensor zeroPointTensor, MetalPerformanceShaders.MPSDataType dataType, IntPtr axis, string name);
	public static MPSGraphTensor Quantize (this MPSGraph This, MPSGraphTensor tensor, MPSGraphTensor scaleTensor, double zeroPoint, MetalPerformanceShaders.MPSDataType dataType, IntPtr axis, string name);
}

New Type: MetalPerformanceShadersGraph.MPSGraph_MPSGraphRnnOps

public static class MPSGraph_MPSGraphRnnOps {
	// methods
	public static MPSGraphTensor[] Gru (this MPSGraph This, MPSGraphTensor source, MPSGraphTensor recurrentWeight, MPSGraphTensor inputWeight, MPSGraphTensor bias, MPSGraphGruDescriptor descriptor, string name);
	public static MPSGraphTensor[] Gru (this MPSGraph This, MPSGraphTensor source, MPSGraphTensor recurrentWeight, MPSGraphTensor inputWeight, MPSGraphTensor bias, MPSGraphTensor initState, MPSGraphGruDescriptor descriptor, string name);
	public static MPSGraphTensor[] Gru (this MPSGraph This, MPSGraphTensor source, MPSGraphTensor recurrentWeight, MPSGraphTensor inputWeight, MPSGraphTensor bias, MPSGraphTensor initState, MPSGraphTensor mask, MPSGraphTensor secondaryBias, MPSGraphGruDescriptor descriptor, string name);
	public static MPSGraphTensor[] GruGradients (this MPSGraph This, MPSGraphTensor source, MPSGraphTensor recurrentWeight, MPSGraphTensor sourceGradient, MPSGraphTensor zState, MPSGraphTensor outputFwd, MPSGraphTensor inputWeight, MPSGraphTensor bias, MPSGraphGruDescriptor descriptor, string name);
	public static MPSGraphTensor[] GruGradients (this MPSGraph This, MPSGraphTensor source, MPSGraphTensor recurrentWeight, MPSGraphTensor sourceGradient, MPSGraphTensor zState, MPSGraphTensor outputFwd, MPSGraphTensor inputWeight, MPSGraphTensor bias, MPSGraphTensor initState, MPSGraphGruDescriptor descriptor, string name);
	public static MPSGraphTensor[] GruGradients (this MPSGraph This, MPSGraphTensor source, MPSGraphTensor recurrentWeight, MPSGraphTensor sourceGradient, MPSGraphTensor zState, MPSGraphTensor outputFwd, MPSGraphTensor stateGradient, MPSGraphTensor inputWeight, MPSGraphTensor bias, MPSGraphTensor initState, MPSGraphTensor mask, MPSGraphTensor secondaryBias, MPSGraphGruDescriptor descriptor, string name);
	public static MPSGraphTensor[] Lstm (this MPSGraph This, MPSGraphTensor source, MPSGraphTensor recurrentWeight, MPSGraphTensor initState, MPSGraphTensor initCell, MPSGraphLstmDescriptor descriptor, string name);
	public static MPSGraphTensor[] Lstm (this MPSGraph This, MPSGraphTensor source, MPSGraphTensor recurrentWeight, MPSGraphTensor inputWeight, MPSGraphTensor bias, MPSGraphTensor initState, MPSGraphTensor initCell, MPSGraphLstmDescriptor descriptor, string name);
	public static MPSGraphTensor[] Lstm (this MPSGraph This, MPSGraphTensor source, MPSGraphTensor recurrentWeight, MPSGraphTensor inputWeight, MPSGraphTensor bias, MPSGraphTensor initState, MPSGraphTensor initCell, MPSGraphTensor mask, MPSGraphTensor peephole, MPSGraphLstmDescriptor descriptor, string name);
	public static MPSGraphTensor[] LstmGradients (this MPSGraph This, MPSGraphTensor source, MPSGraphTensor recurrentWeight, MPSGraphTensor sourceGradient, MPSGraphTensor zState, MPSGraphTensor cellOutputFwd, MPSGraphLstmDescriptor descriptor, string name);
	public static MPSGraphTensor[] LstmGradients (this MPSGraph This, MPSGraphTensor source, MPSGraphTensor recurrentWeight, MPSGraphTensor sourceGradient, MPSGraphTensor zState, MPSGraphTensor cellOutputFwd, MPSGraphTensor inputWeight, MPSGraphTensor bias, MPSGraphTensor initState, MPSGraphTensor initCell, MPSGraphLstmDescriptor descriptor, string name);
	public static MPSGraphTensor[] LstmGradients (this MPSGraph This, MPSGraphTensor source, MPSGraphTensor recurrentWeight, MPSGraphTensor sourceGradient, MPSGraphTensor zState, MPSGraphTensor cellOutputFwd, MPSGraphTensor inputWeight, MPSGraphTensor bias, MPSGraphTensor initState, MPSGraphTensor initCell, MPSGraphTensor mask, MPSGraphLstmDescriptor descriptor, string name);
	public static MPSGraphTensor[] LstmGradients (this MPSGraph This, MPSGraphTensor source, MPSGraphTensor recurrentWeight, MPSGraphTensor sourceGradient, MPSGraphTensor zState, MPSGraphTensor cellOutputFwd, MPSGraphTensor stateGradient, MPSGraphTensor cellGradient, MPSGraphTensor inputWeight, MPSGraphTensor bias, MPSGraphTensor initState, MPSGraphTensor initCell, MPSGraphTensor mask, MPSGraphTensor peephole, MPSGraphLstmDescriptor descriptor, string name);
	public static MPSGraphTensor[] SingleGateRnn (this MPSGraph This, MPSGraphTensor source, MPSGraphTensor recurrentWeight, MPSGraphTensor initState, MPSGraphSingleGateRnnDescriptor descriptor, string name);
	public static MPSGraphTensor[] SingleGateRnn (this MPSGraph This, MPSGraphTensor source, MPSGraphTensor recurrentWeight, MPSGraphTensor inputWeight, MPSGraphTensor bias, MPSGraphTensor initState, MPSGraphSingleGateRnnDescriptor descriptor, string name);
	public static MPSGraphTensor[] SingleGateRnn (this MPSGraph This, MPSGraphTensor source, MPSGraphTensor recurrentWeight, MPSGraphTensor inputWeight, MPSGraphTensor bias, MPSGraphTensor initState, MPSGraphTensor mask, MPSGraphSingleGateRnnDescriptor descriptor, string name);
	public static MPSGraphTensor[] SingleGateRnnGradients (this MPSGraph This, MPSGraphTensor source, MPSGraphTensor recurrentWeight, MPSGraphTensor sourceGradient, MPSGraphTensor zState, MPSGraphTensor initState, MPSGraphSingleGateRnnDescriptor descriptor, string name);
	public static MPSGraphTensor[] SingleGateRnnGradients (this MPSGraph This, MPSGraphTensor source, MPSGraphTensor recurrentWeight, MPSGraphTensor sourceGradient, MPSGraphTensor zState, MPSGraphTensor inputWeight, MPSGraphTensor bias, MPSGraphTensor initState, MPSGraphSingleGateRnnDescriptor descriptor, string name);
	public static MPSGraphTensor[] SingleGateRnnGradients (this MPSGraph This, MPSGraphTensor source, MPSGraphTensor recurrentWeight, MPSGraphTensor sourceGradient, MPSGraphTensor zState, MPSGraphTensor inputWeight, MPSGraphTensor bias, MPSGraphTensor initState, MPSGraphTensor mask, MPSGraphSingleGateRnnDescriptor descriptor, string name);
	public static MPSGraphTensor[] SingleGateRnnGradients (this MPSGraph This, MPSGraphTensor source, MPSGraphTensor recurrentWeight, MPSGraphTensor sourceGradient, MPSGraphTensor zState, MPSGraphTensor stateGradient, MPSGraphTensor inputWeight, MPSGraphTensor bias, MPSGraphTensor initState, MPSGraphTensor mask, MPSGraphSingleGateRnnDescriptor descriptor, string name);
}

New Type: MetalPerformanceShadersGraph.MPSGraph_MPSGraphSampleGrid

public static class MPSGraph_MPSGraphSampleGrid {
	// methods
	public static MPSGraphTensor SampleGrid (this MPSGraph This, MPSGraphTensor source, MPSGraphTensor coordinates, MPSGraphTensorNamedDataLayout layout, bool normalizeCoordinates, bool relativeCoordinates, bool alignCorners, MPSGraphPaddingMode paddingMode, MPSGraphResizeMode samplingMode, double constantValue, string name);
	public static MPSGraphTensor SampleGrid (this MPSGraph This, MPSGraphTensor source, MPSGraphTensor coordinates, MPSGraphTensorNamedDataLayout layout, bool normalizeCoordinates, bool relativeCoordinates, bool alignCorners, MPSGraphPaddingMode paddingMode, MPSGraphResizeNearestRoundingMode nearestRoundingMode, double constantValue, string name);
}

New Type: MetalPerformanceShadersGraph.MPSGraph_MPSGraphScatterAlongAxisOps

public static class MPSGraph_MPSGraphScatterAlongAxisOps {
	// methods
	public static MPSGraphTensor ScatterAlongAxis (this MPSGraph This, MPSGraphTensor axisTensor, MPSGraphTensor dataTensor, MPSGraphTensor updatesTensor, MPSGraphTensor indicesTensor, MPSGraphScatterMode mode, string name);
	public static MPSGraphTensor ScatterAlongAxis (this MPSGraph This, MPSGraphTensor axisTensor, MPSGraphTensor updatesTensor, MPSGraphTensor indicesTensor, int[] shape, MPSGraphScatterMode mode, string name);
	public static MPSGraphTensor ScatterAlongAxis (this MPSGraph This, IntPtr axis, MPSGraphTensor dataTensor, MPSGraphTensor updatesTensor, MPSGraphTensor indicesTensor, MPSGraphScatterMode mode, string name);
	public static MPSGraphTensor ScatterAlongAxis (this MPSGraph This, IntPtr axis, MPSGraphTensor updatesTensor, MPSGraphTensor indicesTensor, int[] shape, MPSGraphScatterMode mode, string name);
}

New Type: MetalPerformanceShadersGraph.MPSGraph_MPSGraphSortOps

public static class MPSGraph_MPSGraphSortOps {
	// methods
	public static MPSGraphTensor ArgSort (this MPSGraph This, MPSGraphTensor tensor, MPSGraphTensor axisTensor, string name);
	public static MPSGraphTensor ArgSort (this MPSGraph This, MPSGraphTensor tensor, IntPtr axis, string name);
	public static MPSGraphTensor ArgSort (this MPSGraph This, MPSGraphTensor tensor, MPSGraphTensor axisTensor, bool descending, string name);
	public static MPSGraphTensor ArgSort (this MPSGraph This, MPSGraphTensor tensor, IntPtr axis, bool descending, string name);
	public static MPSGraphTensor Sort (this MPSGraph This, MPSGraphTensor tensor, MPSGraphTensor axisTensor, string name);
	public static MPSGraphTensor Sort (this MPSGraph This, MPSGraphTensor tensor, IntPtr axis, string name);
	public static MPSGraphTensor Sort (this MPSGraph This, MPSGraphTensor tensor, MPSGraphTensor axisTensor, bool descending, string name);
	public static MPSGraphTensor Sort (this MPSGraph This, MPSGraphTensor tensor, IntPtr axis, bool descending, string name);
}

New Type: MetalPerformanceShadersGraph.MPSGraph_NonZeroOps

public static class MPSGraph_NonZeroOps {
	// methods
	public static MPSGraphTensor NonZeroIndices (this MPSGraph This, MPSGraphTensor tensor, string name);
}

Namespace MetricKit

Type Changed: MetricKit.IMXMetricManagerSubscriber

Added methods:

public virtual void DidReceiveDiagnosticPayloads (MXDiagnosticPayload[] payloads);
public virtual void DidReceiveMetricPayloads (MXMetricPayload[] payloads);

Namespace ModelIO

Type Changed: ModelIO.IMDLAssetResolver

Modified methods:

-public abstract bool CanResolveAsset (string name)
+public virtual bool CanResolveAsset (string name)
-public abstract Foundation.NSUrl ResolveAsset (string name)
+public virtual Foundation.NSUrl ResolveAsset (string name)

Type Changed: ModelIO.IMDLLightProbeIrradianceDataSource

Modified properties:

-public abstract MDLAxisAlignedBoundingBox BoundingBox { get; set; }
+public virtual MDLAxisAlignedBoundingBox BoundingBox { get; set; }

Added property:

public virtual UIntPtr SphericalHarmonicsLevel { get; set; }

Added method:

public virtual Foundation.NSData GetSphericalHarmonicsCoefficients (System.Numerics.Vector3 position);

Type Changed: ModelIO.IMDLMeshBuffer

Modified properties:

-public abstract IMDLMeshBufferAllocator Allocator { get; }
+public virtual IMDLMeshBufferAllocator Allocator { get; }
-public abstract UIntPtr Length { get; }
+public virtual UIntPtr Length { get; }
-public abstract MDLMeshBufferMap Map { get; }
+public virtual MDLMeshBufferMap Map { get; }
-public abstract MDLMeshBufferType Type { get; }
+public virtual MDLMeshBufferType Type { get; }
-public abstract IMDLMeshBufferZone Zone { get; }
+public virtual IMDLMeshBufferZone Zone { get; }

Modified methods:

-public abstract void FillData (Foundation.NSData data, UIntPtr offset)
+public virtual void FillData (Foundation.NSData data, UIntPtr offset)

Type Changed: ModelIO.IMDLMeshBufferAllocator

Modified methods:

-public abstract IMDLMeshBuffer CreateBuffer (Foundation.NSData data, MDLMeshBufferType type)
+public virtual IMDLMeshBuffer CreateBuffer (Foundation.NSData data, MDLMeshBufferType type)
-public abstract IMDLMeshBuffer CreateBuffer (UIntPtr length, MDLMeshBufferType type)
+public virtual IMDLMeshBuffer CreateBuffer (UIntPtr length, MDLMeshBufferType type)
-public abstract IMDLMeshBuffer CreateBuffer (IMDLMeshBufferZone zone, Foundation.NSData data, MDLMeshBufferType type)
+public virtual IMDLMeshBuffer CreateBuffer (IMDLMeshBufferZone zone, Foundation.NSData data, MDLMeshBufferType type)
-public abstract IMDLMeshBuffer CreateBuffer (IMDLMeshBufferZone zone, UIntPtr length, MDLMeshBufferType type)
+public virtual IMDLMeshBuffer CreateBuffer (IMDLMeshBufferZone zone, UIntPtr length, MDLMeshBufferType type)
-public abstract IMDLMeshBufferZone CreateZone (UIntPtr capacity)
+public virtual IMDLMeshBufferZone CreateZone (UIntPtr capacity)
-public abstract IMDLMeshBufferZone CreateZone (Foundation.NSNumber[] sizes, Foundation.NSNumber[] types)
+public virtual IMDLMeshBufferZone CreateZone (Foundation.NSNumber[] sizes, Foundation.NSNumber[] types)

Type Changed: ModelIO.IMDLMeshBufferZone

Modified properties:

-public abstract IMDLMeshBufferAllocator Allocator { get; }
+public virtual IMDLMeshBufferAllocator Allocator { get; }
-public abstract UIntPtr Capacity { get; }
+public virtual UIntPtr Capacity { get; }

Type Changed: ModelIO.IMDLNamed

Modified properties:

-public abstract string Name { get; set; }
+public virtual string Name { get; set; }

Type Changed: ModelIO.IMDLObjectContainerComponent

Modified properties:

-public abstract UIntPtr Count { get; }
+public virtual UIntPtr Count { get; }
-public abstract MDLObject[] Objects { get; }
+public virtual MDLObject[] Objects { get; }

Modified methods:

-public abstract void AddObject (MDLObject object)
+public virtual void AddObject (MDLObject object)
-public abstract MDLObject GetObject (UIntPtr index)
+public virtual MDLObject GetObject (UIntPtr index)
-public abstract void RemoveObject (MDLObject object)
+public virtual void RemoveObject (MDLObject object)

Type Changed: ModelIO.IMDLTransformComponent

Modified properties:

-public abstract Foundation.NSNumber[] KeyTimes { get; }
+public virtual Foundation.NSNumber[] KeyTimes { get; }
-public abstract CoreGraphics.NMatrix4 Matrix { get; set; }
+public virtual CoreGraphics.NMatrix4 Matrix { get; set; }
-public abstract double MaximumTime { get; }
+public virtual double MaximumTime { get; }
-public abstract double MinimumTime { get; }
+public virtual double MinimumTime { get; }
-public abstract bool ResetsTransform { get; set; }
+public virtual bool ResetsTransform { get; set; }

Added methods:

public static CoreGraphics.NMatrix4 CreateGlobalTransform<T> (MDLObject obj, double atTime);
public virtual CoreGraphics.NMatrix4 GetLocalTransform (double atTime);
public virtual void SetLocalTransform (CoreGraphics.NMatrix4 transform);
public virtual void SetLocalTransform (CoreGraphics.NMatrix4 transform, double time);

Type Changed: ModelIO.IMDLTransformOp

Modified properties:

-public abstract bool IsInverseOp { get; }
+public virtual bool IsInverseOp { get; }
-public abstract string Name { get; }
+public virtual string Name { get; }

Modified methods:

-public abstract CoreGraphics.NMatrix4 GetNMatrix4 (double atTime)
+public virtual CoreGraphics.NMatrix4 GetNMatrix4 (double atTime)
-public abstract CoreGraphics.NMatrix4d GetNMatrix4d (double atTime)
+public virtual CoreGraphics.NMatrix4d GetNMatrix4d (double atTime)

Type Changed: ModelIO.MDLMaterial

Added properties:

public MDLMaterialProperty Item { get; }
public MDLMaterialProperty Item { get; }

New Type: ModelIO.MDLUtility

public class MDLUtility : Foundation.NSObject {
	// constructors
	protected MDLUtility (Foundation.NSObjectFlag t);
	protected MDLUtility (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	// methods
	public static void ConvertToUsdz (Foundation.NSUrl inputUrl, Foundation.NSUrl outputUrl);
}

Namespace MultipeerConnectivity

Type Changed: MultipeerConnectivity.IMCAdvertiserAssistantDelegate

Added methods:

public virtual void DidDismissInvitation (MCAdvertiserAssistant advertiserAssistant);
public virtual void WillPresentInvitation (MCAdvertiserAssistant advertiserAssistant);

Type Changed: MultipeerConnectivity.IMCBrowserViewControllerDelegate

Modified methods:

-public abstract void DidFinish (MCBrowserViewController browserViewController)
+public virtual void DidFinish (MCBrowserViewController browserViewController)
-public abstract void WasCancelled (MCBrowserViewController browserViewController)
+public virtual void WasCancelled (MCBrowserViewController browserViewController)

Added method:

public virtual bool ShouldPresentNearbyPeer (MCBrowserViewController browserViewController, MCPeerID peerID, Foundation.NSDictionary info);

Type Changed: MultipeerConnectivity.IMCNearbyServiceAdvertiserDelegate

Modified methods:

-public abstract void DidReceiveInvitationFromPeer (MCNearbyServiceAdvertiser advertiser, MCPeerID peerID, Foundation.NSData context, MCNearbyServiceAdvertiserInvitationHandler invitationHandler)
+public virtual void DidReceiveInvitationFromPeer (MCNearbyServiceAdvertiser advertiser, MCPeerID peerID, Foundation.NSData context, MCNearbyServiceAdvertiserInvitationHandler invitationHandler)

Added method:

public virtual void DidNotStartAdvertisingPeer (MCNearbyServiceAdvertiser advertiser, Foundation.NSError error);

Type Changed: MultipeerConnectivity.IMCNearbyServiceBrowserDelegate

Modified methods:

-public abstract void FoundPeer (MCNearbyServiceBrowser browser, MCPeerID peerID, Foundation.NSDictionary info)
+public virtual void FoundPeer (MCNearbyServiceBrowser browser, MCPeerID peerID, Foundation.NSDictionary info)
-public abstract void LostPeer (MCNearbyServiceBrowser browser, MCPeerID peerID)
+public virtual void LostPeer (MCNearbyServiceBrowser browser, MCPeerID peerID)

Added method:

public virtual void DidNotStartBrowsingForPeers (MCNearbyServiceBrowser browser, Foundation.NSError error);

Type Changed: MultipeerConnectivity.IMCSessionDelegate

Modified methods:

-public abstract void DidChangeState (MCSession session, MCPeerID peerID, MCSessionState state)
+public virtual void DidChangeState (MCSession session, MCPeerID peerID, MCSessionState state)
-public abstract void DidFinishReceivingResource (MCSession session, string resourceName, MCPeerID fromPeer, Foundation.NSUrl localUrl, Foundation.NSError error)
+public virtual void DidFinishReceivingResource (MCSession session, string resourceName, MCPeerID fromPeer, Foundation.NSUrl localUrl, Foundation.NSError error)
-public abstract void DidReceiveData (MCSession session, Foundation.NSData data, MCPeerID peerID)
+public virtual void DidReceiveData (MCSession session, Foundation.NSData data, MCPeerID peerID)
-public abstract void DidReceiveStream (MCSession session, Foundation.NSInputStream stream, string streamName, MCPeerID peerID)
+public virtual void DidReceiveStream (MCSession session, Foundation.NSInputStream stream, string streamName, MCPeerID peerID)
-public abstract void DidStartReceivingResource (MCSession session, string resourceName, MCPeerID fromPeer, Foundation.NSProgress progress)
+public virtual void DidStartReceivingResource (MCSession session, string resourceName, MCPeerID fromPeer, Foundation.NSProgress progress)

Added method:

public virtual bool DidReceiveCertificate (MCSession session, Security.SecCertificate[] certificate, MCPeerID peerID, System.Action<bool> certificateHandler);

Namespace NearbyInteraction

Type Changed: NearbyInteraction.INIDeviceCapability

Modified properties:

-public abstract bool SupportsCameraAssistance { get; }
+public virtual bool SupportsCameraAssistance { get; }
-public abstract bool SupportsDirectionMeasurement { get; }
+public virtual bool SupportsDirectionMeasurement { get; }
-public abstract bool SupportsPreciseDistanceMeasurement { get; }
+public virtual bool SupportsPreciseDistanceMeasurement { get; }

Added property:

public virtual bool SupportsExtendedDistanceMeasurement { get; }

Type Changed: NearbyInteraction.INISessionDelegate

Added methods:

public virtual void DidGenerateShareableConfigurationData (NISession session, Foundation.NSData shareableConfigurationData, NINearbyObject object);
public virtual void DidSessionInvalidate (NISession session, Foundation.NSError error);
public virtual void DidSessionRemoveNearbyObjects (NISession session, NINearbyObject[] nearbyObjects, NINearbyObjectRemovalReason reason);
public virtual void DidSessionStartRunning (NISession session);
public virtual void DidSessionUpdateNearbyObjects (NISession session, NINearbyObject[] nearbyObjects);
public virtual void DidUpdateAlgorithmConvergence (NISession session, NIAlgorithmConvergence convergence, NINearbyObject object);
public virtual void SessionSuspensionEnded (NISession session);
public virtual void SessionWasSuspended (NISession session);

Namespace Network

Type Changed: Network.NWConnection

Obsoleted methods:

 [Obsolete ("Use 'SetViabilityChangeHandler' instead.")]
 public void SetBooleanChangeHandler (System.Action<bool> callback);

Added method:

public void SetViabilityChangeHandler (System.Action<bool> callback);

Type Changed: Network.NWParametersExpiredDnsBehavior

Added value:

Persistent = 3,

Type Changed: Network.NWPrivacyContext

Added methods:

public void AddProxy (NWProxyConfig proxyConfig);
public void ClearProxies ();

Type Changed: Network.NWQuicMetadata

Added method:

public void SetDefaultKeepAlive ();

New Type: Network.NWProxyConfig

public class NWProxyConfig : CoreFoundation.NativeObject {
	// properties
	public bool FailoverAllowed { get; set; }
	// methods
	public void AddExcludedDomain (string domain);
	public void AddMatchDomain (string domain);
	public void ClearExcludedDomains ();
	public void ClearMatchDomains ();
	public static NWProxyConfig CreateHttpConnect (NWEndpoint proxyEndpoint, NWProtocolTlsOptions options);
	public static NWProxyConfig CreateObliviousHttp (NWRelayHop hop, string relaysResourcePath, byte[] gatewayKeyConfig);
	public static NWProxyConfig CreateRelay (NWRelayHop firstHop, NWRelayHop secondHop);
	public static NWProxyConfig CreateSocksV5 (NWEndpoint endpoint);
	public void EnumerateExcludedDomains (System.Action<string> handler);
	public void EnumerateMatchDomains (System.Action<string> handler);
	public void SetUsernameAndPassword (string username, string password);
}

New Type: Network.NWRelayHop

public class NWRelayHop : CoreFoundation.NativeObject {
	// methods
	public void AddAdditionalHttpHeaderField (string fieldName, string fieldValue);
	public static NWRelayHop Create (NWEndpoint http3RelayEndpoint, NWEndpoint http2RelayEndpoint, NWProtocolOptions relayTlsOptions);
}

Namespace NetworkExtension

Type Changed: NetworkExtension.INEAppPushDelegate

Modified methods:

-public abstract void DidReceiveIncomingCall (NEAppPushManager manager, Foundation.NSDictionary userInfo)
+public virtual void DidReceiveIncomingCall (NEAppPushManager manager, Foundation.NSDictionary userInfo)

Type Changed: NetworkExtension.INWTcpConnectionAuthenticationDelegate

Added methods:

public virtual void EvaluateTrust (NWTcpConnection connection, Foundation.NSArray peerCertificateChain, System.Action<Security.SecTrust> completion);
public virtual System.Threading.Tasks.Task<Security.SecTrust> EvaluateTrustAsync (NWTcpConnection connection, Foundation.NSArray peerCertificateChain);
public virtual void ProvideIdentity (NWTcpConnection connection, System.Action<Security.SecIdentity,Foundation.NSArray> completion);
public virtual bool ShouldEvaluateTrust (NWTcpConnection connection);
public virtual bool ShouldProvideIdentity (NWTcpConnection connection);

Type Changed: NetworkExtension.NEVpnProtocol

Added property:

public virtual bool ExcludeDeviceCommunication { get; set; }

Namespace OSLog

Type Changed: OSLog.IOSLogEntryFromProcess

Modified properties:

-public abstract ulong ActivityIdentifier { get; }
+public virtual ulong ActivityIdentifier { get; }
-public abstract string Process { get; }
+public virtual string Process { get; }
-public abstract int ProcessIdentifier { get; }
+public virtual int ProcessIdentifier { get; }
-public abstract string Sender { get; }
+public virtual string Sender { get; }
-public abstract ulong ThreadIdentifier { get; }
+public virtual ulong ThreadIdentifier { get; }

Type Changed: OSLog.IOSLogEntryWithPayload

Modified properties:

-public abstract string Category { get; }
+public virtual string Category { get; }
-public abstract OSLogMessageComponent[] Components { get; }
+public virtual OSLogMessageComponent[] Components { get; }
-public abstract string FormatString { get; }
+public virtual string FormatString { get; }
-public abstract string Subsystem { get; }
+public virtual string Subsystem { get; }

Namespace ObjCRuntime

Type Changed: ObjCRuntime.Constants

Modified fields:

-public const string SdkVersion = "17.2";
+public const string SdkVersion = "18.0";
-public const string Version = "17.2.0";
+public const string Version = "17.99.0";

Added fields:

public static const string BrowserEngineKitLibrary = "/System/Library/Frameworks/BrowserEngineKit.framework/BrowserEngineKit";
public static const string CryptoTokenKitLibrary = "/System/Library/Frameworks/CryptoTokenKit.framework/CryptoTokenKit";
public static const string DeviceDiscoveryExtensionLibrary = "/System/Library/Frameworks/DeviceDiscoveryExtension.framework/DeviceDiscoveryExtension";
public static const string SafetyKitLibrary = "/System/Library/Frameworks/SafetyKit.framework/SafetyKit";

Type Changed: ObjCRuntime.DisposableObject

Added method:

protected void ClearHandle ();

Type Changed: ObjCRuntime.Dlfcn

Added methods:

public static byte GetByte (IntPtr handle, string symbol);
public static short GetInt16 (IntPtr handle, string symbol);
public static sbyte GetSByte (IntPtr handle, string symbol);
public static ushort GetUInt16 (IntPtr handle, string symbol);
public static void SetByte (IntPtr handle, string symbol, byte value);
public static void SetInt16 (IntPtr handle, string symbol, short value);
public static void SetObject (IntPtr handle, string symbol, Foundation.NSObject value);
public static void SetSByte (IntPtr handle, string symbol, sbyte value);
public static void SetUInt16 (IntPtr handle, string symbol, ushort value);

Type Changed: ObjCRuntime.LinkWithAttribute

Added property:

public bool LinkWithSwiftSystemLibraries { get; set; }

New Type: ObjCRuntime.BlockCallbackAttribute

public class BlockCallbackAttribute : System.Attribute {
	// constructors
	public BlockCallbackAttribute ();
}

New Type: ObjCRuntime.CCallbackAttribute

public class CCallbackAttribute : System.Attribute {
	// constructors
	public CCallbackAttribute ();
}

Namespace PassKit

Type Changed: PassKit.IPKAddPassesViewControllerDelegate

Added method:

public virtual void Finished (PKAddPassesViewController controller);

Type Changed: PassKit.IPKAddPaymentPassViewControllerDelegate

Modified methods:

-public abstract void DidFinishAddingPaymentPass (PKAddPaymentPassViewController controller, PKPaymentPass pass, Foundation.NSError error)
+public virtual void DidFinishAddingPaymentPass (PKAddPaymentPassViewController controller, PKPaymentPass pass, Foundation.NSError error)
-public abstract void GenerateRequestWithCertificateChain (PKAddPaymentPassViewController controller, Foundation.NSData[] certificates, Foundation.NSData nonce, Foundation.NSData nonceSignature, System.Action%LESSERTHANREPLACEMENT%PKAddPaymentPassRequest%GREATERTHANREPLACEMENT% handler)
+public virtual void GenerateRequestWithCertificateChain (PKAddPaymentPassViewController controller, Foundation.NSData[] certificates, Foundation.NSData nonce, Foundation.NSData nonceSignature, System.Action%LESSERTHANREPLACEMENT%PKAddPaymentPassRequest%GREATERTHANREPLACEMENT% handler)

Type Changed: PassKit.IPKAddSecureElementPassViewControllerDelegate

Modified methods:

-public abstract void DidFinishAddingSecureElementPass (PKAddSecureElementPassViewController controller, PKSecureElementPass pass, Foundation.NSError error)
+public virtual void DidFinishAddingSecureElementPass (PKAddSecureElementPassViewController controller, PKSecureElementPass pass, Foundation.NSError error)
-public abstract void DidFinishAddingSecureElementPasses (PKAddSecureElementPassViewController controller, PKSecureElementPass[] passes, Foundation.NSError error)
+public virtual void DidFinishAddingSecureElementPasses (PKAddSecureElementPassViewController controller, PKSecureElementPass[] passes, Foundation.NSError error)

Type Changed: PassKit.IPKIdentityDocumentDescriptor

Modified properties:

-public abstract PKIdentityElement[] Elements { get; }
+public virtual PKIdentityElement[] Elements { get; }

Modified methods:

-public abstract void AddElements (PKIdentityElement[] elements, PKIdentityIntentToStore intentToStore)
+public virtual void AddElements (PKIdentityElement[] elements, PKIdentityIntentToStore intentToStore)
-public abstract PKIdentityIntentToStore GetIntentToStore (PKIdentityElement element)
+public virtual PKIdentityIntentToStore GetIntentToStore (PKIdentityElement element)

Type Changed: PassKit.IPKIssuerProvisioningExtensionAuthorizationProviding

Modified properties:

-public abstract System.Action%LESSERTHANREPLACEMENT%PKIssuerProvisioningExtensionAuthorizationResult%GREATERTHANREPLACEMENT% CompletionHandler { get; set; }
+public virtual System.Action%LESSERTHANREPLACEMENT%PKIssuerProvisioningExtensionAuthorizationResult%GREATERTHANREPLACEMENT% CompletionHandler { get; set; }

Type Changed: PassKit.IPKPaymentAuthorizationControllerDelegate

Modified methods:

-public abstract void DidFinish (PKPaymentAuthorizationController controller)
+public virtual void DidFinish (PKPaymentAuthorizationController controller)
-public abstract UIKit.UIWindow GetPresentationWindow (PKPaymentAuthorizationController controller)
+public virtual UIKit.UIWindow GetPresentationWindow (PKPaymentAuthorizationController controller)

Added methods:

public virtual void DidAuthorizePayment (PKPaymentAuthorizationController controller, PKPayment payment, System.Action<PKPaymentAuthorizationResult> completion);
public virtual void DidAuthorizePayment (PKPaymentAuthorizationController controller, PKPayment payment, System.Action<PKPaymentAuthorizationStatus> completion);
public virtual void DidChangeCouponCode (PKPaymentAuthorizationController controller, string couponCode, System.Action<PKPaymentRequestCouponCodeUpdate> completion);
public virtual void DidRequestMerchantSessionUpdate (PKPaymentAuthorizationController controller, System.Action<PKPaymentRequestMerchantSessionUpdate> handler);
public virtual void DidSelectPaymentMethod (PKPaymentAuthorizationController controller, PKPaymentMethod paymentMethod, System.Action<PKPaymentRequestPaymentMethodUpdate> completion);
public virtual void DidSelectPaymentMethod (PKPaymentAuthorizationController controller, PKPaymentMethod paymentMethod, System.Action<PKPaymentSummaryItem[]> completion);
public virtual void DidSelectShippingContact (PKPaymentAuthorizationController controller, PKContact contact, System.Action<PKPaymentRequestShippingContactUpdate> completion);
public virtual void DidSelectShippingContact (PKPaymentAuthorizationController controller, PKContact contact, System.Action<PKPaymentAuthorizationStatus,PassKit.PKShippingMethod[],PassKit.PKPaymentSummaryItem[]> completion);
public virtual void DidSelectShippingMethod (PKPaymentAuthorizationController controller, PKPaymentMethod paymentMethod, System.Action<PKPaymentRequestPaymentMethodUpdate> completion);
public virtual void DidSelectShippingMethod (PKPaymentAuthorizationController controller, PKShippingMethod shippingMethod, System.Action<PKPaymentAuthorizationStatus,PassKit.PKPaymentSummaryItem[]> completion);
public virtual void WillAuthorizePayment (PKPaymentAuthorizationController controller);

Type Changed: PassKit.IPKPaymentAuthorizationViewControllerDelegate

Modified methods:

-public abstract void PaymentAuthorizationViewControllerDidFinish (PKPaymentAuthorizationViewController controller)
+public virtual void PaymentAuthorizationViewControllerDidFinish (PKPaymentAuthorizationViewController controller)

Added methods:

public virtual void DidAuthorizePayment (PKPaymentAuthorizationViewController controller, PKPayment payment, System.Action<PKPaymentAuthorizationStatus> completion);
public virtual void DidAuthorizePayment2 (PKPaymentAuthorizationViewController controller, PKPayment payment, System.Action<PKPaymentAuthorizationResult> completion);
public virtual void DidChangeCouponCode (PKPaymentAuthorizationViewController controller, string couponCode, System.Action<PKPaymentRequestCouponCodeUpdate> completion);
public virtual void DidRequestMerchantSessionUpdate (PKPaymentAuthorizationViewController controller, System.Action<PKPaymentRequestMerchantSessionUpdate> updateHandler);
public virtual void DidSelectPaymentMethod (PKPaymentAuthorizationViewController controller, PKPaymentMethod paymentMethod, System.Action<PKPaymentSummaryItem[]> completion);
public virtual void DidSelectPaymentMethod2 (PKPaymentAuthorizationViewController controller, PKPaymentMethod paymentMethod, System.Action<PKPaymentRequestPaymentMethodUpdate> completion);
public virtual void DidSelectShippingContact (PKPaymentAuthorizationViewController controller, PKContact contact, PKPaymentShippingAddressSelected completion);
public virtual void DidSelectShippingContact2 (PKPaymentAuthorizationViewController controller, PKContact contact, System.Action<PKPaymentRequestShippingContactUpdate> completion);
public virtual void DidSelectShippingMethod (PKPaymentAuthorizationViewController controller, PKShippingMethod shippingMethod, PKPaymentShippingMethodSelected completion);
public virtual void DidSelectShippingMethod2 (PKPaymentAuthorizationViewController controller, PKShippingMethod shippingMethod, System.Action<PKPaymentRequestShippingMethodUpdate> completion);
public virtual void WillAuthorizePayment (PKPaymentAuthorizationViewController controller);

Type Changed: PassKit.IPKPaymentInformationRequestHandling

Modified methods:

-public abstract void HandleConfigurationRequest (PKBarcodeEventConfigurationRequest configurationRequest, System.Action completion)
+public virtual void HandleConfigurationRequest (PKBarcodeEventConfigurationRequest configurationRequest, System.Action completion)
-public abstract void HandleInformationRequest (PKBarcodeEventMetadataRequest infoRequest, PKInformationRequestCompletionBlock completion)
+public virtual void HandleInformationRequest (PKBarcodeEventMetadataRequest infoRequest, PKInformationRequestCompletionBlock completion)
-public abstract void HandleSignatureRequest (PKBarcodeEventSignatureRequest signatureRequest, PKSignatureRequestCompletionBlock completion)
+public virtual void HandleSignatureRequest (PKBarcodeEventSignatureRequest signatureRequest, PKSignatureRequestCompletionBlock completion)

Type Changed: PassKit.IPKShareSecureElementPassViewControllerDelegate

Modified methods:

-public abstract void DidFinish (PKShareSecureElementPassViewController controller, PKShareSecureElementPassResult result)
+public virtual void DidFinish (PKShareSecureElementPassViewController controller, PKShareSecureElementPassResult result)

Added method:

public virtual void DidCreateShareUrl (PKShareSecureElementPassViewController controller, Foundation.NSUrl universalShareUrl, string activationCode);

Type Changed: PassKit.IPKVehicleConnectionDelegate

Modified methods:

-public abstract void SessionDidChangeConnectionState (PKVehicleConnectionSessionConnectionState newState)
+public virtual void SessionDidChangeConnectionState (PKVehicleConnectionSessionConnectionState newState)
-public abstract void SessionDidReceiveData (Foundation.NSData data)
+public virtual void SessionDidReceiveData (Foundation.NSData data)

Type Changed: PassKit.PKPaymentNetwork

Added properties:

public static Foundation.NSString BankAxept { get; }
public static Foundation.NSString Meeza { get; }
public static Foundation.NSString Napas { get; }

Namespace PdfKit

Type Changed: PdfKit.IPdfDocumentDelegate

Added methods:

public virtual void DidBeginDocumentFind (Foundation.NSNotification notification);
public virtual void DidMatchString (PdfSelection sender);
public virtual void DidUnlock (Foundation.NSNotification notification);
public virtual void FindFinished (Foundation.NSNotification notification);
public virtual ObjCRuntime.Class GetClassForAnnotationType (string annotationType);
public virtual ObjCRuntime.Class GetClassForPage ();
public virtual void MatchFound (Foundation.NSNotification notification);
public virtual void PageFindFinished (Foundation.NSNotification notification);
public virtual void PageFindStarted (Foundation.NSNotification notification);

Type Changed: PdfKit.IPdfPageOverlayViewProvider

Modified methods:

-public abstract UIKit.UIView GetOverlayView (PdfView view, PdfPage page)
+public virtual UIKit.UIView GetOverlayView (PdfView view, PdfPage page)

Added methods:

public virtual void WillDisplayOverlayView (PdfView pdfView, UIKit.UIView overlayView, PdfPage page);
public virtual void WillEndDisplayingOverlayView (PdfView pdfView, UIKit.UIView overlayView, PdfPage page);

Type Changed: PdfKit.IPdfViewDelegate

Added property:

public virtual UIKit.UIViewController ParentViewController { get; }

Added methods:

public virtual void OpenPdf (PdfView sender, PdfActionRemoteGoTo action);
public virtual void PerformFind (PdfView sender);
public virtual void PerformGoToPage (PdfView sender);
public virtual void WillClickOnLink (PdfView sender, Foundation.NSUrl url);

Type Changed: PdfKit.PdfDocument

Added method:

public virtual PdfSelection GetSelection (PdfPage startPage, CoreGraphics.CGPoint startPoint, PdfPage endPage, CoreGraphics.CGPoint endPoint, PdfSelectionGranularity granularity);

New Type: PdfKit.PdfSelectionGranularity

[Serializable]
public enum PdfSelectionGranularity {
	Character = 0,
	Line = 2,
	Word = 1,
}

Namespace PencilKit

Type Changed: PencilKit.IPKCanvasViewDelegate

Added methods:

public virtual void DidBeginUsingTool (PKCanvasView canvasView);
public virtual void DidFinishRendering (PKCanvasView canvasView);
public virtual void DrawingDidChange (PKCanvasView canvasView);
public virtual void EndUsingTool (PKCanvasView canvasView);

Type Changed: PencilKit.IPKToolPickerObserver

Added methods:

public virtual void FramesObscuredDidChange (PKToolPicker toolPicker);
public virtual void IsRulerActiveDidChange (PKToolPicker toolPicker);
public virtual void SelectedToolDidChange (PKToolPicker toolPicker);
public virtual void SelectedToolItemDidChange (PKToolPicker toolPicker);
public virtual void VisibilityDidChange (PKToolPicker toolPicker);

Type Changed: PencilKit.PKCanvasView

Added properties:

public IPKCanvasViewDelegate Delegate { get; set; }
public virtual bool DrawingEnabled { get; set; }

Added method:

public virtual void SelectedToolItemDidChange (PKToolPicker toolPicker);

Type Changed: PencilKit.PKContentVersion

Added value:

Version3 = 3,

Type Changed: PencilKit.PKToolPicker

Added constructor:

public PKToolPicker (PKToolPickerItem[] items);

Added properties:

public virtual UIKit.UIBarButtonItem AccessoryItem { get; set; }
public IPKToolPickerDelegate Delegate { get; set; }
public virtual PKToolPickerItem SelectedToolItem { get; set; }
public virtual string SelectedToolItemIdentifier { get; set; }
public virtual PKToolPickerItem[] ToolItems { get; }
public virtual Foundation.NSObject WeakDelegate { get; set; }

Added method:

protected override void Dispose (bool disposing);

Type Changed: PencilKit.PKToolPickerObserver_Extensions

Added method:

public static void SelectedToolItemDidChange (this IPKToolPickerObserver This, PKToolPicker toolPicker);

New Type: PencilKit.IPKToolPickerDelegate

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

New Type: PencilKit.PKToolPickerCustomItem

public class PKToolPickerCustomItem : PencilKit.PKToolPickerItem {
	// constructors
	protected PKToolPickerCustomItem (Foundation.NSObjectFlag t);
	protected PKToolPickerCustomItem (ObjCRuntime.NativeHandle handle);
	public PKToolPickerCustomItem (PKToolPickerCustomItemConfiguration configuration);
	// properties
	public virtual bool AllowsColorSelection { get; set; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual UIKit.UIColor Color { get; set; }
	public virtual PKToolPickerCustomItemConfiguration Configuration { get; }
	public virtual System.Runtime.InteropServices.NFloat Width { get; set; }
	// methods
	public virtual void ReloadImage ();
}

New Type: PencilKit.PKToolPickerCustomItemConfiguration

public class PKToolPickerCustomItemConfiguration : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	protected PKToolPickerCustomItemConfiguration (Foundation.NSObjectFlag t);
	protected PKToolPickerCustomItemConfiguration (ObjCRuntime.NativeHandle handle);
	public PKToolPickerCustomItemConfiguration (string identifier, string name);
	// properties
	public virtual bool AllowsColorSelection { get; set; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual UIKit.UIColor DefaultColor { get; set; }
	public virtual System.Runtime.InteropServices.NFloat DefaultWidth { get; set; }
	public virtual string Identifier { get; set; }
	public virtual PKToolPickerCustomItemConfigurationImageProviderCallback ImageProvider { get; set; }
	public virtual string Name { get; set; }
	public virtual PKToolPickerCustomItemControlOptions ToolAttributeControls { get; set; }
	public virtual PKToolPickerCustomItemConfigurationViewControllerProvider ViewControllerProvider { get; set; }
	public virtual Foundation.NSDictionary<Foundation.NSNumber,UIKit.UIImage> WidthVariants { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: PencilKit.PKToolPickerCustomItemConfigurationImageProviderCallback

public sealed delegate PKToolPickerCustomItemConfigurationImageProviderCallback : System.MulticastDelegate {
	// constructors
	public PKToolPickerCustomItemConfigurationImageProviderCallback (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (PKToolPickerCustomItem toolPickerItem, System.AsyncCallback callback, object object);
	public virtual UIKit.UIImage EndInvoke (System.IAsyncResult result);
	public virtual UIKit.UIImage Invoke (PKToolPickerCustomItem toolPickerItem);
}

New Type: PencilKit.PKToolPickerCustomItemConfigurationViewControllerProvider

public sealed delegate PKToolPickerCustomItemConfigurationViewControllerProvider : System.MulticastDelegate {
	// constructors
	public PKToolPickerCustomItemConfigurationViewControllerProvider (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (PKToolPickerCustomItem toolPickerItem, System.AsyncCallback callback, object object);
	public virtual UIKit.UIViewController EndInvoke (System.IAsyncResult result);
	public virtual UIKit.UIViewController Invoke (PKToolPickerCustomItem toolPickerItem);
}

New Type: PencilKit.PKToolPickerCustomItemControlOptions

[Serializable]
[Flags]
public enum PKToolPickerCustomItemControlOptions {
	None = 0,
	Opacity = 2,
	Width = 1,
}

New Type: PencilKit.PKToolPickerDelegate

public class PKToolPickerDelegate : Foundation.NSObject, ObjCRuntime.INativeObject, IPKToolPickerDelegate, System.IDisposable {
	// constructors
	public PKToolPickerDelegate ();
	protected PKToolPickerDelegate (Foundation.NSObjectFlag t);
	protected PKToolPickerDelegate (ObjCRuntime.NativeHandle handle);
}

New Type: PencilKit.PKToolPickerEraserItem

public class PKToolPickerEraserItem : PencilKit.PKToolPickerItem {
	// constructors
	protected PKToolPickerEraserItem (Foundation.NSObjectFlag t);
	protected PKToolPickerEraserItem (ObjCRuntime.NativeHandle handle);
	public PKToolPickerEraserItem (PKEraserType eraserType);
	public PKToolPickerEraserItem (PKEraserType eraserType, System.Runtime.InteropServices.NFloat width);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual PKEraserTool EraserTool { get; }
}

New Type: PencilKit.PKToolPickerInkingItem

public class PKToolPickerInkingItem : PencilKit.PKToolPickerItem {
	// constructors
	protected PKToolPickerInkingItem (Foundation.NSObjectFlag t);
	protected PKToolPickerInkingItem (ObjCRuntime.NativeHandle handle);
	public PKToolPickerInkingItem (PKInkType inkType);
	public PKToolPickerInkingItem (PKInkType inkType, System.Runtime.InteropServices.NFloat width);
	public PKToolPickerInkingItem (PKInkType inkType, UIKit.UIColor color);
	public PKToolPickerInkingItem (PKInkType inkType, UIKit.UIColor color, System.Runtime.InteropServices.NFloat width);
	public PKToolPickerInkingItem (PKInkType inkType, UIKit.UIColor color, System.Runtime.InteropServices.NFloat width, string identifier);
	// properties
	public virtual bool AllowsColorSelection { get; set; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual PKInkingTool InkingTool { get; }
}

New Type: PencilKit.PKToolPickerItem

public class PKToolPickerItem : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	protected PKToolPickerItem (Foundation.NSObjectFlag t);
	protected PKToolPickerItem (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual string Identifier { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
}

New Type: PencilKit.PKToolPickerLassoItem

public class PKToolPickerLassoItem : PencilKit.PKToolPickerItem {
	// constructors
	public PKToolPickerLassoItem ();
	protected PKToolPickerLassoItem (Foundation.NSObjectFlag t);
	protected PKToolPickerLassoItem (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual PKLassoTool LassoTool { get; }
}

New Type: PencilKit.PKToolPickerRulerItem

public class PKToolPickerRulerItem : PencilKit.PKToolPickerItem {
	// constructors
	public PKToolPickerRulerItem ();
	protected PKToolPickerRulerItem (Foundation.NSObjectFlag t);
	protected PKToolPickerRulerItem (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
}

New Type: PencilKit.PKToolPickerScribbleItem

public class PKToolPickerScribbleItem : PencilKit.PKToolPickerItem {
	// constructors
	public PKToolPickerScribbleItem ();
	protected PKToolPickerScribbleItem (Foundation.NSObjectFlag t);
	protected PKToolPickerScribbleItem (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
}

Namespace Photos

Type Changed: Photos.IPHLivePhotoFrame

Modified properties:

-public abstract CoreImage.CIImage Image { get; }
+public virtual CoreImage.CIImage Image { get; }
-public abstract System.Runtime.InteropServices.NFloat RenderScale { get; }
+public virtual System.Runtime.InteropServices.NFloat RenderScale { get; }
-public abstract CoreMedia.CMTime Time { get; }
+public virtual CoreMedia.CMTime Time { get; }
-public abstract PHLivePhotoFrameType Type { get; }
+public virtual PHLivePhotoFrameType Type { get; }

Type Changed: Photos.IPHPhotoLibraryAvailabilityObserver

Modified methods:

-public abstract void PhotoLibraryDidBecomeUnavailable (PHPhotoLibrary photoLibrary)
+public virtual void PhotoLibraryDidBecomeUnavailable (PHPhotoLibrary photoLibrary)

Type Changed: Photos.IPHPhotoLibraryChangeObserver

Modified methods:

-public abstract void PhotoLibraryDidChange (PHChange changeInstance)
+public virtual void PhotoLibraryDidChange (PHChange changeInstance)

Type Changed: Photos.PHAssetCollectionSubtype

Added value:

SmartAlbumSpatial = 219,

Type Changed: Photos.PHAssetMediaSubtype

Added value:

SmartAlbumSpatial = 1024,

Namespace PhotosUI

Type Changed: PhotosUI.IPHContentEditingController

Modified properties:

-public abstract bool ShouldShowCancelConfirmation { get; }
+public virtual bool ShouldShowCancelConfirmation { get; }

Modified methods:

-public abstract bool CanHandleAdjustmentData (Photos.PHAdjustmentData adjustmentData)
+public virtual bool CanHandleAdjustmentData (Photos.PHAdjustmentData adjustmentData)
-public abstract void CancelContentEditing ()
+public virtual void CancelContentEditing ()
-public abstract void FinishContentEditing (System.Action%LESSERTHANREPLACEMENT%Photos.PHContentEditingOutput%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void FinishContentEditing (System.Action%LESSERTHANREPLACEMENT%Photos.PHContentEditingOutput%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void StartContentEditing (Photos.PHContentEditingInput contentEditingInput, UIKit.UIImage placeholderImage)
+public virtual void StartContentEditing (Photos.PHContentEditingInput contentEditingInput, UIKit.UIImage placeholderImage)

Type Changed: PhotosUI.IPHLivePhotoViewDelegate

Added methods:

public virtual bool CanBeginPlayback (PHLivePhotoView livePhotoView, PHLivePhotoViewPlaybackStyle playbackStyle);
public virtual void DidEndPlayback (PHLivePhotoView livePhotoView, PHLivePhotoViewPlaybackStyle playbackStyle);
public virtual double GetExtraMinimumTouchDuration (PHLivePhotoView livePhotoView, UIKit.UITouch touch, PHLivePhotoViewPlaybackStyle playbackStyle);
public virtual void WillBeginPlayback (PHLivePhotoView livePhotoView, PHLivePhotoViewPlaybackStyle playbackStyle);

Type Changed: PhotosUI.IPHPickerViewControllerDelegate

Modified methods:

-public abstract void DidFinishPicking (PHPickerViewController picker, PHPickerResult[] results)
+public virtual void DidFinishPicking (PHPickerViewController picker, PHPickerResult[] results)

Type Changed: PhotosUI.PHPickerFilter

Added property:

public static PHPickerFilter SpatialMediaFilter { get; }

Namespace PushKit

Type Changed: PushKit.IPKPushRegistryDelegate

Modified methods:

-public abstract void DidUpdatePushCredentials (PKPushRegistry registry, PKPushCredentials credentials, string type)
+public virtual void DidUpdatePushCredentials (PKPushRegistry registry, PKPushCredentials credentials, string type)

Added methods:

public virtual void DidInvalidatePushToken (PKPushRegistry registry, string type);
public virtual void DidReceiveIncomingPush (PKPushRegistry registry, PKPushPayload payload, string type, System.Action completion);

Namespace QuickLook

Type Changed: QuickLook.IQLPreviewControllerDataSource

Modified methods:

-public abstract IQLPreviewItem GetPreviewItem (QLPreviewController controller, IntPtr index)
+public virtual IQLPreviewItem GetPreviewItem (QLPreviewController controller, IntPtr index)
-public abstract IntPtr PreviewItemCount (QLPreviewController controller)
+public virtual IntPtr PreviewItemCount (QLPreviewController controller)

Type Changed: QuickLook.IQLPreviewControllerDelegate

Added methods:

public virtual void DidDismiss (QLPreviewController controller);
public virtual void DidSaveEditedCopy (QLPreviewController controller, IQLPreviewItem previewItem, Foundation.NSUrl modifiedContentsUrl);
public virtual void DidUpdateContents (QLPreviewController controller, IQLPreviewItem previewItem);
public virtual CoreGraphics.CGRect FrameForPreviewItem (QLPreviewController controller, IQLPreviewItem item, ref UIKit.UIView view);
public virtual QLPreviewItemEditingMode GetEditingMode (QLPreviewController controller, IQLPreviewItem previewItem);
public virtual bool ShouldOpenUrl (QLPreviewController controller, Foundation.NSUrl url, IQLPreviewItem item);
public virtual UIKit.UIImage TransitionImageForPreviewItem (QLPreviewController controller, IQLPreviewItem item, CoreGraphics.CGRect contentRect);
public virtual UIKit.UIView TransitionViewForPreviewItem (QLPreviewController controller, IQLPreviewItem item);
public virtual void WillDismiss (QLPreviewController controller);

Type Changed: QuickLook.IQLPreviewItem

Modified properties:

-public abstract Foundation.NSUrl PreviewItemUrl { get; }
+public virtual Foundation.NSUrl PreviewItemUrl { get; }

Added property:

public virtual string PreviewItemTitle { get; }

Type Changed: QuickLook.IQLPreviewingController

Added methods:

public virtual void PreparePreviewOfFile (Foundation.NSUrl url, System.Action<Foundation.NSError> handler);
public virtual void PreparePreviewOfSearchableItem (string identifier, string queryString, System.Action<Foundation.NSError> handler);
public virtual void ProvidePreview (QLFilePreviewRequest request, System.Action<QLPreviewReply,Foundation.NSError> handler);

Namespace QuickLookThumbnailing

Type Changed: QuickLookThumbnailing.QLThumbnailGenerator

Added methods:

public virtual void SaveBestRepresentationAsContent (QLThumbnailGenerationRequest request, Foundation.NSUrl fileUrl, string contentType, System.Action<Foundation.NSError> completionHandler);
public virtual System.Threading.Tasks.Task SaveBestRepresentationAsContentAsync (QLThumbnailGenerationRequest request, Foundation.NSUrl fileUrl, string contentType);

Namespace ReplayKit

Type Changed: ReplayKit.IRPBroadcastActivityViewControllerDelegate

Modified methods:

-public abstract void DidFinish (RPBroadcastActivityViewController broadcastActivityViewController, RPBroadcastController broadcastController, Foundation.NSError error)
+public virtual void DidFinish (RPBroadcastActivityViewController broadcastActivityViewController, RPBroadcastController broadcastController, Foundation.NSError error)

Type Changed: ReplayKit.IRPBroadcastControllerDelegate

Added methods:

public virtual void DidFinish (RPBroadcastController broadcastController, Foundation.NSError error);
public virtual void DidUpdateBroadcastUrl (RPBroadcastController broadcastController, Foundation.NSUrl broadcastUrl);
public virtual void DidUpdateServiceInfo (RPBroadcastController broadcastController, Foundation.NSDictionary<Foundation.NSString,Foundation.INSCoding> serviceInfo);

Type Changed: ReplayKit.IRPPreviewViewControllerDelegate

Added methods:

public virtual void DidFinish (RPPreviewViewController previewController);
public virtual void DidFinish (RPPreviewViewController previewController, Foundation.NSSet<Foundation.NSString> activityTypes);

Type Changed: ReplayKit.IRPScreenRecorderDelegate

Added methods:

public virtual void DidChangeAvailability (RPScreenRecorder screenRecorder);
public virtual void DidStopRecording (RPScreenRecorder screenRecorder, Foundation.NSError error, RPPreviewViewController previewViewController);
public virtual void DidStopRecording (RPScreenRecorder screenRecorder, RPPreviewViewController previewViewController, Foundation.NSError error);

Namespace SafariServices

Type Changed: SafariServices.ISFSafariViewControllerDelegate

Added methods:

public virtual void DidCompleteInitialLoad (SFSafariViewController controller, bool didLoadSuccessfully);
public virtual void DidFinish (SFSafariViewController controller);
public virtual UIKit.UIActivity[] GetActivityItems (SFSafariViewController controller, Foundation.NSUrl url, string title);
public virtual string[] GetExcludedActivityTypes (SFSafariViewController controller, Foundation.NSUrl url, string title);
public virtual void InitialLoadDidRedirectToUrl (SFSafariViewController controller, Foundation.NSUrl url);
public virtual void WillOpenInBrowser (SFSafariViewController controller);

New Type: SafariServices.ISFAddToHomeScreenActivityItem

public interface ISFAddToHomeScreenActivityItem : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual Foundation.NSItemProvider IconItemProvider { get; }
	public virtual string Title { get; }
	public virtual Foundation.NSUrl Url { get; }
}

Namespace SceneKit

Type Changed: SceneKit.ISCNActionable

Modified properties:

-public abstract string[] ActionKeys { get; }
+public virtual string[] ActionKeys { get; }

Modified methods:

-public abstract SCNAction GetAction (string key)
+public virtual SCNAction GetAction (string key)
-public abstract bool HasActions ()
+public virtual bool HasActions ()
-public abstract void RemoveAction (string key)
+public virtual void RemoveAction (string key)
-public abstract void RemoveAllActions ()
+public virtual void RemoveAllActions ()
-public abstract void RunAction (SCNAction action)
+public virtual void RunAction (SCNAction action)
-public abstract void RunAction (SCNAction action, System.Action block)
+public virtual void RunAction (SCNAction action, System.Action block)
-public abstract void RunAction (SCNAction action, string key)
+public virtual void RunAction (SCNAction action, string key)
-public abstract void RunAction (SCNAction action, string key, System.Action block)
+public virtual void RunAction (SCNAction action, string key, System.Action block)

Type Changed: SceneKit.ISCNAnimatable

Modified methods:

-public abstract void AddAnimation (ISCNAnimationProtocol scnAnimation, string key)
+public virtual void AddAnimation (ISCNAnimationProtocol scnAnimation, string key)
-public abstract void AddAnimation (SCNAnimationPlayer player, Foundation.NSString key)
+public virtual void AddAnimation (SCNAnimationPlayer player, Foundation.NSString key)
-public abstract CoreAnimation.CAAnimation GetAnimation (Foundation.NSString key)
+public virtual CoreAnimation.CAAnimation GetAnimation (Foundation.NSString key)
-public abstract Foundation.NSString[] GetAnimationKeys ()
+public virtual Foundation.NSString[] GetAnimationKeys ()
-public abstract SCNAnimationPlayer GetAnimationPlayer (Foundation.NSString key)
+public virtual SCNAnimationPlayer GetAnimationPlayer (Foundation.NSString key)
-public abstract bool IsAnimationPaused (Foundation.NSString key)
+public virtual bool IsAnimationPaused (Foundation.NSString key)
-public abstract void PauseAnimation (Foundation.NSString key)
+public virtual void PauseAnimation (Foundation.NSString key)
-public abstract void RemoveAllAnimations ()
+public virtual void RemoveAllAnimations ()
-public abstract void RemoveAllAnimationsWithBlendOutDuration (System.Runtime.InteropServices.NFloat duration)
+public virtual void RemoveAllAnimationsWithBlendOutDuration (System.Runtime.InteropServices.NFloat duration)
-public abstract void RemoveAnimation (Foundation.NSString key)
+public virtual void RemoveAnimation (Foundation.NSString key)
-public abstract void RemoveAnimation (Foundation.NSString key, System.Runtime.InteropServices.NFloat duration)
+public virtual void RemoveAnimation (Foundation.NSString key, System.Runtime.InteropServices.NFloat duration)
-public abstract void RemoveAnimationUsingBlendOutDuration (Foundation.NSString key, System.Runtime.InteropServices.NFloat blendOutDuration)
+public virtual void RemoveAnimationUsingBlendOutDuration (Foundation.NSString key, System.Runtime.InteropServices.NFloat blendOutDuration)
-public abstract void ResumeAnimation (Foundation.NSString key)
+public virtual void ResumeAnimation (Foundation.NSString key)
-public abstract void SetSpeed (System.Runtime.InteropServices.NFloat speed, Foundation.NSString key)
+public virtual void SetSpeed (System.Runtime.InteropServices.NFloat speed, Foundation.NSString key)

Type Changed: SceneKit.ISCNAvoidOccluderConstraintDelegate

Added methods:

public virtual void DidAvoidOccluder (SCNAvoidOccluderConstraint constraint, SCNNode occluder, SCNNode node);
public virtual bool ShouldAvoidOccluder (SCNAvoidOccluderConstraint constraint, SCNNode occluder, SCNNode node);

Type Changed: SceneKit.ISCNBoundingVolume

Modified methods:

-public abstract bool GetBoundingBox (ref SCNVector3 min, ref SCNVector3 max)
+public virtual bool GetBoundingBox (ref SCNVector3 min, ref SCNVector3 max)
-public abstract bool GetBoundingSphere (ref SCNVector3 center, ref System.Runtime.InteropServices.NFloat radius)
+public virtual bool GetBoundingSphere (ref SCNVector3 center, ref System.Runtime.InteropServices.NFloat radius)
-public abstract void SetBoundingBox (ref SCNVector3 min, ref SCNVector3 max)
+public virtual void SetBoundingBox (ref SCNVector3 min, ref SCNVector3 max)

Type Changed: SceneKit.ISCNBufferStream

Modified methods:

-public abstract void Length (IntPtr bytes, UIntPtr length)
+public virtual void Length (IntPtr bytes, UIntPtr length)

Type Changed: SceneKit.ISCNCameraControlConfiguration

Modified properties:

-public abstract bool AllowsTranslation { get; set; }
+public virtual bool AllowsTranslation { get; set; }
-public abstract bool AutoSwitchToFreeCamera { get; set; }
+public virtual bool AutoSwitchToFreeCamera { get; set; }
-public abstract System.Runtime.InteropServices.NFloat FlyModeVelocity { get; set; }
+public virtual System.Runtime.InteropServices.NFloat FlyModeVelocity { get; set; }
-public abstract System.Runtime.InteropServices.NFloat PanSensitivity { get; set; }
+public virtual System.Runtime.InteropServices.NFloat PanSensitivity { get; set; }
-public abstract System.Runtime.InteropServices.NFloat RotationSensitivity { get; set; }
+public virtual System.Runtime.InteropServices.NFloat RotationSensitivity { get; set; }
-public abstract System.Runtime.InteropServices.NFloat TruckSensitivity { get; set; }
+public virtual System.Runtime.InteropServices.NFloat TruckSensitivity { get; set; }

Type Changed: SceneKit.ISCNCameraControllerDelegate

Added methods:

public virtual void CameraInertiaDidEnd (SCNCameraController cameraController);
public virtual void CameraInertiaWillStart (SCNCameraController cameraController);

Type Changed: SceneKit.ISCNNodeRendererDelegate

Added method:

public virtual void Render (SCNNode node, SCNRenderer renderer, Foundation.NSDictionary arguments);

Type Changed: SceneKit.ISCNPhysicsContactDelegate

Added methods:

public virtual void DidBeginContact (SCNPhysicsWorld world, SCNPhysicsContact contact);
public virtual void DidEndContact (SCNPhysicsWorld world, SCNPhysicsContact contact);
public virtual void DidUpdateContact (SCNPhysicsWorld world, SCNPhysicsContact contact);

Type Changed: SceneKit.ISCNProgramDelegate

Added method:

public virtual void HandleError (SCNProgram program, Foundation.NSError error);

Type Changed: SceneKit.ISCNSceneExportDelegate

Added method:

public virtual Foundation.NSUrl WriteImage (UIKit.UIImage image, Foundation.NSUrl documentUrl, Foundation.NSUrl originalImageUrl);

Type Changed: SceneKit.ISCNSceneRenderer

Modified properties:

-public abstract AVFoundation.AVAudioEngine AudioEngine { get; }
+public virtual AVFoundation.AVAudioEngine AudioEngine { get; }
-public abstract AVFoundation.AVAudioEnvironmentNode AudioEnvironmentNode { get; }
+public virtual AVFoundation.AVAudioEnvironmentNode AudioEnvironmentNode { get; }
-public abstract SCNNode AudioListener { get; set; }
+public virtual SCNNode AudioListener { get; set; }
-public abstract bool AutoenablesDefaultLighting { get; set; }
+public virtual bool AutoenablesDefaultLighting { get; set; }
-public abstract Metal.MTLPixelFormat ColorPixelFormat { get; }
+public virtual Metal.MTLPixelFormat ColorPixelFormat { get; }
-public abstract Metal.IMTLCommandQueue CommandQueue { get; }
+public virtual Metal.IMTLCommandQueue CommandQueue { get; }
-public abstract Metal.IMTLRenderCommandEncoder CurrentRenderCommandEncoder { get; }
+public virtual Metal.IMTLRenderCommandEncoder CurrentRenderCommandEncoder { get; }
-public abstract Metal.MTLRenderPassDescriptor CurrentRenderPassDescriptor { get; }
+public virtual Metal.MTLRenderPassDescriptor CurrentRenderPassDescriptor { get; }
-public abstract CoreGraphics.CGRect CurrentViewport { get; }
+public virtual CoreGraphics.CGRect CurrentViewport { get; }
-public abstract SCNDebugOptions DebugOptions { get; set; }
+public virtual SCNDebugOptions DebugOptions { get; set; }
-public abstract Metal.MTLPixelFormat DepthPixelFormat { get; }
+public virtual Metal.MTLPixelFormat DepthPixelFormat { get; }
-public abstract Metal.IMTLDevice Device { get; }
+public virtual Metal.IMTLDevice Device { get; }
-public abstract bool JitteringEnabled { get; set; }
+public virtual bool JitteringEnabled { get; set; }
-public abstract bool Loops { get; set; }
+public virtual bool Loops { get; set; }
-public abstract SpriteKit.SKScene OverlayScene { get; set; }
+public virtual SpriteKit.SKScene OverlayScene { get; set; }
-public abstract bool Playing { get; set; }
+public virtual bool Playing { get; set; }
-public abstract SCNNode PointOfView { get; set; }
+public virtual SCNNode PointOfView { get; set; }
-public abstract SCNRenderingApi RenderingApi { get; }
+public virtual SCNRenderingApi RenderingApi { get; }
-public abstract SCNScene Scene { get; set; }
+public virtual SCNScene Scene { get; set; }
-public abstract double SceneTimeInSeconds { get; set; }
+public virtual double SceneTimeInSeconds { get; set; }
-public abstract bool ShowsStatistics { get; set; }
+public virtual bool ShowsStatistics { get; set; }
-public abstract Metal.MTLPixelFormat StencilPixelFormat { get; }
+public virtual Metal.MTLPixelFormat StencilPixelFormat { get; }
-public abstract bool TemporalAntialiasingEnabled { get; set; }
+public virtual bool TemporalAntialiasingEnabled { get; set; }
-public abstract bool UsesReverseZ { get; set; }
+public virtual bool UsesReverseZ { get; set; }
-public abstract Foundation.NSObject WeakSceneRendererDelegate { get; set; }
+public virtual Foundation.NSObject WeakSceneRendererDelegate { get; set; }

Added property:

public virtual CoreGraphics.CGColorSpace WorkingColorSpace { get; }

Modified methods:

-public abstract SCNNode[] GetNodesInsideFrustum (SCNNode pointOfView)
+public virtual SCNNode[] GetNodesInsideFrustum (SCNNode pointOfView)
-public abstract SCNHitTestResult[] HitTest (CoreGraphics.CGPoint thePoint, Foundation.NSDictionary options)
+public virtual SCNHitTestResult[] HitTest (CoreGraphics.CGPoint thePoint, Foundation.NSDictionary options)
-public abstract bool IsNodeInsideFrustum (SCNNode node, SCNNode pointOfView)
+public virtual bool IsNodeInsideFrustum (SCNNode node, SCNNode pointOfView)
-public abstract bool Prepare (Foundation.NSObject obj, System.Func%LESSERTHANREPLACEMENT%bool%GREATERTHANREPLACEMENT% abortHandler)
+public virtual bool Prepare (Foundation.NSObject obj, System.Func%LESSERTHANREPLACEMENT%bool%GREATERTHANREPLACEMENT% abortHandler)
-public abstract void Prepare (Foundation.NSObject[] objects, System.Action%LESSERTHANREPLACEMENT%bool%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void Prepare (Foundation.NSObject[] objects, System.Action%LESSERTHANREPLACEMENT%bool%GREATERTHANREPLACEMENT% completionHandler)
-public abstract void PresentScene (SCNScene scene, SpriteKit.SKTransition transition, SCNNode pointOfView, System.Action completionHandler)
+public virtual void PresentScene (SCNScene scene, SpriteKit.SKTransition transition, SCNNode pointOfView, System.Action completionHandler)
-public abstract SCNVector3 ProjectPoint (SCNVector3 point)
+public virtual SCNVector3 ProjectPoint (SCNVector3 point)
-public abstract SCNVector3 UnprojectPoint (SCNVector3 point)
+public virtual SCNVector3 UnprojectPoint (SCNVector3 point)

Added methods:

public virtual System.Threading.Tasks.Task<bool> PrepareAsync (Foundation.NSObject[] objects);
public virtual System.Threading.Tasks.Task PresentSceneAsync (SCNScene scene, SpriteKit.SKTransition transition, SCNNode pointOfView);

Type Changed: SceneKit.ISCNSceneRendererDelegate

Added methods:

public virtual void DidApplyAnimations (ISCNSceneRenderer renderer, double timeInSeconds);
public virtual void DidApplyConstraints (ISCNSceneRenderer renderer, double atTime);
public virtual void DidRenderScene (ISCNSceneRenderer renderer, SCNScene scene, double timeInSeconds);
public virtual void DidSimulatePhysics (ISCNSceneRenderer renderer, double timeInSeconds);
public virtual void Update (ISCNSceneRenderer renderer, double timeInSeconds);
public virtual void WillRenderScene (ISCNSceneRenderer renderer, SCNScene scene, double timeInSeconds);

Type Changed: SceneKit.ISCNShadable

Added properties:

public virtual Foundation.NSNumber MinimumLanguageVersion { get; set; }
public virtual SCNProgram Program { get; set; }
public virtual Foundation.NSDictionary WeakShaderModifiers { get; set; }

Added methods:

public virtual void HandleBinding (string symbol, SCNBindingHandler handler);
public virtual void HandleUnbinding (string symbol, SCNBindingHandler handler);

Type Changed: SceneKit.ISCNTechniqueSupport

Modified properties:

-public abstract SCNTechnique Technique { get; set; }
+public virtual SCNTechnique Technique { get; set; }

Type Changed: SceneKit.SCNGeometry

Added property:

public virtual int[] GeometrySourceChannels { get; }

Added method:

public static SCNGeometry Create (SCNGeometrySource[] sources, SCNGeometryElement[] elements, int[] sourceChannels);

Type Changed: SceneKit.SCNGeometryElement

Added properties:

public virtual IntPtr IndicesChannelCount { get; }
public virtual bool InterleavedIndicesChannels { get; }

Added methods:

public static SCNGeometryElement FromBuffer (Metal.IMTLBuffer data, SCNGeometryPrimitiveType primitiveType, IntPtr primitiveCount, IntPtr indicesChannelCount, bool interleavedIndicesChannels, IntPtr bytesPerIndex);
public static SCNGeometryElement FromData (Foundation.NSData data, SCNGeometryPrimitiveType primitiveType, IntPtr primitiveCount, IntPtr indicesChannelCount, bool interleavedIndicesChannels, IntPtr bytesPerIndex);

Type Changed: SceneKit.SCNMaterialProperty

Added methods:

public static Foundation.NSObject GetPrecomputedLightingEnvironmentContents (Foundation.NSData url, out Foundation.NSError error);
public static Foundation.NSObject GetPrecomputedLightingEnvironmentContents (Foundation.NSUrl url, out Foundation.NSError error);
public static Foundation.NSData GetPrecomputedLightingEnvironmentData (Foundation.NSObject contents, Metal.IMTLDevice device, out Foundation.NSError error);

Namespace Security

Type Changed: Security.SecAccessControlCreateFlags

Added value:

Companion = 32,

Type Changed: Security.SecCertificate

Added properties:

public Foundation.NSDate NotValidAfterDate { get; }
public Foundation.NSDate NotValidBeforeDate { get; }

Type Changed: Security.SecImportExport

Added property:

public static Foundation.NSString ToMemoryOnly { get; }

Namespace SensorKit

Type Changed: SensorKit.ISRSensorReaderDelegate

Added methods:

public virtual void DidChangeAuthorizationStatus (SRSensorReader reader, SRAuthorizationStatus authorizationStatus);
public virtual void DidCompleteFetch (SRSensorReader reader, SRFetchRequest fetchRequest);
public virtual void DidFetchDevices (SRSensorReader reader, SRDevice[] devices);
public virtual bool DidFetchResult (SRSensorReader reader, SRFetchRequest fetchRequest, SensorKit.SRFetchResult<Foundation.NSObject> result);
public virtual void DidStopRecording (SRSensorReader reader);
public virtual void FetchDevicesFailed (SRSensorReader reader, Foundation.NSError error);
public virtual void FetchingRequestFailed (SRSensorReader reader, SRFetchRequest fetchRequest, Foundation.NSError error);
public virtual void StartRecordingFailed (SRSensorReader reader, Foundation.NSError error);
public virtual void StopRecordingFailed (SRSensorReader reader, Foundation.NSError error);
public virtual void WillStartRecording (SRSensorReader reader);

Type Changed: SensorKit.SRDevice

Added property:

public virtual string ProductType { get; }

Type Changed: SensorKit.SRSensor

Added values:

Electrocardiogram = 18,
FaceMetrics = 14,
HeartRate = 15,
Odometer = 16,
Photoplethysmogram = 19,
WristTemperature = 17,

New Type: SensorKit.SRAudioLevel

public class SRAudioLevel : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public SRAudioLevel (Foundation.NSCoder coder);
	protected SRAudioLevel (Foundation.NSObjectFlag t);
	protected SRAudioLevel (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual double Loudness { get; }
	public virtual CoreMedia.CMTimeRange TimeRange { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: SensorKit.SRElectrocardiogramData

public class SRElectrocardiogramData : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public SRElectrocardiogramData (Foundation.NSCoder coder);
	protected SRElectrocardiogramData (Foundation.NSObjectFlag t);
	protected SRElectrocardiogramData (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual SRElectrocardiogramDataFlags Flags { get; }
	public virtual Foundation.NSMeasurement<Foundation.NSUnitElectricPotentialDifference> Value { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: SensorKit.SRElectrocardiogramDataFlags

[Serializable]
[Flags]
public enum SRElectrocardiogramDataFlags {
	CrownTouched = 2,
	None = 0,
	SignalInvalid = 1,
}

New Type: SensorKit.SRElectrocardiogramLead

[Serializable]
public enum SRElectrocardiogramLead {
	LeftArmMinusRightArm = 2,
	RightArmMinusLeftArm = 1,
}

New Type: SensorKit.SRElectrocardiogramSample

public class SRElectrocardiogramSample : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public SRElectrocardiogramSample (Foundation.NSCoder coder);
	protected SRElectrocardiogramSample (Foundation.NSObjectFlag t);
	protected SRElectrocardiogramSample (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual SRElectrocardiogramData[] Data { get; }
	public virtual Foundation.NSDate Date { get; }
	public virtual Foundation.NSMeasurement<Foundation.NSUnitFrequency> Frequency { get; }
	public virtual SRElectrocardiogramLead Lead { get; }
	public virtual SRElectrocardiogramSession Session { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: SensorKit.SRElectrocardiogramSession

public class SRElectrocardiogramSession : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public SRElectrocardiogramSession (Foundation.NSCoder coder);
	protected SRElectrocardiogramSession (Foundation.NSObjectFlag t);
	protected SRElectrocardiogramSession (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual string Identifier { get; }
	public virtual SRElectrocardiogramSessionGuidance SessionGuidance { get; }
	public virtual SRElectrocardiogramSessionState State { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: SensorKit.SRElectrocardiogramSessionGuidance

[Serializable]
public enum SRElectrocardiogramSessionGuidance {
	Guided = 1,
	Unguided = 2,
}

New Type: SensorKit.SRElectrocardiogramSessionState

[Serializable]
public enum SRElectrocardiogramSessionState {
	Active = 2,
	Begin = 1,
	End = 3,
}

New Type: SensorKit.SRFaceMetricsContext

[Serializable]
[Flags]
public enum SRFaceMetricsContext {
	DeviceUnlock = 1,
	MessagingAppUsage = 2,
}

New Type: SensorKit.SRFaceMetricsExpression

public class SRFaceMetricsExpression : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public SRFaceMetricsExpression (Foundation.NSCoder coder);
	protected SRFaceMetricsExpression (Foundation.NSObjectFlag t);
	protected SRFaceMetricsExpression (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual string Identifier { get; }
	public virtual double Value { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: SensorKit.SRPhotoplethysmogramAccelerometerSample

public class SRPhotoplethysmogramAccelerometerSample : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public SRPhotoplethysmogramAccelerometerSample (Foundation.NSCoder coder);
	protected SRPhotoplethysmogramAccelerometerSample (Foundation.NSObjectFlag t);
	protected SRPhotoplethysmogramAccelerometerSample (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual long NanosecondsSinceStart { get; }
	public virtual Foundation.NSMeasurement<Foundation.NSUnitFrequency> SamplingFrequency { get; }
	public virtual Foundation.NSMeasurement<Foundation.NSUnitAcceleration> X { get; }
	public virtual Foundation.NSMeasurement<Foundation.NSUnitAcceleration> Y { get; }
	public virtual Foundation.NSMeasurement<Foundation.NSUnitAcceleration> Z { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: SensorKit.SRPhotoplethysmogramOpticalSample

public class SRPhotoplethysmogramOpticalSample : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public SRPhotoplethysmogramOpticalSample (Foundation.NSCoder coder);
	protected SRPhotoplethysmogramOpticalSample (Foundation.NSObjectFlag t);
	protected SRPhotoplethysmogramOpticalSample (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual Foundation.NSIndexSet ActivePhotodiodeIndexes { get; }
	public virtual double? BackgroundNoise { get; }
	public virtual double? BackgroundNoiseOffset { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual Foundation.NSString[] Conditions { get; }
	public virtual Foundation.NSMeasurement<Foundation.NSUnitLength> EffectiveWavelength { get; }
	public virtual IntPtr Emitter { get; }
	public virtual long NanosecondsSinceStart { get; }
	public virtual Foundation.NSMeasurement<Foundation.NSUnitLength> NominalWavelength { get; }
	public virtual double? NormalizedReflectance { get; }
	public virtual double? PinkNoise { get; }
	public virtual Foundation.NSMeasurement<Foundation.NSUnitFrequency> SamplingFrequency { get; }
	public virtual IntPtr SignalIdentifier { get; }
	public virtual double? WhiteNoise { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: SensorKit.SRPhotoplethysmogramOpticalSampleCondition

[Serializable]
public enum SRPhotoplethysmogramOpticalSampleCondition {
	SignalSaturation = 0,
	UnreliableNoise = 1,
}

New Type: SensorKit.SRPhotoplethysmogramOpticalSampleConditionExtensions

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

New Type: SensorKit.SRPhotoplethysmogramSample

public class SRPhotoplethysmogramSample : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public SRPhotoplethysmogramSample (Foundation.NSCoder coder);
	protected SRPhotoplethysmogramSample (Foundation.NSObjectFlag t);
	protected SRPhotoplethysmogramSample (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual SRPhotoplethysmogramAccelerometerSample[] AccelerometerSamples { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual long NanosecondsSinceStart { get; }
	public virtual SRPhotoplethysmogramOpticalSample[] OpticalSamples { get; }
	public virtual Foundation.NSDate StartDate { get; }
	public virtual Foundation.NSMeasurement<Foundation.NSUnitTemperature> Temperature { get; }
	public virtual Foundation.NSString[] Usage { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: SensorKit.SRPhotoplethysmogramSampleUsage

[Serializable]
public enum SRPhotoplethysmogramSampleUsage {
	BackgroundSystem = 3,
	DeepBreathing = 1,
	ForegroundBloodOxygen = 2,
	ForegroundHeartRate = 0,
}

New Type: SensorKit.SRPhotoplethysmogramSampleUsageExtensions

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

New Type: SensorKit.SRSpeechExpression

public class SRSpeechExpression : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public SRSpeechExpression (Foundation.NSCoder coder);
	protected SRSpeechExpression (Foundation.NSObjectFlag t);
	protected SRSpeechExpression (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual double Activation { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual double Confidence { get; }
	public virtual double Dominance { get; }
	public virtual double Mood { get; }
	public virtual CoreMedia.CMTimeRange TimeRange { get; }
	public virtual double Valence { get; }
	public virtual string Version { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: SensorKit.SRSpeechMetrics

public class SRSpeechMetrics : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public SRSpeechMetrics (Foundation.NSCoder coder);
	protected SRSpeechMetrics (Foundation.NSObjectFlag t);
	protected SRSpeechMetrics (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual SRAudioLevel AudioLevel { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual SRSpeechMetricsSessionFlags SessionFlags { get; }
	public virtual string SessionIdentifier { get; }
	public virtual SoundAnalysis.SNClassificationResult SoundClassification { get; }
	public virtual SRSpeechExpression SpeechExpression { get; }
	public virtual Speech.SFSpeechRecognitionResult SpeechRecognition { get; }
	public virtual double TimeSinceAudioStart { get; }
	public virtual Foundation.NSDate Timestamp { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: SensorKit.SRSpeechMetricsSessionFlags

[Serializable]
[Flags]
public enum SRSpeechMetricsSessionFlags {
	BypassVoiceProcessing = 1,
	Default = 0,
}

New Type: SensorKit.SRWristTemperature

public class SRWristTemperature : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public SRWristTemperature (Foundation.NSCoder coder);
	protected SRWristTemperature (Foundation.NSObjectFlag t);
	protected SRWristTemperature (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual SRWristTemperatureCondition Condition { get; }
	public virtual Foundation.NSMeasurement<Foundation.NSUnitTemperature> ErrorEstimate { get; }
	public virtual Foundation.NSDate Timestamp { get; }
	public virtual Foundation.NSMeasurement<Foundation.NSUnitTemperature> Value { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: SensorKit.SRWristTemperatureCondition

[Serializable]
[Flags]
public enum SRWristTemperatureCondition {
	InMotion = 4,
	None = 0,
	OffWrist = 1,
	OnCharger = 2,
}

New Type: SensorKit.SRWristTemperatureSession

public class SRWristTemperatureSession : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public SRWristTemperatureSession (Foundation.NSCoder coder);
	protected SRWristTemperatureSession (Foundation.NSObjectFlag t);
	protected SRWristTemperatureSession (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual double Duration { get; }
	public virtual Foundation.NSDate StartDate { get; }
	public virtual Foundation.NSEnumerator<SRWristTemperature> Temperatures { get; }
	public virtual string Version { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

Namespace SharedWithYou

Type Changed: SharedWithYou.ISWCollaborationViewDelegate

Added methods:

public virtual void DidDismissPopover (SWCollaborationView collaborationView);
public virtual bool ShouldPresentPopover (SWCollaborationView collaborationView);
public virtual void WillPresentPopover (SWCollaborationView collaborationView);

Type Changed: SharedWithYou.ISWHighlightCenterDelegate

Modified methods:

-public abstract void HighlightsDidChange (SWHighlightCenter highlightCenter)
+public virtual void HighlightsDidChange (SWHighlightCenter highlightCenter)

Type Changed: SharedWithYou.ISWHighlightEvent

Modified properties:

-public abstract Foundation.NSUrl HighlightUrl { get; }
+public virtual Foundation.NSUrl HighlightUrl { get; }

Namespace SharedWithYouCore

Type Changed: SharedWithYouCore.ISWCollaborationActionHandler

Modified methods:

-public abstract void HandleStartCollaborationAction (SWCollaborationCoordinator coordinator, SWStartCollaborationAction action)
+public virtual void HandleStartCollaborationAction (SWCollaborationCoordinator coordinator, SWStartCollaborationAction action)
-public abstract void HandleUpdateCollaborationParticipantsAction (SWCollaborationCoordinator coordinator, SWUpdateCollaborationParticipantsAction action)
+public virtual void HandleUpdateCollaborationParticipantsAction (SWCollaborationCoordinator coordinator, SWUpdateCollaborationParticipantsAction action)

Namespace ShazamKit

Type Changed: ShazamKit.ISHSessionDelegate

Added methods:

public virtual void DidFindMatch (SHSession session, SHMatch match);
public virtual void DidNotFindMatch (SHSession session, SHSignature signature, Foundation.NSError error);

Type Changed: ShazamKit.SHCustomCatalog

Added constructor:

public SHCustomCatalog (Foundation.NSData data, out Foundation.NSError error);

Added property:

public virtual Foundation.NSData DataRepresentation { get; }

Namespace SoundAnalysis

Type Changed: SoundAnalysis.ISNResultsObserving

Modified methods:

-public abstract void DidProduceResult (ISNRequest request, ISNResult result)
+public virtual void DidProduceResult (ISNRequest request, ISNResult result)

Added methods:

public virtual void DidComplete (ISNRequest request);
public virtual void DidFail (ISNRequest request, Foundation.NSError error);

Namespace Speech

Type Changed: Speech.ISFSpeechRecognitionTaskDelegate

Added methods:

public virtual void DidDetectSpeech (SFSpeechRecognitionTask task);
public virtual void DidFinishRecognition (SFSpeechRecognitionTask task, SFSpeechRecognitionResult recognitionResult);
public virtual void DidFinishSuccessfully (SFSpeechRecognitionTask task, bool successfully);
public virtual void DidHypothesizeTranscription (SFSpeechRecognitionTask task, SFTranscription transcription);
public virtual void DidProcessAudioDuration (SFSpeechRecognitionTask task, double duration);
public virtual void FinishedReadingAudio (SFSpeechRecognitionTask task);
public virtual void WasCancelled (SFSpeechRecognitionTask task);

Type Changed: Speech.ISFSpeechRecognizerDelegate

Added method:

public virtual void AvailabilityDidChange (SFSpeechRecognizer speechRecognizer, bool available);

Type Changed: Speech.SFSpeechErrorCode

Added value:

AudioReadFailed = 2,

Type Changed: Speech.SFSpeechRecognitionTaskDelegate

Added method:

public virtual void DidProcessAudioDuration (SFSpeechRecognitionTask task, double duration);

Type Changed: Speech.SFSpeechRecognitionTaskDelegate_Extensions

Added method:

public static void DidProcessAudioDuration (this ISFSpeechRecognitionTaskDelegate This, SFSpeechRecognitionTask task, double duration);

Namespace SpriteKit

Type Changed: SpriteKit.ISKPhysicsContactDelegate

Added methods:

public virtual void DidBeginContact (SKPhysicsContact contact);
public virtual void DidEndContact (SKPhysicsContact contact);

Type Changed: SpriteKit.ISKSceneDelegate

Added methods:

public virtual void DidApplyConstraints (SKScene scene);
public virtual void DidEvaluateActions (SKScene scene);
public virtual void DidFinishUpdate (SKScene scene);
public virtual void DidSimulatePhysics (SKScene scene);
public virtual void Update (double currentTime, SKScene scene);

Type Changed: SpriteKit.ISKViewDelegate

Added method:

public virtual bool ShouldRender (SKView view, double time);

Type Changed: SpriteKit.ISKWarpable

Modified properties:

-public abstract IntPtr SubdivisionLevels { get; set; }
+public virtual IntPtr SubdivisionLevels { get; set; }
-public abstract SKWarpGeometry WarpGeometry { get; set; }
+public virtual SKWarpGeometry WarpGeometry { get; set; }

Type Changed: SpriteKit.SKNode

Added interfaces:

UIKit.IUICoordinateSpace
UIKit.IUIFocusItemContainer

Added properties:

public virtual CoreGraphics.CGRect Bounds { get; }
public virtual UIKit.IUICoordinateSpace CoordinateSpace { get; }

Added methods:

public virtual CoreGraphics.CGPoint ConvertPointFromCoordinateSpace (CoreGraphics.CGPoint point, UIKit.IUICoordinateSpace coordinateSpace);
public virtual CoreGraphics.CGPoint ConvertPointToCoordinateSpace (CoreGraphics.CGPoint point, UIKit.IUICoordinateSpace coordinateSpace);
public virtual CoreGraphics.CGRect ConvertRectFromCoordinateSpace (CoreGraphics.CGRect rect, UIKit.IUICoordinateSpace coordinateSpace);
public virtual CoreGraphics.CGRect ConvertRectToCoordinateSpace (CoreGraphics.CGRect rect, UIKit.IUICoordinateSpace coordinateSpace);
public virtual UIKit.IUIFocusItem[] GetFocusItems (CoreGraphics.CGRect rect);

Namespace StoreKit

Type Changed: StoreKit.ISKCloudServiceSetupViewControllerDelegate

Added method:

public virtual void DidDismiss (SKCloudServiceSetupViewController cloudServiceSetupViewController);

Type Changed: StoreKit.ISKOverlayDelegate

Added methods:

public virtual void DidFailToLoad (SKOverlay overlay, Foundation.NSError error);
public virtual void DidFinishDismissal (SKOverlay overlay, SKOverlayTransitionContext transitionContext);
public virtual void DidFinishPresentation (SKOverlay overlay, SKOverlayTransitionContext transitionContext);
public virtual void WillStartDismissal (SKOverlay overlay, SKOverlayTransitionContext transitionContext);
public virtual void WillStartPresentation (SKOverlay overlay, SKOverlayTransitionContext transitionContext);

Type Changed: StoreKit.ISKPaymentQueueDelegate

Added methods:

public virtual bool ShouldContinueTransaction (SKPaymentQueue paymentQueue, SKPaymentTransaction transaction, SKStorefront newStorefront);
public virtual bool ShouldShowPriceConsent (SKPaymentQueue paymentQueue);

Type Changed: StoreKit.ISKPaymentTransactionObserver

Modified methods:

-public abstract void UpdatedTransactions (SKPaymentQueue queue, SKPaymentTransaction[] transactions)
+public virtual void UpdatedTransactions (SKPaymentQueue queue, SKPaymentTransaction[] transactions)

Added methods:

public virtual void DidChangeStorefront (SKPaymentQueue queue);
public virtual void DidRevokeEntitlements (SKPaymentQueue queue, string[] productIdentifiers);
public virtual void RemovedTransactions (SKPaymentQueue queue, SKPaymentTransaction[] transactions);
public virtual void RestoreCompletedTransactionsFailedWithError (SKPaymentQueue queue, Foundation.NSError error);
public virtual void RestoreCompletedTransactionsFinished (SKPaymentQueue queue);
public virtual bool ShouldAddStorePayment (SKPaymentQueue queue, SKPayment payment, SKProduct product);
public virtual void UpdatedDownloads (SKPaymentQueue queue, SKDownload[] downloads);

Type Changed: StoreKit.ISKProductsRequestDelegate

Modified methods:

-public abstract void ReceivedResponse (SKProductsRequest request, SKProductsResponse response)
+public virtual void ReceivedResponse (SKProductsRequest request, SKProductsResponse response)

Type Changed: StoreKit.ISKRequestDelegate

Added methods:

public virtual void RequestFailed (SKRequest request, Foundation.NSError error);
public virtual void RequestFinished (SKRequest request);

Type Changed: StoreKit.ISKStoreProductViewControllerDelegate

Added method:

public virtual void Finished (SKStoreProductViewController controller);

New Type: StoreKit.SKANError

[Serializable]
public enum SKANError {
	AdNetworkIdMissing = 2,
	ImpressionMissingRequiredValue = 0,
	ImpressionNotFound = 4,
	ImpressionTooShort = 11,
	InvalidAdvertisedAppId = 8,
	InvalidCampaignId = 5,
	InvalidConversionValue = 6,
	InvalidSourceAppId = 7,
	InvalidVersion = 9,
	MismatchedSourceAppId = 3,
	Unknown = 10,
	Unsupported = 1,
}

New Type: StoreKit.SKANErrorExtensions

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

Namespace Symbols

Type Changed: Symbols.NSSymbolEffectOptions

Added methods:

public static NSSymbolEffectOptions Create (NSSymbolEffectOptionsRepeatBehavior behavior);
public virtual NSSymbolEffectOptions Get (NSSymbolEffectOptionsRepeatBehavior behavior);

Type Changed: Symbols.NSSymbolReplaceContentTransition

Added method:

public static NSSymbolMagicReplaceContentTransition CreateMagicTransition (NSSymbolReplaceContentTransition fallback);

New Type: Symbols.NSSymbolBreatheEffect

public class NSSymbolBreatheEffect : Symbols.NSSymbolEffect {
	// constructors
	public NSSymbolBreatheEffect (Foundation.NSCoder coder);
	protected NSSymbolBreatheEffect (Foundation.NSObjectFlag t);
	protected NSSymbolBreatheEffect (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual NSSymbolBreatheEffect ByLayer { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual NSSymbolBreatheEffect WholeSymbol { get; }
	// methods
	public static NSSymbolBreatheEffect Create ();
	public static NSSymbolBreatheEffect CreatePlainEffect ();
	public static NSSymbolBreatheEffect CreatePulseEffect ();
}

New Type: Symbols.NSSymbolEffectOptionsRepeatBehavior

public class NSSymbolEffectOptionsRepeatBehavior : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public NSSymbolEffectOptionsRepeatBehavior (Foundation.NSCoder coder);
	protected NSSymbolEffectOptionsRepeatBehavior (Foundation.NSObjectFlag t);
	protected NSSymbolEffectOptionsRepeatBehavior (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static NSSymbolEffectOptionsRepeatBehavior CreateContinuous ();
	public static NSSymbolEffectOptionsRepeatBehavior CreatePeriodic ();
	public static NSSymbolEffectOptionsRepeatBehavior CreatePeriodic (double delay);
	public static NSSymbolEffectOptionsRepeatBehavior CreatePeriodic (IntPtr count);
	public static NSSymbolEffectOptionsRepeatBehavior CreatePeriodic (IntPtr count, double delay);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: Symbols.NSSymbolMagicReplaceContentTransition

public class NSSymbolMagicReplaceContentTransition : Symbols.NSSymbolContentTransition {
	// constructors
	public NSSymbolMagicReplaceContentTransition (Foundation.NSCoder coder);
	protected NSSymbolMagicReplaceContentTransition (Foundation.NSObjectFlag t);
	protected NSSymbolMagicReplaceContentTransition (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
}

New Type: Symbols.NSSymbolRotateEffect

public class NSSymbolRotateEffect : Symbols.NSSymbolEffect {
	// constructors
	public NSSymbolRotateEffect (Foundation.NSCoder coder);
	protected NSSymbolRotateEffect (Foundation.NSObjectFlag t);
	protected NSSymbolRotateEffect (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual NSSymbolRotateEffect ByLayer { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual NSSymbolRotateEffect WholeSymbol { get; }
	// methods
	public static NSSymbolRotateEffect Create ();
	public static NSSymbolRotateEffect CreateClockwiseEffect ();
	public static NSSymbolRotateEffect CreateCounterClockwiseEffect ();
}

New Type: Symbols.NSSymbolWiggleEffect

public class NSSymbolWiggleEffect : Symbols.NSSymbolEffect {
	// constructors
	public NSSymbolWiggleEffect (Foundation.NSCoder coder);
	protected NSSymbolWiggleEffect (Foundation.NSObjectFlag t);
	protected NSSymbolWiggleEffect (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual NSSymbolWiggleEffect ByLayer { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual NSSymbolWiggleEffect WholeSymbol { get; }
	// methods
	public static NSSymbolWiggleEffect Create ();
	public static NSSymbolWiggleEffect CreateBackwardEffect ();
	public static NSSymbolWiggleEffect CreateClockwiseEffect ();
	public static NSSymbolWiggleEffect CreateCounterClockwiseEffect ();
	public static NSSymbolWiggleEffect CreateCustomAngleEffect (double angle);
	public static NSSymbolWiggleEffect CreateDownEffect ();
	public static NSSymbolWiggleEffect CreateForwardEffect ();
	public static NSSymbolWiggleEffect CreateLeftEffect ();
	public static NSSymbolWiggleEffect CreateRightEffect ();
	public static NSSymbolWiggleEffect CreateUpEffect ();
}

Namespace UIKit

Type Changed: UIKit.INSCollectionLayoutContainer

Modified properties:

-public abstract NSDirectionalEdgeInsets ContentInsets { get; }
+public virtual NSDirectionalEdgeInsets ContentInsets { get; }
-public abstract CoreGraphics.CGSize ContentSize { get; }
+public virtual CoreGraphics.CGSize ContentSize { get; }
-public abstract NSDirectionalEdgeInsets EffectiveContentInsets { get; }
+public virtual NSDirectionalEdgeInsets EffectiveContentInsets { get; }
-public abstract CoreGraphics.CGSize EffectiveContentSize { get; }
+public virtual CoreGraphics.CGSize EffectiveContentSize { get; }

Type Changed: UIKit.INSCollectionLayoutEnvironment

Modified properties:

-public abstract INSCollectionLayoutContainer Container { get; }
+public virtual INSCollectionLayoutContainer Container { get; }
-public abstract UITraitCollection TraitCollection { get; }
+public virtual UITraitCollection TraitCollection { get; }

Type Changed: UIKit.INSCollectionLayoutVisibleItem

Modified properties:

-public abstract System.Runtime.InteropServices.NFloat Alpha { get; set; }
+public virtual System.Runtime.InteropServices.NFloat Alpha { get; set; }
-public abstract CoreGraphics.CGRect Frame { get; }
+public virtual CoreGraphics.CGRect Frame { get; }
-public abstract bool Hidden { get; set; }
+public virtual bool Hidden { get; set; }
-public abstract Foundation.NSIndexPath IndexPath { get; }
+public virtual Foundation.NSIndexPath IndexPath { get; }
-public abstract string Name { get; }
+public virtual string Name { get; }
-public abstract UICollectionElementCategory RepresentedElementCategory { get; }
+public virtual UICollectionElementCategory RepresentedElementCategory { get; }
-public abstract string RepresentedElementKind { get; }
+public virtual string RepresentedElementKind { get; }
-public abstract CoreAnimation.CATransform3D Transform3D { get; set; }
+public virtual CoreAnimation.CATransform3D Transform3D { get; set; }
-public abstract IntPtr ZIndex { get; set; }
+public virtual IntPtr ZIndex { get; set; }

Type Changed: UIKit.INSLayoutManagerDelegate

Added methods:

public virtual void DidChangeGeometry (NSLayoutManager layoutManager, NSTextContainer textContainer, CoreGraphics.CGSize oldSize);
public virtual void DidCompleteLayout (NSLayoutManager layoutManager, NSTextContainer textContainer, bool layoutFinishedFlag);
public virtual void DidInvalidatedLayout (NSLayoutManager sender);
public virtual CoreGraphics.CGRect GetBoundingBox (NSLayoutManager layoutManager, UIntPtr glyphIndex, NSTextContainer textContainer, CoreGraphics.CGRect proposedRect, CoreGraphics.CGPoint glyphPosition, UIntPtr characterIndex);
public virtual System.Runtime.InteropServices.NFloat GetLineSpacingAfterGlyph (NSLayoutManager layoutManager, UIntPtr glyphIndex, CoreGraphics.CGRect rect);
public virtual System.Runtime.InteropServices.NFloat GetParagraphSpacingAfterGlyph (NSLayoutManager layoutManager, UIntPtr glyphIndex, CoreGraphics.CGRect rect);
public virtual System.Runtime.InteropServices.NFloat GetParagraphSpacingBeforeGlyph (NSLayoutManager layoutManager, UIntPtr glyphIndex, CoreGraphics.CGRect rect);
public virtual bool ShouldBreakLineByHyphenatingBeforeCharacter (NSLayoutManager layoutManager, UIntPtr characterIndex);
public virtual bool ShouldBreakLineByWordBeforeCharacter (NSLayoutManager layoutManager, UIntPtr characterIndex);
public virtual UIntPtr ShouldGenerateGlyphs (NSLayoutManager layoutManager, IntPtr glyphBuffer, IntPtr properties, IntPtr characterIndexes, UIFont font, Foundation.NSRange glyphRange);
public virtual bool ShouldSetLineFragmentRect (NSLayoutManager layoutManager, ref CoreGraphics.CGRect lineFragmentRect, ref CoreGraphics.CGRect lineFragmentUsedRect, ref System.Runtime.InteropServices.NFloat baselineOffset, NSTextContainer textContainer, Foundation.NSRange glyphRange);
public virtual NSControlCharacterAction ShouldUseAction (NSLayoutManager layoutManager, NSControlCharacterAction action, UIntPtr characterIndex);

Type Changed: UIKit.INSTextAttachmentContainer

Modified methods:

-public abstract CoreGraphics.CGRect GetAttachmentBounds (NSTextContainer textContainer, CoreGraphics.CGRect proposedLineFragment, CoreGraphics.CGPoint glyphPosition, UIntPtr characterIndex)
+public virtual CoreGraphics.CGRect GetAttachmentBounds (NSTextContainer textContainer, CoreGraphics.CGRect proposedLineFragment, CoreGraphics.CGPoint glyphPosition, UIntPtr characterIndex)
-public abstract UIImage GetImageForBounds (CoreGraphics.CGRect bounds, NSTextContainer textContainer, UIntPtr characterIndex)
+public virtual UIImage GetImageForBounds (CoreGraphics.CGRect bounds, NSTextContainer textContainer, UIntPtr characterIndex)

Type Changed: UIKit.INSTextAttachmentLayout

Modified methods:

-public abstract CoreGraphics.CGRect GetAttachmentBounds (Foundation.NSDictionary%LESSERTHANREPLACEMENT%Foundation.NSString,Foundation.NSObject%GREATERTHANREPLACEMENT% attributes, INSTextLocation location, NSTextContainer textContainer, CoreGraphics.CGRect proposedLineFragment, CoreGraphics.CGPoint position)
+public virtual CoreGraphics.CGRect GetAttachmentBounds (Foundation.NSDictionary%LESSERTHANREPLACEMENT%Foundation.NSString,Foundation.NSObject%GREATERTHANREPLACEMENT% attributes, INSTextLocation location, NSTextContainer textContainer, CoreGraphics.CGRect proposedLineFragment, CoreGraphics.CGPoint position)
-public abstract UIImage GetImageForBounds (CoreGraphics.CGRect bounds, Foundation.NSDictionary%LESSERTHANREPLACEMENT%Foundation.NSString,Foundation.NSObject%GREATERTHANREPLACEMENT% attributes, INSTextLocation location, NSTextContainer textContainer)
+public virtual UIImage GetImageForBounds (CoreGraphics.CGRect bounds, Foundation.NSDictionary%LESSERTHANREPLACEMENT%Foundation.NSString,Foundation.NSObject%GREATERTHANREPLACEMENT% attributes, INSTextLocation location, NSTextContainer textContainer)
-public abstract NSTextAttachmentViewProvider GetViewProvider (UIView parentView, INSTextLocation location, NSTextContainer textContainer)
+public virtual NSTextAttachmentViewProvider GetViewProvider (UIView parentView, INSTextLocation location, NSTextContainer textContainer)

Type Changed: UIKit.INSTextContentManagerDelegate

Added methods:

public virtual NSTextElement GetTextContentManager (NSTextContentManager textContentManager, INSTextLocation location);
public virtual bool ShouldEnumerateTextElement (NSTextContentManager textContentManager, NSTextElement textElement, NSTextContentManagerEnumerationOptions options);

Type Changed: UIKit.INSTextContentStorageDelegate

Added method:

public virtual NSTextParagraph GetTextParagraph (NSTextContentStorage textContentStorage, Foundation.NSRange range);

Type Changed: UIKit.INSTextElementProvider

Modified properties:

-public abstract NSTextRange DocumentRange { get; }
+public virtual NSTextRange DocumentRange { get; }

Modified methods:

-public abstract INSTextLocation EnumerateTextElements (INSTextLocation textLocation, NSTextContentManagerEnumerationOptions options, System.Func%LESSERTHANREPLACEMENT%NSTextElement,System.Boolean%GREATERTHANREPLACEMENT% handler)
+public virtual INSTextLocation EnumerateTextElements (INSTextLocation textLocation, NSTextContentManagerEnumerationOptions options, System.Func%LESSERTHANREPLACEMENT%NSTextElement,System.Boolean%GREATERTHANREPLACEMENT% handler)
-public abstract void ReplaceContents (NSTextRange range, NSTextElement[] textElements)
+public virtual void ReplaceContents (NSTextRange range, NSTextElement[] textElements)
-public abstract void Synchronize (System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)
+public virtual void Synchronize (System.Action%LESSERTHANREPLACEMENT%Foundation.NSError%GREATERTHANREPLACEMENT% completionHandler)

Added methods:

public virtual NSTextRange AdjustedRange (NSTextRange textRange, bool forEditingTextSelection);
public virtual INSTextLocation GetLocation (INSTextLocation location, IntPtr offset);
public virtual IntPtr GetOffset (INSTextLocation from, INSTextLocation to);

Type Changed: UIKit.INSTextLayoutManagerDelegate

Added methods:

public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> GetRenderingAttributes (NSTextLayoutManager textLayoutManager, Foundation.NSObject link, INSTextLocation location, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> renderingAttributes);
public virtual NSTextLayoutFragment GetTextLayoutFragment (NSTextLayoutManager textLayoutManager, INSTextLocation location, NSTextElement textElement);
public virtual bool ShouldBreakLineBeforeLocation (NSTextLayoutManager textLayoutManager, INSTextLocation location, bool hyphenating);

Type Changed: UIKit.INSTextLayoutOrientationProvider

Modified properties:

-public abstract NSTextLayoutOrientation LayoutOrientation { get; }
+public virtual NSTextLayoutOrientation LayoutOrientation { get; }

Type Changed: UIKit.INSTextLocation

Modified methods:

-public abstract Foundation.NSComparisonResult Compare (INSTextLocation location)
+public virtual Foundation.NSComparisonResult Compare (INSTextLocation location)

Type Changed: UIKit.INSTextSelectionDataSource

Modified properties:

-public abstract NSTextRange DocumentRange { get; }
+public virtual NSTextRange DocumentRange { get; }

Modified methods:

-public abstract void EnumerateCaretOffsets (INSTextLocation location, NSTextSelectionDataSourceEnumerateCaretOffsetsDelegate handler)
+public virtual void EnumerateCaretOffsets (INSTextLocation location, NSTextSelectionDataSourceEnumerateCaretOffsetsDelegate handler)
-public abstract void EnumerateSubstrings (INSTextLocation location, Foundation.NSStringEnumerationOptions options, NSTextSelectionDataSourceEnumerateSubstringsDelegate handler)
+public virtual void EnumerateSubstrings (INSTextLocation location, Foundation.NSStringEnumerationOptions options, NSTextSelectionDataSourceEnumerateSubstringsDelegate handler)
-public abstract NSTextSelectionNavigationWritingDirection GetBaseWritingDirection (INSTextLocation location)
+public virtual NSTextSelectionNavigationWritingDirection GetBaseWritingDirection (INSTextLocation location)
-public abstract NSTextRange GetLineFragmentRange (CoreGraphics.CGPoint point, INSTextLocation location)
+public virtual NSTextRange GetLineFragmentRange (CoreGraphics.CGPoint point, INSTextLocation location)
-public abstract INSTextLocation GetLocation (INSTextLocation location, IntPtr offset)
+public virtual INSTextLocation GetLocation (INSTextLocation location, IntPtr offset)
-public abstract IntPtr GetOffsetFromLocation (INSTextLocation from, INSTextLocation to)
+public virtual IntPtr GetOffsetFromLocation (INSTextLocation from, INSTextLocation to)
-public abstract NSTextRange GetTextRange (NSTextSelectionGranularity selectionGranularity, INSTextLocation location)
+public virtual NSTextRange GetTextRange (NSTextSelectionGranularity selectionGranularity, INSTextLocation location)

Added methods:

public virtual void EnumerateContainerBoundaries (INSTextLocation location, bool reverse, NSTextSelectionDataSourceEnumerateContainerBoundariesDelegate handler);
public virtual NSTextSelectionNavigationLayoutOrientation GetTextLayoutOrientation (INSTextLocation location);

Type Changed: UIKit.INSTextStorageDelegate

Added methods:

public virtual void DidProcessEditing (NSTextStorage textStorage, NSTextStorageEditActions editedMask, Foundation.NSRange editedRange, IntPtr delta);
public virtual void WillProcessEditing (NSTextStorage textStorage, NSTextStorageEditActions editedMask, Foundation.NSRange editedRange, IntPtr delta);

Type Changed: UIKit.INSTextStorageObserving

Modified properties:

-public abstract NSTextStorage TextStorage { get; set; }
+public virtual NSTextStorage TextStorage { get; set; }

Modified methods:

-public abstract void PerformEditingTransaction (NSTextStorage textStorage, System.Action transaction)
+public virtual void PerformEditingTransaction (NSTextStorage textStorage, System.Action transaction)
-public abstract void ProcessEditing (NSTextStorage textStorage, NSTextStorageEditActions editMask, Foundation.NSRange newCharRange, IntPtr delta, Foundation.NSRange invalidatedCharRange)
+public virtual void ProcessEditing (NSTextStorage textStorage, NSTextStorageEditActions editMask, Foundation.NSRange newCharRange, IntPtr delta, Foundation.NSRange invalidatedCharRange)

Type Changed: UIKit.INSTextViewportLayoutControllerDelegate

Modified methods:

-public abstract void ConfigureRenderingSurface (NSTextViewportLayoutController textViewportLayoutController, NSTextLayoutFragment textLayoutFragment)
+public virtual void ConfigureRenderingSurface (NSTextViewportLayoutController textViewportLayoutController, NSTextLayoutFragment textLayoutFragment)
-public abstract CoreGraphics.CGRect GetViewportBounds (NSTextViewportLayoutController textViewportLayoutController)
+public virtual CoreGraphics.CGRect GetViewportBounds (NSTextViewportLayoutController textViewportLayoutController)

Added methods:

public virtual void DidLayout (NSTextViewportLayoutController textViewportLayoutController);
public virtual void WillLayout (NSTextViewportLayoutController textViewportLayoutController);

Type Changed: UIKit.IUIAccelerometerDelegate

Added method:

public virtual void DidAccelerate (UIAccelerometer accelerometer, UIAcceleration acceleration);

Type Changed: UIKit.IUIAccessibilityContainer

Added property:

public virtual UIAccessibilityContainerType AccessibilityContainerType { get; set; }

Added methods:

public virtual IntPtr AccessibilityElementCount ();
public virtual Foundation.NSObject GetAccessibilityElementAt (IntPtr index);
public virtual Foundation.NSObject GetAccessibilityElements ();
public virtual IntPtr GetIndexOfAccessibilityElement (Foundation.NSObject element);
public virtual void SetAccessibilityElements (Foundation.NSObject elements);

Type Changed: UIKit.IUIAccessibilityContainerDataTable

Modified properties:

-public abstract UIntPtr AccessibilityColumnCount { get; }
+public virtual UIntPtr AccessibilityColumnCount { get; }
-public abstract UIntPtr AccessibilityRowCount { get; }
+public virtual UIntPtr AccessibilityRowCount { get; }

Modified methods:

-public abstract IUIAccessibilityContainerDataTableCell GetAccessibilityDataTableCellElement (UIntPtr row, UIntPtr column)
+public virtual IUIAccessibilityContainerDataTableCell GetAccessibilityDataTableCellElement (UIntPtr row, UIntPtr column)

Added methods:

public virtual IUIAccessibilityContainerDataTableCell[] GetAccessibilityHeaderElementsForColumn (UIntPtr column);
public virtual IUIAccessibilityContainerDataTableCell[] GetAccessibilityHeaderElementsForRow (UIntPtr row);

Type Changed: UIKit.IUIAccessibilityContainerDataTableCell

Modified methods:

-public abstract Foundation.NSRange GetAccessibilityColumnRange ()
+public virtual Foundation.NSRange GetAccessibilityColumnRange ()
-public abstract Foundation.NSRange GetAccessibilityRowRange ()
+public virtual Foundation.NSRange GetAccessibilityRowRange ()

Type Changed: UIKit.IUIAccessibilityContentSizeCategoryImageAdjusting

Modified properties:

-public abstract bool AdjustsImageSizeForAccessibilityContentSizeCategory { get; set; }
+public virtual bool AdjustsImageSizeForAccessibilityContentSizeCategory { get; set; }

Type Changed: UIKit.IUIAccessibilityIdentification

Modified properties:

-public abstract string AccessibilityIdentifier { get; set; }
+public virtual string AccessibilityIdentifier { get; set; }

Type Changed: UIKit.IUIAccessibilityReadingContent

Modified methods:

-public abstract string GetAccessibilityContent (IntPtr lineNumber)
+public virtual string GetAccessibilityContent (IntPtr lineNumber)
-public abstract CoreGraphics.CGRect GetAccessibilityFrame (IntPtr lineNumber)
+public virtual CoreGraphics.CGRect GetAccessibilityFrame (IntPtr lineNumber)
-public abstract IntPtr GetAccessibilityLineNumber (CoreGraphics.CGPoint point)
+public virtual IntPtr GetAccessibilityLineNumber (CoreGraphics.CGPoint point)
-public abstract string GetAccessibilityPageContent ()
+public virtual string GetAccessibilityPageContent ()

Added methods:

public virtual Foundation.NSAttributedString GetAccessibilityAttributedContent (IntPtr lineNumber);
public virtual Foundation.NSAttributedString GetAccessibilityAttributedPageContent ();

Type Changed: UIKit.IUIActionSheetDelegate

Added methods:

public virtual void Canceled (UIActionSheet actionSheet);
public virtual void Clicked (UIActionSheet actionSheet, IntPtr buttonIndex);
public virtual void Dismissed (UIActionSheet actionSheet, IntPtr buttonIndex);
public virtual void Presented (UIActionSheet actionSheet);
public virtual void WillDismiss (UIActionSheet actionSheet, IntPtr buttonIndex);
public virtual void WillPresent (UIActionSheet actionSheet);

Type Changed: UIKit.IUIActivityItemSource

Modified methods:

-public abstract Foundation.NSObject GetItemForActivity (UIActivityViewController activityViewController, Foundation.NSString activityType)
+public virtual Foundation.NSObject GetItemForActivity (UIActivityViewController activityViewController, Foundation.NSString activityType)
-public abstract Foundation.NSObject GetPlaceholderData (UIActivityViewController activityViewController)
+public virtual Foundation.NSObject GetPlaceholderData (UIActivityViewController activityViewController)

Added methods:

public virtual string GetDataTypeIdentifierForActivity (UIActivityViewController activityViewController, Foundation.NSString activityType);
public virtual LinkPresentation.LPLinkMetadata GetLinkMetadata (UIActivityViewController activityViewController);
public virtual string GetSubjectForActivity (UIActivityViewController activityViewController, Foundation.NSString activityType);
public virtual UIImage GetThumbnailImageForActivity (UIActivityViewController activityViewController, Foundation.NSString activityType, CoreGraphics.CGSize suggestedSize);

Type Changed: UIKit.IUIActivityItemsConfigurationProviding

Modified properties:

-public abstract IUIActivityItemsConfigurationReading ActivityItemsConfiguration { get; }
+public virtual IUIActivityItemsConfigurationReading ActivityItemsConfiguration { get; }

Type Changed: UIKit.IUIActivityItemsConfigurationReading

Modified properties:

-public abstract Foundation.NSItemProvider[] ItemProvidersForActivityItemsConfiguration { get; }
+public virtual Foundation.NSItemProvider[] ItemProvidersForActivityItemsConfiguration { get; }

Added methods:

public virtual Foundation.NSObject GetActivityItemsConfigurationMetadata (Foundation.NSString activityItemsConfigurationMetadataKey);
public virtual Foundation.NSObject GetActivityItemsConfigurationMetadata (IntPtr index, Foundation.NSString activityItemsConfigurationMetadataKey);
public virtual Foundation.NSItemProvider GetActivityItemsConfigurationPreview (IntPtr index, Foundation.NSString activityItemsConfigurationPreviewIntent, CoreGraphics.CGSize suggestedSize);
public virtual bool GetActivityItemsConfigurationSupportsInteraction (Foundation.NSString activityItemsConfigurationInteraction);
public virtual UIActivity[] GetApplicationActivitiesForActivityItemsConfiguration ();

Type Changed: UIKit.IUIAdaptivePresentationControllerDelegate

Added methods:

public virtual void DidAttemptToDismiss (UIPresentationController presentationController);
public virtual void DidDismiss (UIPresentationController presentationController);
public virtual UIModalPresentationStyle GetAdaptivePresentationStyle (UIPresentationController forPresentationController);
public virtual UIModalPresentationStyle GetAdaptivePresentationStyle (UIPresentationController controller, UITraitCollection traitCollection);
public virtual UIViewController GetViewControllerForAdaptivePresentation (UIPresentationController controller, UIModalPresentationStyle style);
public virtual void PrepareAdaptivePresentationController (UIPresentationController presentationController, UIPresentationController adaptivePresentationController);
public virtual bool ShouldDismiss (UIPresentationController presentationController);
public virtual void WillDismiss (UIPresentationController presentationController);
public virtual void WillPresent (UIPresentationController presentationController, UIModalPresentationStyle style, IUIViewControllerTransitionCoordinator transitionCoordinator);

Type Changed: UIKit.IUIAlertViewDelegate

Added methods:

public virtual void Canceled (UIAlertView alertView);
public virtual void Clicked (UIAlertView alertview, IntPtr buttonIndex);
public virtual void Dismissed (UIAlertView alertView, IntPtr buttonIndex);
public virtual void Presented (UIAlertView alertView);
public virtual bool ShouldEnableFirstOtherButton (UIAlertView alertView);
public virtual void WillDismiss (UIAlertView alertView, IntPtr buttonIndex);
public virtual void WillPresent (UIAlertView alertView);

Type Changed: UIKit.IUIApplicationDelegate

Added property:

public virtual UIWindow Window { get; set; }

Added methods:

public virtual void ApplicationSignificantTimeChange (UIApplication application);
public virtual void ChangedStatusBarFrame (UIApplication application, CoreGraphics.CGRect oldStatusBarFrame);
public virtual bool ContinueUserActivity (UIApplication application, Foundation.NSUserActivity userActivity, UIApplicationRestorationHandler completionHandler);
public virtual void DidChangeStatusBarOrientation (UIApplication application, UIInterfaceOrientation oldStatusBarOrientation);
public virtual void DidDecodeRestorableState (UIApplication application, Foundation.NSCoder coder);
public virtual void DidDiscardSceneSessions (UIApplication application, Foundation.NSSet<UISceneSession> sceneSessions);
public virtual void DidEnterBackground (UIApplication application);
public virtual void DidFailToContinueUserActivity (UIApplication application, string userActivityType, Foundation.NSError error);
public virtual void DidReceiveRemoteNotification (UIApplication application, Foundation.NSDictionary userInfo, System.Action<UIBackgroundFetchResult> completionHandler);
public virtual void DidRegisterUserNotificationSettings (UIApplication application, UIUserNotificationSettings notificationSettings);
public virtual void FailedToRegisterForRemoteNotifications (UIApplication application, Foundation.NSError error);
public virtual void FinishedLaunching (UIApplication application);
public virtual bool FinishedLaunching (UIApplication application, Foundation.NSDictionary launchOptions);
public virtual UISceneConfiguration GetConfiguration (UIApplication application, UISceneSession connectingSceneSession, UISceneConnectionOptions options);
public virtual Foundation.NSObject GetHandlerForIntent (UIApplication application, Intents.INIntent intent);
public virtual UIInterfaceOrientationMask GetSupportedInterfaceOrientations (UIApplication application, UIWindow forWindow);
public virtual UIViewController GetViewController (UIApplication application, string[] restorationIdentifierComponents, Foundation.NSCoder coder);
public virtual void HandleAction (UIApplication application, string actionIdentifier, Foundation.NSDictionary remoteNotificationInfo, System.Action completionHandler);
public virtual void HandleAction (UIApplication application, string actionIdentifier, UILocalNotification localNotification, System.Action completionHandler);
public virtual void HandleAction (UIApplication application, string actionIdentifier, Foundation.NSDictionary remoteNotificationInfo, Foundation.NSDictionary responseInfo, System.Action completionHandler);
public virtual void HandleAction (UIApplication application, string actionIdentifier, UILocalNotification localNotification, Foundation.NSDictionary responseInfo, System.Action completionHandler);
public virtual void HandleEventsForBackgroundUrl (UIApplication application, string sessionIdentifier, System.Action completionHandler);
public virtual void HandleIntent (UIApplication application, Intents.INIntent intent, System.Action<Intents.INIntentResponse> completionHandler);
public virtual bool HandleOpenURL (UIApplication application, Foundation.NSUrl url);
public virtual void HandleWatchKitExtensionRequest (UIApplication application, Foundation.NSDictionary userInfo, System.Action<Foundation.NSDictionary> reply);
public virtual void OnActivated (UIApplication application);
public virtual void OnResignActivation (UIApplication application);
public virtual bool OpenUrl (UIApplication app, Foundation.NSUrl url, Foundation.NSDictionary options);
public virtual bool OpenUrl (UIApplication application, Foundation.NSUrl url, string sourceApplication, Foundation.NSObject annotation);
public virtual void PerformActionForShortcutItem (UIApplication application, UIApplicationShortcutItem shortcutItem, UIOperationHandler completionHandler);
public virtual void PerformFetch (UIApplication application, System.Action<UIBackgroundFetchResult> completionHandler);
public virtual void ProtectedDataDidBecomeAvailable (UIApplication application);
public virtual void ProtectedDataWillBecomeUnavailable (UIApplication application);
public virtual void ReceiveMemoryWarning (UIApplication application);
public virtual void ReceivedLocalNotification (UIApplication application, UILocalNotification notification);
public virtual void ReceivedRemoteNotification (UIApplication application, Foundation.NSDictionary userInfo);
public virtual void RegisteredForRemoteNotifications (UIApplication application, Foundation.NSData deviceToken);
public virtual bool ShouldAllowExtensionPointIdentifier (UIApplication application, Foundation.NSString extensionPointIdentifier);
public virtual bool ShouldAutomaticallyLocalizeKeyCommands (UIApplication application);
public virtual void ShouldRequestHealthAuthorization (UIApplication application);
public virtual bool ShouldRestoreApplicationState (UIApplication application, Foundation.NSCoder coder);
public virtual bool ShouldRestoreSecureApplicationState (UIApplication application, Foundation.NSCoder coder);
public virtual bool ShouldSaveApplicationState (UIApplication application, Foundation.NSCoder coder);
public virtual bool ShouldSaveSecureApplicationState (UIApplication application, Foundation.NSCoder coder);
public virtual void UserActivityUpdated (UIApplication application, Foundation.NSUserActivity userActivity);
public virtual void UserDidAcceptCloudKitShare (UIApplication application, CloudKit.CKShareMetadata cloudKitShareMetadata);
public virtual void WillChangeStatusBarFrame (UIApplication application, CoreGraphics.CGRect newStatusBarFrame);
public virtual void WillChangeStatusBarOrientation (UIApplication application, UIInterfaceOrientation newStatusBarOrientation, double duration);
public virtual bool WillContinueUserActivity (UIApplication application, string userActivityType);
public virtual void WillEncodeRestorableState (UIApplication application, Foundation.NSCoder coder);
public virtual void WillEnterForeground (UIApplication application);
public virtual bool WillFinishLaunching (UIApplication application, Foundation.NSDictionary launchOptions);
public virtual void WillTerminate (UIApplication application);

Type Changed: UIKit.IUIBarPositioning

Modified properties:

-public abstract UIBarPosition BarPosition { get; }
+public virtual UIBarPosition BarPosition { get; }

Type Changed: UIKit.IUIBarPositioningDelegate

Added method:

public virtual UIBarPosition GetPositionForBar (IUIBarPositioning barPositioning);

Type Changed: UIKit.IUICGFloatTraitDefinition

Added method:

public static System.Runtime.InteropServices.NFloat GetDefaultValue<T> ();

Type Changed: UIKit.IUICalendarSelectionMultiDateDelegate

Modified methods:

-public abstract void DidDeselectDate (UICalendarSelectionMultiDate selection, Foundation.NSDateComponents dateComponents)
+public virtual void DidDeselectDate (UICalendarSelectionMultiDate selection, Foundation.NSDateComponents dateComponents)
-public abstract void DidSelectDate (UICalendarSelectionMultiDate selection, Foundation.NSDateComponents dateComponents)
+public virtual void DidSelectDate (UICalendarSelectionMultiDate selection, Foundation.NSDateComponents dateComponents)

Added methods:

public virtual bool CanDeselectDate (UICalendarSelectionMultiDate selection, Foundation.NSDateComponents dateComponents);
public virtual bool CanSelectDate (UICalendarSelectionMultiDate selection, Foundation.NSDateComponents dateComponents);

Type Changed: UIKit.IUICalendarSelectionSingleDateDelegate

Modified methods:

-public abstract void DidSelectDate (UICalendarSelectionSingleDate selection, Foundation.NSDateComponents dateComponents)
+public virtual void DidSelectDate (UICalendarSelectionSingleDate selection, Foundation.NSDateComponents dateComponents)

Added method:

public virtual bool CanSelectDate (UICalendarSelectionSingleDate selection, Foundation.NSDateComponents dateComponents);

Type Changed: UIKit.IUICalendarViewDelegate

Modified methods:

-public abstract UICalendarViewDecoration GetDecoration (UICalendarView calendarView, Foundation.NSDateComponents dateComponents)
+public virtual UICalendarViewDecoration GetDecoration (UICalendarView calendarView, Foundation.NSDateComponents dateComponents)

Added method:

public virtual void DidChangeVisibleDateComponents (UICalendarView calendarView, Foundation.NSDateComponents previousDateComponents);

Type Changed: UIKit.IUICloudSharingControllerDelegate

Modified methods:

-public abstract void FailedToSaveShare (UICloudSharingController csc, Foundation.NSError error)
+public virtual void FailedToSaveShare (UICloudSharingController csc, Foundation.NSError error)
-public abstract string GetItemTitle (UICloudSharingController csc)
+public virtual string GetItemTitle (UICloudSharingController csc)

Added methods:

public virtual void DidSaveShare (UICloudSharingController csc);
public virtual void DidStopSharing (UICloudSharingController csc);
public virtual Foundation.NSData GetItemThumbnailData (UICloudSharingController csc);
public virtual string GetItemType (UICloudSharingController csc);

Type Changed: UIKit.IUICollectionViewDataSource

Modified methods:

-public abstract UICollectionViewCell GetCell (UICollectionView collectionView, Foundation.NSIndexPath indexPath)
+public virtual UICollectionViewCell GetCell (UICollectionView collectionView, Foundation.NSIndexPath indexPath)
-public abstract IntPtr GetItemsCount (UICollectionView collectionView, IntPtr section)
+public virtual IntPtr GetItemsCount (UICollectionView collectionView, IntPtr section)

Added methods:

public virtual bool CanMoveItem (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual Foundation.NSIndexPath GetIndexPath (UICollectionView collectionView, string title, IntPtr atIndex);
public virtual string[] GetIndexTitles (UICollectionView collectionView);
public virtual UICollectionReusableView GetViewForSupplementaryElement (UICollectionView collectionView, Foundation.NSString elementKind, Foundation.NSIndexPath indexPath);
public virtual void MoveItem (UICollectionView collectionView, Foundation.NSIndexPath sourceIndexPath, Foundation.NSIndexPath destinationIndexPath);
public virtual IntPtr NumberOfSections (UICollectionView collectionView);

Type Changed: UIKit.IUICollectionViewDataSourcePrefetching

Modified methods:

-public abstract void PrefetchItems (UICollectionView collectionView, Foundation.NSIndexPath[] indexPaths)
+public virtual void PrefetchItems (UICollectionView collectionView, Foundation.NSIndexPath[] indexPaths)

Added method:

public virtual void CancelPrefetching (UICollectionView collectionView, Foundation.NSIndexPath[] indexPaths);

Type Changed: UIKit.IUICollectionViewDelegate

Added methods:

public virtual bool CanEditItem (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual bool CanFocusItem (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual bool CanPerformAction (UICollectionView collectionView, ObjCRuntime.Selector action, Foundation.NSIndexPath indexPath, Foundation.NSObject sender);
public virtual bool CanPerformPrimaryActionForItem (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual void CellDisplayingEnded (UICollectionView collectionView, UICollectionViewCell cell, Foundation.NSIndexPath indexPath);
public virtual void DidBeginMultipleSelectionInteraction (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual void DidEndMultipleSelectionInteraction (UICollectionView collectionView);
public virtual void DidUpdateFocus (UICollectionView collectionView, UICollectionViewFocusUpdateContext context, UIFocusAnimationCoordinator coordinator);
public virtual UIContextMenuConfiguration GetContextMenuConfiguration (UICollectionView collectionView, Foundation.NSIndexPath indexPath, CoreGraphics.CGPoint point);
public virtual UIContextMenuConfiguration GetContextMenuConfiguration (UICollectionView collectionView, Foundation.NSIndexPath[] indexPaths, CoreGraphics.CGPoint point);
public virtual UITargetedPreview GetContextMenuConfigurationDismissalPreview (UICollectionView collectionView, UIContextMenuConfiguration configuration, Foundation.NSIndexPath indexPath);
public virtual UITargetedPreview GetContextMenuConfigurationHighlightPreview (UICollectionView collectionView, UIContextMenuConfiguration configuration, Foundation.NSIndexPath indexPath);
public virtual Foundation.NSIndexPath GetIndexPathForPreferredFocusedView (UICollectionView collectionView);
public virtual UITargetedPreview GetPreviewForDismissingContextMenu (UICollectionView collectionView, UIContextMenuConfiguration configuration);
public virtual UITargetedPreview GetPreviewForHighlightingContextMenu (UICollectionView collectionView, UIContextMenuConfiguration configuration);
public virtual UIWindowSceneActivationConfiguration GetSceneActivationConfigurationForItem (UICollectionView collectionView, Foundation.NSIndexPath indexPath, CoreGraphics.CGPoint point);
public virtual bool GetSelectionFollowsFocusForItem (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual CoreGraphics.CGPoint GetTargetContentOffset (UICollectionView collectionView, CoreGraphics.CGPoint proposedContentOffset);
public virtual Foundation.NSIndexPath GetTargetIndexPathForMove (UICollectionView collectionView, Foundation.NSIndexPath originalIndexPath, Foundation.NSIndexPath proposedIndexPath);
public virtual Foundation.NSIndexPath GetTargetIndexPathForMoveOfItemFromOriginalIndexPath (UICollectionView collectionView, Foundation.NSIndexPath originalIndexPath, Foundation.NSIndexPath currentIndexPath, Foundation.NSIndexPath proposedIndexPath);
public virtual void ItemDeselected (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual void ItemHighlighted (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual void ItemSelected (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual void ItemUnhighlighted (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual void PerformAction (UICollectionView collectionView, ObjCRuntime.Selector action, Foundation.NSIndexPath indexPath, Foundation.NSObject sender);
public virtual void PerformPrimaryActionForItem (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual bool ShouldBeginMultipleSelectionInteraction (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual bool ShouldDeselectItem (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual bool ShouldHighlightItem (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual bool ShouldSelectItem (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual bool ShouldShowMenu (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual bool ShouldSpringLoadItem (UICollectionView collectionView, Foundation.NSIndexPath indexPath, IUISpringLoadedInteractionContext context);
public virtual bool ShouldUpdateFocus (UICollectionView collectionView, UICollectionViewFocusUpdateContext context);
public virtual void SupplementaryViewDisplayingEnded (UICollectionView collectionView, UICollectionReusableView view, Foundation.NSString elementKind, Foundation.NSIndexPath indexPath);
public virtual UICollectionViewTransitionLayout TransitionLayout (UICollectionView collectionView, UICollectionViewLayout fromLayout, UICollectionViewLayout toLayout);
public virtual void WillDisplayCell (UICollectionView collectionView, UICollectionViewCell cell, Foundation.NSIndexPath indexPath);
public virtual void WillDisplayContextMenu (UICollectionView collectionView, UIContextMenuConfiguration configuration, IUIContextMenuInteractionAnimating animator);
public virtual void WillDisplaySupplementaryView (UICollectionView collectionView, UICollectionReusableView view, string elementKind, Foundation.NSIndexPath indexPath);
public virtual void WillEndContextMenuInteraction (UICollectionView collectionView, UIContextMenuConfiguration configuration, IUIContextMenuInteractionAnimating animator);
public virtual void WillPerformPreviewAction (UICollectionView collectionView, UIContextMenuConfiguration configuration, IUIContextMenuInteractionCommitAnimating animator);

Type Changed: UIKit.IUICollectionViewDelegateFlowLayout

Added methods:

public virtual UIEdgeInsets GetInsetForSection (UICollectionView collectionView, UICollectionViewLayout layout, IntPtr section);
public virtual System.Runtime.InteropServices.NFloat GetMinimumInteritemSpacingForSection (UICollectionView collectionView, UICollectionViewLayout layout, IntPtr section);
public virtual System.Runtime.InteropServices.NFloat GetMinimumLineSpacingForSection (UICollectionView collectionView, UICollectionViewLayout layout, IntPtr section);
public virtual CoreGraphics.CGSize GetReferenceSizeForFooter (UICollectionView collectionView, UICollectionViewLayout layout, IntPtr section);
public virtual CoreGraphics.CGSize GetReferenceSizeForHeader (UICollectionView collectionView, UICollectionViewLayout layout, IntPtr section);
public virtual CoreGraphics.CGSize GetSizeForItem (UICollectionView collectionView, UICollectionViewLayout layout, Foundation.NSIndexPath indexPath);

Type Changed: UIKit.IUICollectionViewDragDelegate

Modified methods:

-public abstract UIDragItem[] GetItemsForBeginningDragSession (UICollectionView collectionView, IUIDragSession session, Foundation.NSIndexPath indexPath)
+public virtual UIDragItem[] GetItemsForBeginningDragSession (UICollectionView collectionView, IUIDragSession session, Foundation.NSIndexPath indexPath)

Added methods:

public virtual bool DragSessionAllowsMoveOperation (UICollectionView collectionView, IUIDragSession session);
public virtual void DragSessionDidEnd (UICollectionView collectionView, IUIDragSession session);
public virtual bool DragSessionIsRestrictedToDraggingApplication (UICollectionView collectionView, IUIDragSession session);
public virtual void DragSessionWillBegin (UICollectionView collectionView, IUIDragSession session);
public virtual UIDragPreviewParameters GetDragPreviewParameters (UICollectionView collectionView, Foundation.NSIndexPath indexPath);
public virtual UIDragItem[] GetItemsForAddingToDragSession (UICollectionView collectionView, IUIDragSession session, Foundation.NSIndexPath indexPath, CoreGraphics.CGPoint point);

Type Changed: UIKit.IUICollectionViewDropCoordinator

Modified properties:

-public abstract Foundation.NSIndexPath DestinationIndexPath { get; }
+public virtual Foundation.NSIndexPath DestinationIndexPath { get; }
-public abstract IUICollectionViewDropItem[] Items { get; }
+public virtual IUICollectionViewDropItem[] Items { get; }
-public abstract UICollectionViewDropProposal Proposal { get; }
+public virtual UICollectionViewDropProposal Proposal { get; }
-public abstract IUIDropSession Session { get; }
+public virtual IUIDropSession Session { get; }

Modified methods:

-public abstract IUIDragAnimating DropItemIntoItem (UIDragItem dragItem, Foundation.NSIndexPath itemIndexPath, CoreGraphics.CGRect rect)
+public virtual IUIDragAnimating DropItemIntoItem (UIDragItem dragItem, Foundation.NSIndexPath itemIndexPath, CoreGraphics.CGRect rect)
-public abstract IUIDragAnimating DropItemToItem (UIDragItem dragItem, Foundation.NSIndexPath itemIndexPath)
+public virtual IUIDragAnimating DropItemToItem (UIDragItem dragItem, Foundation.NSIndexPath itemIndexPath)
-public abstract IUICollectionViewDropPlaceholderContext DropItemToPlaceholder (UIDragItem dragItem, UICollectionViewDropPlaceholder placeholder)
+public virtual IUICollectionViewDropPlaceholderContext DropItemToPlaceholder (UIDragItem dragItem, UICollectionViewDropPlaceholder placeholder)
-public abstract IUIDragAnimating DropItemToTarget (UIDragItem dragItem, UIDragPreviewTarget target)
+public virtual IUIDragAnimating DropItemToTarget (UIDragItem dragItem, UIDragPreviewTarget target)

Type Changed: UIKit.IUICollectionViewDropDelegate

Modified methods:

-public abstract void PerformDrop (UICollectionView collectionView, IUICollectionViewDropCoordinator coordinator)
+public virtual void PerformDrop (UICollectionView collectionView, IUICollectionViewDropCoordinator coordinator)

Added methods:

public virtual bool CanHandleDropSession (UICollectionView collectionView, IUIDropSession session);
public virtual void DropSessionDidEnd (UICollectionView collectionView, IUIDropSession session);
public virtual void DropSessionDidEnter (UICollectionView collectionView, IUIDropSession session);
public virtual void DropSessionDidExit (UICollectionView collectionView, IUIDropSession session);
public virtual UICollectionViewDropProposal DropSessionDidUpdate (UICollectionView collectionView, IUIDropSession session, Foundation.NSIndexPath destinationIndexPath);
public virtual UIDragPreviewParameters GetDropPreviewParameters (UICollectionView collectionView, Foundation.NSIndexPath indexPath);

Type Changed: UIKit.IUICollectionViewDropItem

Modified properties:

-public abstract UIDragItem DragItem { get; }
+public virtual UIDragItem DragItem { get; }
-public abstract CoreGraphics.CGSize PreviewSize { get; }
+public virtual CoreGraphics.CGSize PreviewSize { get; }
-public abstract Foundation.NSIndexPath SourceIndexPath { get; }
+public virtual Foundation.NSIndexPath SourceIndexPath { get; }

Type Changed: UIKit.IUICollectionViewDropPlaceholderContext

Modified properties:

-public abstract UIDragItem DragItem { get; }
+public virtual UIDragItem DragItem { get; }

Modified methods:

-public abstract bool CommitInsertion (System.Action%LESSERTHANREPLACEMENT%Foundation.NSIndexPath%GREATERTHANREPLACEMENT% dataSourceUpdates)
+public virtual bool CommitInsertion (System.Action%LESSERTHANREPLACEMENT%Foundation.NSIndexPath%GREATERTHANREPLACEMENT% dataSourceUpdates)
-public abstract bool DeletePlaceholder ()
+public virtual bool DeletePlaceholder ()
-public abstract void SetNeedsCellUpdate ()
+public virtual void SetNeedsCellUpdate ()

Type Changed: UIKit.IUICollisionBehaviorDelegate

Added methods:

public virtual void BeganBoundaryContact (UICollisionBehavior behavior, IUIDynamicItem dynamicItem, Foundation.NSObject boundaryIdentifier, CoreGraphics.CGPoint atPoint);
public virtual void BeganContact (UICollisionBehavior behavior, IUIDynamicItem firstItem, IUIDynamicItem secondItem, CoreGraphics.CGPoint atPoint);
public virtual void EndedBoundaryContact (UICollisionBehavior behavior, IUIDynamicItem dynamicItem, Foundation.NSObject boundaryIdentifier);
public virtual void EndedContact (UICollisionBehavior behavior, IUIDynamicItem firstItem, IUIDynamicItem secondItem);

Type Changed: UIKit.IUIColorPickerViewControllerDelegate

Added methods:

public virtual void DidFinish (UIColorPickerViewController viewController);
public virtual void DidSelectColor (UIColorPickerViewController viewController);
public virtual void DidSelectColor (UIColorPickerViewController viewController, UIColor color, bool continuously);

Type Changed: UIKit.IUIConfigurationState

Modified properties:

-public abstract UITraitCollection TraitCollection { get; set; }
+public virtual UITraitCollection TraitCollection { get; set; }

Modified methods:

-public abstract Foundation.NSObject GetCustomState (string key)
+public virtual Foundation.NSObject GetCustomState (string key)
-public abstract Foundation.NSObject GetObject (string key)
+public virtual Foundation.NSObject GetObject (string key)
-public abstract void SetCustomState (Foundation.NSObject customState, string key)
+public virtual void SetCustomState (Foundation.NSObject customState, string key)
-public abstract void SetObject (Foundation.NSObject obj, string key)
+public virtual void SetObject (Foundation.NSObject obj, string key)

Type Changed: UIKit.IUIContentConfiguration

Modified methods:

-public abstract IUIContentConfiguration GetUpdatedConfiguration (IUIConfigurationState state)
+public virtual IUIContentConfiguration GetUpdatedConfiguration (IUIConfigurationState state)
-public abstract IUIContentView MakeContentView ()
+public virtual IUIContentView MakeContentView ()

Type Changed: UIKit.IUIContentContainer

Modified properties:

-public abstract CoreGraphics.CGSize PreferredContentSize { get; }
+public virtual CoreGraphics.CGSize PreferredContentSize { get; }

Modified methods:

-public abstract CoreGraphics.CGSize GetSizeForChildContentContainer (IUIContentContainer contentContainer, CoreGraphics.CGSize parentContainerSize)
+public virtual CoreGraphics.CGSize GetSizeForChildContentContainer (IUIContentContainer contentContainer, CoreGraphics.CGSize parentContainerSize)
-public abstract void PreferredContentSizeDidChangeForChildContentContainer (IUIContentContainer container)
+public virtual void PreferredContentSizeDidChangeForChildContentContainer (IUIContentContainer container)
-public abstract void SystemLayoutFittingSizeDidChangeForChildContentContainer (IUIContentContainer container)
+public virtual void SystemLayoutFittingSizeDidChangeForChildContentContainer (IUIContentContainer container)
-public abstract void ViewWillTransitionToSize (CoreGraphics.CGSize toSize, IUIViewControllerTransitionCoordinator coordinator)
+public virtual void ViewWillTransitionToSize (CoreGraphics.CGSize toSize, IUIViewControllerTransitionCoordinator coordinator)
-public abstract void WillTransitionToTraitCollection (UITraitCollection traitCollection, IUIViewControllerTransitionCoordinator coordinator)
+public virtual void WillTransitionToTraitCollection (UITraitCollection traitCollection, IUIViewControllerTransitionCoordinator coordinator)

Type Changed: UIKit.IUIContentSizeCategoryAdjusting

Modified properties:

-public abstract bool AdjustsFontForContentSizeCategory { get; set; }
+public virtual bool AdjustsFontForContentSizeCategory { get; set; }

Type Changed: UIKit.IUIContentView

Modified properties:

-public abstract IUIContentConfiguration Configuration { get; set; }
+public virtual IUIContentConfiguration Configuration { get; set; }

Added method:

public virtual bool SupportsConfiguration (IUIContentConfiguration configuration);

Type Changed: UIKit.IUIContextMenuInteractionAnimating

Modified properties:

-public abstract UIViewController PreviewViewController { get; }
+public virtual UIViewController PreviewViewController { get; }

Modified methods:

-public abstract void AddAnimations (System.Action animations)
+public virtual void AddAnimations (System.Action animations)
-public abstract void AddCompletion (System.Action completion)
+public virtual void AddCompletion (System.Action completion)

Type Changed: UIKit.IUIContextMenuInteractionCommitAnimating

Modified properties:

-public abstract UIContextMenuInteractionCommitStyle PreferredCommitStyle { get; set; }
+public virtual UIContextMenuInteractionCommitStyle PreferredCommitStyle { get; set; }

Type Changed: UIKit.IUIContextMenuInteractionDelegate

Modified methods:

-public abstract UIContextMenuConfiguration GetConfigurationForMenu (UIContextMenuInteraction interaction, CoreGraphics.CGPoint location)
+public virtual UIContextMenuConfiguration GetConfigurationForMenu (UIContextMenuInteraction interaction, CoreGraphics.CGPoint location)

Added methods:

public virtual UITargetedPreview GetDismissalPreview (UIContextMenuInteraction interaction, UIContextMenuConfiguration configuration, Foundation.INSCopying identifier);
public virtual UITargetedPreview GetHighlightPreview (UIContextMenuInteraction interaction, UIContextMenuConfiguration configuration, Foundation.INSCopying identifier);
public virtual UITargetedPreview GetPreviewForDismissingMenu (UIContextMenuInteraction interaction, UIContextMenuConfiguration configuration);
public virtual UITargetedPreview GetPreviewForHighlightingMenu (UIContextMenuInteraction interaction, UIContextMenuConfiguration configuration);
public virtual void WillDisplayMenu (UIContextMenuInteraction interaction, UIContextMenuConfiguration configuration, IUIContextMenuInteractionAnimating animator);
public virtual void WillEnd (UIContextMenuInteraction interaction, UIContextMenuConfiguration configuration, IUIContextMenuInteractionAnimating animator);
public virtual void WillPerformPreviewAction (UIContextMenuInteraction interaction, UIContextMenuConfiguration configuration, IUIContextMenuInteractionCommitAnimating animator);

Type Changed: UIKit.IUICoordinateSpace

Modified properties:

-public abstract CoreGraphics.CGRect Bounds { get; }
+public virtual CoreGraphics.CGRect Bounds { get; }

Modified methods:

-public abstract CoreGraphics.CGPoint ConvertPointFromCoordinateSpace (CoreGraphics.CGPoint point, IUICoordinateSpace coordinateSpace)
+public virtual CoreGraphics.CGPoint ConvertPointFromCoordinateSpace (CoreGraphics.CGPoint point, IUICoordinateSpace coordinateSpace)
-public abstract CoreGraphics.CGPoint ConvertPointToCoordinateSpace (CoreGraphics.CGPoint point, IUICoordinateSpace coordinateSpace)
+public virtual CoreGraphics.CGPoint ConvertPointToCoordinateSpace (CoreGraphics.CGPoint point, IUICoordinateSpace coordinateSpace)
-public abstract CoreGraphics.CGRect ConvertRectFromCoordinateSpace (CoreGraphics.CGRect rect, IUICoordinateSpace coordinateSpace)
+public virtual CoreGraphics.CGRect ConvertRectFromCoordinateSpace (CoreGraphics.CGRect rect, IUICoordinateSpace coordinateSpace)
-public abstract CoreGraphics.CGRect ConvertRectToCoordinateSpace (CoreGraphics.CGRect rect, IUICoordinateSpace coordinateSpace)
+public virtual CoreGraphics.CGRect ConvertRectToCoordinateSpace (CoreGraphics.CGRect rect, IUICoordinateSpace coordinateSpace)

Type Changed: UIKit.IUIDataSourceModelAssociation

Modified methods:

-public abstract Foundation.NSIndexPath GetIndexPath (string identifier, UIView view)
+public virtual Foundation.NSIndexPath GetIndexPath (string identifier, UIView view)
-public abstract string GetModelIdentifier (Foundation.NSIndexPath idx, UIView view)
+public virtual string GetModelIdentifier (Foundation.NSIndexPath idx, UIView view)

Type Changed: UIKit.IUIDataSourceTranslating

Modified methods:

-public abstract Foundation.NSIndexPath GetDataSourceIndexPath (Foundation.NSIndexPath presentationIndexPath)
+public virtual Foundation.NSIndexPath GetDataSourceIndexPath (Foundation.NSIndexPath presentationIndexPath)
-public abstract IntPtr GetDataSourceSectionIndex (IntPtr presentationSectionIndex)
+public virtual IntPtr GetDataSourceSectionIndex (IntPtr presentationSectionIndex)
-public abstract Foundation.NSIndexPath GetPresentationIndexPath (Foundation.NSIndexPath dataSourceIndexPath)
+public virtual Foundation.NSIndexPath GetPresentationIndexPath (Foundation.NSIndexPath dataSourceIndexPath)
-public abstract IntPtr GetPresentationSectionIndex (IntPtr dataSourceSectionIndex)
+public virtual IntPtr GetPresentationSectionIndex (IntPtr dataSourceSectionIndex)
-public abstract void PerformUsingPresentationValues (System.Action actionsToTranslate)
+public virtual void PerformUsingPresentationValues (System.Action actionsToTranslate)

Type Changed: UIKit.IUIDocumentBrowserViewControllerDelegate

Added methods:

public virtual void DidImportDocument (UIDocumentBrowserViewController controller, Foundation.NSUrl sourceUrl, Foundation.NSUrl destinationUrl);
public virtual void DidPickDocumentUrls (UIDocumentBrowserViewController controller, Foundation.NSUrl[] documentUrls);
public virtual void DidPickDocumentsAtUrls (UIDocumentBrowserViewController controller, Foundation.NSUrl[] documentUrls);
public virtual void DidRequestDocumentCreation (UIDocumentBrowserViewController controller, System.Action<Foundation.NSUrl,UIKit.UIDocumentBrowserImportMode> importHandler);
public virtual void FailedToImportDocument (UIDocumentBrowserViewController controller, Foundation.NSUrl documentUrl, Foundation.NSError error);
public virtual UIActivity[] GetApplicationActivities (UIDocumentBrowserViewController controller, Foundation.NSUrl[] documentUrls);
public virtual void WillPresent (UIDocumentBrowserViewController controller, UIActivityViewController activityViewController);

Type Changed: UIKit.IUIDocumentInteractionControllerDelegate

Added methods:

public virtual bool CanPerformAction (UIDocumentInteractionController controller, ObjCRuntime.Selector action);
public virtual void DidDismissOpenInMenu (UIDocumentInteractionController controller);
public virtual void DidDismissOptionsMenu (UIDocumentInteractionController controller);
public virtual void DidEndPreview (UIDocumentInteractionController controller);
public virtual void DidEndSendingToApplication (UIDocumentInteractionController controller, string application);
public virtual bool PerformAction (UIDocumentInteractionController controller, ObjCRuntime.Selector action);
public virtual CoreGraphics.CGRect RectangleForPreview (UIDocumentInteractionController controller);
public virtual UIViewController ViewControllerForPreview (UIDocumentInteractionController controller);
public virtual UIView ViewForPreview (UIDocumentInteractionController controller);
public virtual void WillBeginPreview (UIDocumentInteractionController controller);
public virtual void WillBeginSendingToApplication (UIDocumentInteractionController controller, string application);
public virtual void WillPresentOpenInMenu (UIDocumentInteractionController controller);
public virtual void WillPresentOptionsMenu (UIDocumentInteractionController controller);

Type Changed: UIKit.IUIDocumentMenuDelegate

Modified methods:

-public abstract void DidPickDocumentPicker (UIDocumentMenuViewController documentMenu, UIDocumentPickerViewController documentPicker)
+public virtual void DidPickDocumentPicker (UIDocumentMenuViewController documentMenu, UIDocumentPickerViewController documentPicker)

Added method:

public virtual void WasCancelled (UIDocumentMenuViewController documentMenu);

Type Changed: UIKit.IUIDocumentPickerDelegate

Added methods:

public virtual void DidPickDocument (UIDocumentPickerViewController controller, Foundation.NSUrl url);
public virtual void DidPickDocument (UIDocumentPickerViewController controller, Foundation.NSUrl[] urls);
public virtual void WasCancelled (UIDocumentPickerViewController controller);

Type Changed: UIKit.IUIDragAnimating

Modified methods:

-public abstract void AddAnimations (System.Action animations)
+public virtual void AddAnimations (System.Action animations)
-public abstract void AddCompletion (System.Action%LESSERTHANREPLACEMENT%UIViewAnimatingPosition%GREATERTHANREPLACEMENT% completion)
+public virtual void AddCompletion (System.Action%LESSERTHANREPLACEMENT%UIViewAnimatingPosition%GREATERTHANREPLACEMENT% completion)

Type Changed: UIKit.IUIDragDropSession

Modified properties:

-public abstract bool AllowsMoveOperation { get; }
+public virtual bool AllowsMoveOperation { get; }
-public abstract UIDragItem[] Items { get; }
+public virtual UIDragItem[] Items { get; }
-public abstract bool RestrictedToDraggingApplication { get; }
+public virtual bool RestrictedToDraggingApplication { get; }

Modified methods:

-public abstract bool CanLoadObjects (ObjCRuntime.Class itemProviderReadingClass)
+public virtual bool CanLoadObjects (ObjCRuntime.Class itemProviderReadingClass)
-public abstract bool HasConformingItems (string[] typeIdentifiers)
+public virtual bool HasConformingItems (string[] typeIdentifiers)
-public abstract CoreGraphics.CGPoint LocationInView (UIView view)
+public virtual CoreGraphics.CGPoint LocationInView (UIView view)

Type Changed: UIKit.IUIDragInteractionDelegate

Modified methods:

-public abstract UIDragItem[] GetItemsForBeginningSession (UIDragInteraction interaction, IUIDragSession session)
+public virtual UIDragItem[] GetItemsForBeginningSession (UIDragInteraction interaction, IUIDragSession session)

Added methods:

public virtual UIDragItem[] GetItemsForAddingToSession (UIDragInteraction interaction, IUIDragSession session, CoreGraphics.CGPoint point);
public virtual UITargetedDragPreview GetPreviewForCancellingItem (UIDragInteraction interaction, UIDragItem item, UITargetedDragPreview defaultPreview);
public virtual UITargetedDragPreview GetPreviewForLiftingItem (UIDragInteraction interaction, UIDragItem item, IUIDragSession session);
public virtual IUIDragSession GetSessionForAddingItems (UIDragInteraction interaction, IUIDragSession[] sessions, CoreGraphics.CGPoint point);
public virtual bool PrefersFullSizePreviews (UIDragInteraction interaction, IUIDragSession session);
public virtual bool SessionAllowsMoveOperation (UIDragInteraction interaction, IUIDragSession session);
public virtual void SessionDidEnd (UIDragInteraction interaction, IUIDragSession session, UIDropOperation operation);
public virtual void SessionDidMove (UIDragInteraction interaction, IUIDragSession session);
public virtual void SessionDidTransferItems (UIDragInteraction interaction, IUIDragSession session);
public virtual bool SessionIsRestrictedToDraggingApplication (UIDragInteraction interaction, IUIDragSession session);
public virtual void SessionWillBegin (UIDragInteraction interaction, IUIDragSession session);
public virtual void SessionWillEnd (UIDragInteraction interaction, IUIDragSession session, UIDropOperation operation);
public virtual void WillAddItems (UIDragInteraction interaction, IUIDragSession session, UIDragItem[] items, UIDragInteraction addingInteraction);
public virtual void WillAnimateCancel (UIDragInteraction interaction, UIDragItem item, IUIDragAnimating animator);
public virtual void WillAnimateLift (UIDragInteraction interaction, IUIDragAnimating animator, IUIDragSession session);

Type Changed: UIKit.IUIDragSession

Modified properties:

-public abstract Foundation.NSObject LocalContext { get; set; }
+public virtual Foundation.NSObject LocalContext { get; set; }

Type Changed: UIKit.IUIDropInteractionDelegate

Added methods:

public virtual bool CanHandleSession (UIDropInteraction interaction, IUIDropSession session);
public virtual void ConcludeDrop (UIDropInteraction interaction, IUIDropSession session);
public virtual UITargetedDragPreview GetPreviewForDroppingItem (UIDropInteraction interaction, UIDragItem item, UITargetedDragPreview defaultPreview);
public virtual void PerformDrop (UIDropInteraction interaction, IUIDropSession session);
public virtual void SessionDidEnd (UIDropInteraction interaction, IUIDropSession session);
public virtual void SessionDidEnter (UIDropInteraction interaction, IUIDropSession session);
public virtual void SessionDidExit (UIDropInteraction interaction, IUIDropSession session);
public virtual UIDropProposal SessionDidUpdate (UIDropInteraction interaction, IUIDropSession session);
public virtual void WillAnimateDrop (UIDropInteraction interaction, UIDragItem item, IUIDragAnimating animator);

Type Changed: UIKit.IUIDropSession

Modified properties:

-public abstract IUIDragSession LocalDragSession { get; }
+public virtual IUIDragSession LocalDragSession { get; }
-public abstract UIDropSessionProgressIndicatorStyle ProgressIndicatorStyle { get; set; }
+public virtual UIDropSessionProgressIndicatorStyle ProgressIndicatorStyle { get; set; }

Modified methods:

-public abstract Foundation.NSProgress LoadObjects (ObjCRuntime.Class itemProviderReadingClass, System.Action%LESSERTHANREPLACEMENT%Foundation.INSItemProviderReading[]%GREATERTHANREPLACEMENT% completion)
+public virtual Foundation.NSProgress LoadObjects (ObjCRuntime.Class itemProviderReadingClass, System.Action%LESSERTHANREPLACEMENT%Foundation.INSItemProviderReading[]%GREATERTHANREPLACEMENT% completion)

Type Changed: UIKit.IUIDynamicAnimatorDelegate

Added methods:

public virtual void DidPause (UIDynamicAnimator animator);
public virtual void WillResume (UIDynamicAnimator animator);

Type Changed: UIKit.IUIDynamicItem

Modified properties:

-public abstract CoreGraphics.CGRect Bounds { get; }
+public virtual CoreGraphics.CGRect Bounds { get; }
-public abstract CoreGraphics.CGPoint Center { get; set; }
+public virtual CoreGraphics.CGPoint Center { get; set; }
-public abstract CoreGraphics.CGAffineTransform Transform { get; set; }
+public virtual CoreGraphics.CGAffineTransform Transform { get; set; }

Added properties:

public virtual UIBezierPath CollisionBoundingPath { get; }
public virtual UIDynamicItemCollisionBoundsType CollisionBoundsType { get; }

Type Changed: UIKit.IUIEditMenuInteractionAnimating

Modified methods:

-public abstract void AddAnimations (System.Action animations)
+public virtual void AddAnimations (System.Action animations)
-public abstract void AddCompletion (System.Action completion)
+public virtual void AddCompletion (System.Action completion)

Type Changed: UIKit.IUIEditMenuInteractionDelegate

Added methods:

public virtual UIMenu GetMenu (UIEditMenuInteraction interaction, UIEditMenuConfiguration configuration, UIMenuElement[] suggestedActions);
public virtual CoreGraphics.CGRect GetTargetRect (UIEditMenuInteraction interaction, UIEditMenuConfiguration configuration);
public virtual void WillDismissMenu (UIEditMenuInteraction interaction, UIEditMenuConfiguration configuration, IUIEditMenuInteractionAnimating animator);
public virtual void WillPresentMenu (UIEditMenuInteraction interaction, UIEditMenuConfiguration configuration, IUIEditMenuInteractionAnimating animator);

Type Changed: UIKit.IUIFindInteractionDelegate

Modified methods:

-public abstract UIFindSession GetSession (UIFindInteraction interaction, UIView view)
+public virtual UIFindSession GetSession (UIFindInteraction interaction, UIView view)

Added methods:

public virtual void DidBeginFindSession (UIFindInteraction interaction, UIFindSession session);
public virtual void DidEndFindSession (UIFindInteraction interaction, UIFindSession session);

Type Changed: UIKit.IUIFocusAnimationContext

Modified properties:

-public abstract double Duration { get; }
+public virtual double Duration { get; }

Type Changed: UIKit.IUIFocusEnvironment

Modified properties:

-public abstract IUIFocusItemContainer FocusItemContainer { get; }
+public virtual IUIFocusItemContainer FocusItemContainer { get; }
-public abstract IUIFocusEnvironment ParentFocusEnvironment { get; }
+public virtual IUIFocusEnvironment ParentFocusEnvironment { get; }
-public abstract IUIFocusEnvironment[] PreferredFocusEnvironments { get; }
+public virtual IUIFocusEnvironment[] PreferredFocusEnvironments { get; }

Added properties:

public virtual string FocusGroupIdentifier { get; }
public virtual UIView PreferredFocusedView { get; }

Modified methods:

-public abstract void DidUpdateFocus (UIFocusUpdateContext context, UIFocusAnimationCoordinator coordinator)
+public virtual void DidUpdateFocus (UIFocusUpdateContext context, UIFocusAnimationCoordinator coordinator)
-public abstract void SetNeedsFocusUpdate ()
+public virtual void SetNeedsFocusUpdate ()
-public abstract bool ShouldUpdateFocus (UIFocusUpdateContext context)
+public virtual bool ShouldUpdateFocus (UIFocusUpdateContext context)
-public abstract void UpdateFocusIfNeeded ()
+public virtual void UpdateFocusIfNeeded ()

Type Changed: UIKit.IUIFocusItem

Modified properties:

-public abstract bool CanBecomeFocused { get; }
+public virtual bool CanBecomeFocused { get; }
-public abstract CoreGraphics.CGRect Frame { get; }
+public virtual CoreGraphics.CGRect Frame { get; }

Added properties:

public virtual UIFocusEffect FocusEffect { get; }
public virtual UIFocusGroupPriority FocusGroupPriority { get; }
public virtual bool IsTransparentFocusItem { get; }

Added method:

public virtual void DidHintFocusMovement (UIFocusMovementHint hint);

Type Changed: UIKit.IUIFocusItemContainer

Modified properties:

-public abstract IUICoordinateSpace CoordinateSpace { get; }
+public virtual IUICoordinateSpace CoordinateSpace { get; }

Modified methods:

-public abstract IUIFocusItem[] GetFocusItems (CoreGraphics.CGRect rect)
+public virtual IUIFocusItem[] GetFocusItems (CoreGraphics.CGRect rect)

Type Changed: UIKit.IUIFocusItemScrollableContainer

Modified properties:

-public abstract CoreGraphics.CGPoint ContentOffset { get; set; }
+public virtual CoreGraphics.CGPoint ContentOffset { get; set; }
-public abstract CoreGraphics.CGSize ContentSize { get; }
+public virtual CoreGraphics.CGSize ContentSize { get; }
-public abstract CoreGraphics.CGSize VisibleSize { get; }
+public virtual CoreGraphics.CGSize VisibleSize { get; }

Type Changed: UIKit.IUIFontPickerViewControllerDelegate

Added methods:

public virtual void DidCancel (UIFontPickerViewController viewController);
public virtual void DidPickFont (UIFontPickerViewController viewController);

Type Changed: UIKit.IUIGestureRecognizerDelegate

Added methods:

public virtual bool ShouldBeRequiredToFailBy (UIGestureRecognizer gestureRecognizer, UIGestureRecognizer otherGestureRecognizer);
public virtual bool ShouldBegin (UIGestureRecognizer recognizer);
public virtual bool ShouldReceiveEvent (UIGestureRecognizer gestureRecognizer, UIEvent event);
public virtual bool ShouldReceivePress (UIGestureRecognizer gestureRecognizer, UIPress press);
public virtual bool ShouldReceiveTouch (UIGestureRecognizer recognizer, UITouch touch);
public virtual bool ShouldRecognizeSimultaneously (UIGestureRecognizer gestureRecognizer, UIGestureRecognizer otherGestureRecognizer);
public virtual bool ShouldRequireFailureOf (UIGestureRecognizer gestureRecognizer, UIGestureRecognizer otherGestureRecognizer);

Type Changed: UIKit.IUIGuidedAccessRestrictionDelegate

Modified properties:

-public abstract string[] GetGuidedAccessRestrictionIdentifiers { get; }
+public virtual string[] GetGuidedAccessRestrictionIdentifiers { get; }

Modified methods:

-public abstract string GetTextForGuidedAccessRestriction (string restrictionIdentifier)
+public virtual string GetTextForGuidedAccessRestriction (string restrictionIdentifier)
-public abstract void GuidedAccessRestrictionChangedState (string restrictionIdentifier, UIGuidedAccessRestrictionState newRestrictionState)
+public virtual void GuidedAccessRestrictionChangedState (string restrictionIdentifier, UIGuidedAccessRestrictionState newRestrictionState)

Added method:

public virtual string GetDetailTextForGuidedAccessRestriction (string restrictionIdentifier);

Type Changed: UIKit.IUIImagePickerControllerDelegate

Added methods:

public virtual void Canceled (UIImagePickerController picker);
public virtual void FinishedPickingMedia (UIImagePickerController picker, Foundation.NSDictionary info);

Type Changed: UIKit.IUIIndirectScribbleInteractionDelegate

Modified methods:

-public abstract void FocusElementIfNeeded (UIIndirectScribbleInteraction interaction, Foundation.NSObject elementIdentifier, CoreGraphics.CGPoint focusReferencePoint, System.Action%LESSERTHANREPLACEMENT%IUITextInput%GREATERTHANREPLACEMENT% completion)
+public virtual void FocusElementIfNeeded (UIIndirectScribbleInteraction interaction, Foundation.NSObject elementIdentifier, CoreGraphics.CGPoint focusReferencePoint, System.Action%LESSERTHANREPLACEMENT%IUITextInput%GREATERTHANREPLACEMENT% completion)
-public abstract CoreGraphics.CGRect GetFrameForElement (UIIndirectScribbleInteraction interaction, Foundation.NSObject elementIdentifier)
+public virtual CoreGraphics.CGRect GetFrameForElement (UIIndirectScribbleInteraction interaction, Foundation.NSObject elementIdentifier)
-public abstract bool IsElementFocused (UIIndirectScribbleInteraction interaction, Foundation.NSObject elementIdentifier)
+public virtual bool IsElementFocused (UIIndirectScribbleInteraction interaction, Foundation.NSObject elementIdentifier)
-public abstract void RequestElements (UIIndirectScribbleInteraction interaction, CoreGraphics.CGRect rect, System.Action%LESSERTHANREPLACEMENT%Foundation.NSObject[]%GREATERTHANREPLACEMENT% completion)
+public virtual void RequestElements (UIIndirectScribbleInteraction interaction, CoreGraphics.CGRect rect, System.Action%LESSERTHANREPLACEMENT%Foundation.NSObject[]%GREATERTHANREPLACEMENT% completion)

Added methods:

public virtual void DidFinishWriting (UIIndirectScribbleInteraction interaction, Foundation.NSObject elementIdentifier);
public virtual bool ShouldDelayFocus (UIIndirectScribbleInteraction interaction, Foundation.NSObject elementIdentifier);
public virtual void WillBeginWriting (UIIndirectScribbleInteraction interaction, Foundation.NSObject elementIdentifier);

Type Changed: UIKit.IUIInputViewAudioFeedback

Added property:

public virtual bool EnableInputClicksWhenVisible { get; }

Type Changed: UIKit.IUIInteraction

Modified properties:

-public abstract UIView View { get; }
+public virtual UIView View { get; }

Modified methods:

-public abstract void DidMoveToView (UIView view)
+public virtual void DidMoveToView (UIView view)
-public abstract void WillMoveToView (UIView view)
+public virtual void WillMoveToView (UIView view)

Type Changed: UIKit.IUIItemProviderPresentationSizeProviding

Modified properties:

-public abstract CoreGraphics.CGSize PreferredPresentationSizeForItemProvider { get; }
+public virtual CoreGraphics.CGSize PreferredPresentationSizeForItemProvider { get; }

Type Changed: UIKit.IUIKeyInput

Modified properties:

-public abstract bool HasText { get; }
+public virtual bool HasText { get; }

Modified methods:

-public abstract void DeleteBackward ()
+public virtual void DeleteBackward ()
-public abstract void InsertText (string text)
+public virtual void InsertText (string text)

Type Changed: UIKit.IUILargeContentViewerInteractionDelegate

Added methods:

public virtual void DidEnd (UILargeContentViewerInteraction interaction, IUILargeContentViewerItem item, CoreGraphics.CGPoint point);
public virtual IUILargeContentViewerItem GetItem (UILargeContentViewerInteraction interaction, CoreGraphics.CGPoint point);
public virtual UIViewController GetViewController (UILargeContentViewerInteraction interaction);

Type Changed: UIKit.IUILargeContentViewerItem

Modified properties:

-public abstract UIImage LargeContentImage { get; }
+public virtual UIImage LargeContentImage { get; }
-public abstract UIEdgeInsets LargeContentImageInsets { get; }
+public virtual UIEdgeInsets LargeContentImageInsets { get; }
-public abstract string LargeContentTitle { get; }
+public virtual string LargeContentTitle { get; }
-public abstract bool ScalesLargeContentImage { get; }
+public virtual bool ScalesLargeContentImage { get; }
-public abstract bool ShowsLargeContentViewer { get; }
+public virtual bool ShowsLargeContentViewer { get; }

Type Changed: UIKit.IUILayoutGuideAspectFitting

Modified properties:

-public abstract System.Runtime.InteropServices.NFloat AspectRatio { get; set; }
+public virtual System.Runtime.InteropServices.NFloat AspectRatio { get; set; }

Type Changed: UIKit.IUILayoutSupport

Modified properties:

-public abstract NSLayoutYAxisAnchor BottomAnchor { get; }
+public virtual NSLayoutYAxisAnchor BottomAnchor { get; }
-public abstract NSLayoutDimension HeightAnchor { get; }
+public virtual NSLayoutDimension HeightAnchor { get; }
-public abstract System.Runtime.InteropServices.NFloat Length { get; }
+public virtual System.Runtime.InteropServices.NFloat Length { get; }
-public abstract NSLayoutYAxisAnchor TopAnchor { get; }
+public virtual NSLayoutYAxisAnchor TopAnchor { get; }

Type Changed: UIKit.IUILetterformAwareAdjusting

Modified properties:

-public abstract UILetterformAwareSizingRule SizingRule { get; set; }
+public virtual UILetterformAwareSizingRule SizingRule { get; set; }

Type Changed: UIKit.IUILookToDictateCapable

Modified properties:

-public abstract bool LookToDictateEnabled { get; set; }
+public virtual bool LookToDictateEnabled { get; set; }

Type Changed: UIKit.IUIMenuBuilder

Modified properties:

-public abstract UIMenuSystem System { get; }
+public virtual UIMenuSystem System { get; }

Modified methods:

-public abstract UIAction GetAction (string identifier)
+public virtual UIAction GetAction (string identifier)
-public abstract UICommand GetCommand (ObjCRuntime.Selector action, Foundation.NSObject propertyList)
+public virtual UICommand GetCommand (ObjCRuntime.Selector action, Foundation.NSObject propertyList)
-public abstract UIMenu GetMenu (string identifier)
+public virtual UIMenu GetMenu (string identifier)
-public abstract void InsertChildMenuAtEnd (UIMenu childMenu, string parentIdentifier)
+public virtual void InsertChildMenuAtEnd (UIMenu childMenu, string parentIdentifier)
-public abstract void InsertChildMenuAtStart (UIMenu childMenu, string parentIdentifier)
+public virtual void InsertChildMenuAtStart (UIMenu childMenu, string parentIdentifier)
-public abstract void InsertSiblingMenuAfter (UIMenu siblingMenu, string siblingIdentifier)
+public virtual void InsertSiblingMenuAfter (UIMenu siblingMenu, string siblingIdentifier)
-public abstract void InsertSiblingMenuBefore (UIMenu siblingMenu, string siblingIdentifier)
+public virtual void InsertSiblingMenuBefore (UIMenu siblingMenu, string siblingIdentifier)
-public abstract void RemoveMenu (string removedIdentifier)
+public virtual void RemoveMenu (string removedIdentifier)
-public abstract void ReplaceChildrenOfMenu (string parentIdentifier, System.Func%LESSERTHANREPLACEMENT%UIMenuElement[],UIKit.UIMenuElement[]%GREATERTHANREPLACEMENT% childrenBlock)
+public virtual void ReplaceChildrenOfMenu (string parentIdentifier, System.Func%LESSERTHANREPLACEMENT%UIMenuElement[],UIKit.UIMenuElement[]%GREATERTHANREPLACEMENT% childrenBlock)
-public abstract void ReplaceMenu (string replacedIdentifier, UIMenu replacementMenu)
+public virtual void ReplaceMenu (string replacedIdentifier, UIMenu replacementMenu)

Type Changed: UIKit.IUIMenuLeaf

Modified properties:

-public abstract UIMenuElementAttributes Attributes { get; set; }
+public virtual UIMenuElementAttributes Attributes { get; set; }
-public abstract string DiscoverabilityTitle { get; set; }
+public virtual string DiscoverabilityTitle { get; set; }
-public abstract UIImage Image { get; set; }
+public virtual UIImage Image { get; set; }
-public abstract IUIPopoverPresentationControllerSourceItem PresentationSourceItem { get; }
+public virtual IUIPopoverPresentationControllerSourceItem PresentationSourceItem { get; }
-public abstract Foundation.NSObject Sender { get; }
+public virtual Foundation.NSObject Sender { get; }
-public abstract UIMenuElementState State { get; set; }
+public virtual UIMenuElementState State { get; set; }
-public abstract string Title { get; set; }
+public virtual string Title { get; set; }

Added property:

public virtual UIImage SelectedImage { get; set; }

Modified methods:

-public abstract void Target (Foundation.NSObject sender, Foundation.NSObject target)
+public virtual void Target (Foundation.NSObject sender, Foundation.NSObject target)

Type Changed: UIKit.IUIMutableTraits

Modified properties:

-public abstract UIAccessibilityContrast AccessibilityContrast { get; set; }
+public virtual UIAccessibilityContrast AccessibilityContrast { get; set; }
-public abstract UIUserInterfaceActiveAppearance ActiveAppearance { get; set; }
+public virtual UIUserInterfaceActiveAppearance ActiveAppearance { get; set; }
-public abstract UIDisplayGamut DisplayGamut { get; set; }
+public virtual UIDisplayGamut DisplayGamut { get; set; }
-public abstract System.Runtime.InteropServices.NFloat DisplayScale { get; set; }
+public virtual System.Runtime.InteropServices.NFloat DisplayScale { get; set; }
-public abstract UIForceTouchCapability ForceTouchCapability { get; set; }
+public virtual UIForceTouchCapability ForceTouchCapability { get; set; }
-public abstract UIUserInterfaceSizeClass HorizontalSizeClass { get; set; }
+public virtual UIUserInterfaceSizeClass HorizontalSizeClass { get; set; }
-public abstract UIImageDynamicRange ImageDynamicRange { get; set; }
+public virtual UIImageDynamicRange ImageDynamicRange { get; set; }
-public abstract UITraitEnvironmentLayoutDirection LayoutDirection { get; set; }
+public virtual UITraitEnvironmentLayoutDirection LayoutDirection { get; set; }
-public abstract UILegibilityWeight LegibilityWeight { get; set; }
+public virtual UILegibilityWeight LegibilityWeight { get; set; }
-public abstract string PreferredContentSizeCategory { get; set; }
+public virtual string PreferredContentSizeCategory { get; set; }
-public abstract UISceneCaptureState SceneCaptureState { get; set; }
+public virtual UISceneCaptureState SceneCaptureState { get; set; }
-public abstract UINSToolbarItemPresentationSize ToolbarItemPresentationSize { get; set; }
+public virtual UINSToolbarItemPresentationSize ToolbarItemPresentationSize { get; set; }
-public abstract string TypesettingLanguage { get; set; }
+public virtual string TypesettingLanguage { get; set; }
-public abstract UIUserInterfaceIdiom UserInterfaceIdiom { get; set; }
+public virtual UIUserInterfaceIdiom UserInterfaceIdiom { get; set; }
-public abstract UIUserInterfaceLevel UserInterfaceLevel { get; set; }
+public virtual UIUserInterfaceLevel UserInterfaceLevel { get; set; }
-public abstract UIUserInterfaceStyle UserInterfaceStyle { get; set; }
+public virtual UIUserInterfaceStyle UserInterfaceStyle { get; set; }
-public abstract UIUserInterfaceSizeClass VerticalSizeClass { get; set; }
+public virtual UIUserInterfaceSizeClass VerticalSizeClass { get; set; }

Modified methods:

-public abstract Foundation.NSObject GetObject (IUIObjectTraitDefinition trait)
+public virtual Foundation.NSObject GetObject (IUIObjectTraitDefinition trait)
-public abstract System.Runtime.InteropServices.NFloat GetValue (IUICGFloatTraitDefinition trait)
+public virtual System.Runtime.InteropServices.NFloat GetValue (IUICGFloatTraitDefinition trait)
-public abstract IntPtr GetValue (IUINSIntegerTraitDefinition trait)
+public virtual IntPtr GetValue (IUINSIntegerTraitDefinition trait)
-public abstract void SetObject (Foundation.NSObject object, IUIObjectTraitDefinition trait)
+public virtual void SetObject (Foundation.NSObject object, IUIObjectTraitDefinition trait)
-public abstract void SetValue (IntPtr value, IUINSIntegerTraitDefinition trait)
+public virtual void SetValue (IntPtr value, IUINSIntegerTraitDefinition trait)
-public abstract void SetValue (System.Runtime.InteropServices.NFloat value, IUICGFloatTraitDefinition trait)
+public virtual void SetValue (System.Runtime.InteropServices.NFloat value, IUICGFloatTraitDefinition trait)

Type Changed: UIKit.IUINSIntegerTraitDefinition

Added method:

public static IntPtr GetDefaultValue<T> ();

Type Changed: UIKit.IUINavigationBarDelegate

Added methods:

public virtual void DidPopItem (UINavigationBar navigationBar, UINavigationItem item);
public virtual void DidPushItem (UINavigationBar navigationBar, UINavigationItem item);
public virtual UINavigationBarNSToolbarSection GetNSToolbarSection (UINavigationBar navigationBar);
public virtual bool ShouldPopItem (UINavigationBar navigationBar, UINavigationItem item);
public virtual bool ShouldPushItem (UINavigationBar navigationBar, UINavigationItem item);

Type Changed: UIKit.IUINavigationControllerDelegate

Added methods:

public virtual void DidShowViewController (UINavigationController navigationController, UIViewController viewController, bool animated);
public virtual IUIViewControllerAnimatedTransitioning GetAnimationControllerForOperation (UINavigationController navigationController, UINavigationControllerOperation operation, UIViewController fromViewController, UIViewController toViewController);
public virtual IUIViewControllerInteractiveTransitioning GetInteractionControllerForAnimationController (UINavigationController navigationController, IUIViewControllerAnimatedTransitioning animationController);
public virtual UIInterfaceOrientation GetPreferredInterfaceOrientation (UINavigationController navigationController);
public virtual UIInterfaceOrientationMask SupportedInterfaceOrientations (UINavigationController navigationController);
public virtual void WillShowViewController (UINavigationController navigationController, UIViewController viewController, bool animated);

Type Changed: UIKit.IUINavigationItemRenameDelegate

Modified methods:

-public abstract void DidEndRenaming (UINavigationItem navigationItem, string title)
+public virtual void DidEndRenaming (UINavigationItem navigationItem, string title)

Added methods:

public virtual bool ShouldBeginRenaming (UINavigationItem navigationItem);
public virtual bool ShouldEndRenaming (UINavigationItem navigationItem, string title);
public virtual string WillBeginRenaming (UINavigationItem navigationItem, string title, Foundation.NSRange selectedRange);

Type Changed: UIKit.IUIObjectTraitDefinition

Added method:

public static Foundation.NSObject GetDefaultValue<T> ();

Type Changed: UIKit.IUIPageControlProgressDelegate

Added methods:

public virtual float GetInitialProgressForPage (UIPageControlProgress progress, IntPtr page);
public virtual void VisibilityDidChange (UIPageControlProgress progress);

Type Changed: UIKit.IUIPageControlTimerProgressDelegate

Added methods:

public virtual void PageControlTimerProgressDidChange (UIPageControlTimerProgress progress);
public virtual bool ShouldAdvanceToPage (UIPageControlTimerProgress progress, IntPtr page);

Type Changed: UIKit.IUIPageViewControllerDataSource

Modified methods:

-public abstract UIViewController GetNextViewController (UIPageViewController pageViewController, UIViewController referenceViewController)
+public virtual UIViewController GetNextViewController (UIPageViewController pageViewController, UIViewController referenceViewController)
-public abstract UIViewController GetPreviousViewController (UIPageViewController pageViewController, UIViewController referenceViewController)
+public virtual UIViewController GetPreviousViewController (UIPageViewController pageViewController, UIViewController referenceViewController)

Added methods:

public virtual IntPtr GetPresentationCount (UIPageViewController pageViewController);
public virtual IntPtr GetPresentationIndex (UIPageViewController pageViewController);

Type Changed: UIKit.IUIPageViewControllerDelegate

Added methods:

public virtual void DidFinishAnimating (UIPageViewController pageViewController, bool finished, UIViewController[] previousViewControllers, bool completed);
public virtual UIInterfaceOrientation GetPreferredInterfaceOrientationForPresentation (UIPageViewController pageViewController);
public virtual UIPageViewControllerSpineLocation GetSpineLocation (UIPageViewController pageViewController, UIInterfaceOrientation orientation);
public virtual UIInterfaceOrientationMask SupportedInterfaceOrientations (UIPageViewController pageViewController);
public virtual void WillTransition (UIPageViewController pageViewController, UIViewController[] pendingViewControllers);

Type Changed: UIKit.IUIPasteConfigurationSupporting

Modified properties:

-public abstract UIPasteConfiguration PasteConfiguration { get; set; }
+public virtual UIPasteConfiguration PasteConfiguration { get; set; }

Added methods:

public virtual bool CanPaste (Foundation.NSItemProvider[] itemProviders);
public virtual void Paste (Foundation.NSItemProvider[] itemProviders);

Type Changed: UIKit.IUIPencilInteractionDelegate

Added methods:

public virtual void DidReceiveSqueeze (UIPencilInteraction interaction, UIPencilInteractionSqueeze squeeze);
public virtual void DidReceiveTap (UIPencilInteraction interaction, UIPencilInteractionTap tap);
public virtual void DidTap (UIPencilInteraction interaction);

Type Changed: UIKit.IUIPickerViewAccessibilityDelegate

Added methods:

public virtual Foundation.NSAttributedString GetAccessibilityAttributedHint (UIPickerView pickerView, IntPtr component);
public virtual Foundation.NSAttributedString GetAccessibilityAttributedLabel (UIPickerView pickerView, IntPtr component);
public virtual Foundation.NSAttributedString[] GetAccessibilityAttributedUserInputLabels (UIPickerView pickerView, IntPtr component);
public virtual string GetAccessibilityHint (UIPickerView pickerView, IntPtr component);
public virtual string GetAccessibilityLabel (UIPickerView pickerView, IntPtr acessibilityLabelForComponent);
public virtual string[] GetAccessibilityUserInputLabels (UIPickerView pickerView, IntPtr component);

Type Changed: UIKit.IUIPickerViewDataSource

Modified methods:

-public abstract IntPtr GetComponentCount (UIPickerView pickerView)
+public virtual IntPtr GetComponentCount (UIPickerView pickerView)
-public abstract IntPtr GetRowsInComponent (UIPickerView pickerView, IntPtr component)
+public virtual IntPtr GetRowsInComponent (UIPickerView pickerView, IntPtr component)

Type Changed: UIKit.IUIPickerViewDelegate

Added methods:

public virtual Foundation.NSAttributedString GetAttributedTitle (UIPickerView pickerView, IntPtr row, IntPtr component);
public virtual System.Runtime.InteropServices.NFloat GetComponentWidth (UIPickerView pickerView, IntPtr component);
public virtual System.Runtime.InteropServices.NFloat GetRowHeight (UIPickerView pickerView, IntPtr component);
public virtual string GetTitle (UIPickerView pickerView, IntPtr row, IntPtr component);
public virtual UIView GetView (UIPickerView pickerView, IntPtr row, IntPtr component, UIView view);
public virtual void Selected (UIPickerView pickerView, IntPtr row, IntPtr component);

Type Changed: UIKit.IUIPointerInteractionAnimating

Modified methods:

-public abstract void AddAnimations (System.Action animations)
+public virtual void AddAnimations (System.Action animations)
-public abstract void AddCompletion (System.Action%LESSERTHANREPLACEMENT%bool%GREATERTHANREPLACEMENT% completion)
+public virtual void AddCompletion (System.Action%LESSERTHANREPLACEMENT%bool%GREATERTHANREPLACEMENT% completion)

Type Changed: UIKit.IUIPointerInteractionDelegate

Added methods:

public virtual UIPointerRegion GetRegionForRequest (UIPointerInteraction interaction, UIPointerRegionRequest request, UIPointerRegion defaultRegion);
public virtual UIPointerStyle GetStyleForRegion (UIPointerInteraction interaction, UIPointerRegion region);
public virtual void WillEnterRegion (UIPointerInteraction interaction, UIPointerRegion region, IUIPointerInteractionAnimating animator);
public virtual void WillExitRegion (UIPointerInteraction interaction, UIPointerRegion region, IUIPointerInteractionAnimating animator);

Type Changed: UIKit.IUIPopoverBackgroundViewMethods

Added methods:

public static System.Runtime.InteropServices.NFloat GetArrowBase<T> ();
public static System.Runtime.InteropServices.NFloat GetArrowHeight<T> ();
public static UIEdgeInsets GetContentViewInsets<T> ();

Type Changed: UIKit.IUIPopoverControllerDelegate

Added methods:

public virtual void DidDismiss (UIPopoverController popoverController);
public virtual bool ShouldDismiss (UIPopoverController popoverController);
public virtual void WillReposition (UIPopoverController popoverController, ref CoreGraphics.CGRect rect, ref UIView view);

Type Changed: UIKit.IUIPopoverPresentationControllerDelegate

Added methods:

public virtual void DidDismissPopover (UIPopoverPresentationController popoverPresentationController);
public virtual void PrepareForPopoverPresentation (UIPopoverPresentationController popoverPresentationController);
public virtual bool ShouldDismissPopover (UIPopoverPresentationController popoverPresentationController);
public virtual void WillRepositionPopover (UIPopoverPresentationController popoverPresentationController, ref CoreGraphics.CGRect targetRect, ref UIView inView);

Type Changed: UIKit.IUIPopoverPresentationControllerSourceItem

Added method:

public virtual CoreGraphics.CGRect GetFrame (UIView referenceView);

Type Changed: UIKit.IUIPreviewActionItem

Modified properties:

-public abstract string Title { get; }
+public virtual string Title { get; }

Type Changed: UIKit.IUIPreviewInteractionDelegate

Modified methods:

-public abstract void DidCancel (UIPreviewInteraction previewInteraction)
+public virtual void DidCancel (UIPreviewInteraction previewInteraction)
-public abstract void DidUpdatePreviewTransition (UIPreviewInteraction previewInteraction, System.Runtime.InteropServices.NFloat transitionProgress, bool ended)
+public virtual void DidUpdatePreviewTransition (UIPreviewInteraction previewInteraction, System.Runtime.InteropServices.NFloat transitionProgress, bool ended)

Added methods:

public virtual void DidUpdateCommit (UIPreviewInteraction previewInteraction, System.Runtime.InteropServices.NFloat transitionProgress, bool ended);
public virtual bool ShouldBegin (UIPreviewInteraction previewInteraction);

Type Changed: UIKit.IUIPrintInteractionControllerDelegate

Added methods:

public virtual UIPrinterCutterBehavior ChooseCutterBehavior (UIPrintInteractionController printInteractionController, Foundation.NSNumber[] availableBehaviors);
public virtual UIPrintPaper ChoosePaper (UIPrintInteractionController printInteractionController, UIPrintPaper[] paperList);
public virtual System.Runtime.InteropServices.NFloat CutLengthForPaper (UIPrintInteractionController printInteractionController, UIPrintPaper paper);
public virtual void DidDismissPrinterOptions (UIPrintInteractionController printInteractionController);
public virtual void DidFinishJob (UIPrintInteractionController printInteractionController);
public virtual void DidPresentPrinterOptions (UIPrintInteractionController printInteractionController);
public virtual UIViewController GetViewController (UIPrintInteractionController printInteractionController);
public virtual void WillDismissPrinterOptions (UIPrintInteractionController printInteractionController);
public virtual void WillPresentPrinterOptions (UIPrintInteractionController printInteractionController);
public virtual void WillStartJob (UIPrintInteractionController printInteractionController);

Type Changed: UIKit.IUIPrinterPickerControllerDelegate

Added methods:

public virtual void DidDismiss (UIPrinterPickerController printerPickerController);
public virtual void DidPresent (UIPrinterPickerController printerPickerController);
public virtual void DidSelectPrinter (UIPrinterPickerController printerPickerController);
public virtual UIViewController GetParentViewController (UIPrinterPickerController printerPickerController);
public virtual bool ShouldShowPrinter (UIPrinterPickerController printerPickerController, UIPrinter printer);
public virtual void WillDismiss (UIPrinterPickerController printerPickerController);
public virtual void WillPresent (UIPrinterPickerController printerPickerController);

Type Changed: UIKit.IUIResponderStandardEditActions

Added methods:

public virtual void Copy (Foundation.NSObject sender);
public virtual void Cut (Foundation.NSObject sender);
public virtual void DecreaseSize (Foundation.NSObject sender);
public virtual void Delete (Foundation.NSObject sender);
public virtual void Duplicate (Foundation.NSObject sender);
public virtual void Export (Foundation.NSObject sender);
public virtual void Find (Foundation.NSObject sender);
public virtual void FindAndReplace (Foundation.NSObject sender);
public virtual void FindNext (Foundation.NSObject sender);
public virtual void FindPrevious (Foundation.NSObject sender);
public virtual void IncreaseSize (Foundation.NSObject sender);
public virtual void MakeTextWritingDirectionLeftToRight (Foundation.NSObject sender);
public virtual void MakeTextWritingDirectionRightToLeft (Foundation.NSObject sender);
public virtual void Move (Foundation.NSObject sender);
public virtual void Paste (Foundation.NSObject sender);
public virtual void PasteAndGo (Foundation.NSObject sender);
public virtual void PasteAndMatchStyle (Foundation.NSObject sender);
public virtual void PasteAndSearch (Foundation.NSObject sender);
public virtual void Print (Foundation.NSObject sender);
public virtual void Rename (Foundation.NSObject sender);
public virtual void Select (Foundation.NSObject sender);
public virtual void SelectAll (Foundation.NSObject sender);
public virtual void ToggleBoldface (Foundation.NSObject sender);
public virtual void ToggleItalics (Foundation.NSObject sender);
public virtual void ToggleUnderline (Foundation.NSObject sender);
public virtual void UpdateTextAttributes (UITextAttributesConversionHandler conversionHandler);
public virtual void UseSelectionForFind (Foundation.NSObject sender);

Type Changed: UIKit.IUISceneDelegate

Added methods:

public virtual void ContinueUserActivity (UIScene scene, Foundation.NSUserActivity userActivity);
public virtual void DidBecomeActive (UIScene scene);
public virtual void DidDisconnect (UIScene scene);
public virtual void DidEnterBackground (UIScene scene);
public virtual void DidFailToContinueUserActivity (UIScene scene, string userActivityType, Foundation.NSError error);
public virtual void DidUpdateUserActivity (UIScene scene, Foundation.NSUserActivity userActivity);
public virtual Foundation.NSUserActivity GetStateRestorationActivity (UIScene scene);
public virtual void OpenUrlContexts (UIScene scene, Foundation.NSSet<UIOpenUrlContext> urlContexts);
public virtual void RestoreInteractionState (UIScene scene, Foundation.NSUserActivity stateRestorationActivity);
public virtual void WillConnect (UIScene scene, UISceneSession session, UISceneConnectionOptions connectionOptions);
public virtual void WillContinueUserActivity (UIScene scene, string userActivityType);
public virtual void WillEnterForeground (UIScene scene);
public virtual void WillResignActive (UIScene scene);

Type Changed: UIKit.IUIScreenshotServiceDelegate

Added method:

public virtual void GeneratePdfRepresentation (UIScreenshotService screenshotService, UIScreenshotServiceDelegatePdfHandler completionHandler);

Type Changed: UIKit.IUIScribbleInteractionDelegate

Added methods:

public virtual void DidFinishWriting (UIScribbleInteraction interaction);
public virtual bool ShouldBegin (UIScribbleInteraction interaction, CoreGraphics.CGPoint location);
public virtual bool ShouldDelayFocus (UIScribbleInteraction interaction);
public virtual void WillBeginWriting (UIScribbleInteraction interaction);

Type Changed: UIKit.IUIScrollViewAccessibilityDelegate

Added methods:

public virtual Foundation.NSAttributedString GetAccessibilityAttributedScrollStatus (UIScrollView scrollView);
public virtual string GetAccessibilityScrollStatus (UIScrollView scrollView);

Type Changed: UIKit.IUIScrollViewDelegate

Added methods:

public virtual void DecelerationEnded (UIScrollView scrollView);
public virtual void DecelerationStarted (UIScrollView scrollView);
public virtual void DidChangeAdjustedContentInset (UIScrollView scrollView);
public virtual void DidZoom (UIScrollView scrollView);
public virtual void DraggingEnded (UIScrollView scrollView, bool willDecelerate);
public virtual void DraggingStarted (UIScrollView scrollView);
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 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, System.Runtime.InteropServices.NFloat atScale);
public virtual void ZoomingStarted (UIScrollView scrollView, UIView view);

Type Changed: UIKit.IUISearchBarDelegate

Added methods:

public virtual void BookmarkButtonClicked (UISearchBar searchBar);
public virtual void CancelButtonClicked (UISearchBar searchBar);
public virtual void ListButtonClicked (UISearchBar searchBar);
public virtual void OnEditingStarted (UISearchBar searchBar);
public virtual void OnEditingStopped (UISearchBar searchBar);
public virtual void SearchButtonClicked (UISearchBar searchBar);
public virtual void SelectedScopeButtonIndexChanged (UISearchBar searchBar, IntPtr selectedScope);
public virtual bool ShouldBeginEditing (UISearchBar searchBar);
public virtual bool ShouldChangeTextInRange (UISearchBar searchBar, Foundation.NSRange range, string text);
public virtual bool ShouldEndEditing (UISearchBar searchBar);
public virtual void TextChanged (UISearchBar searchBar, string searchText);

Type Changed: UIKit.IUISearchControllerDelegate

Added methods:

public virtual void DidChangeFromSearchBarPlacement (UISearchController searchController, UINavigationItemSearchBarPlacement previousPlacement);
public virtual void DidDismissSearchController (UISearchController searchController);
public virtual void DidPresentSearchController (UISearchController searchController);
public virtual void PresentSearchController (UISearchController searchController);
public virtual void WillChangeToSearchBarPlacement (UISearchController searchController, UINavigationItemSearchBarPlacement newPlacement);
public virtual void WillDismissSearchController (UISearchController searchController);
public virtual void WillPresentSearchController (UISearchController searchController);

Type Changed: UIKit.IUISearchResultsUpdating

Modified methods:

-public abstract void UpdateSearchResultsForSearchController (UISearchController searchController)
+public virtual void UpdateSearchResultsForSearchController (UISearchController searchController)

Added method:

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

Type Changed: UIKit.IUISearchSuggestion

Modified properties:

-public abstract Foundation.NSString LocalizedSuggestion { get; }
+public virtual Foundation.NSString LocalizedSuggestion { get; }

Added properties:

public virtual Foundation.NSAttributedString LocalizedAttributedSuggestion { get; }
public virtual Foundation.NSObject RepresentedObject { get; set; }

Added methods:

public virtual UIImage GetIconImage ();
public virtual Foundation.NSString GetLocalizedDescription ();

Type Changed: UIKit.IUISearchTextFieldDelegate

Added methods:

public virtual void DidSelectSuggestion (UISearchTextField searchTextField, IUISearchSuggestion suggestion);
public virtual Foundation.NSItemProvider GetItemProvider (UISearchTextField searchTextField, UISearchToken token);

Type Changed: UIKit.IUISearchTextFieldPasteItem

Modified methods:

-public abstract void SetSearchTokenResult (UISearchToken token)
+public virtual void SetSearchTokenResult (UISearchToken token)

Type Changed: UIKit.IUIShapeProvider

Modified methods:

-public abstract UIResolvedShape CreateResolvedShape (UIShapeResolutionContext context)
+public virtual UIResolvedShape CreateResolvedShape (UIShapeResolutionContext context)

Type Changed: UIKit.IUISheetPresentationControllerDelegate

Added method:

public virtual void DidChangeSelectedDetentIdentifier (UISheetPresentationController sheetPresentationController);

Type Changed: UIKit.IUISheetPresentationControllerDetentResolutionContext

Modified properties:

-public abstract UITraitCollection ContainerTraitCollection { get; }
+public virtual UITraitCollection ContainerTraitCollection { get; }
-public abstract System.Runtime.InteropServices.NFloat MaximumDetentValue { get; }
+public virtual System.Runtime.InteropServices.NFloat MaximumDetentValue { get; }

Type Changed: UIKit.IUISplitViewControllerDelegate

Added methods:

public virtual bool CollapseSecondViewController (UISplitViewController splitViewController, UIViewController secondaryViewController, UIViewController primaryViewController);
public virtual void DidCollapse (UISplitViewController splitViewController);
public virtual void DidExpand (UISplitViewController splitViewController);
public virtual bool EventShowDetailViewController (UISplitViewController splitViewController, UIViewController vc, Foundation.NSObject sender);
public virtual bool EventShowViewController (UISplitViewController splitViewController, UIViewController vc, Foundation.NSObject sender);
public virtual UISplitViewControllerDisplayMode GetDisplayModeForExpanding (UISplitViewController splitViewController, UISplitViewControllerDisplayMode proposedDisplayMode);
public virtual UIInterfaceOrientation GetPreferredInterfaceOrientationForPresentation (UISplitViewController splitViewController);
public virtual UIViewController GetPrimaryViewControllerForCollapsingSplitViewController (UISplitViewController splitViewController);
public virtual UIViewController GetPrimaryViewControllerForExpandingSplitViewController (UISplitViewController splitViewController);
public virtual UISplitViewControllerDisplayMode GetTargetDisplayModeForAction (UISplitViewController svc);
public virtual UISplitViewControllerColumn GetTopColumnForCollapsing (UISplitViewController splitViewController, UISplitViewControllerColumn proposedTopColumn);
public virtual void InteractivePresentationGestureDidEnd (UISplitViewController svc);
public virtual void InteractivePresentationGestureWillBegin (UISplitViewController svc);
public virtual UIViewController SeparateSecondaryViewController (UISplitViewController splitViewController, UIViewController primaryViewController);
public virtual bool ShouldHideViewController (UISplitViewController svc, UIViewController viewController, UIInterfaceOrientation inOrientation);
public virtual UIInterfaceOrientationMask SupportedInterfaceOrientations (UISplitViewController splitViewController);
public virtual void WillChangeDisplayMode (UISplitViewController svc, UISplitViewControllerDisplayMode displayMode);
public virtual void WillHideColumn (UISplitViewController splitViewController, UISplitViewControllerColumn column);
public virtual void WillHideViewController (UISplitViewController svc, UIViewController aViewController, UIBarButtonItem barButtonItem, UIPopoverController pc);
public virtual void WillPresentViewController (UISplitViewController svc, UIPopoverController pc, UIViewController aViewController);
public virtual void WillShowColumn (UISplitViewController splitViewController, UISplitViewControllerColumn column);
public virtual void WillShowViewController (UISplitViewController svc, UIViewController aViewController, UIBarButtonItem button);

Type Changed: UIKit.IUISpringLoadedInteractionBehavior

Modified methods:

-public abstract bool ShouldAllowInteraction (UISpringLoadedInteraction interaction, IUISpringLoadedInteractionContext context)
+public virtual bool ShouldAllowInteraction (UISpringLoadedInteraction interaction, IUISpringLoadedInteractionContext context)

Added method:

public virtual void InteractionDidFinish (UISpringLoadedInteraction interaction);

Type Changed: UIKit.IUISpringLoadedInteractionContext

Modified properties:

-public abstract UISpringLoadedInteractionEffectState State { get; }
+public virtual UISpringLoadedInteractionEffectState State { get; }
-public abstract Foundation.NSObject TargetItem { get; set; }
+public virtual Foundation.NSObject TargetItem { get; set; }
-public abstract UIView TargetView { get; set; }
+public virtual UIView TargetView { get; set; }

Modified methods:

-public abstract CoreGraphics.CGPoint LocationInView (UIView view)
+public virtual CoreGraphics.CGPoint LocationInView (UIView view)

Type Changed: UIKit.IUISpringLoadedInteractionEffect

Modified methods:

-public abstract void DidChange (UISpringLoadedInteraction interaction, IUISpringLoadedInteractionContext context)
+public virtual void DidChange (UISpringLoadedInteraction interaction, IUISpringLoadedInteractionContext context)

Type Changed: UIKit.IUISpringLoadedInteractionSupporting

Modified properties:

-public abstract bool SpringLoaded { get; set; }
+public virtual bool SpringLoaded { get; set; }

Type Changed: UIKit.IUIStateRestoring

Added properties:

public virtual ObjCRuntime.Class ObjectRestorationClass { get; }
public virtual IUIStateRestoring RestorationParent { get; }

Added methods:

public virtual void ApplicationFinishedRestoringState ();
public virtual void DecodeRestorableState (Foundation.NSCoder coder);
public virtual void EncodeRestorableState (Foundation.NSCoder coder);

Type Changed: UIKit.IUITabBarControllerDelegate

Added methods:

public virtual void FinishedCustomizingViewControllers (UITabBarController tabBarController, UIViewController[] viewControllers, bool changed);
public virtual IUIViewControllerAnimatedTransitioning GetAnimationControllerForTransition (UITabBarController tabBarController, UIViewController fromViewController, UIViewController toViewController);
public virtual IUIViewControllerInteractiveTransitioning GetInteractionControllerForAnimationController (UITabBarController tabBarController, IUIViewControllerAnimatedTransitioning animationController);
public virtual UIInterfaceOrientation GetPreferredInterfaceOrientation (UITabBarController tabBarController);
public virtual void OnCustomizingViewControllers (UITabBarController tabBarController, UIViewController[] viewControllers);
public virtual void OnEndCustomizingViewControllers (UITabBarController tabBarController, UIViewController[] viewControllers, bool changed);
public virtual bool ShouldSelectViewController (UITabBarController tabBarController, UIViewController viewController);
public virtual UIInterfaceOrientationMask SupportedInterfaceOrientations (UITabBarController tabBarController);
public virtual void ViewControllerSelected (UITabBarController tabBarController, UIViewController viewController);

Type Changed: UIKit.IUITabBarDelegate

Added methods:

public virtual void DidBeginCustomizingItems (UITabBar tabbar, UITabBarItem[] items);
public virtual void DidEndCustomizingItems (UITabBar tabbar, UITabBarItem[] items, bool changed);
public virtual void ItemSelected (UITabBar tabbar, UITabBarItem item);
public virtual void WillBeginCustomizingItems (UITabBar tabbar, UITabBarItem[] items);
public virtual void WillEndCustomizingItems (UITabBar tabbar, UITabBarItem[] items, bool changed);

Type Changed: UIKit.IUITableViewDataSource

Modified methods:

-public abstract UITableViewCell GetCell (UITableView tableView, Foundation.NSIndexPath indexPath)
+public virtual UITableViewCell GetCell (UITableView tableView, Foundation.NSIndexPath indexPath)
-public abstract IntPtr RowsInSection (UITableView tableView, IntPtr section)
+public virtual IntPtr RowsInSection (UITableView tableView, IntPtr section)

Added methods:

public virtual bool CanEditRow (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual bool CanMoveRow (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual void CommitEditingStyle (UITableView tableView, UITableViewCellEditingStyle editingStyle, Foundation.NSIndexPath indexPath);
public virtual void MoveRow (UITableView tableView, Foundation.NSIndexPath sourceIndexPath, Foundation.NSIndexPath destinationIndexPath);
public virtual IntPtr NumberOfSections (UITableView tableView);
public virtual IntPtr SectionFor (UITableView tableView, string title, IntPtr atIndex);
public virtual string[] SectionIndexTitles (UITableView tableView);
public virtual string TitleForFooter (UITableView tableView, IntPtr section);
public virtual string TitleForHeader (UITableView tableView, IntPtr section);

Type Changed: UIKit.IUITableViewDataSourcePrefetching

Modified methods:

-public abstract void PrefetchRows (UITableView tableView, Foundation.NSIndexPath[] indexPaths)
+public virtual void PrefetchRows (UITableView tableView, Foundation.NSIndexPath[] indexPaths)

Added method:

public virtual void CancelPrefetching (UITableView tableView, Foundation.NSIndexPath[] indexPaths);

Type Changed: UIKit.IUITableViewDelegate

Added methods:

public virtual void AccessoryButtonTapped (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual bool CanFocusRow (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual bool CanPerformAction (UITableView tableView, ObjCRuntime.Selector action, Foundation.NSIndexPath indexPath, Foundation.NSObject sender);
public virtual bool CanPerformPrimaryAction (UITableView tableView, Foundation.NSIndexPath rowIndexPath);
public virtual void CellDisplayingEnded (UITableView tableView, UITableViewCell cell, Foundation.NSIndexPath indexPath);
public virtual Foundation.NSIndexPath CustomizeMoveTarget (UITableView tableView, Foundation.NSIndexPath sourceIndexPath, Foundation.NSIndexPath proposedIndexPath);
public virtual void DidBeginMultipleSelectionInteraction (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual void DidEndEditing (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual void DidEndMultipleSelectionInteraction (UITableView tableView);
public virtual void DidUpdateFocus (UITableView tableView, UITableViewFocusUpdateContext context, UIFocusAnimationCoordinator coordinator);
public virtual UITableViewRowAction[] EditActionsForRow (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual UITableViewCellEditingStyle EditingStyleForRow (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual System.Runtime.InteropServices.NFloat EstimatedHeight (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual System.Runtime.InteropServices.NFloat EstimatedHeightForFooter (UITableView tableView, IntPtr section);
public virtual System.Runtime.InteropServices.NFloat EstimatedHeightForHeader (UITableView tableView, IntPtr section);
public virtual void FooterViewDisplayingEnded (UITableView tableView, UIView footerView, IntPtr section);
public virtual UIContextMenuConfiguration GetContextMenuConfiguration (UITableView tableView, Foundation.NSIndexPath indexPath, CoreGraphics.CGPoint point);
public virtual System.Runtime.InteropServices.NFloat GetHeightForFooter (UITableView tableView, IntPtr section);
public virtual System.Runtime.InteropServices.NFloat GetHeightForHeader (UITableView tableView, IntPtr section);
public virtual System.Runtime.InteropServices.NFloat GetHeightForRow (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual Foundation.NSIndexPath GetIndexPathForPreferredFocusedView (UITableView tableView);
public virtual UISwipeActionsConfiguration GetLeadingSwipeActionsConfiguration (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual UITargetedPreview GetPreviewForDismissingContextMenu (UITableView tableView, UIContextMenuConfiguration configuration);
public virtual UITargetedPreview GetPreviewForHighlightingContextMenu (UITableView tableView, UIContextMenuConfiguration configuration);
public virtual bool GetSelectionFollowsFocusForRow (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual UISwipeActionsConfiguration GetTrailingSwipeActionsConfiguration (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual UIView GetViewForFooter (UITableView tableView, IntPtr section);
public virtual UIView GetViewForHeader (UITableView tableView, IntPtr section);
public virtual void HeaderViewDisplayingEnded (UITableView tableView, UIView headerView, IntPtr section);
public virtual IntPtr IndentationLevel (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual void PerformAction (UITableView tableView, ObjCRuntime.Selector action, Foundation.NSIndexPath indexPath, Foundation.NSObject sender);
public virtual void PerformPrimaryAction (UITableView tableView, Foundation.NSIndexPath rowIndexPath);
public virtual void RowDeselected (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual void RowHighlighted (UITableView tableView, Foundation.NSIndexPath rowIndexPath);
public virtual void RowSelected (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual void RowUnhighlighted (UITableView tableView, Foundation.NSIndexPath rowIndexPath);
public virtual bool ShouldBeginMultipleSelectionInteraction (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual bool ShouldHighlightRow (UITableView tableView, Foundation.NSIndexPath rowIndexPath);
public virtual bool ShouldIndentWhileEditing (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual bool ShouldShowMenu (UITableView tableView, Foundation.NSIndexPath rowAtindexPath);
public virtual bool ShouldSpringLoadRow (UITableView tableView, Foundation.NSIndexPath indexPath, IUISpringLoadedInteractionContext context);
public virtual bool ShouldUpdateFocus (UITableView tableView, UITableViewFocusUpdateContext context);
public virtual string TitleForDeleteConfirmation (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual void WillBeginEditing (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual Foundation.NSIndexPath WillDeselectRow (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual void WillDisplay (UITableView tableView, UITableViewCell cell, Foundation.NSIndexPath indexPath);
public virtual void WillDisplayContextMenu (UITableView tableView, UIContextMenuConfiguration configuration, IUIContextMenuInteractionAnimating animator);
public virtual void WillDisplayFooterView (UITableView tableView, UIView footerView, IntPtr section);
public virtual void WillDisplayHeaderView (UITableView tableView, UIView headerView, IntPtr section);
public virtual void WillEndContextMenuInteraction (UITableView tableView, UIContextMenuConfiguration configuration, IUIContextMenuInteractionAnimating animator);
public virtual void WillPerformPreviewAction (UITableView tableView, UIContextMenuConfiguration configuration, IUIContextMenuInteractionCommitAnimating animator);
public virtual Foundation.NSIndexPath WillSelectRow (UITableView tableView, Foundation.NSIndexPath indexPath);

Type Changed: UIKit.IUITableViewDragDelegate

Modified methods:

-public abstract UIDragItem[] GetItemsForBeginningDragSession (UITableView tableView, IUIDragSession session, Foundation.NSIndexPath indexPath)
+public virtual UIDragItem[] GetItemsForBeginningDragSession (UITableView tableView, IUIDragSession session, Foundation.NSIndexPath indexPath)

Added methods:

public virtual bool DragSessionAllowsMoveOperation (UITableView tableView, IUIDragSession session);
public virtual void DragSessionDidEnd (UITableView tableView, IUIDragSession session);
public virtual bool DragSessionIsRestrictedToDraggingApplication (UITableView tableView, IUIDragSession session);
public virtual void DragSessionWillBegin (UITableView tableView, IUIDragSession session);
public virtual UIDragPreviewParameters GetDragPreviewParameters (UITableView tableView, Foundation.NSIndexPath indexPath);
public virtual UIDragItem[] GetItemsForAddingToDragSession (UITableView tableView, IUIDragSession session, Foundation.NSIndexPath indexPath, CoreGraphics.CGPoint point);

Type Changed: UIKit.IUITableViewDropCoordinator

Modified properties:

-public abstract Foundation.NSIndexPath DestinationIndexPath { get; }
+public virtual Foundation.NSIndexPath DestinationIndexPath { get; }
-public abstract IUITableViewDropItem[] Items { get; }
+public virtual IUITableViewDropItem[] Items { get; }
-public abstract UITableViewDropProposal Proposal { get; }
+public virtual UITableViewDropProposal Proposal { get; }
-public abstract IUIDropSession Session { get; }
+public virtual IUIDropSession Session { get; }

Modified methods:

-public abstract IUIDragAnimating DropItemIntoRow (UIDragItem dragItem, Foundation.NSIndexPath indexPath, CoreGraphics.CGRect rect)
+public virtual IUIDragAnimating DropItemIntoRow (UIDragItem dragItem, Foundation.NSIndexPath indexPath, CoreGraphics.CGRect rect)
-public abstract IUITableViewDropPlaceholderContext DropItemToPlaceholder (UIDragItem dragItem, UITableViewDropPlaceholder placeholder)
+public virtual IUITableViewDropPlaceholderContext DropItemToPlaceholder (UIDragItem dragItem, UITableViewDropPlaceholder placeholder)
-public abstract IUIDragAnimating DropItemToRow (UIDragItem dragItem, Foundation.NSIndexPath indexPath)
+public virtual IUIDragAnimating DropItemToRow (UIDragItem dragItem, Foundation.NSIndexPath indexPath)
-public abstract IUIDragAnimating DropItemToTarget (UIDragItem dragItem, UIDragPreviewTarget target)
+public virtual IUIDragAnimating DropItemToTarget (UIDragItem dragItem, UIDragPreviewTarget target)

Type Changed: UIKit.IUITableViewDropDelegate

Modified methods:

-public abstract void PerformDrop (UITableView tableView, IUITableViewDropCoordinator coordinator)
+public virtual void PerformDrop (UITableView tableView, IUITableViewDropCoordinator coordinator)

Added methods:

public virtual bool CanHandleDropSession (UITableView tableView, IUIDropSession session);
public virtual void DropSessionDidEnd (UITableView tableView, IUIDropSession session);
public virtual void DropSessionDidEnter (UITableView tableView, IUIDropSession session);
public virtual void DropSessionDidExit (UITableView tableView, IUIDropSession session);
public virtual UITableViewDropProposal DropSessionDidUpdate (UITableView tableView, IUIDropSession session, Foundation.NSIndexPath destinationIndexPath);
public virtual UIDragPreviewParameters GetDropPreviewParameters (UITableView tableView, Foundation.NSIndexPath indexPath);

Type Changed: UIKit.IUITableViewDropItem

Modified properties:

-public abstract UIDragItem DragItem { get; }
+public virtual UIDragItem DragItem { get; }
-public abstract CoreGraphics.CGSize PreviewSize { get; }
+public virtual CoreGraphics.CGSize PreviewSize { get; }
-public abstract Foundation.NSIndexPath SourceIndexPath { get; }
+public virtual Foundation.NSIndexPath SourceIndexPath { get; }

Type Changed: UIKit.IUITableViewDropPlaceholderContext

Modified properties:

-public abstract UIDragItem DragItem { get; }
+public virtual UIDragItem DragItem { get; }

Modified methods:

-public abstract bool CommitInsertion (System.Action%LESSERTHANREPLACEMENT%Foundation.NSIndexPath%GREATERTHANREPLACEMENT% dataSourceUpdates)
+public virtual bool CommitInsertion (System.Action%LESSERTHANREPLACEMENT%Foundation.NSIndexPath%GREATERTHANREPLACEMENT% dataSourceUpdates)
-public abstract bool DeletePlaceholder ()
+public virtual bool DeletePlaceholder ()

Type Changed: UIKit.IUITextCursorView

Modified properties:

-public abstract bool Blinking { get; set; }
+public virtual bool Blinking { get; set; }

Modified methods:

-public abstract void ResetBlinkAnimation ()
+public virtual void ResetBlinkAnimation ()

Type Changed: UIKit.IUITextDocumentProxy

Modified properties:

-public abstract string DocumentContextAfterInput { get; }
+public virtual string DocumentContextAfterInput { get; }
-public abstract string DocumentContextBeforeInput { get; }
+public virtual string DocumentContextBeforeInput { get; }
-public abstract Foundation.NSUuid DocumentIdentifier { get; }
+public virtual Foundation.NSUuid DocumentIdentifier { get; }
-public abstract UITextInputMode DocumentInputMode { get; }
+public virtual UITextInputMode DocumentInputMode { get; }
-public abstract string SelectedText { get; }
+public virtual string SelectedText { get; }

Modified methods:

-public abstract void AdjustTextPositionByCharacterOffset (IntPtr offset)
+public virtual void AdjustTextPositionByCharacterOffset (IntPtr offset)
-public abstract void SetMarkedText (string markedText, Foundation.NSRange selectedRange)
+public virtual void SetMarkedText (string markedText, Foundation.NSRange selectedRange)
-public abstract void UnmarkText ()
+public virtual void UnmarkText ()

Type Changed: UIKit.IUITextDragDelegate

Added methods:

public virtual void DragSessionDidEnd (IUITextDraggable textDraggableView, IUIDragSession session, UIDropOperation operation);
public virtual void DragSessionWillBegin (IUITextDraggable textDraggableView, IUIDragSession session);
public virtual UIDragItem[] GetItemsForDrag (IUITextDraggable textDraggableView, IUITextDragRequest dragRequest);
public virtual UITargetedDragPreview GetPreviewForLiftingItem (IUITextDraggable textDraggableView, UIDragItem item, IUIDragSession session);
public virtual void WillAnimateLift (IUITextDraggable textDraggableView, IUIDragAnimating animator, IUIDragSession session);

Type Changed: UIKit.IUITextDragRequest

Modified properties:

-public abstract UITextRange DragRange { get; }
+public virtual UITextRange DragRange { get; }
-public abstract IUIDragSession DragSession { get; }
+public virtual IUIDragSession DragSession { get; }
-public abstract UIDragItem[] ExistingItems { get; }
+public virtual UIDragItem[] ExistingItems { get; }
-public abstract bool Selected { get; }
+public virtual bool Selected { get; }
-public abstract UIDragItem[] SuggestedItems { get; }
+public virtual UIDragItem[] SuggestedItems { get; }

Type Changed: UIKit.IUITextDraggable

Modified properties:

-public abstract bool TextDragActive { get; }
+public virtual bool TextDragActive { get; }
-public abstract IUITextDragDelegate TextDragDelegate { get; set; }
+public virtual IUITextDragDelegate TextDragDelegate { get; set; }
-public abstract UIDragInteraction TextDragInteraction { get; }
+public virtual UIDragInteraction TextDragInteraction { get; }
-public abstract UITextDragOptions TextDragOptions { get; set; }
+public virtual UITextDragOptions TextDragOptions { get; set; }

Type Changed: UIKit.IUITextDropDelegate

Added methods:

public virtual void DropSessionDidEnd (IUITextDroppable textDroppableView, IUIDropSession session);
public virtual void DropSessionDidEnter (IUITextDroppable textDroppableView, IUIDropSession session);
public virtual void DropSessionDidExit (IUITextDroppable textDroppableView, IUIDropSession session);
public virtual void DropSessionDidUpdate (IUITextDroppable textDroppableView, IUIDropSession session);
public virtual UITargetedDragPreview GetPreviewForDroppingAllItems (IUITextDroppable textDroppableView, UITargetedDragPreview defaultPreview);
public virtual UITextDropProposal GetProposalForDrop (IUITextDroppable textDroppableView, IUITextDropRequest drop);
public virtual UITextDropEditability WillBecomeEditable (IUITextDroppable textDroppableView, IUITextDropRequest drop);
public virtual void WillPerformDrop (IUITextDroppable textDroppableView, IUITextDropRequest drop);

Type Changed: UIKit.IUITextDropRequest

Modified properties:

-public abstract UITextPosition DropPosition { get; }
+public virtual UITextPosition DropPosition { get; }
-public abstract IUIDropSession DropSession { get; }
+public virtual IUIDropSession DropSession { get; }
-public abstract bool SameView { get; }
+public virtual bool SameView { get; }
-public abstract UITextDropProposal SuggestedProposal { get; }
+public virtual UITextDropProposal SuggestedProposal { get; }

Type Changed: UIKit.IUITextDroppable

Modified properties:

-public abstract bool TextDropActive { get; }
+public virtual bool TextDropActive { get; }
-public abstract IUITextDropDelegate TextDropDelegate { get; set; }
+public virtual IUITextDropDelegate TextDropDelegate { get; set; }
-public abstract UIDropInteraction TextDropInteraction { get; }
+public virtual UIDropInteraction TextDropInteraction { get; }

Type Changed: UIKit.IUITextFieldDelegate

Added methods:

public virtual void DidChangeSelection (UITextField textField);
public virtual void EditingEnded (UITextField textField);
public virtual void EditingEnded (UITextField textField, UITextFieldDidEndEditingReason reason);
public virtual void EditingStarted (UITextField textField);
public virtual UIMenu GetEditMenu (UITextField textField, Foundation.NSRange range, UIMenuElement[] suggestedActions);
public virtual bool ShouldBeginEditing (UITextField textField);
public virtual bool ShouldChangeCharacters (UITextField textField, Foundation.NSRange range, string replacementString);
public virtual bool ShouldClear (UITextField textField);
public virtual bool ShouldEndEditing (UITextField textField);
public virtual bool ShouldReturn (UITextField textField);
public virtual void WillDismissEditMenu (UITextField textField, IUIEditMenuInteractionAnimating animator);
public virtual void WillPresentEditMenu (UITextField textField, IUIEditMenuInteractionAnimating animator);

Type Changed: UIKit.IUITextFormattingCoordinatorDelegate

Modified methods:

-public abstract void UpdateTextAttributes (UITextAttributesConversionHandler conversionHandler)
+public virtual void UpdateTextAttributes (UITextAttributesConversionHandler conversionHandler)

Type Changed: UIKit.IUITextInput

Modified properties:

-public abstract UITextPosition BeginningOfDocument { get; }
+public virtual UITextPosition BeginningOfDocument { get; }
-public abstract UITextPosition EndOfDocument { get; }
+public virtual UITextPosition EndOfDocument { get; }
-public abstract UITextRange MarkedTextRange { get; }
+public virtual UITextRange MarkedTextRange { get; }
-public abstract Foundation.NSDictionary MarkedTextStyle { get; set; }
+public virtual Foundation.NSDictionary MarkedTextStyle { get; set; }
-public abstract UITextRange SelectedTextRange { get; set; }
+public virtual UITextRange SelectedTextRange { get; set; }
-public abstract Foundation.NSObject WeakInputDelegate { get; set; }
+public virtual Foundation.NSObject WeakInputDelegate { get; set; }
-public abstract Foundation.NSObject WeakTokenizer { get; }
+public virtual Foundation.NSObject WeakTokenizer { get; }

Added properties:

public virtual UITextStorageDirection SelectionAffinity { get; set; }
public virtual UIView TextInputView { get; }

Modified methods:

-public abstract Foundation.NSComparisonResult ComparePosition (UITextPosition first, UITextPosition second)
+public virtual Foundation.NSComparisonResult ComparePosition (UITextPosition first, UITextPosition second)
-public abstract Foundation.NSWritingDirection GetBaseWritingDirection (UITextPosition forPosition, UITextStorageDirection direction)
+public virtual Foundation.NSWritingDirection GetBaseWritingDirection (UITextPosition forPosition, UITextStorageDirection direction)
-public abstract CoreGraphics.CGRect GetCaretRectForPosition (UITextPosition position)
+public virtual CoreGraphics.CGRect GetCaretRectForPosition (UITextPosition position)
-public abstract UITextRange GetCharacterRange (UITextPosition byExtendingPosition, UITextLayoutDirection direction)
+public virtual UITextRange GetCharacterRange (UITextPosition byExtendingPosition, UITextLayoutDirection direction)
-public abstract UITextRange GetCharacterRangeAtPoint (CoreGraphics.CGPoint point)
+public virtual UITextRange GetCharacterRangeAtPoint (CoreGraphics.CGPoint point)
-public abstract UITextPosition GetClosestPositionToPoint (CoreGraphics.CGPoint point)
+public virtual UITextPosition GetClosestPositionToPoint (CoreGraphics.CGPoint point)
-public abstract UITextPosition GetClosestPositionToPoint (CoreGraphics.CGPoint point, UITextRange withinRange)
+public virtual UITextPosition GetClosestPositionToPoint (CoreGraphics.CGPoint point, UITextRange withinRange)
-public abstract CoreGraphics.CGRect GetFirstRectForRange (UITextRange range)
+public virtual CoreGraphics.CGRect GetFirstRectForRange (UITextRange range)
-public abstract IntPtr GetOffsetFromPosition (UITextPosition fromPosition, UITextPosition toPosition)
+public virtual IntPtr GetOffsetFromPosition (UITextPosition fromPosition, UITextPosition toPosition)
-public abstract UITextPosition GetPosition (UITextPosition fromPosition, IntPtr offset)
+public virtual UITextPosition GetPosition (UITextPosition fromPosition, IntPtr offset)
-public abstract UITextPosition GetPosition (UITextPosition fromPosition, UITextLayoutDirection inDirection, IntPtr offset)
+public virtual UITextPosition GetPosition (UITextPosition fromPosition, UITextLayoutDirection inDirection, IntPtr offset)
-public abstract UITextPosition GetPositionWithinRange (UITextRange range, UITextLayoutDirection direction)
+public virtual UITextPosition GetPositionWithinRange (UITextRange range, UITextLayoutDirection direction)
-public abstract UITextSelectionRect[] GetSelectionRects (UITextRange range)
+public virtual UITextSelectionRect[] GetSelectionRects (UITextRange range)
-public abstract UITextRange GetTextRange (UITextPosition fromPosition, UITextPosition toPosition)
+public virtual UITextRange GetTextRange (UITextPosition fromPosition, UITextPosition toPosition)
-public abstract void ReplaceText (UITextRange range, string text)
+public virtual void ReplaceText (UITextRange range, string text)
-public abstract void SetBaseWritingDirectionforRange (Foundation.NSWritingDirection writingDirection, UITextRange range)
+public virtual void SetBaseWritingDirectionforRange (Foundation.NSWritingDirection writingDirection, UITextRange range)
-public abstract void SetMarkedText (string markedText, Foundation.NSRange selectedRange)
+public virtual void SetMarkedText (string markedText, Foundation.NSRange selectedRange)
-public abstract string TextInRange (UITextRange range)
+public virtual string TextInRange (UITextRange range)
-public abstract void UnmarkText ()
+public virtual void UnmarkText ()

Added methods:

public virtual void BeginFloatingCursor (CoreGraphics.CGPoint point);
public virtual void DictationRecognitionFailed ();
public virtual void DictationRecordingDidEnd ();
public virtual void EndFloatingCursor ();
public virtual CoreGraphics.CGAffineTransform GetCaretTransform (UITextPosition forPosition);
public virtual IntPtr GetCharacterOffsetOfPosition (UITextPosition position, UITextRange range);
public virtual UIMenu GetEditMenu (UITextRange textRange, UIMenuElement[] suggestedActions);
public virtual CoreGraphics.CGRect GetFrameForDictationResultPlaceholder (Foundation.NSObject placeholder);
public virtual UITextPosition GetPosition (UITextRange withinRange, IntPtr atCharacterOffset);
public virtual Foundation.NSDictionary GetTextStyling (UITextPosition atPosition, UITextStorageDirection inDirection);
public virtual void InsertDictationResult (Foundation.NSArray dictationResult);
public virtual Foundation.NSObject InsertDictationResultPlaceholder ();
public virtual void InsertText (string text, string[] alternatives, UITextAlternativeStyle style);
public virtual UITextPlaceholder InsertTextPlaceholder (CoreGraphics.CGSize size);
public virtual void RemoveDictationResultPlaceholder (Foundation.NSObject placeholder, bool willInsertResult);
public virtual void RemoveTextPlaceholder (UITextPlaceholder textPlaceholder);
public virtual void SetAttributedMarkedText (Foundation.NSAttributedString markedText, Foundation.NSRange selectedRange);
public virtual bool ShouldChangeTextInRange (UITextRange inRange, string replacementText);
public virtual void UpdateFloatingCursor (CoreGraphics.CGPoint point);
public virtual void WillDismissEditMenu (IUIEditMenuInteractionAnimating animator);
public virtual void WillPresentEditMenu (IUIEditMenuInteractionAnimating animator);

Type Changed: UIKit.IUITextInputDelegate

Modified methods:

-public abstract void SelectionDidChange (IUITextInput uiTextInput)
+public virtual void SelectionDidChange (IUITextInput uiTextInput)
-public abstract void SelectionWillChange (IUITextInput uiTextInput)
+public virtual void SelectionWillChange (IUITextInput uiTextInput)
-public abstract void TextDidChange (IUITextInput textInput)
+public virtual void TextDidChange (IUITextInput textInput)
-public abstract void TextWillChange (IUITextInput textInput)
+public virtual void TextWillChange (IUITextInput textInput)

Type Changed: UIKit.IUITextInputTokenizer

Modified methods:

-public abstract UITextPosition GetPosition (UITextPosition fromPosition, UITextGranularity toBoundary, UITextDirection inDirection)
+public virtual UITextPosition GetPosition (UITextPosition fromPosition, UITextGranularity toBoundary, UITextDirection inDirection)
-public abstract UITextRange GetRangeEnclosingPosition (UITextPosition position, UITextGranularity granularity, UITextDirection direction)
+public virtual UITextRange GetRangeEnclosingPosition (UITextPosition position, UITextGranularity granularity, UITextDirection direction)
-public abstract bool ProbeDirection (UITextPosition probePosition, UITextGranularity atBoundary, UITextDirection inDirection)
+public virtual bool ProbeDirection (UITextPosition probePosition, UITextGranularity atBoundary, UITextDirection inDirection)
-public abstract bool ProbeDirectionWithinTextUnit (UITextPosition probePosition, UITextGranularity withinTextUnit, UITextDirection inDirection)
+public virtual bool ProbeDirectionWithinTextUnit (UITextPosition probePosition, UITextGranularity withinTextUnit, UITextDirection inDirection)

Type Changed: UIKit.IUITextInputTraits

Added properties:

public virtual UITextAutocapitalizationType AutocapitalizationType { get; set; }
public virtual UITextAutocorrectionType AutocorrectionType { get; set; }
public virtual bool EnablesReturnKeyAutomatically { get; set; }
public virtual UITextInlinePredictionType InlinePredictionType { get; set; }
public virtual UIKeyboardAppearance KeyboardAppearance { get; set; }
public virtual UIKeyboardType KeyboardType { get; set; }
public virtual UITextInputPasswordRules PasswordRules { get; set; }
public virtual UIReturnKeyType ReturnKeyType { get; set; }
public virtual bool SecureTextEntry { get; set; }
public virtual UITextSmartDashesType SmartDashesType { get; set; }
public virtual UITextSmartInsertDeleteType SmartInsertDeleteType { get; set; }
public virtual UITextSmartQuotesType SmartQuotesType { get; set; }
public virtual UITextSpellCheckingType SpellCheckingType { get; set; }
public virtual Foundation.NSString TextContentType { get; set; }

Type Changed: UIKit.IUITextInteractionDelegate

Added methods:

public virtual void DidEnd (UITextInteraction interaction);
public virtual bool ShouldBegin (UITextInteraction interaction, CoreGraphics.CGPoint point);
public virtual void WillBegin (UITextInteraction interaction);

Type Changed: UIKit.IUITextPasteConfigurationSupporting

Modified properties:

-public abstract IUITextPasteDelegate PasteDelegate { get; set; }
+public virtual IUITextPasteDelegate PasteDelegate { get; set; }

Type Changed: UIKit.IUITextPasteDelegate

Added methods:

public virtual Foundation.NSAttributedString CombineItemAttributedStrings (IUITextPasteConfigurationSupporting textPasteConfigurationSupporting, Foundation.NSAttributedString[] itemStrings, UITextRange textRange);
public virtual UITextRange PerformPaste (IUITextPasteConfigurationSupporting textPasteConfigurationSupporting, Foundation.NSAttributedString attributedString, UITextRange textRange);
public virtual bool ShouldAnimatePaste (IUITextPasteConfigurationSupporting textPasteConfigurationSupporting, Foundation.NSAttributedString attributedString, UITextRange textRange);
public virtual void TransformPasteItem (IUITextPasteConfigurationSupporting textPasteConfigurationSupporting, IUITextPasteItem item);

Type Changed: UIKit.IUITextPasteItem

Modified properties:

-public abstract Foundation.NSDictionary%LESSERTHANREPLACEMENT%Foundation.NSString,Foundation.NSObject%GREATERTHANREPLACEMENT% DefaultAttributes { get; }
+public virtual Foundation.NSDictionary%LESSERTHANREPLACEMENT%Foundation.NSString,Foundation.NSObject%GREATERTHANREPLACEMENT% DefaultAttributes { get; }
-public abstract Foundation.NSItemProvider ItemProvider { get; }
+public virtual Foundation.NSItemProvider ItemProvider { get; }
-public abstract Foundation.NSObject LocalObject { get; }
+public virtual Foundation.NSObject LocalObject { get; }

Modified methods:

-public abstract void SetAttachmentResult (NSTextAttachment textAttachment)
+public virtual void SetAttachmentResult (NSTextAttachment textAttachment)
-public abstract void SetAttributedStringResult (Foundation.NSAttributedString string)
+public virtual void SetAttributedStringResult (Foundation.NSAttributedString string)
-public abstract void SetDefaultResult ()
+public virtual void SetDefaultResult ()
-public abstract void SetNoResult ()
+public virtual void SetNoResult ()
-public abstract void SetStringResult (string string)
+public virtual void SetStringResult (string string)

Type Changed: UIKit.IUITextSearchAggregator

Modified properties:

-public abstract Foundation.NSOrderedSet%LESSERTHANREPLACEMENT%UITextRange%GREATERTHANREPLACEMENT% AllFoundRanges { get; }
+public virtual Foundation.NSOrderedSet%LESSERTHANREPLACEMENT%UITextRange%GREATERTHANREPLACEMENT% AllFoundRanges { get; }

Modified methods:

-public abstract void FinishedSearching ()
+public virtual void FinishedSearching ()
-public abstract void GetFoundRange (UITextRange range, string string, Foundation.INSCopying document)
+public virtual void GetFoundRange (UITextRange range, string string, Foundation.INSCopying document)
-public abstract void Invalidate ()
+public virtual void Invalidate ()
-public abstract void Invalidate (UITextRange foundRange, Foundation.INSCopying document)
+public virtual void Invalidate (UITextRange foundRange, Foundation.INSCopying document)

Type Changed: UIKit.IUITextSearching

Modified properties:

-public abstract UITextRange SelectedTextRange { get; }
+public virtual UITextRange SelectedTextRange { get; }

Added properties:

public virtual Foundation.INSCopying SelectedTextSearchDocument { get; }
public virtual bool SupportsTextReplacement { get; }

Modified methods:

-public abstract void ClearAllDecoratedFoundText ()
+public virtual void ClearAllDecoratedFoundText ()
-public abstract Foundation.NSComparisonResult Compare (UITextRange foundRange, UITextRange toRange, Foundation.INSCopying document)
+public virtual Foundation.NSComparisonResult Compare (UITextRange foundRange, UITextRange toRange, Foundation.INSCopying document)
-public abstract void Decorate (UITextRange foundRange, Foundation.INSCopying document, UITextSearchFoundTextStyle style)
+public virtual void Decorate (UITextRange foundRange, Foundation.INSCopying document, UITextSearchFoundTextStyle style)
-public abstract void PerformTextSearch (string string, UITextSearchOptions options, IUITextSearchAggregator aggregator)
+public virtual void PerformTextSearch (string string, UITextSearchOptions options, IUITextSearchAggregator aggregator)

Added methods:

public virtual Foundation.NSComparisonResult CompareOrder (Foundation.INSCopying fromDocument, Foundation.INSCopying toDocument);
public virtual void ReplaceAllOccurrences (string queryString, UITextSearchOptions options, string replacementText);
public virtual void ReplaceFoundText (UITextRange range, Foundation.INSCopying document, string replacementText);
public virtual void ScrollRangeToVisible (UITextRange range, Foundation.INSCopying document);
public virtual bool ShouldReplaceFoundText (UITextRange range, Foundation.INSCopying document, string replacementText);
public virtual void WillHighlight (UITextRange foundRange, Foundation.INSCopying document);

Type Changed: UIKit.IUITextSelectionDisplayInteractionDelegate

Added method:

public virtual UIView GetSelectionContainerViewBelowText (UITextSelectionDisplayInteraction interaction);

Type Changed: UIKit.IUITextSelectionHandleView

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment