stable-api-comparison/diff/dotnet/Microsoft.tvOS.Ref/ref/net8.0/Microsoft.tvOS.md (original) (raw)

stable-api-comparison/diff/dotnet/Microsoft.tvOS.Ref/ref/net8.0/Microsoft.tvOS.md

Microsoft.tvOS.dll

Assembly Version Changed: 16.4.0.0 -> 17.0.0.0

Namespace AVFoundation

Type Changed: AVFoundation.AVAssetImageGenerator

Added method:

public virtual void GenerateCGImageAsynchronously (CoreMedia.CMTime requestedTime, AVAssetImageGenerateAsynchronouslyForTimeCompletionHandler handler);

Type Changed: AVFoundation.AVAudioSession

Obsoleted properties:

[Obsolete ("Use 'AVAudioSessionCategory' enum values instead.")] public static Foundation.NSString CategoryAmbient { get; } [Obsolete ("Use 'AVAudioSessionCategory' enum values instead.")] public static Foundation.NSString CategoryMultiRoute { get; } [Obsolete ("Use 'AVAudioSessionCategory' enum values instead.")] public static Foundation.NSString CategoryPlayAndRecord { get; } [Obsolete ("Use 'AVAudioSessionCategory' enum values instead.")] public static Foundation.NSString CategoryPlayback { get; } [Obsolete ("Use 'AVAudioSessionCategory' enum values instead.")] public static Foundation.NSString CategoryRecord { get; } [Obsolete ("Use 'AVAudioSessionCategory' enum values instead.")] public static Foundation.NSString CategorySoloAmbient { get; } [Obsolete ("Use 'AVAudioSessionMode' enum values instead.")] public static Foundation.NSString ModeDefault { get; } [Obsolete ("Use 'AVAudioSessionMode' enum values instead.")] public static Foundation.NSString ModeGameChat { get; } [Obsolete ("Use 'AVAudioSessionMode' enum values instead.")] public static Foundation.NSString ModeMeasurement { get; } [Obsolete ("Use 'AVAudioSessionMode' enum values instead.")] public static Foundation.NSString ModeMoviePlayback { get; } [Obsolete ("Use 'AVAudioSessionMode' enum values instead.")] public static Foundation.NSString ModeSpokenAudio { get; } [Obsolete ("Use 'AVAudioSessionMode' enum values instead.")] public static Foundation.NSString ModeVideoChat { get; } [Obsolete ("Use 'AVAudioSessionMode' enum values instead.")] public static Foundation.NSString ModeVideoRecording { get; } [Obsolete ("Use 'AVAudioSessionMode' enum values instead.")] public static Foundation.NSString ModeVoiceChat { get; } [Obsolete ("Use 'AVAudioSessionMode' enum values instead.")] public static Foundation.NSString VoicePrompt { get; }

Added methods:

public Foundation.NSError SetActive (bool active, AVAudioSessionSetActiveOptions options); public bool SetCategory (AVAudioSessionCategory category, AVAudioSessionCategoryOptions options, out Foundation.NSError outError); public Foundation.NSError SetCategory (AVAudioSessionCategory category, AVAudioSessionMode mode, AVAudioSessionCategoryOptions options); public Foundation.NSError SetCategory (AVAudioSessionCategory category, string mode, AVAudioSessionCategoryOptions options); public bool SetCategory (AVAudioSessionCategory category, AVAudioSessionMode mode, AVAudioSessionCategoryOptions options, out Foundation.NSError outError); public bool SetCategory (AVAudioSessionCategory category, string mode, AVAudioSessionCategoryOptions options, out Foundation.NSError outError); public bool SetCategory (AVAudioSessionCategory category, AVAudioSessionMode mode, AVAudioSessionRouteSharingPolicy policy, AVAudioSessionCategoryOptions options, out Foundation.NSError outError); public bool SetCategory (AVAudioSessionCategory category, string mode, AVAudioSessionRouteSharingPolicy policy, AVAudioSessionCategoryOptions options, out Foundation.NSError outError); public bool SetMode (AVAudioSessionMode mode, out Foundation.NSError error);

Type Changed: AVFoundation.AVAudioSinkNode

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 AVAudioSinkNode (AVAudioSinkNodeReceiverHandler receiverHandler);

Added constructors:

public AVAudioSinkNode (AVAudioSinkNodeReceiverHandler2 receiverHandler); public AVAudioSinkNode (AVAudioSinkNodeReceiverHandlerRaw receiverHandler);

Type Changed: AVFoundation.AVMetadataObjectTypeExtensions

Added methods:

public static Foundation.NSString[] ToArray (this AVMetadataObjectType value); public static AVMetadataObjectType ToFlags (System.Collections.Generic.IEnumerable<Foundation.NSString> constants);

Type Changed: AVFoundation.AVMutableComposition

Added method:

public virtual Cinematic.CNCompositionInfo AddTracks (Cinematic.CNAssetInfo assetInfo, int preferredStartingTrackID);

New Type: AVFoundation.AVAssetImageGenerateAsynchronouslyForTimeCompletionHandler

public sealed delegate AVAssetImageGenerateAsynchronouslyForTimeCompletionHandler : System.MulticastDelegate { // constructors public AVAssetImageGenerateAsynchronouslyForTimeCompletionHandler (object object, IntPtr method); // methods public virtual System.IAsyncResult BeginInvoke (CoreGraphics.CGImage imageRef, CoreMedia.CMTime actualTime, Foundation.NSError error, System.AsyncCallback callback, object object); public virtual void EndInvoke (System.IAsyncResult result); public virtual void Invoke (CoreGraphics.CGImage imageRef, CoreMedia.CMTime actualTime, Foundation.NSError error); }

New Type: AVFoundation.AVAudioSessionCategoryExtensions

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

New Type: AVFoundation.AVAudioSessionMode

[Serializable] public enum AVAudioSessionMode { Default = 0, GameChat = 4, Measurement = 3, MoviePlayback = 5, SpokenAudio = 7, VideoChat = 6, VideoRecording = 2, VoiceChat = 1, VoicePrompt = 8, }

New Type: AVFoundation.AVAudioSessionModeExtensions

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

New Type: AVFoundation.AVAudioSinkNodeReceiverHandler2

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

New Type: AVFoundation.AVAudioSinkNodeReceiverHandlerRaw

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

Namespace Accessibility

New Type: Accessibility.AXAnimatedImagesUtilities

public static class AXAnimatedImagesUtilities { // properties public static Foundation.NSString AnimatedImagesEnabledDidChangeNotification { get; } public static bool Enabled { get; }

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

}

New Type: Accessibility.AXCustomContentProvider_Extensions

public static class AXCustomContentProvider_Extensions { // methods public static System.Func<AXCustomContent[]> GetAccessibilityCustomContentHandler (this IAXCustomContentProvider This); public static void SetAccessibilityCustomContentHandler (this IAXCustomContentProvider This, System.Func<AXCustomContent[]> value); }

New Type: Accessibility.AXPrefers

public static class AXPrefers { // properties public static Foundation.NSString HorizontalTextLayoutDidChangeNotification { get; } // methods public static bool HorizontalTextEnabled ();

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

}

Namespace AudioToolbox

Type Changed: AudioToolbox.AudioChannelLayoutTag

Added values:

Ogg_3_0 = 9830403, Ogg_4_0 = 12124164, Ogg_5_0 = 13893637, Ogg_5_1 = 13959174, Ogg_6_1 = 14024711, Ogg_7_1 = 14090248,

Namespace AuthenticationServices

New Type: AuthenticationServices.ASAuthorizationPublicKeyCredentialAttachment

[Serializable] public enum ASAuthorizationPublicKeyCredentialAttachment { CrossPlatform = 1, Platform = 0, }

New Type: AuthenticationServices.ASAuthorizationWebBrowserPublicKeyCredentialManagerAuthorizationState

[Serializable] public enum ASAuthorizationWebBrowserPublicKeyCredentialManagerAuthorizationState { Authorized = 0, Denied = 1, NotDetermined = 2, }

New Type: AuthenticationServices.ASPublicKeyCredentialClientDataCrossOriginValue

[Serializable] public enum ASPublicKeyCredentialClientDataCrossOriginValue { CrossOrigin = 1, NotSet = 0, SameOriginWithAncestors = 2, }

Namespace BackgroundTasks

New Type: BackgroundTasks.BGHealthResearchTask

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

New Type: BackgroundTasks.BGHealthResearchTaskRequest

public class BGHealthResearchTaskRequest : BackgroundTasks.BGProcessingTaskRequest { // constructors public BGHealthResearchTaskRequest (); protected BGHealthResearchTaskRequest (Foundation.NSObjectFlag t); protected BGHealthResearchTaskRequest (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual string ProtectionTypeOfRequiredData { get; set; } }

Namespace CloudKit

Type Changed: CloudKit.CKQueryOperation

Added property:

public static IntPtr MaximumResults { get; }

Type Changed: CloudKit.CKRecord

Added properties:

public static Foundation.NSString CreationDateKey { get; } public static Foundation.NSString CreatorUserRecordIdKey { get; } public static Foundation.NSString LastModifiedUserRecordIdKey { get; } public static Foundation.NSString ModificationDateKey { get; } public static Foundation.NSString RecordIdKey { get; }

Type Changed: CloudKit.CKShareMetadata

Obsoleted constructors:

[Obsolete ("Get them from 'CKFetchShareMetadataOperation' or platform-specific scene / app delegate callbacks.")] public CKShareMetadata ();

New Type: CloudKit.CKSyncEngine

public class CKSyncEngine : Foundation.NSObject { // constructors public CKSyncEngine (CKSyncEngineConfiguration configuration); protected CKSyncEngine (Foundation.NSObjectFlag t); protected CKSyncEngine (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual CKDatabase Database { get; } public virtual CKSyncEngineState State { get; } // methods public virtual void CancelOperations (System.Action completionHandler); public virtual System.Threading.Tasks.Task CancelOperationsAsync (); public virtual void FetchChanges (System.Action<Foundation.NSError> completionHandler); public virtual void FetchChanges (CKSyncEngineFetchChangesOptions options, System.Action<Foundation.NSError> completionHandler); public virtual System.Threading.Tasks.Task FetchChangesAsync (); public virtual System.Threading.Tasks.Task FetchChangesAsync (CKSyncEngineFetchChangesOptions options); public virtual void SendChanges (System.Action<Foundation.NSError> completionHandler); public virtual void SendChanges (CKSyncEngineSendChangesOptions options, System.Action<Foundation.NSError> completionHandler); public virtual System.Threading.Tasks.Task SendChangesAsync (); public virtual System.Threading.Tasks.Task SendChangesAsync (CKSyncEngineSendChangesOptions options); }

New Type: CloudKit.CKSyncEngineAccountChangeEvent

public class CKSyncEngineAccountChangeEvent : CloudKit.CKSyncEngineEvent { // constructors public CKSyncEngineAccountChangeEvent (); protected CKSyncEngineAccountChangeEvent (Foundation.NSObjectFlag t); protected CKSyncEngineAccountChangeEvent (ObjCRuntime.NativeHandle handle); // properties public virtual CKSyncEngineAccountChangeType ChangeType { get; } public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual CKRecordID CurrentUser { get; } public virtual CKRecordID PreviousUser { get; } }

New Type: CloudKit.CKSyncEngineAccountChangeType

[Serializable] public enum CKSyncEngineAccountChangeType { SignIn = 0, SignOut = 1, SwitchAccounts = 2, }

New Type: CloudKit.CKSyncEngineConfiguration

public class CKSyncEngineConfiguration : Foundation.NSObject { // constructors protected CKSyncEngineConfiguration (Foundation.NSObjectFlag t); protected CKSyncEngineConfiguration (ObjCRuntime.NativeHandle handle); public CKSyncEngineConfiguration (CKDatabase database, CKSyncEngineStateSerialization stateSerialization, ICKSyncEngineDelegate delegate); // properties public virtual bool AutomaticallySync { get; set; } public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual CKDatabase Database { get; set; } public ICKSyncEngineDelegate Delegate { get; set; } public virtual CKSyncEngineStateSerialization StateSerialization { get; set; } public virtual string SubscriptionId { get; set; } public virtual Foundation.NSObject WeakDelegate { get; set; } // methods protected override void Dispose (bool disposing); }

New Type: CloudKit.CKSyncEngineDelegate

public abstract class CKSyncEngineDelegate : Foundation.NSObject, ICKSyncEngineDelegate, ObjCRuntime.INativeObject, System.IDisposable { // constructors protected CKSyncEngineDelegate (); protected CKSyncEngineDelegate (Foundation.NSObjectFlag t); protected CKSyncEngineDelegate (ObjCRuntime.NativeHandle handle); // methods public virtual void SyncEngine (CKSyncEngine syncEngine, CKSyncEngineEvent event); public virtual CKSyncEngineFetchChangesOptions SyncEngine (CKSyncEngine syncEngine, CKSyncEngineFetchChangesContext context); public virtual CKSyncEngineRecordZoneChangeBatch SyncEngine (CKSyncEngine syncEngine, CKSyncEngineSendChangesContext context); }

New Type: CloudKit.CKSyncEngineDelegate_Extensions

public static class CKSyncEngineDelegate_Extensions { // methods public static CKSyncEngineFetchChangesOptions SyncEngine (this ICKSyncEngineDelegate This, CKSyncEngine syncEngine, CKSyncEngineFetchChangesContext context); }

New Type: CloudKit.CKSyncEngineDidFetchChangesEvent

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

New Type: CloudKit.CKSyncEngineDidFetchRecordZoneChangesEvent

public class CKSyncEngineDidFetchRecordZoneChangesEvent : CloudKit.CKSyncEngineEvent { // constructors public CKSyncEngineDidFetchRecordZoneChangesEvent (); protected CKSyncEngineDidFetchRecordZoneChangesEvent (Foundation.NSObjectFlag t); protected CKSyncEngineDidFetchRecordZoneChangesEvent (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual Foundation.NSError Error { get; } public virtual CKRecordZoneID ZoneId { get; } }

New Type: CloudKit.CKSyncEngineDidSendChangesEvent

public class CKSyncEngineDidSendChangesEvent : CloudKit.CKSyncEngineEvent { // constructors public CKSyncEngineDidSendChangesEvent (); protected CKSyncEngineDidSendChangesEvent (Foundation.NSObjectFlag t); protected CKSyncEngineDidSendChangesEvent (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual CKSyncEngineSendChangesContext Context { get; } }

New Type: CloudKit.CKSyncEngineEvent

public class CKSyncEngineEvent : Foundation.NSObject { // constructors protected CKSyncEngineEvent (Foundation.NSObjectFlag t); protected CKSyncEngineEvent (ObjCRuntime.NativeHandle handle); // properties public virtual CKSyncEngineAccountChangeEvent AccountChangeEvent { get; } public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual CKSyncEngineDidFetchChangesEvent DidFetchChangesEvent { get; } public virtual CKSyncEngineDidFetchRecordZoneChangesEvent DidFetchRecordZoneChangesEvent { get; } public virtual CKSyncEngineDidSendChangesEvent DidSendChangesEvent { get; } public virtual CKSyncEngineFetchedDatabaseChangesEvent FetchedDatabaseChangesEvent { get; } public virtual CKSyncEngineFetchedRecordZoneChangesEvent FetchedRecordZoneChangesEvent { get; } public virtual CKSyncEngineSentDatabaseChangesEvent SentDatabaseChangesEvent { get; } public virtual CKSyncEngineSentRecordZoneChangesEvent SentRecordZoneChangesEvent { get; } public virtual CKSyncEngineStateUpdateEvent StateUpdateEvent { get; } public virtual CKSyncEngineEventType Type { get; } public virtual CKSyncEngineWillFetchChangesEvent WillFetchChangesEvent { get; } public virtual CKSyncEngineWillFetchRecordZoneChangesEvent WillFetchRecordZoneChangesEvent { get; } public virtual CKSyncEngineWillSendChangesEvent WillSendChangesEvent { get; } }

New Type: CloudKit.CKSyncEngineEventType

[Serializable] public enum CKSyncEngineEventType { AccountChange = 1, DidFetchChanges = 9, DidFetchRecordZoneChanges = 8, DidSendChanges = 11, FetchedDatabaseChanges = 2, FetchedRecordZoneChanges = 3, SentDatabaseChanges = 4, SentRecordZoneChanges = 5, StateUpdate = 0, WillFetchChanges = 6, WillFetchRecordZoneChanges = 7, WillSendChanges = 10, }

New Type: CloudKit.CKSyncEngineFailedRecordSave

public class CKSyncEngineFailedRecordSave : Foundation.NSObject { // constructors protected CKSyncEngineFailedRecordSave (Foundation.NSObjectFlag t); protected CKSyncEngineFailedRecordSave (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual Foundation.NSError Error { get; } public virtual CKRecord Record { get; } }

New Type: CloudKit.CKSyncEngineFailedZoneSave

public class CKSyncEngineFailedZoneSave : Foundation.NSObject { // constructors protected CKSyncEngineFailedZoneSave (Foundation.NSObjectFlag t); protected CKSyncEngineFailedZoneSave (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual Foundation.NSError Error { get; } public virtual CKRecordZone RecordZone { get; } }

New Type: CloudKit.CKSyncEngineFetchChangesContext

public class CKSyncEngineFetchChangesContext : Foundation.NSObject { // constructors protected CKSyncEngineFetchChangesContext (Foundation.NSObjectFlag t); protected CKSyncEngineFetchChangesContext (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual CKSyncEngineFetchChangesOptions Options { get; } public virtual CKSyncEngineSyncReason Reason { get; } }

New Type: CloudKit.CKSyncEngineFetchChangesOptions

public class CKSyncEngineFetchChangesOptions : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable { // constructors public CKSyncEngineFetchChangesOptions (); public CKSyncEngineFetchChangesOptions (CKSyncEngineFetchChangesScope scope); protected CKSyncEngineFetchChangesOptions (Foundation.NSObjectFlag t); protected CKSyncEngineFetchChangesOptions (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual CKOperationGroup OperationGroup { get; set; } public virtual CKRecordZoneID[] PrioritizedZoneIds { get; set; } public virtual CKSyncEngineFetchChangesScope Scope { get; set; } // methods public virtual Foundation.NSObject Copy (Foundation.NSZone zone); }

New Type: CloudKit.CKSyncEngineFetchChangesScope

public class CKSyncEngineFetchChangesScope : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable { // constructors public CKSyncEngineFetchChangesScope (); protected CKSyncEngineFetchChangesScope (Foundation.NSObjectFlag t); protected CKSyncEngineFetchChangesScope (ObjCRuntime.NativeHandle handle); public CKSyncEngineFetchChangesScope (Foundation.NSSet zoneIds, bool excluded); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual Foundation.NSSet ExcludedZoneIds { get; } public virtual Foundation.NSSet ZoneIds { get; } // methods public virtual Foundation.NSObject Copy (Foundation.NSZone zone); }

New Type: CloudKit.CKSyncEngineFetchedDatabaseChangesEvent

public class CKSyncEngineFetchedDatabaseChangesEvent : CloudKit.CKSyncEngineEvent { // constructors public CKSyncEngineFetchedDatabaseChangesEvent (); protected CKSyncEngineFetchedDatabaseChangesEvent (Foundation.NSObjectFlag t); protected CKSyncEngineFetchedDatabaseChangesEvent (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual CKSyncEngineFetchedZoneDeletion[] Deletions { get; } public virtual CKRecordZone[] Modifications { get; } }

New Type: CloudKit.CKSyncEngineFetchedRecordDeletion

public class CKSyncEngineFetchedRecordDeletion : Foundation.NSObject { // constructors protected CKSyncEngineFetchedRecordDeletion (Foundation.NSObjectFlag t); protected CKSyncEngineFetchedRecordDeletion (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual CKRecordID RecordId { get; } public virtual string RecordType { get; } }

New Type: CloudKit.CKSyncEngineFetchedRecordZoneChangesEvent

public class CKSyncEngineFetchedRecordZoneChangesEvent : CloudKit.CKSyncEngineEvent { // constructors public CKSyncEngineFetchedRecordZoneChangesEvent (); protected CKSyncEngineFetchedRecordZoneChangesEvent (Foundation.NSObjectFlag t); protected CKSyncEngineFetchedRecordZoneChangesEvent (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual CKSyncEngineFetchedRecordDeletion[] Deletions { get; } public virtual CKRecord[] Modifications { get; } }

New Type: CloudKit.CKSyncEngineFetchedZoneDeletion

public class CKSyncEngineFetchedZoneDeletion : Foundation.NSObject { // constructors protected CKSyncEngineFetchedZoneDeletion (Foundation.NSObjectFlag t); protected CKSyncEngineFetchedZoneDeletion (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual CKSyncEngineZoneDeletionReason Reason { get; } public virtual CKRecordZoneID ZoneId { get; } }

New Type: CloudKit.CKSyncEnginePendingDatabaseChange

public class CKSyncEnginePendingDatabaseChange : Foundation.NSObject { // constructors protected CKSyncEnginePendingDatabaseChange (Foundation.NSObjectFlag t); protected CKSyncEnginePendingDatabaseChange (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual CKSyncEnginePendingDatabaseChangeType Type { get; } public virtual CKRecordZoneID ZoneId { get; } }

New Type: CloudKit.CKSyncEnginePendingDatabaseChangeType

[Serializable] public enum CKSyncEnginePendingDatabaseChangeType { DeleteZone = 1, SaveZone = 0, }

New Type: CloudKit.CKSyncEnginePendingRecordZoneChange

public class CKSyncEnginePendingRecordZoneChange : Foundation.NSObject { // constructors protected CKSyncEnginePendingRecordZoneChange (Foundation.NSObjectFlag t); protected CKSyncEnginePendingRecordZoneChange (ObjCRuntime.NativeHandle handle); public CKSyncEnginePendingRecordZoneChange (CKRecordID recordId, CKSyncEnginePendingRecordZoneChangeType type); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual CKRecordID RecordId { get; } public virtual CKSyncEnginePendingRecordZoneChangeType Type { get; } }

New Type: CloudKit.CKSyncEnginePendingRecordZoneChangeType

[Serializable] public enum CKSyncEnginePendingRecordZoneChangeType { DeleteRecord = 1, SaveRecord = 0, }

New Type: CloudKit.CKSyncEnginePendingZoneDelete

public class CKSyncEnginePendingZoneDelete : CloudKit.CKSyncEnginePendingDatabaseChange { // constructors public CKSyncEnginePendingZoneDelete (); public CKSyncEnginePendingZoneDelete (CKRecordZoneID zoneId); protected CKSyncEnginePendingZoneDelete (Foundation.NSObjectFlag t); protected CKSyncEnginePendingZoneDelete (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } }

New Type: CloudKit.CKSyncEnginePendingZoneSave

public class CKSyncEnginePendingZoneSave : CloudKit.CKSyncEnginePendingDatabaseChange { // constructors public CKSyncEnginePendingZoneSave (); public CKSyncEnginePendingZoneSave (CKRecordZone zone); protected CKSyncEnginePendingZoneSave (Foundation.NSObjectFlag t); protected CKSyncEnginePendingZoneSave (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual CKRecordZone Zone { get; } }

New Type: CloudKit.CKSyncEngineRecordZoneChangeBatch

public class CKSyncEngineRecordZoneChangeBatch : Foundation.NSObject { // constructors protected CKSyncEngineRecordZoneChangeBatch (Foundation.NSObjectFlag t); protected CKSyncEngineRecordZoneChangeBatch (ObjCRuntime.NativeHandle handle); public CKSyncEngineRecordZoneChangeBatch (CKSyncEnginePendingRecordZoneChange[] pendingChanges, System.Func<CKRecordID,CloudKit.CKRecord> recordProvider); public CKSyncEngineRecordZoneChangeBatch (CKRecord[] recordsToSave, CKRecordID[] recordIdsToDelete, bool atomicByZone); // properties public virtual bool AtomicByZone { get; set; } public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual CKRecordID[] RecordIdsToDelete { get; } public virtual CKRecord[] RecordsToSave { get; } }

New Type: CloudKit.CKSyncEngineSendChangesContext

public class CKSyncEngineSendChangesContext : Foundation.NSObject { // constructors protected CKSyncEngineSendChangesContext (Foundation.NSObjectFlag t); protected CKSyncEngineSendChangesContext (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual CKSyncEngineSendChangesOptions Options { get; } public virtual CKSyncEngineSyncReason Reason { get; } }

New Type: CloudKit.CKSyncEngineSendChangesOptions

public class CKSyncEngineSendChangesOptions : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable { // constructors public CKSyncEngineSendChangesOptions (); public CKSyncEngineSendChangesOptions (CKSyncEngineSendChangesScope scope); protected CKSyncEngineSendChangesOptions (Foundation.NSObjectFlag t); protected CKSyncEngineSendChangesOptions (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual CKOperationGroup OperationGroup { get; set; } public virtual CKSyncEngineSendChangesScope Scope { get; set; } // methods public virtual Foundation.NSObject Copy (Foundation.NSZone zone); }

New Type: CloudKit.CKSyncEngineSendChangesScope

public class CKSyncEngineSendChangesScope : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable { // constructors public CKSyncEngineSendChangesScope (); protected CKSyncEngineSendChangesScope (Foundation.NSObjectFlag t); public CKSyncEngineSendChangesScope (Foundation.NSSet recordIds); protected CKSyncEngineSendChangesScope (ObjCRuntime.NativeHandle handle); public CKSyncEngineSendChangesScope (Foundation.NSSet zoneIds, bool excluded); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual Foundation.NSSet ExcludedZoneIds { get; } public virtual Foundation.NSSet RecordIds { get; } public virtual Foundation.NSSet ZoneIds { get; } // methods public virtual bool ContainsPendingRecordZoneChange (CKSyncEnginePendingRecordZoneChange pendingRecordZoneChange); public virtual bool ContainsRecordId (CKRecordID recordId); public virtual Foundation.NSObject Copy (Foundation.NSZone zone); }

New Type: CloudKit.CKSyncEngineSentDatabaseChangesEvent

public class CKSyncEngineSentDatabaseChangesEvent : CloudKit.CKSyncEngineEvent { // constructors public CKSyncEngineSentDatabaseChangesEvent (); protected CKSyncEngineSentDatabaseChangesEvent (Foundation.NSObjectFlag t); protected CKSyncEngineSentDatabaseChangesEvent (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual CKRecordZoneID[] DeletedZoneIds { get; } public virtual Foundation.NSDictionary<CKRecordZoneID,Foundation.NSError> FailedZoneDeletes { get; } public virtual CKSyncEngineFailedZoneSave[] FailedZoneSaves { get; } public virtual CKRecordZone[] SavedZones { get; } }

New Type: CloudKit.CKSyncEngineSentRecordZoneChangesEvent

public class CKSyncEngineSentRecordZoneChangesEvent : CloudKit.CKSyncEngineEvent { // constructors public CKSyncEngineSentRecordZoneChangesEvent (); protected CKSyncEngineSentRecordZoneChangesEvent (Foundation.NSObjectFlag t); protected CKSyncEngineSentRecordZoneChangesEvent (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual CKRecordID[] DeletedRecordIds { get; } public virtual Foundation.NSDictionary<CKRecordID,Foundation.NSError> FailedRecordDeletes { get; } public virtual CKSyncEngineFailedRecordSave[] FailedRecordSaves { get; } public virtual CKRecord[] SavedRecords { get; } }

New Type: CloudKit.CKSyncEngineState

public class CKSyncEngineState : Foundation.NSObject { // constructors protected CKSyncEngineState (Foundation.NSObjectFlag t); protected CKSyncEngineState (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual bool HasPendingUntrackedChanges { get; set; } public virtual CKSyncEnginePendingDatabaseChange[] PendingDatabaseChanges { get; } public virtual CKSyncEnginePendingRecordZoneChange[] PendingRecordZoneChanges { get; } public virtual CKRecordZoneID[] ZoneIdsWithUnfetchedServerChanges { get; } // methods public virtual void AddPendingDatabaseChanges (CKSyncEnginePendingDatabaseChange[] changes); public virtual void AddPendingRecordZoneChanges (CKSyncEnginePendingRecordZoneChange[] changes); public virtual void RemovePendingDatabaseChanges (CKSyncEnginePendingDatabaseChange[] changes); public virtual void RemovePendingRecordZoneChanges (CKSyncEnginePendingRecordZoneChange[] changes); }

New Type: CloudKit.CKSyncEngineStateSerialization

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

New Type: CloudKit.CKSyncEngineStateUpdateEvent

public class CKSyncEngineStateUpdateEvent : CloudKit.CKSyncEngineEvent { // constructors public CKSyncEngineStateUpdateEvent (); protected CKSyncEngineStateUpdateEvent (Foundation.NSObjectFlag t); protected CKSyncEngineStateUpdateEvent (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual CKSyncEngineStateSerialization StateSerialization { get; } }

New Type: CloudKit.CKSyncEngineSyncReason

[Serializable] public enum CKSyncEngineSyncReason { Manual = 1, Scheduled = 0, }

New Type: CloudKit.CKSyncEngineWillFetchChangesEvent

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

New Type: CloudKit.CKSyncEngineWillFetchRecordZoneChangesEvent

public class CKSyncEngineWillFetchRecordZoneChangesEvent : CloudKit.CKSyncEngineEvent { // constructors public CKSyncEngineWillFetchRecordZoneChangesEvent (); protected CKSyncEngineWillFetchRecordZoneChangesEvent (Foundation.NSObjectFlag t); protected CKSyncEngineWillFetchRecordZoneChangesEvent (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual CKRecordZoneID ZoneId { get; } }

New Type: CloudKit.CKSyncEngineWillSendChangesEvent

public class CKSyncEngineWillSendChangesEvent : CloudKit.CKSyncEngineEvent { // constructors public CKSyncEngineWillSendChangesEvent (); protected CKSyncEngineWillSendChangesEvent (Foundation.NSObjectFlag t); protected CKSyncEngineWillSendChangesEvent (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual CKSyncEngineSendChangesContext Context { get; } }

New Type: CloudKit.CKSyncEngineZoneDeletionReason

[Serializable] public enum CKSyncEngineZoneDeletionReason { Deleted = 0, EncryptedDataReset = 2, Purged = 1, }

New Type: CloudKit.ICKSyncEngineDelegate

public interface ICKSyncEngineDelegate : ObjCRuntime.INativeObject, System.IDisposable { // methods public virtual void SyncEngine (CKSyncEngine syncEngine, CKSyncEngineEvent event); public virtual CKSyncEngineRecordZoneChangeBatch SyncEngine (CKSyncEngine syncEngine, CKSyncEngineSendChangesContext context); }

Namespace CoreBluetooth

Type Changed: CoreBluetooth.CBCentralManager

Added event:

public event System.EventHandler DidDisconnectPeripheral;

Type Changed: CoreBluetooth.CBCentralManagerDelegate

Added method:

public virtual void DidDisconnectPeripheral (CBCentralManager central, CBPeripheral peripheral, double timestamp, bool isReconnecting, Foundation.NSError error);

Type Changed: CoreBluetooth.CBCentralManagerDelegate_Extensions

Added method:

public static void DidDisconnectPeripheral (this ICBCentralManagerDelegate This, CBCentralManager central, CBPeripheral peripheral, double timestamp, bool isReconnecting, Foundation.NSError error);

Type Changed: CoreBluetooth.CBConnectPeripheralOptions

Added property:

public bool? EnableAutoReconnect { get; }

New Type: CoreBluetooth.CBPeripheralDiconnectionEventEventArgs

public class CBPeripheralDiconnectionEventEventArgs : System.EventArgs { // constructors public CBPeripheralDiconnectionEventEventArgs (CBPeripheral peripheral, double timestamp, bool isReconnecting, Foundation.NSError error); // properties public Foundation.NSError Error { get; set; } public bool IsReconnecting { get; set; } public CBPeripheral Peripheral { get; set; } public double Timestamp { get; set; } }

Namespace CoreData

Type Changed: CoreData.NSAttributeType

Added value:

CompositeAttributeType = 2100,

Type Changed: CoreData.NSManagedObjectModel

Added property:

public virtual string VersionChecksum { get; }

Added method:

public static Foundation.NSDictionary<Foundation.NSString,Foundation.NSString> ChecksumsForVersionedModel (Foundation.NSUrl modelUrl, out Foundation.NSError error);

Type Changed: CoreData.NSPersistentStoreCoordinator

Added methods:

public virtual bool FinishDeferredLightweightMigration (out Foundation.NSError error); public virtual bool FinishDeferredLightweightMigrationTask (out Foundation.NSError error);

Type Changed: CoreData.UserInfoKeys

Added properties:

public static Foundation.NSString DeferredLightweightMigrationOptionKey { get; } public static Foundation.NSString StagedMigrationManagerOptionKey { get; }

New Type: CoreData.NSCompositeAttributeDescription

public class NSCompositeAttributeDescription : CoreData.NSAttributeDescription { // constructors public NSCompositeAttributeDescription (); public NSCompositeAttributeDescription (Foundation.NSCoder coder); protected NSCompositeAttributeDescription (Foundation.NSObjectFlag t); protected NSCompositeAttributeDescription (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual NSAttributeDescription[] Elements { get; set; } }

New Type: CoreData.NSCustomMigrationStage

public class NSCustomMigrationStage : CoreData.NSMigrationStage { // constructors protected NSCustomMigrationStage (Foundation.NSObjectFlag t); protected NSCustomMigrationStage (ObjCRuntime.NativeHandle handle); public NSCustomMigrationStage (NSManagedObjectModelReference currentModel, NSManagedObjectModelReference nextModel); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual NSManagedObjectModelReference CurrentModel { get; } public virtual System.Func<NSStagedMigrationManager,CoreData.NSCustomMigrationStage,Foundation.NSError,System.Boolean> DidMigrateHandler { get; set; } public virtual NSManagedObjectModelReference NextModel { get; } public virtual System.Func<NSStagedMigrationManager,CoreData.NSCustomMigrationStage,Foundation.NSError,System.Boolean> WillMigrateHandler { get; set; } }

New Type: CoreData.NSLightweightMigrationStage

public class NSLightweightMigrationStage : CoreData.NSMigrationStage { // constructors protected NSLightweightMigrationStage (Foundation.NSObjectFlag t); protected NSLightweightMigrationStage (ObjCRuntime.NativeHandle handle); public NSLightweightMigrationStage (string[] versionChecksums); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual string[] VersionChecksums { get; } }

New Type: CoreData.NSManagedObjectModelReference

public class NSManagedObjectModelReference : Foundation.NSObject { // constructors protected NSManagedObjectModelReference (Foundation.NSObjectFlag t); protected NSManagedObjectModelReference (ObjCRuntime.NativeHandle handle); public NSManagedObjectModelReference (NSManagedObjectModel model, string versionChecksum); public NSManagedObjectModelReference (Foundation.NSUrl fileUrl, string versionChecksum); public NSManagedObjectModelReference (Foundation.NSDictionary versionHash, Foundation.NSBundle bundle, string versionChecksum); public NSManagedObjectModelReference (string modelName, Foundation.NSBundle bundle, string versionChecksum); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual NSManagedObjectModel ResolvedModel { get; } public virtual string VersionChecksum { get; } }

New Type: CoreData.NSMigrationStage

public class NSMigrationStage : Foundation.NSObject { // constructors public NSMigrationStage (); protected NSMigrationStage (Foundation.NSObjectFlag t); protected NSMigrationStage (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual string Label { get; set; } }

New Type: CoreData.NSStagedMigrationManager

public class NSStagedMigrationManager : Foundation.NSObject { // constructors public NSStagedMigrationManager (NSMigrationStage[] stages); protected NSStagedMigrationManager (Foundation.NSObjectFlag t); protected NSStagedMigrationManager (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual NSPersistentContainer Container { get; } public virtual NSMigrationStage[] Stages { get; } }

Namespace CoreFoundation

Type Changed: CoreFoundation.CFReadStream

Obsoleted methods:

[Obsolete ("Use the other overload.")] protected override bool DoSetClient (CFStream.CFStreamCallback callback, IntPtr eventTypes, IntPtr context);

Added method:

protected override byte DoSetClient (method System.Void *(System.IntPtr,System.IntPtr,System.IntPtr) callback, IntPtr eventTypes, IntPtr context);

Type Changed: CoreFoundation.CFRunLoop

Added properties:

public string[] AllModes { get; } public string CurrentMode { get; }

Added method:

public CFRunLoopExitReason RunInMode (string mode, double seconds, bool returnAfterSourceHandled);

Type Changed: CoreFoundation.CFStream

Obsoleted methods:

[Obsolete ("Use the other overload.")] protected virtual bool DoSetClient (CFStream.CFStreamCallback callback, IntPtr eventTypes, IntPtr context);

Added method:

protected virtual byte DoSetClient (method System.Void *(System.IntPtr,System.IntPtr,System.IntPtr) callback, IntPtr eventTypes, IntPtr context);

Type Changed: CoreFoundation.CFWriteStream

Obsoleted methods:

[Obsolete ("Use the other overload.")] protected override bool DoSetClient (CFStream.CFStreamCallback callback, IntPtr eventTypes, IntPtr context);

Added method:

protected override byte DoSetClient (method System.Void *(System.IntPtr,System.IntPtr,System.IntPtr) callback, IntPtr eventTypes, IntPtr context);

Namespace CoreGraphics

Type Changed: CoreGraphics.CGContext

Added method:

public void DrawConicGradient (CGGradient gradient, CGPoint point, System.Runtime.InteropServices.NFloat angle);

Namespace CoreImage

Type Changed: CoreImage.CIContext

Added property:

public static Foundation.NSString MemoryLimit { get; }

Added methods:

public virtual Foundation.NSData GetOpenEXRRepresentation (CIImage image, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> options, out Foundation.NSError errorPtr); public virtual bool WriteOpenExrRepresentation (CIImage image, Foundation.NSUrl url, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> options, out Foundation.NSError errorPtr);

Type Changed: CoreImage.CIFilter

Added properties:

public static CIBlurredRectangleGenerator BlurredRectangleGeneratorFilter { get; } public static CICannyEdgeDetector CannyEdgeDetectorFilter { get; } public static CIRoundedRectangleStrokeGenerator RoundedRectangleStrokeGeneratorFilter { get; } public static CISobelGradients SobelGradientsFilter { get; }

Type Changed: CoreImage.CIImage

Added properties:

public static int FormatRgb10 { get; } public static int FormatRgbX16 { get; } public static int FormatRgbXf { get; } public static int FormatRgbXh { get; }

Type Changed: CoreImage.CIImageProcessorInput_Extensions

Added methods:

public static UIntPtr GetRoiTileCount (this ICIImageProcessorInput This); public static UIntPtr GetRoiTileIndex (this ICIImageProcessorInput This);

Type Changed: CoreImage.CIImageProcessorKernel

Added method:

public static CIVector[] GetRoiTileArray (int input, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> arguments, CoreGraphics.CGRect outputRect);

Type Changed: CoreImage.CIPhotoEffect

Added property:

public bool Extrapolate { get; set; }

Type Changed: CoreImage.CIRenderInfo

Added property:

public virtual double KernelCompileTime { get; }

New Type: CoreImage.CIBlurredRectangleGenerator

public class CIBlurredRectangleGenerator : CoreImage.CIFilter, ICIBlurredRectangleGeneratorProtocol, ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable { // constructors public CIBlurredRectangleGenerator (); public CIBlurredRectangleGenerator (Foundation.NSCoder coder); protected CIBlurredRectangleGenerator (Foundation.NSObjectFlag t); protected CIBlurredRectangleGenerator (ObjCRuntime.NativeHandle handle); // properties public virtual CIColor Color { get; set; } public virtual CoreGraphics.CGRect InputExtent { get; set; } public virtual CIImage OutputImage { get; } public virtual float Sigma { get; set; } }

New Type: CoreImage.CICannyEdgeDetector

public class CICannyEdgeDetector : CoreImage.CIFilter, ICICannyEdgeDetectorProtocol, ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable { // constructors public CICannyEdgeDetector (); public CICannyEdgeDetector (Foundation.NSCoder coder); protected CICannyEdgeDetector (Foundation.NSObjectFlag t); protected CICannyEdgeDetector (ObjCRuntime.NativeHandle handle); // properties public virtual float GaussianSigma { get; set; } public virtual IntPtr HysteresisPasses { get; set; } public virtual CIImage InputImage { get; set; } public virtual CIImage OutputImage { get; } public virtual bool Perceptual { get; set; } public virtual float ThresholdHigh { get; set; } public virtual float ThresholdLow { get; set; } }

New Type: CoreImage.CIPhotoEffectProtocol_Extensions

public static class CIPhotoEffectProtocol_Extensions { // methods public static bool GetExtrapolate (this ICIPhotoEffectProtocol This); public static void SetExtrapolate (this ICIPhotoEffectProtocol This, bool value); }

New Type: CoreImage.CIRoundedRectangleStrokeGenerator

public class CIRoundedRectangleStrokeGenerator : CoreImage.CIFilter, ICIFilterProtocol, ICIRoundedRectangleStrokeGeneratorProtocol, ObjCRuntime.INativeObject, System.IDisposable { // constructors public CIRoundedRectangleStrokeGenerator (); public CIRoundedRectangleStrokeGenerator (Foundation.NSCoder coder); protected CIRoundedRectangleStrokeGenerator (Foundation.NSObjectFlag t); protected CIRoundedRectangleStrokeGenerator (ObjCRuntime.NativeHandle handle); // properties public virtual CIColor Color { get; set; } public virtual CoreGraphics.CGRect InputExtent { get; set; } public virtual CIImage OutputImage { get; } public virtual float Radius { get; set; } public virtual float Width { get; set; } }

New Type: CoreImage.CISobelGradients

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

New Type: CoreImage.ICIBlurredRectangleGeneratorProtocol

public interface ICIBlurredRectangleGeneratorProtocol : ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable { // properties public virtual CIColor Color { get; set; } public virtual CoreGraphics.CGRect InputExtent { get; set; } public virtual float Sigma { get; set; } }

New Type: CoreImage.ICICannyEdgeDetectorProtocol

public interface ICICannyEdgeDetectorProtocol : ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable { // properties public virtual float GaussianSigma { get; set; } public virtual IntPtr HysteresisPasses { get; set; } public virtual CIImage InputImage { get; set; } public virtual bool Perceptual { get; set; } public virtual float ThresholdHigh { get; set; } public virtual float ThresholdLow { get; set; } }

New Type: CoreImage.ICIRoundedRectangleStrokeGeneratorProtocol

public interface ICIRoundedRectangleStrokeGeneratorProtocol : ICIFilterProtocol, ObjCRuntime.INativeObject, System.IDisposable { // properties public virtual CIColor Color { get; set; } public virtual CoreGraphics.CGRect InputExtent { get; set; } public virtual float Radius { get; set; } public virtual float Width { get; set; } }

New Type: CoreImage.ICISobelGradientsProtocol

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

Namespace CoreLocation

New Type: CoreLocation.CLLiveUpdateConfiguration

[Serializable] public enum CLLiveUpdateConfiguration { Airborne = 4, AutomotiveNavigation = 1, Default = 0, Fitness = 3, OtherNavigation = 2, }

New Type: CoreLocation.CLLocationUpdater

public class CLLocationUpdater : Foundation.NSObject { // constructors protected CLLocationUpdater (Foundation.NSObjectFlag t); protected CLLocationUpdater (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } // methods public static CLLocationUpdater CreateLiveUpdates (CoreFoundation.DispatchQueue queue, System.Action handler); public static CLLocationUpdater CreateLiveUpdates (CLLiveUpdateConfiguration configuration, CoreFoundation.DispatchQueue queue, System.Action handler); public virtual void Invalidate (); public virtual void Pause (); public virtual void Resume (); }

New Type: CoreLocation.CLMonitoringState

[Serializable] public enum CLMonitoringState { Satisfied = 1, Unknown = 0, Unsatisfied = 2, }

New Type: CoreLocation.CLUpdate

public class CLUpdate : Foundation.NSObject { // constructors public CLUpdate (); protected CLUpdate (Foundation.NSObjectFlag t); protected CLUpdate (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual bool IsStationary { get; } public virtual CLLocation Location { get; } }

Namespace CoreML

Type Changed: CoreML.MLModel

Added properties:

public static IMLComputeDeviceProtocol[] AllComputeDevices { get; } public static IMLComputeDeviceProtocol[] AvailableComputeDevices { get; }

Added methods:

public virtual void GetPrediction (IMLFeatureProvider input, System.Action<IMLFeatureProvider,Foundation.NSError> completionHandler); public virtual void GetPrediction (IMLFeatureProvider input, MLPredictionOptions options, System.Action<IMLFeatureProvider,Foundation.NSError> completionHandler); public virtual System.Threading.Tasks.Task GetPredictionAsync (IMLFeatureProvider input); public virtual System.Threading.Tasks.Task GetPredictionAsync (IMLFeatureProvider input, MLPredictionOptions options);

Type Changed: CoreML.MLModelError

Added value:

PredictionCancelled = 11,

New Type: CoreML.IMLComputeDeviceProtocol

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

New Type: CoreML.MLCpuComputeDevice

public class MLCpuComputeDevice : Foundation.NSObject, IMLComputeDeviceProtocol, ObjCRuntime.INativeObject, System.IDisposable { // constructors protected MLCpuComputeDevice (Foundation.NSObjectFlag t); protected MLCpuComputeDevice (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } }

New Type: CoreML.MLGpuComputeDevice

public class MLGpuComputeDevice : Foundation.NSObject, IMLComputeDeviceProtocol, ObjCRuntime.INativeObject, System.IDisposable { // constructors protected MLGpuComputeDevice (Foundation.NSObjectFlag t); protected MLGpuComputeDevice (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual Metal.IMTLDevice MetalDevice { get; } }

New Type: CoreML.MLNeuralEngineComputeDevice

public class MLNeuralEngineComputeDevice : Foundation.NSObject, IMLComputeDeviceProtocol, ObjCRuntime.INativeObject, System.IDisposable { // constructors protected MLNeuralEngineComputeDevice (Foundation.NSObjectFlag t); protected MLNeuralEngineComputeDevice (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual IntPtr TotalCoreCount { get; } }

Namespace Foundation

Type Changed: Foundation.DictionaryContainer

Added method:

protected T GetStrongDictionary (NSString key, System.Func<NSDictionary,T> createStrongDictionary);

Type Changed: Foundation.NSFileManager

Obsoleted properties:

[Obsolete ("Use the 'NSFileProtectionType' instead.")] public static NSString FileProtectionComplete { get; } [Obsolete ("Use the 'NSFileProtectionType' instead.")] public static NSString FileProtectionCompleteUnlessOpen { get; } [Obsolete ("Use the 'NSFileProtectionType' instead.")] public static NSString FileProtectionCompleteUntilFirstUserAuthentication { get; } [Obsolete ("Use the 'NSFileProtectionType' instead.")] public static NSString FileProtectionNone { get; }

Type Changed: Foundation.NSUrl

Added methods:

public static NSUrl CreateFileUrl (string path); public static NSUrl CreateFileUrl (string path, bool isDir);

New Type: Foundation.NSFileProtectionType

[Serializable] public enum NSFileProtectionType { Complete = 0, CompleteUnlessOpen = 1, CompleteUntilFirstUserAuthentication = 2, None = 3, }

New Type: Foundation.NSFileProtectionTypeExtensions

public static class NSFileProtectionTypeExtensions { // methods public static NSString GetConstant (this NSFileProtectionType self); public static NSFileProtectionType GetValue (NSString constant); }

Namespace HomeKit

Type Changed: HomeKit.HMServiceTypeExtensions

Added methods:

public static Foundation.NSString[] ToArray (this HMServiceType value); public static HMServiceType ToFlags (System.Collections.Generic.IEnumerable<Foundation.NSString> constants);

Namespace ImageIO

Type Changed: ImageIO.CGImageDestinationOptions

Added property:

public Foundation.NSDictionary AvisDictionary { get; set; }

Type Changed: ImageIO.CGImageDestinationOptionsKeys

Added property:

public static Foundation.NSString AvisDictionary { get; }

Type Changed: ImageIO.CGImageProperties

Added property:

public static Foundation.NSString AvisDictionary { get; }

New Type: ImageIO.CGImageDecodeOptions

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

Namespace Intents

Type Changed: Intents.INIntentErrorCode

Added values:

NoAppIntent = 10001, UnableToCreateAppIntentRepresentation = 10000,

Namespace MapKit

Type Changed: MapKit.MKMapSnapshotOptions

Added property:

public virtual MKMapConfiguration PreferredConfiguration { get; set; }

Type Changed: MapKit.MKMapView

Added properties:

public virtual MKFeatureVisibility PitchButtonVisibility { get; set; } public virtual bool ShowsUserTrackingButton { get; set; }

Namespace MediaAccessibility

New Type: MediaAccessibility.MAFlashingLightsProcessor

public class MAFlashingLightsProcessor : Foundation.NSObject { // constructors public MAFlashingLightsProcessor (); protected MAFlashingLightsProcessor (Foundation.NSObjectFlag t); protected MAFlashingLightsProcessor (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } // methods public virtual bool CanProcess (IOSurface.IOSurface surface); public virtual MAFlashingLightsProcessorResult Process (IOSurface.IOSurface inSurface, IOSurface.IOSurface outSurface, double timestamp, Foundation.NSDictionary options); }

New Type: MediaAccessibility.MAFlashingLightsProcessorResult

public class MAFlashingLightsProcessorResult : Foundation.NSObject { // constructors public MAFlashingLightsProcessorResult (); protected MAFlashingLightsProcessorResult (Foundation.NSObjectFlag t); protected MAFlashingLightsProcessorResult (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual float IntensityLevel { get; } public virtual float MitigationLevel { get; } public virtual bool SurfaceProcessed { get; } }

Namespace NaturalLanguage

New Type: NaturalLanguage.NLContextualEmbedding

public class NLContextualEmbedding : Foundation.NSObject { // constructors protected NLContextualEmbedding (Foundation.NSObjectFlag t); protected NLContextualEmbedding (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual UIntPtr Dimension { get; } public virtual bool HasAvailableAssets { get; } public virtual string[] Languages { get; } public virtual UIntPtr MaximumSequenceLength { get; } public virtual string ModelIdentifier { get; } public virtual UIntPtr Revision { get; } public virtual string[] Scripts { get; } // methods public static NLContextualEmbedding[] Create (Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> values); public static NLContextualEmbedding CreateWithLanguage (string language); public static NLContextualEmbedding CreateWithModelIdentifier (string modelIdentifier); public static NLContextualEmbedding CreateWithScript (string script); public virtual NLContextualEmbeddingResult GetEmbeddingResult (string string, string language, out Foundation.NSError error); public virtual bool Load (out Foundation.NSError error); public virtual void RequestAssets (System.Action<NLContextualEmbeddingAssetsResult,Foundation.NSError> completionHandler); public virtual System.Threading.Tasks.Task RequestAssetsAsync (); public virtual void Unload (); }

New Type: NaturalLanguage.NLContextualEmbeddingAssetsResult

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

New Type: NaturalLanguage.NLContextualEmbeddingResult

public class NLContextualEmbeddingResult : Foundation.NSObject { // constructors protected NLContextualEmbeddingResult (Foundation.NSObjectFlag t); protected NLContextualEmbeddingResult (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual string Language { get; } public virtual UIntPtr SequenceLength { get; } public virtual string String { get; } // methods public virtual void EnumerateTokenVectors (Foundation.NSRange range, TokenVectorEnumeratorHandler enumerationHandler); public virtual UIntPtr[] GetVector (UIntPtr characterIndex, ref Foundation.NSRange tokenRange); }

New Type: NaturalLanguage.NLContextualEmebeddingKey

[Serializable] public enum NLContextualEmebeddingKey { Languages = 0, Revision = 2, Scripts = 1, }

New Type: NaturalLanguage.NLContextualEmebeddingKeyExtensions

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

New Type: NaturalLanguage.NLScript

[Serializable] public enum NLScript { Arabic = 1, Armenian = 2, Bengali = 3, CanadianAboriginalSyllabics = 4, Cherokee = 5, Cyrillic = 6, Devanagari = 7, Ethiopic = 8, Georgian = 9, Greek = 10, Gujarati = 11, Gurmukhi = 12, Hebrew = 13, Japanese = 14, Kannada = 15, Khmer = 16, Korean = 17, Lao = 18, Latin = 19, Malayalam = 20, Mongolian = 21, Myanmar = 22, Oriya = 23, SimplifiedChinese = 24, Sinhala = 25, Tamil = 26, Telugu = 27, Thai = 28, Tibetan = 29, TraditionalChinese = 30, Undetermined = 0, }

New Type: NaturalLanguage.NLScriptExtensions

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

New Type: NaturalLanguage.TokenVectorEnumeratorHandler

public sealed delegate TokenVectorEnumeratorHandler : System.MulticastDelegate { // constructors public TokenVectorEnumeratorHandler (object object, IntPtr method); // methods public virtual System.IAsyncResult BeginInvoke (Foundation.NSArray<Foundation.NSNumber> tokenVector, Foundation.NSRange tokenRange, out bool stop, System.AsyncCallback callback, object object); public virtual void EndInvoke (out bool stop, System.IAsyncResult result); public virtual void Invoke (Foundation.NSArray<Foundation.NSNumber> tokenVector, Foundation.NSRange tokenRange, out bool stop); }

Namespace ObjCRuntime

Type Changed: ObjCRuntime.Constants

Modified fields:

-public const string SdkVersion = "16.4"; +public const string SdkVersion = "17.0"; -public const string Version = "16.5.0"; +public const string Version = "17.1.0";

Added fields:

public static const string CinematicLibrary = "/System/Library/Frameworks/Cinematic.framework/Cinematic"; public static const string NetworkExtensionLibrary = "/System/Library/Frameworks/NetworkExtension.framework/NetworkExtension"; public static const string PhaseLibrary = "/System/Library/Frameworks/PHASE.framework/PHASE"; public static const string SymbolsLibrary = "/System/Library/Frameworks/Symbols.framework/Symbols";

Type Changed: ObjCRuntime.Runtime

Added method:

public static Foundation.NSObject GetNSObject (NativeHandle ptr);

Namespace Photos

Type Changed: Photos.PHAssetResourceType

Added value:

Type Changed: Photos.PHContentEditingOutput

Added properties:

public virtual UniformTypeIdentifiers.UTType DefaultRenderedContentType { get; } public virtual UniformTypeIdentifiers.UTType[] SupportedRenderedContentTypes { get; }

Added method:

public virtual Foundation.NSUrl GetRenderedContentUrl (UniformTypeIdentifiers.UTType type, out Foundation.NSError error);

Type Changed: Photos.PHImageRequestOptions

Added property:

public virtual bool AllowSecondaryDegradedImage { get; set; }

Type Changed: Photos.PHVideoRequestOptions

Added interfaces:

Foundation.INSCopying ObjCRuntime.INativeObject System.IDisposable

Added method:

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

Namespace PhotosUI

Type Changed: PhotosUI.PHLivePhotoView

Added property:

public virtual CoreGraphics.CGRect ContentsRect { get; set; }

Namespace SceneKit

Type Changed: SceneKit.SCNRenderer

Added property:

public virtual CoreGraphics.CGColorSpace WorkingColorSpace { get; }

Type Changed: SceneKit.SCNSceneRenderer

Added property:

public virtual CoreGraphics.CGColorSpace WorkingColorSpace { get; }

Type Changed: SceneKit.SCNSceneRenderer_Extensions

Added method:

public static CoreGraphics.CGColorSpace GetWorkingColorSpace (this ISCNSceneRenderer This);

Type Changed: SceneKit.SCNView

Added property:

public virtual CoreGraphics.CGColorSpace WorkingColorSpace { get; }

Namespace Security

Type Changed: Security.SecKeyAlgorithm

Added values:

EcdsaSignatureDigestRfc4754 = 76, EcdsaSignatureDigestRfc4754Sha1 = 77, EcdsaSignatureDigestRfc4754Sha224 = 78, EcdsaSignatureDigestRfc4754Sha256 = 79, EcdsaSignatureDigestRfc4754Sha384 = 80, EcdsaSignatureDigestRfc4754Sha512 = 81, EcdsaSignatureMessageRfc4754Sha1 = 82, EcdsaSignatureMessageRfc4754Sha224 = 83, EcdsaSignatureMessageRfc4754Sha256 = 84, EcdsaSignatureMessageRfc4754Sha384 = 85, EcdsaSignatureMessageRfc4754Sha512 = 86,

Namespace ShazamKit

Type Changed: ShazamKit.SHErrorCode

Added value:

MediaItemFetchFailed = 600,

Type Changed: ShazamKit.SHMediaItem

Added property:

public virtual Foundation.NSDate CreationDate { get; }

Type Changed: ShazamKit.SHMediaItemProperty

Added value:

Namespace StoreKit

Type Changed: StoreKit.SKCloudServiceController

Added constructor:

public SKCloudServiceController ();

Namespace UniformTypeIdentifiers

Type Changed: UniformTypeIdentifiers.UTTypes

Added property:

public static UTType Ahap { get; }

New Namespace Cinematic

New Type: Cinematic.CNAssetInfo

public class CNAssetInfo : Foundation.NSObject { // constructors protected CNAssetInfo (Foundation.NSObjectFlag t); protected CNAssetInfo (ObjCRuntime.NativeHandle handle); // properties public virtual AVFoundation.AVAssetTrack[] AllCinematicTracks { get; } public virtual AVFoundation.AVAsset Asset { get; } public virtual AVFoundation.AVAssetTrack CinematicDisparityTrack { get; } public virtual AVFoundation.AVAssetTrack CinematicMetadataTrack { get; } public virtual AVFoundation.AVAssetTrack CinematicVideoTrack { get; } public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual AVFoundation.AVAssetTrack FrameTimingTrack { get; } public virtual CoreGraphics.CGSize NaturalSize { get; } public virtual CoreGraphics.CGSize PreferredSize { get; } public virtual CoreGraphics.CGAffineTransform PreferredTransform { get; } public virtual Foundation.NSNumber[] SampleDataTrackIds { get; } public virtual CoreMedia.CMTimeRange TimeRange { get; } public virtual Foundation.NSNumber[] VideoCompositionTrackIds { get; } public virtual AVFoundation.AVAssetTrack[] VideoCompositionTracks { get; } // methods public static void CheckIfCinematic (AVFoundation.AVAsset asset, System.Action completionHandler); public static System.Threading.Tasks.Task CheckIfCinematicAsync (AVFoundation.AVAsset asset); public static void LoadFromAsset (AVFoundation.AVAsset asset, System.Action<CNAssetInfo,Foundation.NSError> completionHandler); public static System.Threading.Tasks.Task LoadFromAssetAsync (AVFoundation.AVAsset asset); }

New Type: Cinematic.CNBoundsPrediction

public class CNBoundsPrediction : Foundation.NSObject, Foundation.INSCopying, Foundation.INSMutableCopying, ObjCRuntime.INativeObject, System.IDisposable { // constructors public CNBoundsPrediction (); protected CNBoundsPrediction (Foundation.NSObjectFlag t); protected CNBoundsPrediction (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual float Confidence { get; set; } public virtual CoreGraphics.CGRect NormalizedBounds { get; set; } // methods public virtual Foundation.NSObject Copy (Foundation.NSZone zone); public virtual Foundation.NSObject MutableCopy (Foundation.NSZone zone); }

New Type: Cinematic.CNCinematicErrorCode

[Serializable] public enum CNCinematicErrorCode { Cancelled = 7, Incompatible = 6, Incomplete = 3, Malformed = 4, Unknown = 1, Unreadable = 2, Unsupported = 5, }

New Type: Cinematic.CNCinematicErrorCodeExtensions

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

New Type: Cinematic.CNCompositionInfo

public class CNCompositionInfo : Cinematic.CNAssetInfo { // constructors public CNCompositionInfo (); protected CNCompositionInfo (Foundation.NSObjectFlag t); protected CNCompositionInfo (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } // methods public virtual bool InsertTimeRange (CoreMedia.CMTimeRange timeRange, CNAssetInfo assetInfo, CoreMedia.CMTime startTime, out Foundation.NSError outError); }

New Type: Cinematic.CNCustomDetectionTrack

public class CNCustomDetectionTrack : Cinematic.CNDetectionTrack { // constructors public CNCustomDetectionTrack (); protected CNCustomDetectionTrack (Foundation.NSObjectFlag t); protected CNCustomDetectionTrack (ObjCRuntime.NativeHandle handle); public CNCustomDetectionTrack (CNDetection[] detections, bool applySmoothing); // properties public virtual CNDetection[] AllDetections { get; } public override ObjCRuntime.NativeHandle ClassHandle { get; } }

New Type: Cinematic.CNDecision

public class CNDecision : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable { // constructors protected CNDecision (Foundation.NSObjectFlag t); protected CNDecision (ObjCRuntime.NativeHandle handle); public CNDecision (CoreMedia.CMTime time, long detectionId, bool isStrong, CNDecisionIdentifierType identifierType); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual long DetectionGroupId { get; } public virtual long DetectionId { get; } public virtual bool GroupDecision { get; } public virtual bool StrongDecision { get; } public virtual CoreMedia.CMTime Time { get; } public virtual bool UserDecision { get; } // methods public virtual Foundation.NSObject Copy (Foundation.NSZone zone); }

New Type: Cinematic.CNDecisionIdentifierType

[Serializable] public enum CNDecisionIdentifierType { Group = 1, Single = 0, }

New Type: Cinematic.CNDetection

public class CNDetection : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable { // constructors protected CNDetection (Foundation.NSObjectFlag t); protected CNDetection (ObjCRuntime.NativeHandle handle); public CNDetection (CoreMedia.CMTime time, CNDetectionType detectionType, CoreGraphics.CGRect normalizedRect, float focusDisparity); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual long DetectionGroupId { get; } public virtual long DetectionId { get; } public virtual CNDetectionType DetectionType { get; } public virtual float FocusDisparity { get; } public virtual CoreGraphics.CGRect NormalizedRect { get; } public virtual CoreMedia.CMTime Time { get; } // methods public static string AccessibilityLabelForDetectionType (CNDetectionType detectionType); public virtual Foundation.NSObject Copy (Foundation.NSZone zone); public static float DisparityInNormalizedRect (CoreGraphics.CGRect normalizedRect, CoreVideo.CVPixelBuffer sourceDisparity, CNDetectionType detectionType, float priorDisparity); public static bool IsValidDetectionGroupId (long detectionGroupId); public static bool IsValidDetectionId (long detectionId); }

New Type: Cinematic.CNDetectionTrack

public class CNDetectionTrack : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable { // constructors protected CNDetectionTrack (Foundation.NSObjectFlag t); protected CNDetectionTrack (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual long DetectionGroupId { get; } public virtual long DetectionId { get; } public virtual CNDetectionType DetectionType { get; } public virtual bool Discrete { get; } public virtual bool UserCreated { get; } // methods public virtual Foundation.NSObject Copy (Foundation.NSZone zone); public virtual CNDetection GetDetectionAtOrBeforeTime (CoreMedia.CMTime time); public virtual CNDetection GetDetectionNearestTime (CoreMedia.CMTime time); public virtual CNDetection[] GetDetectionsInTimeRange (CoreMedia.CMTimeRange timeRange); }

New Type: Cinematic.CNDetectionType

[Serializable] public enum CNDetectionType { AutoFocus = 100, CatBody = 4, CatHead = 9, Custom = 102, DogBody = 5, DogHead = 10, FixedFocus = 101, HumanFace = 1, HumanHead = 2, HumanTorso = 3, SportsBall = 11, Unknown = 0, }

New Type: Cinematic.CNFixedDetectionTrack

public class CNFixedDetectionTrack : Cinematic.CNDetectionTrack { // constructors public CNFixedDetectionTrack (); public CNFixedDetectionTrack (CNDetection originalDetection); protected CNFixedDetectionTrack (Foundation.NSObjectFlag t); protected CNFixedDetectionTrack (ObjCRuntime.NativeHandle handle); public CNFixedDetectionTrack (float focusDisparity); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual float FocusDisparity { get; } public virtual CNDetection OriginalDetection { get; } }

New Type: Cinematic.CNObjectTracker

public class CNObjectTracker : Foundation.NSObject { // constructors protected CNObjectTracker (Foundation.NSObjectFlag t); public CNObjectTracker (Metal.IMTLCommandQueue commandQueue); protected CNObjectTracker (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual CNDetectionTrack FinishDetectionTrack { get; } public static bool IsSupported { get; } // methods public virtual CNBoundsPrediction ContinueTracking (CoreMedia.CMTime atTime, CoreVideo.CVPixelBuffer sourceImage, CoreVideo.CVPixelBuffer sourceDisparity); public virtual CNBoundsPrediction FindObject (CoreGraphics.CGPoint point, CoreVideo.CVPixelBuffer sourceImage); public virtual void ResetDetectionTrack (); public virtual bool StartTracking (CoreMedia.CMTime atTime, CoreGraphics.CGRect normalizedBounds, CoreVideo.CVPixelBuffer sourceImage, CoreVideo.CVPixelBuffer sourceDisparity); }

New Type: Cinematic.CNRenderingQuality

[Serializable] public enum CNRenderingQuality { Export = 2, ExportHigh = 3, Preview = 1, Thumbnail = 0, }

New Type: Cinematic.CNRenderingSession

public class CNRenderingSession : Foundation.NSObject { // constructors protected CNRenderingSession (Foundation.NSObjectFlag t); protected CNRenderingSession (ObjCRuntime.NativeHandle handle); public CNRenderingSession (Metal.IMTLCommandQueue commandQueue, CNRenderingSessionAttributes sessionAttributes, CoreGraphics.CGAffineTransform preferredTransform, CNRenderingQuality quality); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual Metal.IMTLCommandQueue CommandQueue { get; } public static Foundation.NSNumber[] DestinationPixelFormatTypes { get; } public virtual CoreGraphics.CGAffineTransform PreferredTransform { get; } public virtual CNRenderingQuality Quality { get; } public virtual CNRenderingSessionAttributes SessionAttributes { get; } public static Foundation.NSNumber[] SourcePixelFormatTypes { get; } // methods public virtual bool EncodeRender (Metal.IMTLCommandBuffer commandBuffer, CNRenderingSessionFrameAttributes frameAttributes, CoreVideo.CVPixelBuffer sourceImage, CoreVideo.CVPixelBuffer sourceDisparity, CoreVideo.CVPixelBuffer destinationImage); public virtual bool EncodeRender (Metal.IMTLCommandBuffer commandBuffer, CNRenderingSessionFrameAttributes frameAttributes, CoreVideo.CVPixelBuffer sourceImage, CoreVideo.CVPixelBuffer sourceDisparity, Metal.IMTLTexture destinationRgba); public virtual bool EncodeRender (Metal.IMTLCommandBuffer commandBuffer, CNRenderingSessionFrameAttributes frameAttributes, CoreVideo.CVPixelBuffer sourceImage, CoreVideo.CVPixelBuffer sourceDisparity, Metal.IMTLTexture destinationLuma, Metal.IMTLTexture destinationChroma); }

New Type: Cinematic.CNRenderingSessionAttributes

public class CNRenderingSessionAttributes : Foundation.NSObject { // constructors protected CNRenderingSessionAttributes (Foundation.NSObjectFlag t); protected CNRenderingSessionAttributes (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual IntPtr RenderingVersion { get; } // methods public static void Load (AVFoundation.AVAsset asset, System.Action<CNRenderingSessionAttributes,Foundation.NSError> completionHandler); public static System.Threading.Tasks.Task LoadAsync (AVFoundation.AVAsset asset); }

New Type: Cinematic.CNRenderingSessionFrameAttributes

public class CNRenderingSessionFrameAttributes : Foundation.NSObject, Foundation.INSCopying, Foundation.INSMutableCopying, ObjCRuntime.INativeObject, System.IDisposable { // constructors protected CNRenderingSessionFrameAttributes (Foundation.NSObjectFlag t); protected CNRenderingSessionFrameAttributes (ObjCRuntime.NativeHandle handle); public CNRenderingSessionFrameAttributes (AVFoundation.AVTimedMetadataGroup metadataGroup, CNRenderingSessionAttributes sessionAttributes); public CNRenderingSessionFrameAttributes (CoreMedia.CMSampleBuffer sampleBuffer, CNRenderingSessionAttributes sessionAttributes); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual float FNumber { get; set; } public virtual float FocusDisparity { get; set; } // methods public virtual Foundation.NSObject Copy (Foundation.NSZone zone); public virtual Foundation.NSObject MutableCopy (Foundation.NSZone zone); }

New Type: Cinematic.CNScript

public class CNScript : Foundation.NSObject { // constructors protected CNScript (Foundation.NSObjectFlag t); protected CNScript (ObjCRuntime.NativeHandle handle); // properties public virtual CNDetectionTrack[] AddedDetectionTracks { get; } public virtual CNScriptChanges Changes { get; } public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual float FNumber { get; set; } public virtual CoreMedia.CMTimeRange TimeRange { get; } // methods public virtual long AddDetectionTrack (CNDetectionTrack detectionTrack); public virtual bool AddUserDecision (CNDecision decision); public virtual CNDecision[] GetBaseDecisions (CoreMedia.CMTimeRange timeRange); public virtual CNScriptChanges GetChangesTrimmed (CoreMedia.CMTimeRange timeRange); public virtual CNDecision GetDecision (CoreMedia.CMTime time, CoreMedia.CMTime tolerance); public virtual CNDecision GetDecisionAfterTime (CoreMedia.CMTime time); public virtual CNDecision GetDecisionBeforeTime (CoreMedia.CMTime time); public virtual CNDecision[] GetDecisions (CoreMedia.CMTimeRange timeRange); public virtual CNDetectionTrack GetDetectionTrack (CNDecision decision); public virtual CNDetectionTrack GetDetectionTrackForId (long detectionId); public virtual CNScriptFrame GetFrame (CoreMedia.CMTime time, CoreMedia.CMTime tolerance); public virtual CNScriptFrame[] GetFrames (CoreMedia.CMTimeRange timeRange); public virtual CNDecision GetPrimaryDecision (CoreMedia.CMTime time); public virtual CNDecision GetSecondaryDecision (CoreMedia.CMTime time); public virtual CoreMedia.CMTimeRange GetTimeRangeOfTransitionAfterDecision (CNDecision decision); public virtual CoreMedia.CMTimeRange GetTimeRangeOfTransitionBeforeDecision (CNDecision decision); public virtual CNDecision[] GetUserDecisions (CoreMedia.CMTimeRange timeRange); public static void Load (AVFoundation.AVAsset asset, CNScriptChanges changes, Foundation.NSProgress progress, System.Action<CNScript,Foundation.NSError> completionHandler); public static System.Threading.Tasks.Task LoadAsync (AVFoundation.AVAsset asset, CNScriptChanges changes, Foundation.NSProgress progress); public virtual void Reload (CNScriptChanges changes); public virtual void RemoveAllUserDecisions (); public virtual bool RemoveDetectionTrack (CNDetectionTrack detectionTrack); public virtual bool RemoveUserDecision (CNDecision decision); }

New Type: Cinematic.CNScriptChanges

public class CNScriptChanges : Foundation.NSObject { // constructors public CNScriptChanges (Foundation.NSData dataRepresentation); protected CNScriptChanges (Foundation.NSObjectFlag t); protected CNScriptChanges (ObjCRuntime.NativeHandle handle); // properties public virtual CNDetectionTrack[] AddedDetectionTracks { get; } public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual Foundation.NSData DataRepresentation { get; } public virtual float FNumber { get; } public virtual CNDecision[] UserDecisions { get; } }

New Type: Cinematic.CNScriptFrame

public class CNScriptFrame : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable { // constructors protected CNScriptFrame (Foundation.NSObjectFlag t); protected CNScriptFrame (ObjCRuntime.NativeHandle handle); // properties public virtual CNDetection[] AllDetections { get; } public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual CNDetection FocusDetection { get; } public virtual float FocusDisparity { get; } public virtual CoreMedia.CMTime Time { get; } // methods public virtual Foundation.NSObject Copy (Foundation.NSZone zone); public virtual CNDetection GetBestDetectionForGroupId (long detectionGroupId); public virtual CNDetection GetDetectionForId (long detectionId); }

New Namespace NetworkExtension

New Type: NetworkExtension.INWTcpConnectionAuthenticationDelegate

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

New Type: NetworkExtension.NEAppProxyFlowError

[Serializable] public enum NEAppProxyFlowError { Aborted = 5, DatagramTooLarge = 9, HostUnreachable = 3, Internal = 8, InvalidArgument = 4, None = 0, NotConnected = 1, PeerReset = 2, ReadAlreadyPending = 10, Refused = 6, TimedOut = 7, }

New Type: NetworkExtension.NEAppProxyFlowErrorExtensions

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

New Type: NetworkExtension.NEDnsOverHttpsSettings

public class NEDnsOverHttpsSettings : NetworkExtension.NEDnsSettings { // constructors public NEDnsOverHttpsSettings (); public NEDnsOverHttpsSettings (Foundation.NSCoder coder); protected NEDnsOverHttpsSettings (Foundation.NSObjectFlag t); protected NEDnsOverHttpsSettings (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual Foundation.NSData IdentityReference { get; set; } public virtual Foundation.NSUrl ServerUrl { get; set; } }

New Type: NetworkExtension.NEDnsOverTlsSettings

public class NEDnsOverTlsSettings : NetworkExtension.NEDnsSettings { // constructors public NEDnsOverTlsSettings (); public NEDnsOverTlsSettings (Foundation.NSCoder coder); protected NEDnsOverTlsSettings (Foundation.NSObjectFlag t); protected NEDnsOverTlsSettings (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual Foundation.NSData IdentityReference { get; set; } public virtual string ServerName { get; set; } }

New Type: NetworkExtension.NEDnsProtocol

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

New Type: NetworkExtension.NEDnsSettings

public class NEDnsSettings : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable { // constructors public NEDnsSettings (Foundation.NSCoder coder); protected NEDnsSettings (Foundation.NSObjectFlag t); protected NEDnsSettings (ObjCRuntime.NativeHandle handle); public NEDnsSettings (string[] servers); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual NEDnsProtocol DnsProtocol { get; } public virtual string DomainName { get; set; } public virtual string[] MatchDomains { get; set; } public virtual bool MatchDomainsNoSearch { get; set; } public virtual string[] SearchDomains { get; set; } public virtual string[] Servers { get; } // methods public virtual Foundation.NSObject Copy (Foundation.NSZone zone); public virtual void EncodeTo (Foundation.NSCoder encoder); }

New Type: NetworkExtension.NEEvaluateConnectionRule

public class NEEvaluateConnectionRule : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable { // constructors public NEEvaluateConnectionRule (); public NEEvaluateConnectionRule (Foundation.NSCoder coder); protected NEEvaluateConnectionRule (Foundation.NSObjectFlag t); protected NEEvaluateConnectionRule (ObjCRuntime.NativeHandle handle); public NEEvaluateConnectionRule (string[] domains, NEEvaluateConnectionRuleAction action); // properties public virtual NEEvaluateConnectionRuleAction Action { get; } public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual string[] MatchDomains { get; } public virtual Foundation.NSUrl ProbeUrl { get; set; } public virtual string[] UseDnsServers { get; set; } // methods public virtual Foundation.NSObject Copy (Foundation.NSZone zone); public virtual void EncodeTo (Foundation.NSCoder encoder); }

New Type: NetworkExtension.NEEvaluateConnectionRuleAction

[Serializable] public enum NEEvaluateConnectionRuleAction { ConnectIfNeeded = 1, NeverConnect = 2, }

New Type: NetworkExtension.NEFilterFlow

public class NEFilterFlow { // constructors public NEFilterFlow (); // fields public static const ulong MaxBytes; }

New Type: NetworkExtension.NEFilterProvider

public class NEFilterProvider { // constructors public NEFilterProvider (); // properties public static Foundation.NSString RemediationUrlFlowUrl { get; } public static Foundation.NSString RemediationUrlFlowUrlHostname { get; } public static Foundation.NSString RemediationUrlOrganization { get; } public static Foundation.NSString RemediationUrlUsername { get; } }

New Type: NetworkExtension.NEIPv4Route

public class NEIPv4Route : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable { // constructors public NEIPv4Route (Foundation.NSCoder coder); protected NEIPv4Route (Foundation.NSObjectFlag t); protected NEIPv4Route (ObjCRuntime.NativeHandle handle); public NEIPv4Route (string address, string subnetMask); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public static NEIPv4Route DefaultRoute { get; } public virtual string DestinationAddress { get; } public virtual string DestinationSubnetMask { get; } public virtual string GatewayAddress { get; set; } // methods public virtual Foundation.NSObject Copy (Foundation.NSZone zone); public virtual void EncodeTo (Foundation.NSCoder encoder); }

New Type: NetworkExtension.NEIPv4Settings

public class NEIPv4Settings : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable { // constructors public NEIPv4Settings (Foundation.NSCoder coder); protected NEIPv4Settings (Foundation.NSObjectFlag t); protected NEIPv4Settings (ObjCRuntime.NativeHandle handle); public NEIPv4Settings (string[] addresses, string[] subnetMasks); // properties public virtual string[] Addresses { get; } public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual NEIPv4Route[] ExcludedRoutes { get; set; } public virtual NEIPv4Route[] IncludedRoutes { get; set; } public virtual string[] SubnetMasks { get; } // methods public virtual Foundation.NSObject Copy (Foundation.NSZone zone); public virtual void EncodeTo (Foundation.NSCoder encoder); }

New Type: NetworkExtension.NEIPv6Route

public class NEIPv6Route : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable { // constructors public NEIPv6Route (Foundation.NSCoder coder); protected NEIPv6Route (Foundation.NSObjectFlag t); protected NEIPv6Route (ObjCRuntime.NativeHandle handle); public NEIPv6Route (string address, Foundation.NSNumber networkPrefixLength); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public static NEIPv6Route DefaultRoute { get; } public virtual string DestinationAddress { get; } public virtual Foundation.NSNumber DestinationNetworkPrefixLength { get; } public virtual string GatewayAddress { get; set; } // methods public virtual Foundation.NSObject Copy (Foundation.NSZone zone); public virtual void EncodeTo (Foundation.NSCoder encoder); }

New Type: NetworkExtension.NEIPv6Settings

public class NEIPv6Settings : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable { // constructors public NEIPv6Settings (Foundation.NSCoder coder); protected NEIPv6Settings (Foundation.NSObjectFlag t); protected NEIPv6Settings (ObjCRuntime.NativeHandle handle); public NEIPv6Settings (string[] addresses, Foundation.NSNumber[] networkPrefixLengths); // properties public virtual string[] Addresses { get; } public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual NEIPv6Route[] ExcludedRoutes { get; set; } public virtual NEIPv6Route[] IncludedRoutes { get; set; } public virtual Foundation.NSNumber[] NetworkPrefixLengths { get; } // methods public virtual Foundation.NSObject Copy (Foundation.NSZone zone); public virtual void EncodeTo (Foundation.NSCoder encoder); }

New Type: NetworkExtension.NEOnDemandRule

public class NEOnDemandRule : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable { // constructors protected NEOnDemandRule (); protected NEOnDemandRule (Foundation.NSCoder coder); protected NEOnDemandRule (Foundation.NSObjectFlag t); protected NEOnDemandRule (ObjCRuntime.NativeHandle handle); // properties public virtual NEOnDemandRuleAction Action { get; } public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual string[] DnsSearchDomainMatch { get; set; } public virtual string[] DnsServerAddressMatch { get; set; } public virtual NEOnDemandRuleInterfaceType InterfaceTypeMatch { get; set; } public virtual Foundation.NSUrl ProbeUrl { get; set; } public virtual string[] SsidMatch { get; set; } // methods public virtual Foundation.NSObject Copy (Foundation.NSZone zone); public virtual void EncodeTo (Foundation.NSCoder encoder); }

New Type: NetworkExtension.NEOnDemandRuleAction

[Serializable] public enum NEOnDemandRuleAction { Connect = 1, Disconnect = 2, EvaluateConnection = 3, Ignore = 4, }

New Type: NetworkExtension.NEOnDemandRuleConnect

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

New Type: NetworkExtension.NEOnDemandRuleDisconnect

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

New Type: NetworkExtension.NEOnDemandRuleEvaluateConnection

public class NEOnDemandRuleEvaluateConnection : NetworkExtension.NEOnDemandRule { // constructors public NEOnDemandRuleEvaluateConnection (); public NEOnDemandRuleEvaluateConnection (Foundation.NSCoder coder); protected NEOnDemandRuleEvaluateConnection (Foundation.NSObjectFlag t); protected NEOnDemandRuleEvaluateConnection (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual NEEvaluateConnectionRule[] ConnectionRules { get; set; } }

New Type: NetworkExtension.NEOnDemandRuleIgnore

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

New Type: NetworkExtension.NEOnDemandRuleInterfaceType

[Serializable] public enum NEOnDemandRuleInterfaceType { Any = 0, Cellular = 3, Ethernet = 1, WiFi = 2, }

New Type: NetworkExtension.NEPacket

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

New Type: NetworkExtension.NEPacketTunnelFlow

public class NEPacketTunnelFlow : Foundation.NSObject { // constructors public NEPacketTunnelFlow (); protected NEPacketTunnelFlow (Foundation.NSObjectFlag t); protected NEPacketTunnelFlow (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } // methods public virtual void ReadPacketObjects (System.Action<NEPacket[]> completionHandler); public virtual System.Threading.Tasks.Task<NEPacket[]> ReadPacketObjectsAsync (); public virtual void ReadPackets (System.Action<Foundation.NSData[],Foundation.NSNumber[]> completionHandler); public virtual System.Threading.Tasks.Task ReadPacketsAsync (); public virtual bool WritePacketObjects (NEPacket[] packets); public virtual bool WritePackets (Foundation.NSData[] packets, Foundation.NSNumber[] protocols); }

New Type: NetworkExtension.NEPacketTunnelFlowReadResult

public class NEPacketTunnelFlowReadResult { // constructors public NEPacketTunnelFlowReadResult (Foundation.NSData[] packets, Foundation.NSNumber[] protocols); // properties public Foundation.NSData[] Packets { get; set; } public Foundation.NSNumber[] Protocols { get; set; } }

New Type: NetworkExtension.NEPacketTunnelNetworkSettings

public class NEPacketTunnelNetworkSettings : NetworkExtension.NETunnelNetworkSettings { // constructors public NEPacketTunnelNetworkSettings (Foundation.NSCoder coder); protected NEPacketTunnelNetworkSettings (Foundation.NSObjectFlag t); protected NEPacketTunnelNetworkSettings (ObjCRuntime.NativeHandle handle); public NEPacketTunnelNetworkSettings (string address); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual NEIPv4Settings IPv4Settings { get; set; } public virtual NEIPv6Settings IPv6Settings { get; set; } public virtual Foundation.NSNumber Mtu { get; set; } public virtual Foundation.NSNumber TunnelOverheadBytes { get; set; } }

New Type: NetworkExtension.NEPacketTunnelProvider

public class NEPacketTunnelProvider : NetworkExtension.NETunnelProvider { // constructors public NEPacketTunnelProvider (); protected NEPacketTunnelProvider (Foundation.NSObjectFlag t); protected NEPacketTunnelProvider (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual NEPacketTunnelFlow PacketFlow { get; } // methods public virtual void CancelTunnel (Foundation.NSError error); public virtual NWTcpConnection CreateTcpConnection (NWEndpoint remoteEndpoint, bool enableTls, NWTlsParameters tlsParameters, INWTcpConnectionAuthenticationDelegate delegate); public virtual NWUdpSession CreateUdpSession (NWEndpoint remoteEndpoint, NWHostEndpoint localEndpoint); public virtual void StartTunnel (Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> options, System.Action<Foundation.NSError> completionHandler); public virtual System.Threading.Tasks.Task StartTunnelAsync (Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> options); public virtual void StopTunnel (NEProviderStopReason reason, System.Action completionHandler); public virtual System.Threading.Tasks.Task StopTunnelAsync (NEProviderStopReason reason); }

New Type: NetworkExtension.NEProvider

public class NEProvider : Foundation.NSObject { // constructors protected NEProvider (Foundation.NSObjectFlag t); protected NEProvider (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual NWPath DefaultPath { get; } // methods public virtual NWTcpConnection CreateTcpConnectionToEndpoint (NWEndpoint remoteEndpoint, bool enableTLS, NWTlsParameters TLSParameters, Foundation.NSObject connectionDelegate); public virtual NWUdpSession CreateUdpSessionToEndpoint (NWEndpoint remoteEndpoint, NWHostEndpoint localEndpoint); public virtual void Sleep (System.Action completionHandler); public virtual System.Threading.Tasks.Task SleepAsync (); public static void StartSystemExtensionMode (); public virtual void Wake (); }

New Type: NetworkExtension.NEProviderStopReason

[Serializable] public enum NEProviderStopReason { AppUpdate = 16, AuthenticationCanceled = 6, ConfigurationDisabled = 9, ConfigurationFailed = 7, ConfigurationRemoved = 10, ConnectionFailed = 14, IdleTimeout = 8, NoNetworkAvailable = 3, None = 0, ProviderDisabled = 5, ProviderFailed = 2, Sleep = 15, Superseded = 11, UnrecoverableNetworkChange = 4, UserInitiated = 1, UserLogout = 12, UserSwitch = 13, }

New Type: NetworkExtension.NEProxyServer

public class NEProxyServer : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable { // constructors public NEProxyServer (Foundation.NSCoder coder); protected NEProxyServer (Foundation.NSObjectFlag t); protected NEProxyServer (ObjCRuntime.NativeHandle handle); public NEProxyServer (string address, IntPtr port); // properties public virtual string Address { get; } public virtual bool AuthenticationRequired { get; set; } public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual string Password { get; set; } public virtual IntPtr Port { get; } public virtual string Username { get; set; } // methods public virtual Foundation.NSObject Copy (Foundation.NSZone zone); public virtual void EncodeTo (Foundation.NSCoder encoder); }

New Type: NetworkExtension.NEProxySettings

public class NEProxySettings : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable { // constructors public NEProxySettings (); public NEProxySettings (Foundation.NSCoder coder); protected NEProxySettings (Foundation.NSObjectFlag t); protected NEProxySettings (ObjCRuntime.NativeHandle handle); // properties public virtual bool AutoProxyConfigurationEnabled { get; set; } public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual string[] ExceptionList { get; set; } public virtual bool ExcludeSimpleHostnames { get; set; } public virtual bool HttpEnabled { get; set; } public virtual NEProxyServer HttpServer { get; set; } public virtual bool HttpsEnabled { get; set; } public virtual NEProxyServer HttpsServer { get; set; } public virtual string[] MatchDomains { get; set; } public virtual string ProxyAutoConfigurationJavaScript { get; set; } public virtual Foundation.NSUrl ProxyAutoConfigurationUrl { get; set; } // methods public virtual Foundation.NSObject Copy (Foundation.NSZone zone); public virtual void EncodeTo (Foundation.NSCoder encoder); }

New Type: NetworkExtension.NERelay

public class NERelay : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable { // constructors public NERelay (); public NERelay (Foundation.NSCoder coder); protected NERelay (Foundation.NSObjectFlag t); protected NERelay (ObjCRuntime.NativeHandle handle); // properties public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSString> AdditionalHttpHeaderFields { get; set; } public override ObjCRuntime.NativeHandle ClassHandle { get; } public static Foundation.NSString ConfigurationDidChangeNotification { get; } public virtual Foundation.NSUrl DnsOverHttpsUrl { get; set; } public static Foundation.NSString ErrorDomain { get; } public virtual Foundation.NSUrl Http2RelayUrl { get; set; } public virtual Foundation.NSUrl Http3RelayUrl { get; set; } public virtual Foundation.NSData IdentityData { get; set; } public virtual string IdentityDataPassword { get; set; } public virtual Foundation.NSData[] RawPublicKeys { get; set; } public virtual string SyntheticDnsAnswerIPv4Prefix { get; set; } public virtual string SyntheticDnsAnswerIPv6Prefix { get; set; } // methods public virtual Foundation.NSObject Copy (Foundation.NSZone zone); public virtual void EncodeTo (Foundation.NSCoder encoder);

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

}

New Type: NetworkExtension.NERelayManager

public class NERelayManager : Foundation.NSObject { // constructors public NERelayManager (); protected NERelayManager (Foundation.NSObjectFlag t); protected NERelayManager (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual bool Enabled { get; set; } public virtual string[] ExcludedDomains { get; set; } public virtual string LocalizedDescription { get; set; } public virtual string[] MatchDomains { get; set; } public virtual NEOnDemandRule[] OnDemandRules { get; set; } public virtual NERelay[] Relays { get; set; } public static NERelayManager Shared { get; } // methods public static void LoadAllManagersFromPreferences (System.Action<Foundation.NSArray> completionHandler); public static System.Threading.Tasks.Task<Foundation.NSArray> LoadAllManagersFromPreferencesAsync (); public virtual void LoadFromPreferences (System.Action<Foundation.NSError> completionHandler); public virtual System.Threading.Tasks.Task LoadFromPreferencesAsync (); public virtual void RemoveFromPreferences (System.Action<Foundation.NSError> completionHandler); public virtual System.Threading.Tasks.Task RemoveFromPreferencesAsync (); public virtual void SaveToPreferences (System.Action<Foundation.NSError> completionHandler); public virtual System.Threading.Tasks.Task SaveToPreferencesAsync (); }

New Type: NetworkExtension.NERelayManagerError

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

New Type: NetworkExtension.NETunnelNetworkSettings

public class NETunnelNetworkSettings : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable { // constructors public NETunnelNetworkSettings (Foundation.NSCoder coder); protected NETunnelNetworkSettings (Foundation.NSObjectFlag t); protected NETunnelNetworkSettings (ObjCRuntime.NativeHandle handle); public NETunnelNetworkSettings (string address); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual NEDnsSettings DnsSettings { get; set; } public virtual NEProxySettings ProxySettings { get; set; } public virtual string TunnelRemoteAddress { get; } // methods public virtual Foundation.NSObject Copy (Foundation.NSZone zone); public virtual void EncodeTo (Foundation.NSCoder encoder); }

New Type: NetworkExtension.NETunnelProvider

public class NETunnelProvider : NetworkExtension.NEProvider { // constructors protected NETunnelProvider (Foundation.NSObjectFlag t); protected NETunnelProvider (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual NEVpnProtocol ProtocolConfiguration { get; } public virtual bool Reasserting { get; set; } // methods public virtual void HandleAppMessage (Foundation.NSData messageData, System.Action<Foundation.NSData> completionHandler); public virtual System.Threading.Tasks.Task<Foundation.NSData> HandleAppMessageAsync (Foundation.NSData messageData); public virtual void SetTunnelNetworkSettings (NETunnelNetworkSettings tunnelNetworkSettings, System.Action<Foundation.NSError> completionHandler); public virtual System.Threading.Tasks.Task SetTunnelNetworkSettingsAsync (NETunnelNetworkSettings tunnelNetworkSettings); }

New Type: NetworkExtension.NETunnelProviderError

[Serializable] public enum NETunnelProviderError { Canceled = 2, Failed = 3, Invalid = 1, None = 0, }

New Type: NetworkExtension.NETunnelProviderErrorExtensions

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

New Type: NetworkExtension.NETunnelProviderManager

public class NETunnelProviderManager : NetworkExtension.NEVpnManager { // constructors public NETunnelProviderManager (); protected NETunnelProviderManager (Foundation.NSObjectFlag t); protected NETunnelProviderManager (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } // methods public static void LoadAllFromPreferences (System.Action<Foundation.NSArray,Foundation.NSError> completionHandler); public static System.Threading.Tasks.Task<Foundation.NSArray> LoadAllFromPreferencesAsync (); }

New Type: NetworkExtension.NETunnelProviderProtocol

public class NETunnelProviderProtocol : NetworkExtension.NEVpnProtocol { // constructors public NETunnelProviderProtocol (); public NETunnelProviderProtocol (Foundation.NSCoder coder); protected NETunnelProviderProtocol (Foundation.NSObjectFlag t); protected NETunnelProviderProtocol (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual string ProviderBundleIdentifier { get; set; } public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> ProviderConfiguration { get; set; } }

New Type: NetworkExtension.NETunnelProviderSession

public class NETunnelProviderSession : NetworkExtension.NEVpnConnection { // constructors public NETunnelProviderSession (); protected NETunnelProviderSession (Foundation.NSObjectFlag t); protected NETunnelProviderSession (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } // methods public virtual bool SendProviderMessage (Foundation.NSData messageData, out Foundation.NSError error, System.Action<Foundation.NSData> responseHandler); public virtual bool StartTunnel (Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> options, out Foundation.NSError error); public virtual void StopTunnel (); }

New Type: NetworkExtension.NEVpnConnection

public class NEVpnConnection : Foundation.NSObject { // constructors public NEVpnConnection (); protected NEVpnConnection (Foundation.NSObjectFlag t); protected NEVpnConnection (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual Foundation.NSDate ConnectedDate { get; } public virtual NEVpnManager Manager { get; } public virtual NEVpnStatus Status { get; } public static Foundation.NSString StatusDidChangeNotification { get; } // methods public virtual void FetchLastDisconnectError (System.Action<Foundation.NSError> handler); public virtual System.Threading.Tasks.Task FetchLastDisconnectErrorAsync (); public virtual bool StartVpnTunnel (out Foundation.NSError error); public bool StartVpnTunnel (NEVpnConnectionStartOptions options, out Foundation.NSError error); public virtual void StopVpnTunnel ();

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

}

New Type: NetworkExtension.NEVpnConnectionError

[Serializable] public enum NEVpnConnectionError { AuthenticationFailed = 8, ClientCertificateExpired = 11, ClientCertificateInvalid = 9, ClientCertificateNotYetValid = 10, ConfigurationFailed = 4, ConfigurationNotFound = 13, NegotiationFailed = 15, NoNetworkAvailable = 2, Overslept = 1, PluginDisabled = 14, PluginFailed = 12, ServerAddressResolutionFailed = 5, ServerCertificateExpired = 19, ServerCertificateInvalid = 17, ServerCertificateNotYetValid = 18, ServerDead = 7, ServerDisconnected = 16, ServerNotResponding = 6, UnrecoverableNetworkChange = 3, }

New Type: NetworkExtension.NEVpnConnectionErrorExtensions

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

New Type: NetworkExtension.NEVpnConnectionStartOptions

public class NEVpnConnectionStartOptions : Foundation.DictionaryContainer { // constructors public NEVpnConnectionStartOptions (); public NEVpnConnectionStartOptions (Foundation.NSDictionary dictionary); // properties public Foundation.NSString Password { get; set; } public Foundation.NSString Username { get; set; } }

New Type: NetworkExtension.NEVpnError

[Serializable] public enum NEVpnError { ConfigurationDisabled = 2, ConfigurationInvalid = 1, ConfigurationReadWriteFailed = 5, ConfigurationStale = 4, ConfigurationUnknown = 6, ConnectionFailed = 3, }

New Type: NetworkExtension.NEVpnErrorExtensions

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

New Type: NetworkExtension.NEVpnIke2CertificateType

[Serializable] public enum NEVpnIke2CertificateType { ECDSA256 = 2, ECDSA384 = 3, ECDSA521 = 4, Ed25519 = 5, RSA = 1, Rsapss = 6, }

New Type: NetworkExtension.NEVpnIke2DeadPeerDetectionRate

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

New Type: NetworkExtension.NEVpnIke2DiffieHellman

[Serializable] public enum NEVpnIke2DiffieHellman { Group0 = 0, Group1 = 1, Group14 = 14, Group15 = 15, Group16 = 16, Group17 = 17, Group18 = 18, Group19 = 19, Group2 = 2, Group20 = 20, Group21 = 21, Group31 = 31, Group32 = 32, Group5 = 5, Invalid = 0, }

New Type: NetworkExtension.NEVpnIke2EncryptionAlgorithm

[Serializable] public enum NEVpnIke2EncryptionAlgorithm { AES128 = 3, AES128GCM = 5, AES256 = 4, AES256GCM = 6, ChaCha20Poly1305 = 7, DES = 1, TripleDES = 2, }

New Type: NetworkExtension.NEVpnIke2IntegrityAlgorithm

[Serializable] public enum NEVpnIke2IntegrityAlgorithm { SHA160 = 2, SHA256 = 3, SHA384 = 4, SHA512 = 5, SHA96 = 1, }

New Type: NetworkExtension.NEVpnIke2SecurityAssociationParameters

public class NEVpnIke2SecurityAssociationParameters : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable { // constructors public NEVpnIke2SecurityAssociationParameters (); public NEVpnIke2SecurityAssociationParameters (Foundation.NSCoder coder); protected NEVpnIke2SecurityAssociationParameters (Foundation.NSObjectFlag t); protected NEVpnIke2SecurityAssociationParameters (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual NEVpnIke2DiffieHellman DiffieHellmanGroup { get; set; } public virtual NEVpnIke2EncryptionAlgorithm EncryptionAlgorithm { get; set; } public virtual NEVpnIke2IntegrityAlgorithm IntegrityAlgorithm { get; set; } public virtual int LifetimeMinutes { get; set; } // methods public virtual Foundation.NSObject Copy (Foundation.NSZone zone); public virtual void EncodeTo (Foundation.NSCoder encoder); }

New Type: NetworkExtension.NEVpnIkeAuthenticationMethod

[Serializable] public enum NEVpnIkeAuthenticationMethod { Certificate = 1, None = 0, SharedSecret = 2, }

New Type: NetworkExtension.NEVpnIkev2TlsVersion

[Serializable] public enum NEVpnIkev2TlsVersion { Default = 0, Tls1_0 = 1, Tls1_1 = 2, Tls1_2 = 3, }

New Type: NetworkExtension.NEVpnManager

public class NEVpnManager : Foundation.NSObject { // constructors protected NEVpnManager (Foundation.NSObjectFlag t); protected NEVpnManager (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public static Foundation.NSString ConfigurationChangeNotification { get; } public virtual NEVpnConnection Connection { get; } public virtual bool Enabled { get; set; } public virtual string LocalizedDescription { get; set; } public virtual bool OnDemandEnabled { get; set; } public virtual NEOnDemandRule[] OnDemandRules { get; set; } public virtual NEVpnProtocol ProtocolConfiguration { get; set; } public static NEVpnManager SharedManager { get; } // methods public virtual void LoadFromPreferences (System.Action<Foundation.NSError> completionHandler); public virtual System.Threading.Tasks.Task LoadFromPreferencesAsync (); public virtual void RemoveFromPreferences (System.Action<Foundation.NSError> completionHandler); public virtual System.Threading.Tasks.Task RemoveFromPreferencesAsync (); public virtual void SaveToPreferences (System.Action<Foundation.NSError> completionHandler); public virtual System.Threading.Tasks.Task SaveToPreferencesAsync ();

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

}

New Type: NetworkExtension.NEVpnProtocol

public class NEVpnProtocol : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable { // constructors protected NEVpnProtocol (); protected NEVpnProtocol (Foundation.NSCoder coder); protected NEVpnProtocol (Foundation.NSObjectFlag t); protected NEVpnProtocol (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual bool DisconnectOnSleep { get; set; } public virtual bool EnforceRoutes { get; set; } public virtual bool ExcludeLocalNetworks { get; set; } public virtual Foundation.NSData IdentityData { get; set; } public virtual string IdentityDataPassword { get; set; } public virtual Foundation.NSData IdentityReference { get; set; } public virtual bool IncludeAllNetworks { get; set; } public virtual Foundation.NSData PasswordReference { get; set; } public virtual NEProxySettings ProxySettings { get; set; } public virtual string ServerAddress { get; set; } public virtual string Username { get; set; } // methods public virtual Foundation.NSObject Copy (Foundation.NSZone zone); public virtual void EncodeTo (Foundation.NSCoder encoder); }

New Type: NetworkExtension.NEVpnProtocolIke2

public class NEVpnProtocolIke2 : NetworkExtension.NEVpnProtocolIpSec { // constructors public NEVpnProtocolIke2 (); public NEVpnProtocolIke2 (Foundation.NSCoder coder); protected NEVpnProtocolIke2 (Foundation.NSObjectFlag t); protected NEVpnProtocolIke2 (ObjCRuntime.NativeHandle handle); // properties public virtual NEVpnIke2CertificateType CertificateType { get; set; } public virtual NEVpnIke2SecurityAssociationParameters ChildSecurityAssociationParameters { get; } public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual NEVpnIke2DeadPeerDetectionRate DeadPeerDetectionRate { get; set; } public virtual bool DisableMobike { get; set; } public virtual bool DisableRedirect { get; set; } public virtual bool EnableFallback { get; set; } public virtual bool EnablePfs { get; set; } public virtual bool EnableRevocationCheck { get; set; } public virtual NEVpnIke2SecurityAssociationParameters IKESecurityAssociationParameters { get; } public virtual NEVpnIkev2TlsVersion MaximumTlsVersion { get; set; } public virtual NEVpnIkev2TlsVersion MinimumTlsVersion { get; set; } public virtual UIntPtr Mtu { get; set; } public virtual string ServerCertificateCommonName { get; set; } public virtual string ServerCertificateIssuerCommonName { get; set; } public virtual bool StrictRevocationCheck { get; set; } public virtual bool UseConfigurationAttributeInternalIPSubnet { get; set; } }

New Type: NetworkExtension.NEVpnProtocolIpSec

public class NEVpnProtocolIpSec : NetworkExtension.NEVpnProtocol { // constructors public NEVpnProtocolIpSec (); public NEVpnProtocolIpSec (Foundation.NSCoder coder); protected NEVpnProtocolIpSec (Foundation.NSObjectFlag t); protected NEVpnProtocolIpSec (ObjCRuntime.NativeHandle handle); // properties public virtual NEVpnIkeAuthenticationMethod AuthenticationMethod { get; set; } public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual string LocalIdentifier { get; set; } public virtual string RemoteIdentifier { get; set; } public virtual Foundation.NSData SharedSecretReference { get; set; } public virtual bool UseExtendedAuthentication { get; set; } }

New Type: NetworkExtension.NEVpnStatus

[Serializable] public enum NEVpnStatus { Connected = 3, Connecting = 2, Disconnected = 1, Disconnecting = 5, Invalid = 0, Reasserting = 4, }

New Type: NetworkExtension.NWBonjourServiceEndpoint

public class NWBonjourServiceEndpoint : NetworkExtension.NWEndpoint { // constructors public NWBonjourServiceEndpoint (Foundation.NSCoder coder); protected NWBonjourServiceEndpoint (Foundation.NSObjectFlag t); protected NWBonjourServiceEndpoint (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual string Domain { get; } public virtual string Name { get; } public virtual string Type { get; } // methods public static NWBonjourServiceEndpoint Create (string name, string type, string domain); }

New Type: NetworkExtension.NWEndpoint

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

New Type: NetworkExtension.NWHostEndpoint

public class NWHostEndpoint : NetworkExtension.NWEndpoint { // constructors public NWHostEndpoint (Foundation.NSCoder coder); protected NWHostEndpoint (Foundation.NSObjectFlag t); protected NWHostEndpoint (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual string Hostname { get; } public virtual string Port { get; } // methods public static NWHostEndpoint Create (string hostname, string port); }

New Type: NetworkExtension.NWPath

public class NWPath : Foundation.NSObject { // constructors protected NWPath (Foundation.NSObjectFlag t); protected NWPath (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual bool Constrained { get; } public virtual bool Expensive { get; } public virtual NWPathStatus Status { get; } // methods public virtual bool IsEqualToPath (NWPath path); }

New Type: NetworkExtension.NWPathStatus

[Serializable] public enum NWPathStatus { Invalid = 0, Satisfiable = 3, Satisfied = 1, Unsatisfied = 2, }

New Type: NetworkExtension.NWTcpConnection

public class NWTcpConnection : Foundation.NSObject { // constructors public NWTcpConnection (); protected NWTcpConnection (Foundation.NSObjectFlag t); public NWTcpConnection (NWTcpConnection connection); protected NWTcpConnection (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual NWPath ConnectedPath { get; } public virtual NWEndpoint Endpoint { get; } public virtual Foundation.NSError Error { get; } public virtual bool HasBetterPath { get; } public virtual NWEndpoint LocalAddress { get; } public virtual NWEndpoint RemoteAddress { get; } public virtual NWTcpConnectionState State { get; } public virtual Foundation.NSData TxtRecord { get; } public virtual bool Viable { get; } // methods public virtual void Cancel (); public virtual void ReadLength (UIntPtr length, System.Action<Foundation.NSData,Foundation.NSError> completion); public virtual System.Threading.Tasks.Task<Foundation.NSData> ReadLengthAsync (UIntPtr length); public virtual void ReadMinimumLength (UIntPtr minimum, UIntPtr maximum, System.Action<Foundation.NSData,Foundation.NSError> completion); public virtual System.Threading.Tasks.Task<Foundation.NSData> ReadMinimumLengthAsync (UIntPtr minimum, UIntPtr maximum); public virtual void Write (Foundation.NSData data, System.Action<Foundation.NSError> completion); public virtual System.Threading.Tasks.Task WriteAsync (Foundation.NSData data); public virtual void WriteClose (); }

New Type: NetworkExtension.NWTcpConnectionAuthenticationDelegate

public class NWTcpConnectionAuthenticationDelegate : Foundation.NSObject, INWTcpConnectionAuthenticationDelegate, ObjCRuntime.INativeObject, System.IDisposable { // constructors public NWTcpConnectionAuthenticationDelegate (); protected NWTcpConnectionAuthenticationDelegate (Foundation.NSObjectFlag t); protected NWTcpConnectionAuthenticationDelegate (ObjCRuntime.NativeHandle handle); // methods public virtual void EvaluateTrust (NWTcpConnection connection, Foundation.NSArray peerCertificateChain, System.Action<Security.SecTrust> completion); 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); }

New Type: NetworkExtension.NWTcpConnectionAuthenticationDelegate_Extensions

public static class NWTcpConnectionAuthenticationDelegate_Extensions { // methods public static void EvaluateTrust (this INWTcpConnectionAuthenticationDelegate This, NWTcpConnection connection, Foundation.NSArray peerCertificateChain, System.Action<Security.SecTrust> completion); public static System.Threading.Tasks.Task<Security.SecTrust> EvaluateTrustAsync (this INWTcpConnectionAuthenticationDelegate This, NWTcpConnection connection, Foundation.NSArray peerCertificateChain); public static void ProvideIdentity (this INWTcpConnectionAuthenticationDelegate This, NWTcpConnection connection, System.Action<Security.SecIdentity,Foundation.NSArray> completion); public static bool ShouldEvaluateTrust (this INWTcpConnectionAuthenticationDelegate This, NWTcpConnection connection); public static bool ShouldProvideIdentity (this INWTcpConnectionAuthenticationDelegate This, NWTcpConnection connection); }

New Type: NetworkExtension.NWTcpConnectionState

[Serializable] public enum NWTcpConnectionState { Cancelled = 5, Connected = 3, Connecting = 1, Disconnected = 4, Invalid = 0, Waiting = 2, }

New Type: NetworkExtension.NWTlsParameters

public class NWTlsParameters : Foundation.NSObject { // constructors public NWTlsParameters (); protected NWTlsParameters (Foundation.NSObjectFlag t); protected NWTlsParameters (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual UIntPtr MaximumSslProtocolVersion { get; set; } public virtual UIntPtr MinimumSslProtocolVersion { get; set; } public virtual Foundation.NSSet<Foundation.NSNumber> SslCipherSuites { get; set; } public virtual Foundation.NSData TlsSessionID { get; set; } }

New Type: NetworkExtension.NWUdpSession

public class NWUdpSession : Foundation.NSObject { // constructors public NWUdpSession (); protected NWUdpSession (Foundation.NSObjectFlag t); public NWUdpSession (NWUdpSession session); protected NWUdpSession (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual NWPath CurrentPath { get; } public virtual NWEndpoint Endpoint { get; } public virtual bool HasBetterPath { get; } public virtual UIntPtr MaximumDatagramLength { get; } public virtual NWEndpoint ResolvedEndpoint { get; } public virtual NWUdpSessionState State { get; } public virtual bool Viable { get; } // methods public virtual void Cancel (); public virtual void SetReadHandler (System.Action<Foundation.NSArray,Foundation.NSError> handler, UIntPtr maxDatagrams); public virtual void TryNextResolvedEndpoint (); public virtual void WriteDatagram (Foundation.NSData datagram, System.Action<Foundation.NSError> completionHandler); public virtual System.Threading.Tasks.Task WriteDatagramAsync (Foundation.NSData datagram); public virtual void WriteMultipleDatagrams (Foundation.NSData[] datagramArray, System.Action<Foundation.NSError> completionHandler); public virtual System.Threading.Tasks.Task WriteMultipleDatagramsAsync (Foundation.NSData[] datagramArray); }

New Type: NetworkExtension.NWUdpSessionState

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

New Namespace Phase

New Type: Phase.PhaseAmbientMixerDefinition

public class PhaseAmbientMixerDefinition : Phase.PhaseMixerDefinition { // constructors protected PhaseAmbientMixerDefinition (Foundation.NSObjectFlag t); protected PhaseAmbientMixerDefinition (ObjCRuntime.NativeHandle handle); public PhaseAmbientMixerDefinition (AVFoundation.AVAudioChannelLayout layout, System.Numerics.Quaternion orientation); public PhaseAmbientMixerDefinition (AVFoundation.AVAudioChannelLayout layout, System.Numerics.Quaternion orientation, Foundation.NSString identifier); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual AVFoundation.AVAudioChannelLayout InputChannelLayout { get; } public virtual System.Numerics.Quaternion Orientation { get; } }

New Type: Phase.PhaseAsset

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

New Type: Phase.PhaseAssetError

[Serializable] public enum PhaseAssetError { AlreadyExists = 1346920804, BadParameters = 1346920803, FailedToLoad = 1346920801, GeneralError = 1346920805, InvalidEngineInstance = 1346920802, MemoryAllocation = 1346920806, }

New Type: Phase.PhaseAssetErrorExtensions

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

New Type: Phase.PhaseAssetRegistry

public class PhaseAssetRegistry : Foundation.NSObject { // constructors protected PhaseAssetRegistry (Foundation.NSObjectFlag t); protected PhaseAssetRegistry (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual Foundation.NSDictionary<Foundation.NSString,Phase.PhaseMetaParameter> GlobalMetaParameters { get; } // methods public virtual PhaseAsset GetAsset (string identifier); public virtual PhaseGlobalMetaParameterAsset RegisterGlobalMetaParameter (PhaseMetaParameterDefinition metaParameterDefinition, out Foundation.NSError error); public virtual PhaseSoundAsset RegisterSoundAsset (Foundation.NSData data, string identifier, AVFoundation.AVAudioFormat format, PhaseNormalizationMode normalizationMode, out Foundation.NSError error); public virtual PhaseSoundAsset RegisterSoundAsset (Foundation.NSUrl url, string identifier, PhaseAssetType assetType, AVFoundation.AVAudioChannelLayout channelLayout, PhaseNormalizationMode normalizationMode, out Foundation.NSError error); public virtual PhaseSoundEventNodeAsset RegisterSoundEventAsset (PhaseSoundEventNodeDefinition rootNode, string identifier, out Foundation.NSError error); public virtual void UnregisterAsset (string identifier, System.Action handler); public virtual System.Threading.Tasks.Task UnregisterAssetAsync (string identifier); }

New Type: Phase.PhaseAssetType

[Serializable] public enum PhaseAssetType { Resident = 0, Streamed = 1, }

New Type: Phase.PhaseBlendNodeDefinition

public class PhaseBlendNodeDefinition : Phase.PhaseSoundEventNodeDefinition { // constructors protected PhaseBlendNodeDefinition (Foundation.NSObjectFlag t); protected PhaseBlendNodeDefinition (ObjCRuntime.NativeHandle handle); public PhaseBlendNodeDefinition (PhaseNumberMetaParameterDefinition blendMetaParameterDefinition); public PhaseBlendNodeDefinition (PhaseSpatialMixerDefinition spatialMixerDefinition); public PhaseBlendNodeDefinition (PhaseNumberMetaParameterDefinition blendMetaParameterDefinition, string identifier); public PhaseBlendNodeDefinition (PhaseSpatialMixerDefinition spatialMixerDefinition, string identifier); // properties public virtual PhaseNumberMetaParameterDefinition BlendParameterDefinition { get; } public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual PhaseSpatialMixerDefinition SpatialMixerDefinitionForDistance { get; } // methods public virtual void AddRange (PhaseEnvelope envelope, PhaseSoundEventNodeDefinition subtree); public virtual void AddRangeForInputValuesAbove (double value, double fullGainAtValue, PhaseCurveType fadeCurveType, PhaseSoundEventNodeDefinition subtree); public virtual void AddRangeForInputValuesBelow (double value, double fullGainAtValue, PhaseCurveType fadeCurveType, PhaseSoundEventNodeDefinition subtree); public virtual void AddRangeForInputValuesBetween (double lowValue, double highValue, double fullGainAtLowValue, double fullGainAtHighValue, PhaseCurveType lowFadeCurveType, PhaseCurveType highFadeCurveType, PhaseSoundEventNodeDefinition subtree); }

New Type: Phase.PhaseCalibrationMode

[Serializable] public enum PhaseCalibrationMode { AbsoluteSpl = 2, None = 0, RelativeSpl = 1, }

New Type: Phase.PhaseChannelMixerDefinition

public class PhaseChannelMixerDefinition : Phase.PhaseMixerDefinition { // constructors public PhaseChannelMixerDefinition (AVFoundation.AVAudioChannelLayout layout); protected PhaseChannelMixerDefinition (Foundation.NSObjectFlag t); protected PhaseChannelMixerDefinition (ObjCRuntime.NativeHandle handle); public PhaseChannelMixerDefinition (AVFoundation.AVAudioChannelLayout layout, string identifier); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual AVFoundation.AVAudioChannelLayout InputChannelLayout { get; } }

New Type: Phase.PhaseCullOption

[Serializable] public enum PhaseCullOption { DoNotCull = 4, SleepWakeAtRandomOffset = 2, SleepWakeAtRealtimeOffset = 3, SleepWakeAtZero = 1, Terminate = 0, }

New Type: Phase.PhaseCurveType

[Serializable] public enum PhaseCurveType { Cubed = 1668432757, HoldStartValue = 1668434003, InverseCubed = 1668434243, InverseSigmoid = 1668434247, InverseSine = 1668434259, InverseSquared = 1668434257, JumpToEndValue = 1668434501, Linear = 1668435054, Sigmoid = 1668436839, Sine = 1668436846, Squared = 1668436849, }

New Type: Phase.PhaseDefinition

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

New Type: Phase.PhaseDirectivityModelParameters

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

New Type: Phase.PhaseDistanceModelFadeOutParameters

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

New Type: Phase.PhaseDistanceModelParameters

public class PhaseDistanceModelParameters : Foundation.NSObject { // constructors protected PhaseDistanceModelParameters (Foundation.NSObjectFlag t); protected PhaseDistanceModelParameters (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual PhaseDistanceModelFadeOutParameters FadeOutParameters { get; set; } }

New Type: Phase.PhaseDucker

public class PhaseDucker : Foundation.NSObject { // constructors protected PhaseDucker (Foundation.NSObjectFlag t); protected PhaseDucker (ObjCRuntime.NativeHandle handle); public PhaseDucker (PhaseEngine engine, Foundation.NSSet sourceGroups, Foundation.NSSet targetGroups, double gain, double attackTime, double releaseTime, PhaseCurveType attackCurve, PhaseCurveType releaseCurve); // properties public virtual PhaseCurveType AttackCurve { get; } public virtual double AttackTime { get; } public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual double Gain { get; } public virtual string Identifier { get; } public virtual bool IsActive { get; } public virtual PhaseCurveType ReleaseCurve { get; } public virtual double ReleaseTime { get; } public virtual Foundation.NSSet SourceGroups { get; } public virtual Foundation.NSSet TargetGroups { get; } // methods public virtual void Activate (); public virtual void Deactivate (); }

New Type: Phase.PhaseEngine

public class PhaseEngine : Foundation.NSObject { // constructors protected PhaseEngine (Foundation.NSObjectFlag t); protected PhaseEngine (ObjCRuntime.NativeHandle handle); public PhaseEngine (PhaseUpdateMode updateMode); // properties public virtual PhaseGroupPreset ActiveGroupPreset { get; } public virtual PhaseAssetRegistry AssetRegistry { get; } public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual PhaseMedium DefaultMedium { get; set; } public virtual PhaseReverbPreset DefaultReverbPreset { get; set; } public virtual PhaseDucker[] Duckers { get; } public virtual Foundation.NSDictionary<Foundation.NSString,Phase.PhaseGroup> Groups { get; } public virtual PhaseSpatializationMode OutputSpatializationMode { get; set; } public virtual PhaseRenderingState RenderingState { get; } public virtual PhaseObject RootObject { get; } public virtual PhaseSoundEvent[] SoundEvents { get; } public virtual double UnitsPerMeter { get; set; } public virtual double UnitsPerSecond { get; set; } // methods public virtual void Pause (); public virtual bool Start (out Foundation.NSError error); public virtual void Stop (); public virtual void Update (); }

New Type: Phase.PhaseEnvelope

public class PhaseEnvelope : Foundation.NSObject { // constructors protected PhaseEnvelope (Foundation.NSObjectFlag t); protected PhaseEnvelope (ObjCRuntime.NativeHandle handle); public PhaseEnvelope (CoreGraphics.NVector2d startPoint, PhaseEnvelopeSegment[] segments); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual PhaseNumericPair Domain { get; } public virtual PhaseNumericPair Range { get; } public virtual PhaseEnvelopeSegment[] Segments { get; } public virtual CoreGraphics.NVector2d StartPoint { get; } // methods public virtual double Evaluate (double x); }

New Type: Phase.PhaseEnvelopeDistanceModelParameters

public class PhaseEnvelopeDistanceModelParameters : Phase.PhaseDistanceModelParameters { // constructors protected PhaseEnvelopeDistanceModelParameters (Foundation.NSObjectFlag t); protected PhaseEnvelopeDistanceModelParameters (ObjCRuntime.NativeHandle handle); public PhaseEnvelopeDistanceModelParameters (PhaseEnvelope envelope); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual PhaseEnvelope Envelope { get; } }

New Type: Phase.PhaseEnvelopeSegment

public class PhaseEnvelopeSegment : Foundation.NSObject { // constructors protected PhaseEnvelopeSegment (Foundation.NSObjectFlag t); protected PhaseEnvelopeSegment (ObjCRuntime.NativeHandle handle); public PhaseEnvelopeSegment (CoreGraphics.NVector2d endPoint, PhaseCurveType curveType); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual PhaseCurveType CurveType { get; set; } public virtual CoreGraphics.NVector2d EndPoint { get; set; } }

New Type: Phase.PhaseError

[Serializable] public enum PhaseError { InitializeFailed = 1346913633, InvalidObject = 1346913634, }

New Type: Phase.PhaseErrorExtensions

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

New Type: Phase.PhaseGeneratorNodeDefinition

public class PhaseGeneratorNodeDefinition : Phase.PhaseSoundEventNodeDefinition { // constructors protected PhaseGeneratorNodeDefinition (Foundation.NSObjectFlag t); protected PhaseGeneratorNodeDefinition (ObjCRuntime.NativeHandle handle); // properties public virtual PhaseCalibrationMode CalibrationMode { get; } public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual PhaseNumberMetaParameterDefinition GainMetaParameterDefinition { get; set; } public virtual PhaseGroup Group { get; set; } public virtual double Level { get; } public virtual PhaseMixerDefinition MixerDefinition { get; } public virtual double Rate { get; set; } public virtual PhaseNumberMetaParameterDefinition RateMetaParameterDefinition { get; set; } // methods protected override void Dispose (bool disposing); public virtual void SetCalibrationMode (PhaseCalibrationMode calibrationMode, double level); }

New Type: Phase.PhaseGlobalMetaParameterAsset

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

New Type: Phase.PhaseGroup

public class PhaseGroup : Foundation.NSObject { // constructors protected PhaseGroup (Foundation.NSObjectFlag t); protected PhaseGroup (ObjCRuntime.NativeHandle handle); public PhaseGroup (string identifier); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual double Gain { get; set; } public virtual string Identifier { get; } public virtual bool Muted { get; } public virtual double Rate { get; set; } public virtual bool Soloed { get; } // methods public virtual void FadeGain (double gain, double duration, PhaseCurveType curveType); public virtual void FadeRate (double rate, double duration, PhaseCurveType curveType); public virtual void Mute (); public virtual void Register (PhaseEngine engine); public virtual void Solo (); public virtual void Unmute (); public virtual void Unregister (); public virtual void Unsolo (); }

New Type: Phase.PhaseGroupPreset

public class PhaseGroupPreset : Foundation.NSObject { // constructors protected PhaseGroupPreset (Foundation.NSObjectFlag t); protected PhaseGroupPreset (ObjCRuntime.NativeHandle handle); public PhaseGroupPreset (PhaseEngine engine, Foundation.NSDictionary<Foundation.NSString,Phase.PhaseGroupPresetSetting> settings, double timeToTarget, double timeToReset); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual Foundation.NSDictionary<Foundation.NSString,Phase.PhaseGroupPresetSetting> Settings { get; } public virtual double TimeToReset { get; } public virtual double TimeToTarget { get; } // methods public virtual void Activate (); public virtual void Activate (double timeToTargetOverride); public virtual void Deactivate (); public virtual void Deactivate (double timeToResetOverride); }

New Type: Phase.PhaseGroupPresetSetting

public class PhaseGroupPresetSetting : Foundation.NSObject { // constructors protected PhaseGroupPresetSetting (Foundation.NSObjectFlag t); protected PhaseGroupPresetSetting (ObjCRuntime.NativeHandle handle); public PhaseGroupPresetSetting (double gain, double rate, PhaseCurveType gainCurveType, PhaseCurveType rateCurveType); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual double Gain { get; } public virtual PhaseCurveType GainCurveType { get; } public virtual double Rate { get; } public virtual PhaseCurveType RateCurveType { get; } }

New Type: Phase.PhaseListener

public class PhaseListener : Phase.PhaseObject { // constructors protected PhaseListener (Foundation.NSObjectFlag t); protected PhaseListener (ObjCRuntime.NativeHandle handle); public PhaseListener (PhaseEngine engine); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual double Gain { get; set; } }

New Type: Phase.PhaseMappedMetaParameterDefinition

public class PhaseMappedMetaParameterDefinition : Phase.PhaseNumberMetaParameterDefinition { // constructors protected PhaseMappedMetaParameterDefinition (Foundation.NSObjectFlag t); protected PhaseMappedMetaParameterDefinition (ObjCRuntime.NativeHandle handle); public PhaseMappedMetaParameterDefinition (PhaseNumberMetaParameterDefinition inputMetaParameterDefinition, PhaseEnvelope envelope); public PhaseMappedMetaParameterDefinition (double value, string identifier); public PhaseMappedMetaParameterDefinition (PhaseNumberMetaParameterDefinition inputMetaParameterDefinition, PhaseEnvelope envelope, string identifier); public PhaseMappedMetaParameterDefinition (double value, double minimum, double maximum); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual PhaseEnvelope Envelope { get; } public virtual PhaseNumberMetaParameterDefinition InputMetaParameterDefinition { get; } }

New Type: Phase.PhaseMaterial

public class PhaseMaterial : Foundation.NSObject { // constructors protected PhaseMaterial (Foundation.NSObjectFlag t); protected PhaseMaterial (ObjCRuntime.NativeHandle handle); public PhaseMaterial (PhaseEngine engine, PhaseMaterialPreset preset); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } }

New Type: Phase.PhaseMaterialPreset

[Serializable] public enum PhaseMaterialPreset { Brickwork = 1833071211, Cardboard = 1833136740, Concrete = 1833132914, Drywall = 1833202295, Glass = 1833397363, Wood = 1834448228, }

New Type: Phase.PhaseMedium

public class PhaseMedium : Foundation.NSObject { // constructors protected PhaseMedium (Foundation.NSObjectFlag t); protected PhaseMedium (ObjCRuntime.NativeHandle handle); public PhaseMedium (PhaseEngine engine, PhaseMediumPreset preset); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } }

New Type: Phase.PhaseMediumPreset

[Serializable] public enum PhaseMediumPreset { PresetAir = 1835286898, }

New Type: Phase.PhaseMetaParameter

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

New Type: Phase.PhaseMetaParameterDefinition

public class PhaseMetaParameterDefinition : Phase.PhaseDefinition { // constructors protected PhaseMetaParameterDefinition (Foundation.NSObjectFlag t); protected PhaseMetaParameterDefinition (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual Foundation.NSObject Value { get; } }

New Type: Phase.PhaseMixer

public class PhaseMixer : Foundation.NSObject { // constructors protected PhaseMixer (Foundation.NSObjectFlag t); protected PhaseMixer (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual double Gain { get; } public virtual PhaseMetaParameter GainMetaParameter { get; } public virtual string Identifier { get; } }

New Type: Phase.PhaseMixerDefinition

public class PhaseMixerDefinition : Phase.PhaseDefinition { // constructors protected PhaseMixerDefinition (Foundation.NSObjectFlag t); protected PhaseMixerDefinition (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual double Gain { get; set; } public virtual PhaseNumberMetaParameterDefinition GainMetaParameterDefinition { get; set; } }

New Type: Phase.PhaseMixerParameters

public class PhaseMixerParameters : Foundation.NSObject { // constructors protected PhaseMixerParameters (Foundation.NSObjectFlag t); protected PhaseMixerParameters (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } // methods public virtual void AddAmbientMixerParameters (string identifier, PhaseListener listener); public virtual void AddSpatialMixerParameters (string identifier, PhaseSource source, PhaseListener listener); }

New Type: Phase.PhaseNormalizationMode

[Serializable] public enum PhaseNormalizationMode { Dynamic = 1, None = 0, }

New Type: Phase.PhaseNumberMetaParameter

public class PhaseNumberMetaParameter : Phase.PhaseMetaParameter { // constructors protected PhaseNumberMetaParameter (Foundation.NSObjectFlag t); protected PhaseNumberMetaParameter (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual double Maximum { get; } public virtual double Minimum { get; } // methods public virtual void Fade (double value, double duration); }

New Type: Phase.PhaseNumberMetaParameterDefinition

public class PhaseNumberMetaParameterDefinition : Phase.PhaseMetaParameterDefinition { // constructors protected PhaseNumberMetaParameterDefinition (Foundation.NSObjectFlag t); protected PhaseNumberMetaParameterDefinition (ObjCRuntime.NativeHandle handle); public PhaseNumberMetaParameterDefinition (double value); public PhaseNumberMetaParameterDefinition (double value, string identifier); public PhaseNumberMetaParameterDefinition (double value, double minimum, double maximum); public PhaseNumberMetaParameterDefinition (double value, double minimum, double maximum, string identifier); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual double Maximum { get; } public virtual double Minimum { get; } }

New Type: Phase.PhaseNumericPair

public class PhaseNumericPair : Foundation.NSObject { // constructors protected PhaseNumericPair (Foundation.NSObjectFlag t); protected PhaseNumericPair (ObjCRuntime.NativeHandle handle); public PhaseNumericPair (double first, double second); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual double First { get; set; } public virtual double Second { get; set; } }

New Type: Phase.PhaseObject

public class PhaseObject : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable { // constructors protected PhaseObject (Foundation.NSObjectFlag t); protected PhaseObject (ObjCRuntime.NativeHandle handle); public PhaseObject (PhaseEngine engine); // properties public virtual PhaseObject[] Children { get; } public override ObjCRuntime.NativeHandle ClassHandle { get; } public static System.Numerics.Vector3 Forward { get; } public virtual PhaseObject Parent { get; } public static System.Numerics.Vector3 Right { get; } public virtual CoreGraphics.NMatrix4 Transform { get; set; } public static System.Numerics.Vector3 Up { get; } public virtual CoreGraphics.NMatrix4 WorldTransform { get; set; } // methods public virtual bool AddChild (PhaseObject child, out Foundation.NSError error); public virtual Foundation.NSObject Copy (Foundation.NSZone zone); protected override void Dispose (bool disposing); public virtual void RemoveChild (PhaseObject child); public virtual void RemoveChildren (); }

New Type: Phase.PhaseOccluder

public class PhaseOccluder : Phase.PhaseObject { // constructors protected PhaseOccluder (Foundation.NSObjectFlag t); protected PhaseOccluder (ObjCRuntime.NativeHandle handle); public PhaseOccluder (PhaseEngine engine); public PhaseOccluder (PhaseEngine engine, PhaseShape[] shapes); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual PhaseShape[] Shapes { get; } }

New Type: Phase.PhasePlaybackMode

[Serializable] public enum PhasePlaybackMode { Looping = 1, OneShot = 0, }

New Type: Phase.PhasePushStreamBufferOptions

[Serializable] [Flags] public enum PhasePushStreamBufferOptions { Default = 1, Interrupts = 4, InterruptsAtLoop = 8, Loops = 2, }

New Type: Phase.PhasePushStreamCompletionCallbackCondition

[Serializable] public enum PhasePushStreamCompletionCallbackCondition { DataRendered = 0, }

New Type: Phase.PhasePushStreamNode

public class PhasePushStreamNode : Foundation.NSObject { // constructors protected PhasePushStreamNode (Foundation.NSObjectFlag t); protected PhasePushStreamNode (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual AVFoundation.AVAudioFormat Format { get; } public virtual PhaseNumberMetaParameter GainMetaParameter { get; } public virtual PhaseMixer Mixer { get; } public virtual PhaseNumberMetaParameter RateMetaParameter { get; } // methods public virtual void ScheduleBuffer (AVFoundation.AVAudioPcmBuffer buffer); public virtual void ScheduleBuffer (AVFoundation.AVAudioPcmBuffer buffer, AVFoundation.AVAudioTime when, PhasePushStreamBufferOptions options); public virtual void ScheduleBuffer (AVFoundation.AVAudioPcmBuffer buffer, PhasePushStreamCompletionCallbackCondition completionCallbackCondition, System.Action completionHandler); public virtual void ScheduleBuffer (AVFoundation.AVAudioPcmBuffer buffer, AVFoundation.AVAudioTime when, PhasePushStreamBufferOptions options, PhasePushStreamCompletionCallbackCondition completionCallbackCondition, System.Action completionHandler); public virtual System.Threading.Tasks.Task ScheduleBufferAsync (AVFoundation.AVAudioPcmBuffer buffer, PhasePushStreamCompletionCallbackCondition completionCallbackCondition); public virtual System.Threading.Tasks.Task ScheduleBufferAsync (AVFoundation.AVAudioPcmBuffer buffer, AVFoundation.AVAudioTime when, PhasePushStreamBufferOptions options, PhasePushStreamCompletionCallbackCondition completionCallbackCondition); }

New Type: Phase.PhasePushStreamNodeDefinition

public class PhasePushStreamNodeDefinition : Phase.PhaseGeneratorNodeDefinition { // constructors protected PhasePushStreamNodeDefinition (Foundation.NSObjectFlag t); protected PhasePushStreamNodeDefinition (ObjCRuntime.NativeHandle handle); public PhasePushStreamNodeDefinition (PhaseMixerDefinition mixerDefinition, AVFoundation.AVAudioFormat format); public PhasePushStreamNodeDefinition (PhaseMixerDefinition mixerDefinition, AVFoundation.AVAudioFormat format, string identifier); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual AVFoundation.AVAudioFormat Format { get; } public virtual bool Normalize { get; set; } }

New Type: Phase.PhaseRenderingState

[Serializable] public enum PhaseRenderingState { Paused = 2, Started = 1, Stopped = 0, }

New Type: Phase.PhaseReverbPreset

[Serializable] public enum PhaseReverbPreset { Cathedral = 1917023336, LargeChamber = 1917600616, LargeHall = 1917601841, LargeHall2 = 1917601842, LargeRoom = 1917604401, LargeRoom2 = 1917604402, MediumChamber = 1917666152, MediumHall = 1917667377, MediumHall2 = 1917667378, MediumHall3 = 1917667379, MediumRoom = 1917669997, None = 1917742958, SmallRoom = 1918063213, }

New Type: Phase.PhaseSamplerNodeDefinition

public class PhaseSamplerNodeDefinition : Phase.PhaseGeneratorNodeDefinition { // constructors protected PhaseSamplerNodeDefinition (Foundation.NSObjectFlag t); protected PhaseSamplerNodeDefinition (ObjCRuntime.NativeHandle handle); public PhaseSamplerNodeDefinition (string soundAssetIdentifier, PhaseMixerDefinition mixerDefinition); public PhaseSamplerNodeDefinition (string soundAssetIdentifier, PhaseMixerDefinition mixerDefinition, string identifier); // properties public virtual string AssetIdentifier { get; } public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual PhaseCullOption CullOption { get; set; } public virtual PhasePlaybackMode PlaybackMode { get; set; } }

New Type: Phase.PhaseShape

public class PhaseShape : Foundation.NSObject, Foundation.INSCopying, ObjCRuntime.INativeObject, System.IDisposable { // constructors protected PhaseShape (Foundation.NSObjectFlag t); protected PhaseShape (ObjCRuntime.NativeHandle handle); public PhaseShape (PhaseEngine engine, ModelIO.MDLMesh mesh); public PhaseShape (PhaseEngine engine, ModelIO.MDLMesh mesh, PhaseMaterial[] materials); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual PhaseShapeElement[] Elements { get; } // methods public virtual Foundation.NSObject Copy (Foundation.NSZone zone); }

New Type: Phase.PhaseShapeElement

public class PhaseShapeElement : Foundation.NSObject { // constructors protected PhaseShapeElement (Foundation.NSObjectFlag t); protected PhaseShapeElement (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual PhaseMaterial Material { get; set; } }

New Type: Phase.PhaseSoundAsset

public class PhaseSoundAsset : Phase.PhaseAsset { // constructors protected PhaseSoundAsset (Foundation.NSObjectFlag t); protected PhaseSoundAsset (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual Foundation.NSData Data { get; } public virtual PhaseAssetType Type { get; } public virtual Foundation.NSUrl Url { get; } }

New Type: Phase.PhaseSoundEvent

public class PhaseSoundEvent : Foundation.NSObject { // constructors protected PhaseSoundEvent (Foundation.NSObjectFlag t); protected PhaseSoundEvent (ObjCRuntime.NativeHandle handle); public PhaseSoundEvent (PhaseEngine engine, string assetIdentifier, out Foundation.NSError error); public PhaseSoundEvent (PhaseEngine engine, string assetIdentifier, PhaseMixerParameters mixerParameters, out Foundation.NSError error); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual bool Indefinite { get; } public virtual Foundation.NSDictionary<Foundation.NSString,Phase.PhaseMetaParameter> MetaParameters { get; } public virtual Foundation.NSDictionary<Foundation.NSString,Phase.PhaseMixer> Mixers { get; } public virtual PhaseSoundEventPrepareState PrepareState { get; } public virtual Foundation.NSDictionary<Foundation.NSString,Phase.PhasePushStreamNode> PushStreamNodes { get; } public virtual PhaseRenderingState RenderingState { get; } // methods public virtual void Pause (); public virtual void Prepare (System.Action completionBlock); public virtual bool Prepare (out Foundation.NSError error); public virtual System.Threading.Tasks.Task PrepareAsync (); public virtual void Resume (); public virtual bool Seek (double time, System.Action completionHandler); public virtual System.Threading.Tasks.Task SeekAsync (double time); public virtual System.Threading.Tasks.Task SeekAsync (double time, out bool result); public virtual bool Start (System.Action completionBlock); public virtual bool Start (out Foundation.NSError error); public virtual System.Threading.Tasks.Task StartAsync (); public virtual System.Threading.Tasks.Task StartAsync (out bool result); public virtual void StopAndInvalidate (); }

New Type: Phase.PhaseSoundEventError

[Serializable] public enum PhaseSoundEventError { ApiMisuse = 1346925668, BadData = 1346925666, InvalidInstance = 1346925667, NotFound = 1346925665, OutOfMemory = 1346925670, SystemNotInitialized = 1346925669, }

New Type: Phase.PhaseSoundEventErrorExtensions

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

New Type: Phase.PhaseSoundEventNodeAsset

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

New Type: Phase.PhaseSoundEventNodeDefinition

public class PhaseSoundEventNodeDefinition : Phase.PhaseDefinition { // constructors protected PhaseSoundEventNodeDefinition (Foundation.NSObjectFlag t); protected PhaseSoundEventNodeDefinition (ObjCRuntime.NativeHandle handle); // properties public virtual PhaseSoundEventNodeDefinition[] Children { get; } public override ObjCRuntime.NativeHandle ClassHandle { get; } }

New Type: Phase.PhaseSoundEventPrepareHandlerReason

[Serializable] public enum PhaseSoundEventPrepareHandlerReason { Error = 0, Prepared = 1, Terminated = 2, }

New Type: Phase.PhaseSoundEventPrepareState

[Serializable] public enum PhaseSoundEventPrepareState { InProgress = 1, NotStarted = 0, Prepared = 2, }

New Type: Phase.PhaseSoundEventSeekHandlerReason

[Serializable] public enum PhaseSoundEventSeekHandlerReason { Error = 0, ErrorSeekAlreadyInProgress = 1, SeekSuccessful = 2, }

New Type: Phase.PhaseSoundEventStartHandlerReason

[Serializable] public enum PhaseSoundEventStartHandlerReason { Error = 0, FinishedPlaying = 1, Terminated = 2, }

New Type: Phase.PhaseSource

public class PhaseSource : Phase.PhaseObject { // constructors protected PhaseSource (Foundation.NSObjectFlag t); protected PhaseSource (ObjCRuntime.NativeHandle handle); public PhaseSource (PhaseEngine engine); public PhaseSource (PhaseEngine engine, PhaseShape[] shapes); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual double Gain { get; set; } public virtual PhaseShape[] Shapes { get; } }

New Type: Phase.PhaseSpatialCategory

[Serializable] public enum PhaseSpatialCategory { DirectPathTransmission = 0, EarlyReflections = 1, LateReverb = 2, }

New Type: Phase.PhaseSpatialCategoryExtensions

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

New Type: Phase.PhaseSpatialMixerDefinition

public class PhaseSpatialMixerDefinition : Phase.PhaseMixerDefinition { // constructors protected PhaseSpatialMixerDefinition (Foundation.NSObjectFlag t); protected PhaseSpatialMixerDefinition (ObjCRuntime.NativeHandle handle); public PhaseSpatialMixerDefinition (PhaseSpatialPipeline spatialPipeline); public PhaseSpatialMixerDefinition (PhaseSpatialPipeline spatialPipeline, string identifier); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual PhaseDistanceModelParameters DistanceModelParameters { get; set; } public virtual PhaseDirectivityModelParameters ListenerDirectivityModelParameters { get; set; } public virtual PhaseDirectivityModelParameters SourceDirectivityModelParameters { get; set; } public virtual PhaseSpatialPipeline SpatialPipeline { get; } }

New Type: Phase.PhaseSpatialPipeline

public class PhaseSpatialPipeline : Foundation.NSObject { // constructors protected PhaseSpatialPipeline (Foundation.NSObjectFlag t); protected PhaseSpatialPipeline (ObjCRuntime.NativeHandle handle); public PhaseSpatialPipeline (PhaseSpatialPipelineFlags flags); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual Foundation.NSDictionary<Foundation.NSString,Phase.PhaseSpatialPipelineEntry> Entries { get; } public virtual PhaseSpatialPipelineFlags Flags { get; } }

New Type: Phase.PhaseSpatialPipelineEntry

public class PhaseSpatialPipelineEntry : Foundation.NSObject { // constructors protected PhaseSpatialPipelineEntry (Foundation.NSObjectFlag t); protected PhaseSpatialPipelineEntry (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual double SendLevel { get; set; } public virtual PhaseNumberMetaParameterDefinition SendLevelMetaParameterDefinition { get; set; } }

New Type: Phase.PhaseSpatialPipelineFlags

[Serializable] [Flags] public enum PhaseSpatialPipelineFlags { DirectPathTransmission = 1, EarlyReflections = 2, LateReverb = 4, }

New Type: Phase.PhaseSpatializationMode

[Serializable] public enum PhaseSpatializationMode { AlwaysUseBinaural = 1, AlwaysUseChannelBased = 2, Automatic = 0, }

New Type: Phase.PhaseStringMetaParameter

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

New Type: Phase.PhaseStringMetaParameterDefinition

public class PhaseStringMetaParameterDefinition : Phase.PhaseMetaParameterDefinition { // constructors protected PhaseStringMetaParameterDefinition (Foundation.NSObjectFlag t); protected PhaseStringMetaParameterDefinition (ObjCRuntime.NativeHandle handle); public PhaseStringMetaParameterDefinition (string value); public PhaseStringMetaParameterDefinition (string value, string identifier); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } }

New Type: Phase.PhaseSwitchNodeDefinition

public class PhaseSwitchNodeDefinition : Phase.PhaseSoundEventNodeDefinition { // constructors protected PhaseSwitchNodeDefinition (Foundation.NSObjectFlag t); protected PhaseSwitchNodeDefinition (ObjCRuntime.NativeHandle handle); public PhaseSwitchNodeDefinition (PhaseStringMetaParameterDefinition switchMetaParameterDefinition); public PhaseSwitchNodeDefinition (PhaseStringMetaParameterDefinition switchMetaParameterDefinition, string identifier); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual PhaseStringMetaParameterDefinition SwitchMetaParameterDefinition { get; } // methods public virtual void AddSubtree (PhaseSoundEventNodeDefinition subtree, string switchValue); }

New Type: Phase.PhaseUpdateMode

[Serializable] public enum PhaseUpdateMode { Automatic = 0, Manual = 1, }

New Namespace Symbols

New Type: Symbols.NSSymbolAppearEffect

public class NSSymbolAppearEffect : Symbols.NSSymbolEffect { // constructors public NSSymbolAppearEffect (Foundation.NSCoder coder); protected NSSymbolAppearEffect (Foundation.NSObjectFlag t); protected NSSymbolAppearEffect (ObjCRuntime.NativeHandle handle); // properties public virtual NSSymbolAppearEffect ByLayer { get; } public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual NSSymbolAppearEffect WholeSymbol { get; } // methods public static NSSymbolAppearEffect Create (); public static NSSymbolAppearEffect CreateAppearDownEffect (); public static NSSymbolAppearEffect CreateAppearUpEffect (); }

New Type: Symbols.NSSymbolAutomaticContentTransition

public class NSSymbolAutomaticContentTransition : Symbols.NSSymbolContentTransition { // constructors public NSSymbolAutomaticContentTransition (Foundation.NSCoder coder); protected NSSymbolAutomaticContentTransition (Foundation.NSObjectFlag t); protected NSSymbolAutomaticContentTransition (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } // methods public static NSSymbolAutomaticContentTransition Create (); }

New Type: Symbols.NSSymbolBounceEffect

public class NSSymbolBounceEffect : Symbols.NSSymbolEffect { // constructors public NSSymbolBounceEffect (Foundation.NSCoder coder); protected NSSymbolBounceEffect (Foundation.NSObjectFlag t); protected NSSymbolBounceEffect (ObjCRuntime.NativeHandle handle); // properties public virtual NSSymbolBounceEffect ByLayer { get; } public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual NSSymbolBounceEffect WholeSymbol { get; } // methods public static NSSymbolBounceEffect Create (); public static NSSymbolBounceEffect CreateBounceDownEffect (); public static NSSymbolBounceEffect CreateBounceUpEffect (); }

New Type: Symbols.NSSymbolContentTransition

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

New Type: Symbols.NSSymbolDisappearEffect

public class NSSymbolDisappearEffect : Symbols.NSSymbolEffect { // constructors public NSSymbolDisappearEffect (Foundation.NSCoder coder); protected NSSymbolDisappearEffect (Foundation.NSObjectFlag t); protected NSSymbolDisappearEffect (ObjCRuntime.NativeHandle handle); // properties public virtual NSSymbolDisappearEffect ByLayer { get; } public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual NSSymbolDisappearEffect WholeSymbol { get; } // methods public static NSSymbolDisappearEffect Create (); public static NSSymbolDisappearEffect CreateDisappearDownEffect (); public static NSSymbolDisappearEffect CreateDisappearUpEffect (); }

New Type: Symbols.NSSymbolEffect

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

New Type: Symbols.NSSymbolEffectOptions

public class NSSymbolEffectOptions : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable { // constructors public NSSymbolEffectOptions (Foundation.NSCoder coder); protected NSSymbolEffectOptions (Foundation.NSObjectFlag t); protected NSSymbolEffectOptions (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } // methods public virtual Foundation.NSObject Copy (Foundation.NSZone zone); public static NSSymbolEffectOptions Create (); public static NSSymbolEffectOptions Create (double speed); public static NSSymbolEffectOptions Create (IntPtr repeatCount); public static NSSymbolEffectOptions CreateNonRepeating (); public static NSSymbolEffectOptions CreateRepeating (); public virtual void EncodeTo (Foundation.NSCoder encoder); public virtual NSSymbolEffectOptions Get (double speed); public virtual NSSymbolEffectOptions Get (IntPtr repeatCount); public virtual NSSymbolEffectOptions GetNonRepeating (); public virtual NSSymbolEffectOptions GetRepeating (); }

New Type: Symbols.NSSymbolPulseEffect

public class NSSymbolPulseEffect : Symbols.NSSymbolEffect { // constructors public NSSymbolPulseEffect (Foundation.NSCoder coder); protected NSSymbolPulseEffect (Foundation.NSObjectFlag t); protected NSSymbolPulseEffect (ObjCRuntime.NativeHandle handle); // properties public virtual NSSymbolPulseEffect ByLayer { get; } public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual NSSymbolPulseEffect WholeSymbol { get; } // methods public static NSSymbolPulseEffect Create (); }

New Type: Symbols.NSSymbolReplaceContentTransition

public class NSSymbolReplaceContentTransition : Symbols.NSSymbolContentTransition { // constructors public NSSymbolReplaceContentTransition (Foundation.NSCoder coder); protected NSSymbolReplaceContentTransition (Foundation.NSObjectFlag t); protected NSSymbolReplaceContentTransition (ObjCRuntime.NativeHandle handle); // properties public virtual NSSymbolReplaceContentTransition ByLayer { get; } public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual NSSymbolReplaceContentTransition WholeSymbol { get; } // methods public static NSSymbolReplaceContentTransition Create (); public static NSSymbolReplaceContentTransition CreateReplaceDownUpTransition (); public static NSSymbolReplaceContentTransition CreateReplaceOffUpTransition (); public static NSSymbolReplaceContentTransition CreateReplaceUpUpTransition (); }

New Type: Symbols.NSSymbolScaleEffect

public class NSSymbolScaleEffect : Symbols.NSSymbolEffect { // constructors public NSSymbolScaleEffect (Foundation.NSCoder coder); protected NSSymbolScaleEffect (Foundation.NSObjectFlag t); protected NSSymbolScaleEffect (ObjCRuntime.NativeHandle handle); // properties public virtual NSSymbolScaleEffect ByLayer { get; } public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual NSSymbolScaleEffect WholeSymbol { get; } // methods public static NSSymbolScaleEffect Create (); public static NSSymbolScaleEffect CreateScaleDownEffect (); public static NSSymbolScaleEffect CreateScaleUpEffect (); }

New Type: Symbols.NSSymbolVariableColorEffect

public class NSSymbolVariableColorEffect : Symbols.NSSymbolEffect { // constructors public NSSymbolVariableColorEffect (Foundation.NSCoder coder); protected NSSymbolVariableColorEffect (Foundation.NSObjectFlag t); protected NSSymbolVariableColorEffect (ObjCRuntime.NativeHandle handle); // properties public override ObjCRuntime.NativeHandle ClassHandle { get; } public virtual NSSymbolVariableColorEffect Cumulative { get; } public virtual NSSymbolVariableColorEffect DimInactiveLayers { get; } public virtual NSSymbolVariableColorEffect HideInactiveLayers { get; } public virtual NSSymbolVariableColorEffect Iterative { get; } public virtual NSSymbolVariableColorEffect NonReversing { get; } public virtual NSSymbolVariableColorEffect Reversing { get; } // methods public static NSSymbolVariableColorEffect Create (); }