Xamarin.Mac SDK API diff: 4.2.1 vs 4.4.99

mscorlib.dll

Namespace System

Type Changed: System.BitConverter

Added method:

public static int ToInt32 (System.ReadOnlySpan<byte> value);

Type Changed: System.Double

Added method:

public static bool IsFinite (double d);

Type Changed: System.Int32

Added method:

public bool TryFormat (System.Span<char> destination, out int charsWritten, System.ReadOnlySpan<char> format, IFormatProvider provider);

Type Changed: System.Single

Added method:

public static bool IsFinite (float f);

Type Changed: System.String

Added constructor:

public String (System.ReadOnlySpan<char> value);

Added method:

public static System.ReadOnlySpan<char> op_Implicit (string value);

Type Changed: System.Type

Added property:

public virtual bool IsCollectible { get; }

New Type: System.Memory`1

public struct Memory`1 {
	// constructors
	public Memory`1 (T[] array);
	public Memory`1 (T[] array, int start, int length);
	// properties
	public static System.Memory<T> Empty { get; }
	public bool IsEmpty { get; }
	public int Length { get; }
	public System.Span<T> Span { get; }
	// methods
	public void CopyTo (System.Memory<T> destination);
	public bool Equals (System.Memory<T> other);
	public override bool Equals (object obj);
	public override int GetHashCode ();
	public System.Memory<T> Slice (int start);
	public System.Memory<T> Slice (int start, int length);
	public T[] ToArray ();
	public bool TryCopyTo (System.Memory<T> destination);
	public bool TryGetArray (out System.ArraySegment<T> arraySegment);
	public static System.Memory<T> op_Implicit (System.ArraySegment<T> arraySegment);
	public static System.ReadOnlyMemory<T> op_Implicit (System.Memory<T> memory);
	public static System.Memory<T> op_Implicit (T[] array);
}

New Type: System.ReadOnlyMemory`1

public struct ReadOnlyMemory`1 {
	// constructors
	public ReadOnlyMemory`1 (T[] array);
	public ReadOnlyMemory`1 (T[] array, int start, int length);
	// properties
	public static System.ReadOnlyMemory<T> Empty { get; }
	public bool IsEmpty { get; }
	public int Length { get; }
	public System.ReadOnlySpan<T> Span { get; }
	// methods
	public void CopyTo (System.Memory<T> destination);
	public override bool Equals (object obj);
	public bool Equals (System.ReadOnlyMemory<T> other);
	public override int GetHashCode ();
	public System.ReadOnlyMemory<T> Slice (int start);
	public System.ReadOnlyMemory<T> Slice (int start, int length);
	public T[] ToArray ();
	public bool TryCopyTo (System.Memory<T> destination);
	public static System.ReadOnlyMemory<T> op_Implicit (System.ArraySegment<T> arraySegment);
	public static System.ReadOnlyMemory<T> op_Implicit (T[] array);
}

New Type: System.ReadOnlySpan`1

public struct ReadOnlySpan`1 {
	// constructors
	public ReadOnlySpan`1 (T[] array);
	public ReadOnlySpan`1 (void* pointer, int length);
	public ReadOnlySpan`1 (T[] array, int start, int length);
	// properties
	public static System.ReadOnlySpan<T> Empty { get; }
	public bool IsEmpty { get; }
	public T& modreq(System.Runtime.InteropServices.InAttribute) Item { get; }
	public int Length { get; }
	// methods
	public void CopyTo (System.Span<T> destination);
	public static System.ReadOnlySpan<T> DangerousCreate (object obj, ref T objectData, int length);

	[Obsolete ("Equals() on ReadOnlySpan will always throw an exception. Use == instead.")]
public override bool Equals (object obj);
	public System.ReadOnlySpan<Enumerator[T> GetEnumerator ();

	[Obsolete ("GetHashCode() on ReadOnlySpan will always throw an exception.")]
public override int GetHashCode ();
	public System.ReadOnlySpan<T> Slice (int start);
	public System.ReadOnlySpan<T> Slice (int start, int length);
	public T[] ToArray ();
	public bool TryCopyTo (System.Span<T> destination);
	public static bool op_Equality (System.ReadOnlySpan<T> left, System.ReadOnlySpan<T> right);
	public static System.ReadOnlySpan<T> op_Implicit (System.ArraySegment<T> arraySegment);
	public static System.ReadOnlySpan<T> op_Implicit (T[] array);
	public static bool op_Inequality (System.ReadOnlySpan<T> left, System.ReadOnlySpan<T> right);

	// inner types
	public struct Enumerator {
		// properties
		public T& modreq(System.Runtime.InteropServices.InAttribute) Current { get; }
		// methods
		public bool MoveNext ();
	}
}

New Type: System.Span`1

public struct Span`1 {
	// constructors
	public Span`1 (T[] array);
	public Span`1 (void* pointer, int length);
	public Span`1 (T[] array, int start, int length);
	// properties
	public static System.Span<T> Empty { get; }
	public bool IsEmpty { get; }
	public  T Item { get; }
	public int Length { get; }
	// methods
	public void Clear ();
	public void CopyTo (System.Span<T> destination);
	public static System.Span<T> DangerousCreate (object obj, ref T objectData, int length);

	[Obsolete ("Equals() on Span will always throw an exception. Use == instead.")]
public override bool Equals (object obj);
	public void Fill (T value);
	public System.Span<Enumerator[T> GetEnumerator ();

	[Obsolete ("GetHashCode() on Span will always throw an exception.")]
public override int GetHashCode ();
	public System.Span<T> Slice (int start);
	public System.Span<T> Slice (int start, int length);
	public T[] ToArray ();
	public bool TryCopyTo (System.Span<T> destination);
	public static bool op_Equality (System.Span<T> left, System.Span<T> right);
	public static System.Span<T> op_Implicit (System.ArraySegment<T> arraySegment);
	public static System.ReadOnlySpan<T> op_Implicit (System.Span<T> span);
	public static System.Span<T> op_Implicit (T[] array);
	public static bool op_Inequality (System.Span<T> left, System.Span<T> right);

	// inner types
	public struct Enumerator {
		// properties
		public  T Current { get; }
		// methods
		public bool MoveNext ();
	}
}

New Type: System.WeakAttribute

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

Namespace System.Collections.Generic

Type Changed: System.Collections.Generic.Dictionary`2

Added method:

public int EnsureCapacity (int capacity);

Namespace System.IO

Type Changed: System.IO.Stream

Modified methods:

 public ---virtual--- void CopyTo (Stream destination, int bufferSize)

Added methods:

public virtual int Read (System.Span<byte> destination);
public virtual System.Threading.Tasks.ValueTask<int> ReadAsync (System.Memory<byte> destination, System.Threading.CancellationToken cancellationToken);
public virtual void Write (System.ReadOnlySpan<byte> source);

Namespace System.Runtime.CompilerServices

Type Changed: System.Runtime.CompilerServices.RuntimeWrappedException

Added constructor:

public RuntimeWrappedException (object thrownObject);

New Type: System.Runtime.CompilerServices.AsyncMethodBuilderAttribute

public sealed class AsyncMethodBuilderAttribute : System.Attribute {
	// constructors
	public AsyncMethodBuilderAttribute (System.Type builderType);
	// properties
	public System.Type BuilderType { get; }
}

New Type: System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1

public struct AsyncValueTaskMethodBuilder`1 {
	// properties
	public System.Threading.Tasks.ValueTask<TResult> Task { get; }
	// methods
	public void AwaitOnCompleted<TAwaiter, TStateMachine> (ref TAwaiter awaiter, ref TStateMachine stateMachine);
	public void AwaitUnsafeOnCompleted<TAwaiter, TStateMachine> (ref TAwaiter awaiter, ref TStateMachine stateMachine);
	public static System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder<TResult> Create ();
	public void SetException (System.Exception exception);
	public void SetResult (TResult result);
	public void SetStateMachine (IAsyncStateMachine stateMachine);
	public void Start<TStateMachine> (ref TStateMachine stateMachine);
}

New Type: System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable`1

public struct ConfiguredValueTaskAwaitable`1 {
	// methods
	public System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable<ConfiguredValueTaskAwaiter[TResult> GetAwaiter ();

	// inner types
	public struct ConfiguredValueTaskAwaiter, ICriticalNotifyCompletion, INotifyCompletion {
		// properties
		public bool IsCompleted { get; }
		// methods
		public TResult GetResult ();
		public virtual void OnCompleted (System.Action continuation);
		public virtual void UnsafeOnCompleted (System.Action continuation);
	}
}

New Type: System.Runtime.CompilerServices.ValueTaskAwaiter`1

public struct ValueTaskAwaiter`1, ICriticalNotifyCompletion, INotifyCompletion {
	// properties
	public bool IsCompleted { get; }
	// methods
	public TResult GetResult ();
	public virtual void OnCompleted (System.Action continuation);
	public virtual void UnsafeOnCompleted (System.Action continuation);
}

Namespace System.Runtime.InteropServices

New Type: System.Runtime.InteropServices.Architecture

[Serializable]
public enum Architecture {
	Arm = 2,
	Arm64 = 3,
	X64 = 1,
	X86 = 0,
}

New Type: System.Runtime.InteropServices.OSPlatform

public struct OSPlatform, System.IEquatable<OSPlatform> {
	// properties
	public static OSPlatform Linux { get; }
	public static OSPlatform OSX { get; }
	public static OSPlatform Windows { get; }
	// methods
	public static OSPlatform Create (string osPlatform);
	public override bool Equals (object obj);
	public virtual bool Equals (OSPlatform other);
	public override int GetHashCode ();
	public override string ToString ();
	public static bool op_Equality (OSPlatform left, OSPlatform right);
	public static bool op_Inequality (OSPlatform left, OSPlatform right);
}

New Type: System.Runtime.InteropServices.RuntimeInformation

public static class RuntimeInformation {
	// properties
	public static string FrameworkDescription { get; }
	public static Architecture OSArchitecture { get; }
	public static string OSDescription { get; }
	public static Architecture ProcessArchitecture { get; }
	// methods
	public static bool IsOSPlatform (OSPlatform osPlatform);
}

Namespace System.Text

Type Changed: System.Text.Encoding

Added method:

public string GetString (System.ReadOnlySpan<byte> bytes);

Namespace System.Threading.Tasks

Type Changed: System.Threading.Tasks.Task

Added property:

public bool IsCompletedSuccessfully { get; }

New Type: System.Threading.Tasks.ValueTask`1

public struct ValueTask`1, System.IEquatable<System.Threading.Tasks.ValueTask<TResult>> {
	// constructors
	public ValueTask`1 (System.Threading.Tasks.Task<TResult> task);
	public ValueTask`1 (TResult result);
	// properties
	public bool IsCanceled { get; }
	public bool IsCompleted { get; }
	public bool IsCompletedSuccessfully { get; }
	public bool IsFaulted { get; }
	public TResult Result { get; }
	// methods
	public System.Threading.Tasks.Task<TResult> AsTask ();
	public System.Runtime.CompilerServices.ConfiguredValueTaskAwaitable<TResult> ConfigureAwait (bool continueOnCapturedContext);
	public static System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder<TResult> CreateAsyncMethodBuilder ();
	public override bool Equals (object obj);
	public virtual bool Equals (System.Threading.Tasks.ValueTask<TResult> other);
	public System.Runtime.CompilerServices.ValueTaskAwaiter<TResult> GetAwaiter ();
	public override int GetHashCode ();
	public override string ToString ();
	public static bool op_Equality (System.Threading.Tasks.ValueTask<TResult> left, System.Threading.Tasks.ValueTask<TResult> right);
	public static bool op_Inequality (System.Threading.Tasks.ValueTask<TResult> left, System.Threading.Tasks.ValueTask<TResult> right);
}

New Namespace System.Buffers

New Type: System.Buffers.OperationStatus

[Serializable]
public enum OperationStatus {
	DestinationTooSmall = 1,
	Done = 0,
	InvalidData = 3,
	NeedMoreData = 2,
}

System.Data.dll

Namespace Microsoft.SqlServer.Server

Type Changed: Microsoft.SqlServer.Server.SqlDataRecord

Removed method:

public virtual System.Data.IDataReader GetData (int ordinal);

Type Changed: Microsoft.SqlServer.Server.SqlMetaData

Added constructors:

public SqlMetaData (string name, System.Data.SqlDbType dbType, System.Type userDefinedType, string serverTypeName);
public SqlMetaData (string name, System.Data.SqlDbType dbType, System.Type userDefinedType, string serverTypeName, bool useServerDefault, bool isUniqueKey, System.Data.SqlClient.SortOrder columnSortOrder, int sortOrdinal);

Added property:

public System.Type Type { get; }

Namespace System.Data

Type Changed: System.Data.DBConcurrencyException

Modified methods:

-public override void GetObjectData (System.Runtime.Serialization.SerializationInfo si, System.Runtime.Serialization.StreamingContext context)
+public override void GetObjectData (System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context)

Namespace System.Data.SqlClient

Type Changed: System.Data.SqlClient.SqlCommand

Added methods:

protected override System.Threading.Tasks.Task<System.Data.Common.DbDataReader> ExecuteDbDataReaderAsync (System.Data.CommandBehavior behavior, System.Threading.CancellationToken cancellationToken);
public override System.Threading.Tasks.Task<int> ExecuteNonQueryAsync (System.Threading.CancellationToken cancellationToken);
public override System.Threading.Tasks.Task<object> ExecuteScalarAsync (System.Threading.CancellationToken cancellationToken);

Type Changed: System.Data.SqlClient.SqlConnection

Added methods:

public override void EnlistTransaction (System.Transactions.Transaction transaction);
protected override void OnStateChange (System.Data.StateChangeEventArgs stateChange);
public override System.Threading.Tasks.Task OpenAsync (System.Threading.CancellationToken cancellationToken);

Type Changed: System.Data.SqlClient.SqlConnectionStringBuilder

Removed property:

public override bool IsFixedSize { get; }

Obsoleted properties:

 [Obsolete ("This property is ignored beginning in .NET Framework 4.5.For more information about SqlClient support for asynchronous programming, see https://learn.microsoft.com/dotnet/framework/data/adonet/asynchronous-programming")]
 public bool AsynchronousProcessing { get; set; }

Removed method:

protected override void GetProperties (System.Collections.Hashtable propertyDescriptors);

Type Changed: System.Data.SqlClient.SqlDataAdapter

Added method:

protected override bool GetBatchedRecordsAffected (int commandIdentifier, out int recordsAffected, out System.Exception error);

Type Changed: System.Data.SqlClient.SqlDataReader

Added interface:

System.Data.Common.IDbColumnSchemaGenerator

Modified methods:

-protected bool IsCommandBehavior (System.Data.CommandBehavior condition)
+protected bool IsCommandBehavior (System.Data.CommandBehavior condition)

Added methods:

protected override void Dispose (bool disposing);
public virtual System.Collections.ObjectModel.ReadOnlyCollection<System.Data.Common.DbColumn> GetColumnSchema ();
public override System.Threading.Tasks.Task<bool> NextResultAsync (System.Threading.CancellationToken cancellationToken);
public override System.Threading.Tasks.Task<bool> ReadAsync (System.Threading.CancellationToken cancellationToken);

Type Changed: System.Data.SqlClient.SqlException

Added method:

public override string ToString ();

Type Changed: System.Data.SqlClient.SqlNotificationInfo

Added value:

Merge = 16,

Type Changed: System.Data.SqlClient.SqlParameterCollection

Removed properties:

public override bool IsFixedSize { get; }
public override bool IsReadOnly { get; }
public override bool IsSynchronized { get; }

System.IO.Compression.dll

Namespace System.IO.Compression

Type Changed: System.IO.Compression.ZipArchiveEntry

Added property:

public uint Crc32 { get; }

System.dll

Namespace System.IO.Compression

Type Changed: System.IO.Compression.GZipStream

Added methods:

public override void CopyTo (System.IO.Stream destination, int bufferSize);
public override int Read (System.Span<byte> destination);
public override System.Threading.Tasks.ValueTask<int> ReadAsync (System.Memory<byte> destination, System.Threading.CancellationToken cancellationToken);
public override void Write (System.ReadOnlySpan<byte> source);

Namespace System.Net.Security

Type Changed: System.Net.Security.SslStream

Added method:

public override System.Threading.Tasks.Task FlushAsync (System.Threading.CancellationToken cancellationToken);

Namespace System.Net.WebSockets

Type Changed: System.Net.WebSockets.ClientWebSocket

Added methods:

public override System.Threading.Tasks.ValueTask<ValueWebSocketReceiveResult> ReceiveAsync (System.Memory<byte> buffer, System.Threading.CancellationToken cancellationToken);
public override System.Threading.Tasks.Task SendAsync (System.ReadOnlyMemory<byte> buffer, WebSocketMessageType messageType, bool endOfMessage, System.Threading.CancellationToken cancellationToken);

Type Changed: System.Net.WebSockets.WebSocket

Added methods:

public static WebSocket CreateFromStream (System.IO.Stream stream, bool isServer, string subProtocol, System.TimeSpan keepAliveInterval, System.Memory<byte> buffer);
public virtual System.Threading.Tasks.ValueTask<ValueWebSocketReceiveResult> ReceiveAsync (System.Memory<byte> buffer, System.Threading.CancellationToken cancellationToken);
public virtual System.Threading.Tasks.Task SendAsync (System.ReadOnlyMemory<byte> buffer, WebSocketMessageType messageType, bool endOfMessage, System.Threading.CancellationToken cancellationToken);

New Type: System.Net.WebSockets.ValueWebSocketReceiveResult

public struct ValueWebSocketReceiveResult {
	// constructors
	public ValueWebSocketReceiveResult (int count, WebSocketMessageType messageType, bool endOfMessage);
	// properties
	public int Count { get; }
	public bool EndOfMessage { get; }
	public WebSocketMessageType MessageType { get; }
}

System.Numerics.dll

Namespace System.Numerics

Type Changed: System.Numerics.BigInteger

Added constructor:

public BigInteger (System.ReadOnlySpan<byte> value, bool isUnsigned, bool isBigEndian);

Added methods:

public int GetByteCount (bool isUnsigned);
public static BigInteger Parse (System.ReadOnlySpan<char> value, System.Globalization.NumberStyles style, System.IFormatProvider provider);
public byte[] ToByteArray (bool isUnsigned, bool isBigEndian);
public bool TryFormat (System.Span<char> destination, out int charsWritten, System.ReadOnlySpan<char> format, System.IFormatProvider provider);
public static bool TryParse (System.ReadOnlySpan<char> value, out BigInteger result);
public static bool TryParse (System.ReadOnlySpan<char> value, System.Globalization.NumberStyles style, System.IFormatProvider provider, out BigInteger result);
public bool TryWriteBytes (System.Span<byte> destination, out int bytesWritten, bool isUnsigned, bool isBigEndian);

System.Xml.dll

Namespace System.Xml.XmlConfiguration

Type Changed: System.Xml.XmlConfiguration.XmlReaderSection

Added property:

public string CollapseWhiteSpaceIntoEmptyStringString { get; set; }

Xamarin.Mac.dll

Namespace AVFoundation

Type Changed: AVFoundation.AVAudioEngine

Added property:

public virtual AudioToolbox.MusicSequence MusicSequence { get; set; }

Type Changed: AVFoundation.AVAudioPlayer

Added property:

public virtual string CurrentDevice { get; set; }

Type Changed: AVFoundation.AVAudioUnitComponentManager

Obsoleted constructors:

 [Obsolete ("Please use the static 'SharedInstance' property as this type is not meant to be created.")]
 public AVAudioUnitComponentManager ();

Type Changed: AVFoundation.AVFragmentedAsset

Added interface:

IAVContentKeyRecipient

Type Changed: AVFoundation.AVMetadataGroup

Added properties:

public virtual string ClassifyingLabel { get; }
public virtual string UniqueID { get; }

Type Changed: AVFoundation.AVMetadataItem

Added method:

public static AVMetadataItem[] FilterWithItemFilter (AVMetadataItem[] metadataItems, AVMetadataItemFilter metadataItemFilter);

Type Changed: AVFoundation.AVMutableMovieTrack

Added method:

public virtual void ReplaceFormatDescription (CoreMedia.CMFormatDescription formatDescription, CoreMedia.CMFormatDescription newFormatDescription);

Type Changed: AVFoundation.AVPlayer

Added property:

public virtual ulong PreferredVideoDecoderGpuRegistryId { get; set; }

Type Changed: AVFoundation.AVPlayerItem

Added properties:

public virtual AVPlayerItemMediaDataCollector[] MediaDataCollectors { get; }
public virtual CoreGraphics.CGSize PreferredMaximumResolution { get; set; }
public AVVideoApertureMode VideoApertureMode { get; set; }

Added methods:

public virtual void AddMediaDataCollector (AVPlayerItemMediaDataCollector collector);
public virtual void RemoveMediaDataCollector (AVPlayerItemMediaDataCollector collector);

Type Changed: AVFoundation.AVPlayerItemOutput

Added method:

public virtual CoreMedia.CMTime GetItemTime (CoreVideo.CVTimeStamp timestamp);

Type Changed: AVFoundation.AVSampleBufferDisplayLayer

Added property:

public virtual CoreMedia.CMTimebase Timebase { get; }

Obsoleted methods:

 [Obsolete ("Use the 'Enqueue' method instead.")]
 public virtual void EnqueueSampleBuffer (CoreMedia.CMSampleBuffer sampleBuffer);
 [Obsolete ("Use the 'RequestMediaData' method instead.")]
 public virtual void RequestMediaDataWhenReadyOnQueue (CoreFoundation.DispatchQueue queue, System.Action enqueuer);

Added methods:

public virtual void Enqueue (CoreMedia.CMSampleBuffer sampleBuffer);
public virtual void RequestMediaData (CoreFoundation.DispatchQueue queue, System.Action handler);

Type Changed: AVFoundation.AVUrlAsset

Added interface:

IAVContentKeyRecipient

New Type: AVFoundation.AVPlayerItem_AVPlayerItemProtectedContent

public static class AVPlayerItem_AVPlayerItemProtectedContent {
	// methods
	public static void CancelContentAuthorizationRequest (this AVPlayerItem This);
	public static AVContentAuthorizationStatus GetContentAuthorizationRequestStatus (this AVPlayerItem This);
	public static bool IsApplicationAuthorizedForPlayback (this AVPlayerItem This);
	public static bool IsAuthorizationRequiredForPlayback (this AVPlayerItem This);
	public static bool IsContentAuthorizedForPlayback (this AVPlayerItem This);
	public static void RequestContentAuthorizationAsynchronously (this AVPlayerItem This, double timeoutInterval, System.Action handler);
}

Namespace AVKit

Type Changed: AVKit.AVCaptureView

Added constructor:

public AVCaptureView (CoreGraphics.CGRect frameRect);

Type Changed: AVKit.AVPlayerView

Added constructor:

public AVPlayerView (CoreGraphics.CGRect frameRect);

Namespace AppKit

Type Changed: AppKit.NSButton

Added interface:

INSUserInterfaceCompression

Added property:

public virtual NSUserInterfaceCompressionOptions ActiveCompressionOptions { get; }

Added methods:

public virtual void Compress (NSUserInterfaceCompressionOptions[] prioritizedOptions);
public virtual CoreGraphics.CGSize GetMinimumSize (NSUserInterfaceCompressionOptions[] prioritizedOptions);

Type Changed: AppKit.NSImageCell

Added constructors:

public NSImageCell (NSImage image);
public NSImageCell (string aString);

Type Changed: AppKit.NSOutlineView

Added constructor:

public NSOutlineView (CoreGraphics.CGRect frameRect);

Type Changed: AppKit.NSPageController

Added constructor:

public NSPageController (string nibNameOrNull, Foundation.NSBundle nibBundleOrNull);

Type Changed: AppKit.NSPanel

Added constructor:

public NSPanel (CoreGraphics.CGRect contentRect, NSWindowStyle aStyle, NSBackingStore bufferingType, bool deferCreation);

Type Changed: AppKit.NSPopUpButton

Added interface:

INSUserInterfaceCompression

Type Changed: AppKit.NSRuleEditor

Added constructor:

public NSRuleEditor (CoreGraphics.CGRect frameRect);

Type Changed: AppKit.NSScrubberArrangedView

Added constructor:

public NSScrubberArrangedView (CoreGraphics.CGRect frameRect);

Type Changed: AppKit.NSSliderTouchBarItem

Added property:

public virtual INSUserInterfaceCompression View { get; }

Type Changed: AppKit.NSSplitViewController

Added constructor:

public NSSplitViewController (string nibNameOrNull, Foundation.NSBundle nibBundleOrNull);

Type Changed: AppKit.NSStackView

Added constructor:

public NSStackView (CoreGraphics.CGRect frameRect);

Type Changed: AppKit.NSStatusBarButton

Added interface:

INSUserInterfaceCompression

Type Changed: AppKit.NSTabViewController

Added constructor:

public NSTabViewController (string nibNameOrNull, Foundation.NSBundle nibBundleOrNull);

Type Changed: AppKit.NSTableCellView

Added constructor:

public NSTableCellView (CoreGraphics.CGRect frameRect);

Type Changed: AppKit.NSTableRowView

Added constructor:

public NSTableRowView (CoreGraphics.CGRect frameRect);

Type Changed: AppKit.NSTextAttachmentCell

Added constructor:

public NSTextAttachmentCell (string aString);

Type Changed: AppKit.NSTitlebarAccessoryViewController

Added constructor:

public NSTitlebarAccessoryViewController (string nibNameOrNull, Foundation.NSBundle nibBundleOrNull);

Type Changed: AppKit.NSVisualEffectView

Added constructor:

public NSVisualEffectView (CoreGraphics.CGRect frameRect);

Namespace AudioToolbox

New Type: AudioToolbox.ExtendedNoteOnEvent

public struct ExtendedNoteOnEvent {
	// fields
	public uint DeviceGroupID;
	public float Duration;
	public uint InstrumentID;
	public float Pitch;
	public float Velocity;
}

New Type: AudioToolbox.MidiChannelMessage

public struct MidiChannelMessage {
	// constructors
	public MidiChannelMessage (byte status, byte data1, byte data2);
	// fields
	public byte Data1;
	public byte Data2;
	public byte Reserved;
	public byte Status;
}

New Type: AudioToolbox.MidiMetaEvent

public class MidiMetaEvent : AudioToolbox._MidiData {
	// constructors
	public MidiMetaEvent ();
	// fields
	public byte MetaEventType;
}

New Type: AudioToolbox.MidiNoteMessage

public struct MidiNoteMessage {
	// constructors
	public MidiNoteMessage (byte channel, byte note, byte velocity, byte releaseVelocity, float duration);
	// fields
	public byte Channel;
	public float Duration;
	public byte Note;
	public byte ReleaseVelocity;
	public byte Velocity;
}

New Type: AudioToolbox.MidiRawData

public class MidiRawData : AudioToolbox._MidiData {
	// constructors
	public MidiRawData ();
}

New Type: AudioToolbox.MusicEventType

[Serializable]
public enum MusicEventType {
	AUPreset = 10,
	ExtendedNote = 1,
	ExtendedTempo = 3,
	Meta = 5,
	MidiChannelMessage = 7,
	MidiNoteMessage = 6,
	MidiRawData = 8,
	Null = 0,
	Parameter = 9,
	User = 4,
}

New Type: AudioToolbox.MusicEventUserData

public class MusicEventUserData : AudioToolbox.MidiRawData {
	// constructors
	public MusicEventUserData ();
}

New Type: AudioToolbox.MusicPlayer

public class MusicPlayer : ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public MusicPlayer ();
	// properties
	public virtual IntPtr Handle { get; }
	public bool IsPlaying { get; }
	public MusicSequence MusicSequence { get; set; }
	public double PlayRateScalar { get; set; }
	public double Time { get; set; }
	// methods
	public static MusicPlayer Create (out MusicPlayerStatus OSstatus);
	public virtual void Dispose ();
	protected virtual void Dispose (bool disposing);
	public MusicPlayerStatus GetBeatsForHostTime (long hostTime, out double beats);
	public MusicPlayerStatus GetHostTimeForBeats (double beats, out long hostTime);
	public MusicPlayerStatus Preroll ();
	public MusicPlayerStatus Start ();
	public MusicPlayerStatus Stop ();
	protected override void ~MusicPlayer ();
}

New Type: AudioToolbox.MusicPlayerStatus

[Serializable]
public enum MusicPlayerStatus {
	CannotDoInCurrentContext = -10863,
	EndOfTrack = -10857,
	IllegalTrackDestination = -10855,
	InvalidEventType = -10853,
	InvalidPlayerState = -10852,
	InvalidSequenceType = -10846,
	NoSequence = -10854,
	NoTrackDestination = -66720,
	StartOfTrack = -10856,
	Success = 0,
	TrackIndexError = -10859,
	TrackNotFound = -10858,
}

New Type: AudioToolbox.MusicSequence

public class MusicSequence : ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public MusicSequence ();
	// properties
	public AudioUnit.AUGraph AUGraph { get; set; }
	public virtual IntPtr Handle { get; }
	public MusicSequenceType SequenceType { get; set; }
	public int TrackCount { get; }
	// methods
	public MusicPlayerStatus BarBeatTimeToBeats (CABarBeatTime barBeatTime, out double beats);
	public MusicPlayerStatus BeatsToBarBeatTime (double beats, int subbeatDivisor, out CABarBeatTime barBeatTime);
	public Foundation.NSData CreateData (MusicSequenceFileTypeID fileType, MusicSequenceFileFlags flags, ushort resolution);
	public MusicPlayerStatus CreateFile (Foundation.NSUrl url, MusicSequenceFileTypeID fileType, MusicSequenceFileFlags flags, ushort resolution);
	public MusicTrack CreateTrack ();
	public virtual void Dispose ();
	protected virtual void Dispose (bool disposing);
	public double GetBeatsForSeconds (double seconds);
	public Foundation.NSDictionary GetInfoDictionary ();
	public double GetSecondsForBeats (double beats);
	public void GetSmpteResolution (short resolution, out sbyte fps, out byte ticks);
	public MusicTrack GetTempoTrack ();
	public MusicTrack GetTrack (int trackIndex);
	public MusicPlayerStatus GetTrackIndex (MusicTrack track, out int index);
	public MusicPlayerStatus LoadData (Foundation.NSData data, MusicSequenceFileTypeID fileTypeId, MusicSequenceLoadFlags loadFlags);
	public MusicPlayerStatus LoadFile (Foundation.NSUrl url, MusicSequenceFileTypeID fileTypeId, MusicSequenceLoadFlags loadFlags);
	public MusicPlayerStatus Reverse ();
	public short SetSmpteResolution (sbyte fps, byte ticks);
	public void SetUserCallback (MusicSequenceUserCallback callback);
	protected override void ~MusicSequence ();
}

New Type: AudioToolbox.MusicSequenceFileFlags

[Serializable]
[Flags]
public enum MusicSequenceFileFlags {
	Default = 0,
	EraseFile = 1,
}

New Type: AudioToolbox.MusicSequenceFileTypeID

[Serializable]
public enum MusicSequenceFileTypeID {
	Any = 0,
	Midi = 1835623529,
	iMelody = 1768777068,
}

New Type: AudioToolbox.MusicSequenceLoadFlags

[Serializable]
[Flags]
public enum MusicSequenceLoadFlags {
	ChannelsToTracks = 1,
	PreserveTracks = 0,
}

New Type: AudioToolbox.MusicSequenceType

[Serializable]
public enum MusicSequenceType {
	Beats = 1650811252,
	Samples = 1935764848,
	Seconds = 1936024435,
}

New Type: AudioToolbox.MusicSequenceUserCallback

public sealed delegate MusicSequenceUserCallback : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public MusicSequenceUserCallback (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (MusicTrack track, double inEventTime, MusicEventUserData inEventData, double inStartSliceBeat, double inEndSliceBeat, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (MusicTrack track, double inEventTime, MusicEventUserData inEventData, double inStartSliceBeat, double inEndSliceBeat);
}

New Type: AudioToolbox.MusicTrack

public class MusicTrack : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual IntPtr Handle { get; }
	public bool MuteStatus { get; set; }
	public MusicSequence Sequence { get; }
	public bool SoloStatus { get; set; }
	public double TrackLength { get; set; }
	// methods
	public MusicPlayerStatus AddExtendedTempoEvent (double timestamp, double bmp);
	public MusicPlayerStatus AddMetaEvent (double timestamp, MidiMetaEvent metaEvent);
	public MusicPlayerStatus AddMidiChannelEvent (double timestamp, MidiChannelMessage channelMessage);
	public MusicPlayerStatus AddMidiNoteEvent (double timeStamp, MidiNoteMessage message);
	public MusicPlayerStatus AddMidiRawDataEvent (double timestamp, MidiRawData rawData);
	public MusicPlayerStatus AddNewExtendedNoteEvent (double timestamp, ExtendedNoteOnEvent evt);
	public MusicPlayerStatus AddUserEvent (double timestamp, MusicEventUserData userData);
	public MusicPlayerStatus Clear (double startTime, double endTime);
	public MusicPlayerStatus CopyInsert (double sourceStartTime, double sourceEndTime, MusicTrack targetTrack, double targetInsertTime);
	public MusicPlayerStatus Cut (double startTime, double endTime);
	public virtual void Dispose ();
	protected virtual void Dispose (bool disposing);
	public static MusicTrack FromSequence (MusicSequence sequence);
	public MusicPlayerStatus Merge (double sourceStartTime, double sourceEndTime, MusicTrack targetTrack, double targetInsertTime);
	public MusicPlayerStatus MoveEvents (double startTime, double endTime, double moveTime);
	public MusicPlayerStatus SetDestNode (int node);
	protected override void ~MusicTrack ();
}

New Type: AudioToolbox._MidiData

public abstract class _MidiData {
	// constructors
	protected _MidiData ();
	// fields
	protected IntPtr buffer;
	protected byte[] data;
	protected int len;
	protected int start;
	// methods
	public void SetData (byte[] Data);
	public void SetData (int len, IntPtr buffer);
	public void SetData (int len, int start, byte[] Data);
}

Namespace AudioUnit

Type Changed: AudioUnit.AudioUnitStatus

Added value:

InvalidParameterValue = -66743,

Namespace CloudKit

Type Changed: CloudKit.CKAsset

Added interface:

ICKRecordValue

Type Changed: CloudKit.CKErrorCode

Added value:

AssetNotAvailable = 35,

Type Changed: CloudKit.CKReference

Added interface:

ICKRecordValue

Namespace Contacts

Type Changed: Contacts.CNErrorCode

Added value:

NoAccessibleWritableContainers = 101,

Namespace ContactsUI

Type Changed: ContactsUI.CNContactViewController

Added constructor:

public CNContactViewController (string nibName, Foundation.NSBundle bundle);

Namespace CoreAnimation

Type Changed: CoreAnimation.CAAnimationDelegate

Added interface:

ICAAnimationDelegate

New Type: CoreAnimation.CAAnimationDelegate_Extensions

public static class CAAnimationDelegate_Extensions {
	// methods
	public static void AnimationStarted (this ICAAnimationDelegate This, CAAnimation anim);
	public static void AnimationStopped (this ICAAnimationDelegate This, CAAnimation anim, bool finished);
}

New Type: CoreAnimation.ICAAnimationDelegate

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

Namespace CoreAudioKit

Type Changed: CoreAudioKit.AUViewController

Removed method:

public virtual void BeginRequestWithExtensionContext (Foundation.NSExtensionContext context);

New Type: CoreAudioKit.AUGenericView

public class AUGenericView : AppKit.NSView, AppKit.INSAccessibility, AppKit.INSAccessibilityElementProtocol, AppKit.INSAppearanceCustomization, AppKit.INSDraggingDestination, AppKit.INSTouchBarProvider, AppKit.INSUserInterfaceItemIdentification, IAUCustomViewPersistentData, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public AUGenericView (AudioUnit.AudioUnit au);
	public AUGenericView (Foundation.NSCoder coder);
	protected AUGenericView (Foundation.NSObjectFlag t);
	protected AUGenericView (IntPtr handle);
	public AUGenericView (AudioUnit.AudioUnit au, AUGenericViewDisplayFlags inFlags);
	// properties
	public virtual AudioUnit.AudioUnit AudioUnit { get; }
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> CustomViewPersistentData { get; set; }
	public virtual bool ShowsExpertParameters { get; set; }
	// methods
	protected override void Dispose (bool disposing);
}

New Type: CoreAudioKit.AUGenericViewDisplayFlags

[Serializable]
[Flags]
public enum AUGenericViewDisplayFlags {
	ParametersDisplay = 4,
	PropertiesDisplay = 2,
	TitleDisplay = 1,
}

New Type: CoreAudioKit.AUPannerView

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

New Type: CoreAudioKit.CABtleMidiWindowController

public class CABtleMidiWindowController : AppKit.NSWindowController, AppKit.INSSeguePerforming, AppKit.INSTouchBarProvider, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CABtleMidiWindowController ();
	public CABtleMidiWindowController (AppKit.NSWindow window);
	public CABtleMidiWindowController (Foundation.NSCoder coder);
	protected CABtleMidiWindowController (Foundation.NSObjectFlag t);
	protected CABtleMidiWindowController (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
}

New Type: CoreAudioKit.CAInterDeviceAudioViewController

public class CAInterDeviceAudioViewController : AppKit.NSViewController, AppKit.INSSeguePerforming, AppKit.INSTouchBarProvider, AppKit.INSUserInterfaceItemIdentification, Foundation.INSCoding, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CAInterDeviceAudioViewController ();
	public CAInterDeviceAudioViewController (Foundation.NSCoder coder);
	protected CAInterDeviceAudioViewController (Foundation.NSObjectFlag t);
	protected CAInterDeviceAudioViewController (IntPtr handle);
	public CAInterDeviceAudioViewController (string nibNameOrNull, Foundation.NSBundle nibBundleOrNull);
	// properties
	public override IntPtr ClassHandle { get; }
}

New Type: CoreAudioKit.CANetworkBrowserWindowController

public class CANetworkBrowserWindowController : AppKit.NSWindowController, AppKit.INSSeguePerforming, AppKit.INSTouchBarProvider, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CANetworkBrowserWindowController ();
	public CANetworkBrowserWindowController (AppKit.NSWindow window);
	public CANetworkBrowserWindowController (Foundation.NSCoder coder);
	protected CANetworkBrowserWindowController (Foundation.NSObjectFlag t);
	protected CANetworkBrowserWindowController (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static bool IsAvbSupported { get; }
}

New Type: CoreAudioKit.IAUCustomViewPersistentData

public interface IAUCustomViewPersistentData : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> CustomViewPersistentData { get; set; }
}

Namespace CoreData

Type Changed: CoreData.NSManagedObject

Added interface:

INSFetchRequestResult

Type Changed: CoreData.NSManagedObjectID

Added interface:

INSFetchRequestResult

Namespace CoreImage

Type Changed: CoreImage.CIContext_ImageRepresentation

Added methods:

public static Foundation.NSData GetHeifRepresentation (this CIContext This, CIImage image, CIFormat format, CoreGraphics.CGColorSpace colorSpace, CIImageRepresentationOptions options);
public static Foundation.NSData GetJpegRepresentation (this CIContext This, CIImage image, CoreGraphics.CGColorSpace colorSpace, CIImageRepresentationOptions options);
public static Foundation.NSData GetPngRepresentation (this CIContext This, CIImage image, CIFormat format, CoreGraphics.CGColorSpace colorSpace, CIImageRepresentationOptions options);
public static Foundation.NSData GetTiffRepresentation (this CIContext This, CIImage image, CIFormat format, CoreGraphics.CGColorSpace colorSpace, CIImageRepresentationOptions options);
public static bool WriteHeifRepresentation (this CIContext This, CIImage image, Foundation.NSUrl url, CIFormat format, CoreGraphics.CGColorSpace colorSpace, CIImageRepresentationOptions options, out Foundation.NSError error);
public static bool WriteJpegRepresentation (this CIContext This, CIImage image, Foundation.NSUrl url, CoreGraphics.CGColorSpace colorSpace, CIImageRepresentationOptions options, out Foundation.NSError error);
public static bool WritePngRepresentation (this CIContext This, CIImage image, Foundation.NSUrl url, CIFormat format, CoreGraphics.CGColorSpace colorSpace, CIImageRepresentationOptions options, out Foundation.NSError error);
public static bool WriteTiffRepresentation (this CIContext This, CIImage image, Foundation.NSUrl url, CIFormat format, CoreGraphics.CGColorSpace colorSpace, CIImageRepresentationOptions options, out Foundation.NSError error);

Namespace CoreLocation

Type Changed: CoreLocation.CLLocation

Added interface:

CloudKit.ICKRecordValue

Namespace Foundation

Type Changed: Foundation.ModelAttribute

Added properties:

public bool AutoGeneratedName { get; set; }
public string Name { get; set; }

Type Changed: Foundation.NSArray

Added interface:

CloudKit.ICKRecordValue

Modified methods:

-public T[] EnumsFromHandle<T : System.ValueType, System.IConvertible> (IntPtr handle)
+public T[] EnumsFromHandle<T : System.IConvertible, System.ValueType> (IntPtr handle)

Type Changed: Foundation.NSArray`1

Added interface:

CloudKit.ICKRecordValue

Type Changed: Foundation.NSBundle

Obsoleted methods:

 [Obsolete ("Use 'GetLocalizedString' instead.")]
 public string LocalizedString (string key, string comment);
 [Obsolete ("Use 'GetLocalizedString' instead.")]
 public virtual string LocalizedString (string key, string value, string table);
 [Obsolete ("Use 'GetLocalizedString' instead.")]
 public string LocalizedString (string key, string val, string table, string comment);

Added methods:

public virtual NSString GetLocalizedString (NSString key, NSString value, NSString table);
public NSString GetLocalizedString (string key, string value, string table);

Type Changed: Foundation.NSCalendarDate

Added interface:

CloudKit.ICKRecordValue

Type Changed: Foundation.NSData

Added interface:

CloudKit.ICKRecordValue

Type Changed: Foundation.NSDate

Added interface:

CloudKit.ICKRecordValue

Type Changed: Foundation.NSDateComponents

Added field:

public static nint Undefined;

Type Changed: Foundation.NSDecimalNumber

Added interfaces:

CloudKit.ICKRecordValue
CoreData.INSFetchRequestResult

Type Changed: Foundation.NSDictionary

Added interface:

CoreData.INSFetchRequestResult

Type Changed: Foundation.NSDictionary`2

Added interface:

CoreData.INSFetchRequestResult

Type Changed: Foundation.NSMutableArray

Added interface:

CloudKit.ICKRecordValue

Type Changed: Foundation.NSMutableArray`1

Added interface:

CloudKit.ICKRecordValue

Type Changed: Foundation.NSMutableData

Added interface:

CloudKit.ICKRecordValue

Type Changed: Foundation.NSMutableDictionary

Added interface:

CoreData.INSFetchRequestResult

Type Changed: Foundation.NSMutableDictionary`2

Added interface:

CoreData.INSFetchRequestResult

Type Changed: Foundation.NSMutableString

Added interface:

CloudKit.ICKRecordValue

Type Changed: Foundation.NSNull

Added interface:

CoreAnimation.ICAAction

Added method:

public virtual void RunAction (string eventKey, NSObject obj, NSDictionary arguments);

Type Changed: Foundation.NSNumber

Added interfaces:

CloudKit.ICKRecordValue
CoreData.INSFetchRequestResult

Type Changed: Foundation.NSPurgeableData

Added interface:

CloudKit.ICKRecordValue

Type Changed: Foundation.NSString

Added interface:

CloudKit.ICKRecordValue

Type Changed: Foundation.NSUrl

Added interface:

QuickLookUI.IQLPreviewItem

Added properties:

public virtual NSObject PreviewItemDisplayState { get; }
public virtual string PreviewItemTitle { get; }
public virtual NSUrl PreviewItemURL { get; }

Type Changed: Foundation.NSUserActivity

Added properties:

public virtual CoreSpotlight.CSSearchableItemAttributeSet ContentAttributeSet { get; set; }
public virtual CoreImage.CIBarcodeDescriptor DetectedBarcodeDescriptor { get; }

Type Changed: Foundation.NSValue

Added properties:

public virtual MapKit.MKCoordinateSpan CoordinateSpanValue { get; }
public virtual CoreLocation.CLLocationCoordinate2D CoordinateValue { get; }

Type Changed: Foundation.RegisterObjectRepresentationCompletionHandler

Modified methods:

-public virtual System.IAsyncResult BeginInvoke (INSItemProviderWriting object, NSError error, System.AsyncCallback callback, object _object)
+public virtual System.IAsyncResult BeginInvoke (INSItemProviderWriting object, NSError error, System.AsyncCallback callback, object __object)

New Type: Foundation.NSEnumerateLinguisticTagsEnumerator

public sealed delegate NSEnumerateLinguisticTagsEnumerator : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public NSEnumerateLinguisticTagsEnumerator (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (NSString tag, NSRange tokenRange, NSRange sentenceRange, ref bool stop, System.AsyncCallback callback, object object);
	public virtual bool EndInvoke (ref bool stop, System.IAsyncResult result);
	public virtual bool Invoke (NSString tag, NSRange tokenRange, NSRange sentenceRange, ref bool stop);
}

New Type: Foundation.NSLinguisticAnalysis

public static class NSLinguisticAnalysis {
	// methods
	public static void EnumerateLinguisticTags (this NSString This, NSRange range, NSLinguisticTagScheme scheme, NSLinguisticTaggerOptions options, NSOrthography orthography, NSEnumerateLinguisticTagsEnumerator handler);
	public static void EnumerateLinguisticTags (this NSString This, NSRange range, NSString scheme, NSLinguisticTaggerOptions options, NSOrthography orthography, NSEnumerateLinguisticTagsEnumerator handler);
	public static NSLinguisticTagUnit[] GetLinguisticTags (this NSString This, NSRange range, NSLinguisticTagScheme scheme, NSLinguisticTaggerOptions options, NSOrthography orthography, out NSValue[] tokenRanges);
	public static NSLinguisticTagUnit[] GetLinguisticTags (this NSString This, NSRange range, NSString scheme, NSLinguisticTaggerOptions options, NSOrthography orthography, out NSValue[] tokenRanges);
}

New Type: Foundation.NSLinguisticTagScheme

[Serializable]
public enum NSLinguisticTagScheme {
	Language = 5,
	Lemma = 4,
	LexicalClass = 1,
	Name = 2,
	NameOrLexicalClass = 3,
	Script = 6,
	Token = 0,
}

New Type: Foundation.NSLinguisticTagSchemeExtensions

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

New Type: Foundation.NSLinguisticTagUnit

[Serializable]
public enum NSLinguisticTagUnit {
	Adjective = 6,
	Adverb = 7,
	Classifier = 15,
	CloseParenthesis = 22,
	CloseQuote = 20,
	Conjunction = 13,
	Dash = 24,
	Determiner = 9,
	Idiom = 16,
	Interjection = 14,
	Noun = 4,
	Number = 12,
	OpenParenthesis = 21,
	OpenQuote = 19,
	OrganizationName = 29,
	Other = 3,
	OtherPunctuation = 25,
	OtherWhitespace = 27,
	OtherWord = 17,
	ParagraphBreak = 26,
	Particle = 10,
	PersonalName = 28,
	PlaceName = 30,
	Preposition = 11,
	Pronoun = 8,
	Punctuation = 1,
	Terminator = 18,
	Verb = 5,
	Whitespace = 2,
	Word = 0,
	WordJoiner = 23,
}

New Type: Foundation.NSLinguisticTagUnitExtensions

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

Namespace GLKit

Type Changed: GLKit.GLKTextureLoader

Added constructor:

public GLKTextureLoader (AppKit.NSOpenGLContext context);

Namespace GameController

Type Changed: GameController.GCController

Added property:

public virtual GCMicroGamepad MicroGamepad { get; }

New Type: GameController.GCEventViewController

public class GCEventViewController : AppKit.NSViewController, AppKit.INSSeguePerforming, AppKit.INSTouchBarProvider, AppKit.INSUserInterfaceItemIdentification, Foundation.INSCoding, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GCEventViewController ();
	public GCEventViewController (Foundation.NSCoder coder);
	protected GCEventViewController (Foundation.NSObjectFlag t);
	protected GCEventViewController (IntPtr handle);
	public GCEventViewController (string nibName, Foundation.NSBundle bundle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual bool ControllerUserInteractionEnabled { get; set; }
}

New Type: GameController.GCMicroGamepad

public class GCMicroGamepad : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected GCMicroGamepad (Foundation.NSObjectFlag t);
	protected GCMicroGamepad (IntPtr handle);
	// properties
	public virtual bool AllowsRotation { get; set; }
	public virtual GCControllerButtonInput ButtonA { get; }
	public virtual GCControllerButtonInput ButtonX { get; }
	public override IntPtr ClassHandle { get; }
	public virtual GCController Controller { get; }
	public virtual GCControllerDirectionPad Dpad { get; }
	public virtual bool ReportsAbsoluteDpadValues { get; set; }
	public virtual GCMicroGamepadSnapshot SaveSnapshot { get; }
	public virtual GCMicroGamepadValueChangedHandler ValueChangedHandler { get; set; }
	// methods
	protected override void Dispose (bool disposing);
}

New Type: GameController.GCMicroGamepadSnapShotDataV100

public struct GCMicroGamepadSnapShotDataV100 {
	// fields
	public float ButtonA;
	public float ButtonX;
	public float DPadX;
	public float DPadY;
	public ushort Size;
	public ushort Version;
	// methods
	public Foundation.NSData ToNSData ();
}

New Type: GameController.GCMicroGamepadSnapshot

public class GCMicroGamepadSnapshot : GameController.GCMicroGamepad, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GCMicroGamepadSnapshot ();
	public GCMicroGamepadSnapshot (Foundation.NSData data);
	protected GCMicroGamepadSnapshot (Foundation.NSObjectFlag t);
	protected GCMicroGamepadSnapshot (IntPtr handle);
	public GCMicroGamepadSnapshot (GCController controller, Foundation.NSData data);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSData SnapshotData { get; set; }
	// methods
	public static bool TryGetSnapshotData (Foundation.NSData data, out GCMicroGamepadSnapShotDataV100 snapshotData);
}

New Type: GameController.GCMicroGamepadValueChangedHandler

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

Namespace GameKit

Type Changed: GameKit.GKAchievementDescription

Added properties:

public virtual string GroupIdentifier { get; }
public virtual bool Replayable { get; }

Type Changed: GameKit.GKAchievementViewController

Added interface:

IGKViewController

Type Changed: GameKit.GKFriendRequestComposeViewController

Added constructor:

public GKFriendRequestComposeViewController (string nibNameOrNull, Foundation.NSBundle nibBundleOrNull);

Added interface:

IGKViewController

Type Changed: GameKit.GKGameCenterViewController

Added constructor:

public GKGameCenterViewController (string nibNameOrNull, Foundation.NSBundle nibBundleOrNull);

Added interface:

IGKViewController

Type Changed: GameKit.GKGameSession

Added methods:

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

Type Changed: GameKit.GKLeaderboardViewController

Added interface:

IGKViewController

Type Changed: GameKit.GKLocalPlayer

Added interface:

IGKSavedGameListener

Added methods:

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

Type Changed: GameKit.GKMatchmakerViewController

Added constructor:

public GKMatchmakerViewController (string nibNameOrNull, Foundation.NSBundle nibBundleOrNull);

Added interface:

IGKViewController

Type Changed: GameKit.GKTurnBasedMatchmakerViewController

Added constructor:

public GKTurnBasedMatchmakerViewController (string nibNameOrNull, Foundation.NSBundle nibBundleOrNull);

Added interface:

IGKViewController

New Type: GameKit.GKAuthenticationType

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

New Type: GameKit.GKChallengeEventHandler

public class GKChallengeEventHandler : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected GKChallengeEventHandler (Foundation.NSObjectFlag t);
	protected GKChallengeEventHandler (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public IGKChallengeEventHandlerDelegate Delegate { get; set; }
	public static GKChallengeEventHandler Instance { get; }
	public GKChallengePredicate ShouldShowBannerForLocallyCompletedChallenge { get; set; }
	public GKChallengePredicate ShouldShowBannerForLocallyReceivedChallenge { get; set; }
	public GKChallengePredicate ShouldShowBannerForRemotelyCompletedChallenge { get; set; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// events
	public event System.EventHandler LocalPlayerCompletedChallenge;
	public event System.EventHandler LocalPlayerReceivedChallenge;
	public event System.EventHandler LocalPlayerSelectedChallenge;
	public event System.EventHandler RemotePlayerCompletedChallenge;
	// methods
	protected override void Dispose (bool disposing);
}

New Type: GameKit.GKChallengeEventHandlerDelegate

public class GKChallengeEventHandlerDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, IGKChallengeEventHandlerDelegate, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GKChallengeEventHandlerDelegate ();
	protected GKChallengeEventHandlerDelegate (Foundation.NSObjectFlag t);
	protected GKChallengeEventHandlerDelegate (IntPtr handle);
	// methods
	public virtual void LocalPlayerCompletedChallenge (GKChallenge challenge);
	public virtual void LocalPlayerReceivedChallenge (GKChallenge challenge);
	public virtual void LocalPlayerSelectedChallenge (GKChallenge challenge);
	public virtual void RemotePlayerCompletedChallenge (GKChallenge challenge);
	public virtual bool ShouldShowBannerForLocallyCompletedChallenge (GKChallenge challenge);
	public virtual bool ShouldShowBannerForLocallyReceivedChallenge (GKChallenge challenge);
	public virtual bool ShouldShowBannerForRemotelyCompletedChallenge (GKChallenge challenge);
}

New Type: GameKit.GKChallengeEventHandlerDelegate_Extensions

public static class GKChallengeEventHandlerDelegate_Extensions {
	// methods
	public static void LocalPlayerCompletedChallenge (this IGKChallengeEventHandlerDelegate This, GKChallenge challenge);
	public static void LocalPlayerReceivedChallenge (this IGKChallengeEventHandlerDelegate This, GKChallenge challenge);
	public static void LocalPlayerSelectedChallenge (this IGKChallengeEventHandlerDelegate This, GKChallenge challenge);
	public static void RemotePlayerCompletedChallenge (this IGKChallengeEventHandlerDelegate This, GKChallenge challenge);
	public static bool ShouldShowBannerForLocallyCompletedChallenge (this IGKChallengeEventHandlerDelegate This, GKChallenge challenge);
	public static bool ShouldShowBannerForLocallyReceivedChallenge (this IGKChallengeEventHandlerDelegate This, GKChallenge challenge);
	public static bool ShouldShowBannerForRemotelyCompletedChallenge (this IGKChallengeEventHandlerDelegate This, GKChallenge challenge);
}

New Type: GameKit.GKChallengePredicate

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

New Type: GameKit.GKChallengesViewController

public class GKChallengesViewController : AppKit.NSViewController, AppKit.INSSeguePerforming, AppKit.INSTouchBarProvider, AppKit.INSUserInterfaceItemIdentification, Foundation.INSCoding, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, IGKViewController, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GKChallengesViewController ();
	public GKChallengesViewController (Foundation.NSCoder coder);
	protected GKChallengesViewController (Foundation.NSObjectFlag t);
	protected GKChallengesViewController (IntPtr handle);
	public GKChallengesViewController (string nibName, Foundation.NSBundle bundle);
	// properties
	public virtual IGKChallengesViewControllerDelegate ChallengeDelegate { get; set; }
	public override IntPtr ClassHandle { get; }
	// methods
	protected override void Dispose (bool disposing);
}

New Type: GameKit.GKChallengesViewControllerDelegate

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

New Type: GameKit.GKSession

public class GKSession : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GKSession ();
	protected GKSession (Foundation.NSObjectFlag t);
	protected GKSession (IntPtr handle);
	public GKSession (string sessionID, string displayName, GKSessionMode mode);
	// properties
	public virtual bool Available { get; set; }
	public override IntPtr ClassHandle { get; }
	public IGKSessionDelegate Delegate { get; set; }
	public virtual double DisconnectTimeout { get; set; }
	public virtual string DisplayName { get; }
	public virtual string PeerID { get; }
	public virtual string SessionID { get; }
	public virtual GKSessionMode SessionMode { get; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	public virtual bool AcceptConnection (string peerID, out Foundation.NSError error);
	public virtual void CancelConnect (string peerID);
	public virtual void Connect (string peerID, double timeout);
	public virtual void DenyConnection (string peerID);
	public virtual void DisconnectFromAllPeers ();
	public virtual void DisconnectPeerFromAllPeers (string peerID);
	public virtual string DisplayNameForPeer (string peerID);
	protected override void Dispose (bool disposing);
	public virtual string[] PeersWithConnectionState (GKPeerConnectionState state);
	public virtual bool SendData (Foundation.NSData data, string[] peers, GKSendDataMode mode, out Foundation.NSError error);
	public virtual bool SendDataToAllPeers (Foundation.NSData data, GKSendDataMode mode, out Foundation.NSError error);
}

New Type: GameKit.GKSessionDelegate

public class GKSessionDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, IGKSessionDelegate, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public GKSessionDelegate ();
	protected GKSessionDelegate (Foundation.NSObjectFlag t);
	protected GKSessionDelegate (IntPtr handle);
	// methods
	public virtual void FailedWithError (GKSession session, Foundation.NSError error);
	public virtual void PeerChangedState (GKSession session, string peerID, GKPeerConnectionState state);
	public virtual void PeerConnectionFailed (GKSession session, string peerID, Foundation.NSError error);
	public virtual void PeerConnectionRequest (GKSession session, string peerID);
}

New Type: GameKit.GKSessionDelegate_Extensions

public static class GKSessionDelegate_Extensions {
	// methods
	public static void FailedWithError (this IGKSessionDelegate This, GKSession session, Foundation.NSError error);
	public static void PeerChangedState (this IGKSessionDelegate This, GKSession session, string peerID, GKPeerConnectionState state);
	public static void PeerConnectionFailed (this IGKSessionDelegate This, GKSession session, string peerID, Foundation.NSError error);
	public static void PeerConnectionRequest (this IGKSessionDelegate This, GKSession session, string peerID);
}

New Type: GameKit.IGKChallengeEventHandlerDelegate

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

New Type: GameKit.IGKChallengesViewControllerDelegate

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

New Type: GameKit.IGKSessionDelegate

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

New Type: GameKit.IGKViewController

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

Namespace GameplayKit

Type Changed: GameplayKit.GKGameModel_Extensions

Added method:

public static void UnapplyGameModelUpdate (this IGKGameModel This, IGKGameModelUpdate gameModelUpdate);

Namespace ImageIO

Type Changed: ImageIO.CGImageMetadataTagNamespaces

Added property:

public static Foundation.NSString IPTCExtension { get; }

Type Changed: ImageIO.CGImageMetadataTagPrefixes

Added property:

public static Foundation.NSString IPTCExtension { get; }

Type Changed: ImageIO.CGImageProperties

Added properties:

public static Foundation.NSString IPTCExtAboutCvTerm { get; }
public static Foundation.NSString IPTCExtAboutCvTermCvId { get; }
public static Foundation.NSString IPTCExtAboutCvTermId { get; }
public static Foundation.NSString IPTCExtAboutCvTermName { get; }
public static Foundation.NSString IPTCExtAboutCvTermRefinedAbout { get; }
public static Foundation.NSString IPTCExtAddlModelInfo { get; }
public static Foundation.NSString IPTCExtArtworkCircaDateCreated { get; }
public static Foundation.NSString IPTCExtArtworkContentDescription { get; }
public static Foundation.NSString IPTCExtArtworkContributionDescription { get; }
public static Foundation.NSString IPTCExtArtworkCopyrightNotice { get; }
public static Foundation.NSString IPTCExtArtworkCopyrightOwnerId { get; }
public static Foundation.NSString IPTCExtArtworkCopyrightOwnerName { get; }
public static Foundation.NSString IPTCExtArtworkCreator { get; }
public static Foundation.NSString IPTCExtArtworkCreatorId { get; }
public static Foundation.NSString IPTCExtArtworkDateCreated { get; }
public static Foundation.NSString IPTCExtArtworkLicensorId { get; }
public static Foundation.NSString IPTCExtArtworkLicensorName { get; }
public static Foundation.NSString IPTCExtArtworkOrObject { get; }
public static Foundation.NSString IPTCExtArtworkPhysicalDescription { get; }
public static Foundation.NSString IPTCExtArtworkSource { get; }
public static Foundation.NSString IPTCExtArtworkSourceInvUrl { get; }
public static Foundation.NSString IPTCExtArtworkSourceInventoryNo { get; }
public static Foundation.NSString IPTCExtArtworkStylePeriod { get; }
public static Foundation.NSString IPTCExtArtworkTitle { get; }
public static Foundation.NSString IPTCExtAudioBitrate { get; }
public static Foundation.NSString IPTCExtAudioBitrateMode { get; }
public static Foundation.NSString IPTCExtAudioChannelCount { get; }
public static Foundation.NSString IPTCExtCircaDateCreated { get; }
public static Foundation.NSString IPTCExtContainerFormat { get; }
public static Foundation.NSString IPTCExtContainerFormatIdentifier { get; }
public static Foundation.NSString IPTCExtContainerFormatName { get; }
public static Foundation.NSString IPTCExtContributor { get; }
public static Foundation.NSString IPTCExtContributorIdentifier { get; }
public static Foundation.NSString IPTCExtContributorName { get; }
public static Foundation.NSString IPTCExtContributorRole { get; }
public static Foundation.NSString IPTCExtControlledVocabularyTerm { get; }
public static Foundation.NSString IPTCExtCopyrightYear { get; }
public static Foundation.NSString IPTCExtCreator { get; }
public static Foundation.NSString IPTCExtCreatorIdentifier { get; }
public static Foundation.NSString IPTCExtCreatorName { get; }
public static Foundation.NSString IPTCExtCreatorRole { get; }
public static Foundation.NSString IPTCExtDataOnScreen { get; }
public static Foundation.NSString IPTCExtDataOnScreenRegion { get; }
public static Foundation.NSString IPTCExtDataOnScreenRegionD { get; }
public static Foundation.NSString IPTCExtDataOnScreenRegionH { get; }
public static Foundation.NSString IPTCExtDataOnScreenRegionText { get; }
public static Foundation.NSString IPTCExtDataOnScreenRegionUnit { get; }
public static Foundation.NSString IPTCExtDataOnScreenRegionW { get; }
public static Foundation.NSString IPTCExtDataOnScreenRegionX { get; }
public static Foundation.NSString IPTCExtDataOnScreenRegionY { get; }
public static Foundation.NSString IPTCExtDigitalImageGuid { get; }
public static Foundation.NSString IPTCExtDigitalSourceFileType { get; }
public static Foundation.NSString IPTCExtDigitalSourceType { get; }
public static Foundation.NSString IPTCExtDopesheet { get; }
public static Foundation.NSString IPTCExtDopesheetLink { get; }
public static Foundation.NSString IPTCExtDopesheetLinkLink { get; }
public static Foundation.NSString IPTCExtDopesheetLinkLinkQualifier { get; }
public static Foundation.NSString IPTCExtEmbdEncRightsExpr { get; }
public static Foundation.NSString IPTCExtEmbeddedEncodedRightsExpr { get; }
public static Foundation.NSString IPTCExtEmbeddedEncodedRightsExprLangId { get; }
public static Foundation.NSString IPTCExtEmbeddedEncodedRightsExprType { get; }
public static Foundation.NSString IPTCExtEpisode { get; }
public static Foundation.NSString IPTCExtEpisodeIdentifier { get; }
public static Foundation.NSString IPTCExtEpisodeName { get; }
public static Foundation.NSString IPTCExtEpisodeNumber { get; }
public static Foundation.NSString IPTCExtEvent { get; }
public static Foundation.NSString IPTCExtExternalMetadataLink { get; }
public static Foundation.NSString IPTCExtFeedIdentifier { get; }
public static Foundation.NSString IPTCExtGenre { get; }
public static Foundation.NSString IPTCExtGenreCvId { get; }
public static Foundation.NSString IPTCExtGenreCvTermId { get; }
public static Foundation.NSString IPTCExtGenreCvTermName { get; }
public static Foundation.NSString IPTCExtGenreCvTermRefinedAbout { get; }
public static Foundation.NSString IPTCExtHeadline { get; }
public static Foundation.NSString IPTCExtIPTCLastEdited { get; }
public static Foundation.NSString IPTCExtLinkedEncRightsExpr { get; }
public static Foundation.NSString IPTCExtLinkedEncodedRightsExpr { get; }
public static Foundation.NSString IPTCExtLinkedEncodedRightsExprLangId { get; }
public static Foundation.NSString IPTCExtLinkedEncodedRightsExprType { get; }
public static Foundation.NSString IPTCExtLocationCity { get; }
public static Foundation.NSString IPTCExtLocationCountryCode { get; }
public static Foundation.NSString IPTCExtLocationCountryName { get; }
public static Foundation.NSString IPTCExtLocationCreated { get; }
public static Foundation.NSString IPTCExtLocationGpsAltitude { get; }
public static Foundation.NSString IPTCExtLocationGpsLatitude { get; }
public static Foundation.NSString IPTCExtLocationGpsLongitude { get; }
public static Foundation.NSString IPTCExtLocationIdentifier { get; }
public static Foundation.NSString IPTCExtLocationLocationId { get; }
public static Foundation.NSString IPTCExtLocationLocationName { get; }
public static Foundation.NSString IPTCExtLocationProvinceState { get; }
public static Foundation.NSString IPTCExtLocationShown { get; }
public static Foundation.NSString IPTCExtLocationSublocation { get; }
public static Foundation.NSString IPTCExtLocationWorldRegion { get; }
public static Foundation.NSString IPTCExtMaxAvailHeight { get; }
public static Foundation.NSString IPTCExtMaxAvailWidth { get; }
public static Foundation.NSString IPTCExtModelAge { get; }
public static Foundation.NSString IPTCExtOrganisationInImageCode { get; }
public static Foundation.NSString IPTCExtOrganisationInImageName { get; }
public static Foundation.NSString IPTCExtPersonHeard { get; }
public static Foundation.NSString IPTCExtPersonHeardIdentifier { get; }
public static Foundation.NSString IPTCExtPersonHeardName { get; }
public static Foundation.NSString IPTCExtPersonInImage { get; }
public static Foundation.NSString IPTCExtPersonInImageCharacteristic { get; }
public static Foundation.NSString IPTCExtPersonInImageCvTermCvId { get; }
public static Foundation.NSString IPTCExtPersonInImageCvTermId { get; }
public static Foundation.NSString IPTCExtPersonInImageCvTermName { get; }
public static Foundation.NSString IPTCExtPersonInImageCvTermRefinedAbout { get; }
public static Foundation.NSString IPTCExtPersonInImageDescription { get; }
public static Foundation.NSString IPTCExtPersonInImageId { get; }
public static Foundation.NSString IPTCExtPersonInImageName { get; }
public static Foundation.NSString IPTCExtPersonInImageWDetails { get; }
public static Foundation.NSString IPTCExtProductInImage { get; }
public static Foundation.NSString IPTCExtProductInImageDescription { get; }
public static Foundation.NSString IPTCExtProductInImageGtin { get; }
public static Foundation.NSString IPTCExtProductInImageName { get; }
public static Foundation.NSString IPTCExtPublicationEvent { get; }
public static Foundation.NSString IPTCExtPublicationEventDate { get; }
public static Foundation.NSString IPTCExtPublicationEventIdentifier { get; }
public static Foundation.NSString IPTCExtPublicationEventName { get; }
public static Foundation.NSString IPTCExtRating { get; }
public static Foundation.NSString IPTCExtRatingRatingRegion { get; }
public static Foundation.NSString IPTCExtRatingRegionCity { get; }
public static Foundation.NSString IPTCExtRatingRegionCountryCode { get; }
public static Foundation.NSString IPTCExtRatingRegionCountryName { get; }
public static Foundation.NSString IPTCExtRatingRegionGpsAltitude { get; }
public static Foundation.NSString IPTCExtRatingRegionGpsLatitude { get; }
public static Foundation.NSString IPTCExtRatingRegionGpsLongitude { get; }
public static Foundation.NSString IPTCExtRatingRegionIdentifier { get; }
public static Foundation.NSString IPTCExtRatingRegionLocationId { get; }
public static Foundation.NSString IPTCExtRatingRegionLocationName { get; }
public static Foundation.NSString IPTCExtRatingRegionProvinceState { get; }
public static Foundation.NSString IPTCExtRatingRegionSublocation { get; }
public static Foundation.NSString IPTCExtRatingRegionWorldRegion { get; }
public static Foundation.NSString IPTCExtRatingScaleMaxValue { get; }
public static Foundation.NSString IPTCExtRatingScaleMinValue { get; }
public static Foundation.NSString IPTCExtRatingSourceLink { get; }
public static Foundation.NSString IPTCExtRatingValue { get; }
public static Foundation.NSString IPTCExtRatingValueLogoLink { get; }
public static Foundation.NSString IPTCExtRegistryEntryRole { get; }
public static Foundation.NSString IPTCExtRegistryId { get; }
public static Foundation.NSString IPTCExtRegistryItemId { get; }
public static Foundation.NSString IPTCExtRegistryOrganisationId { get; }
public static Foundation.NSString IPTCExtReleaseReady { get; }
public static Foundation.NSString IPTCExtSeason { get; }
public static Foundation.NSString IPTCExtSeasonIdentifier { get; }
public static Foundation.NSString IPTCExtSeasonName { get; }
public static Foundation.NSString IPTCExtSeasonNumber { get; }
public static Foundation.NSString IPTCExtSeries { get; }
public static Foundation.NSString IPTCExtSeriesIdentifier { get; }
public static Foundation.NSString IPTCExtSeriesName { get; }
public static Foundation.NSString IPTCExtShownEvent { get; }
public static Foundation.NSString IPTCExtShownEventIdentifier { get; }
public static Foundation.NSString IPTCExtShownEventName { get; }
public static Foundation.NSString IPTCExtStorylineIdentifier { get; }
public static Foundation.NSString IPTCExtStreamReady { get; }
public static Foundation.NSString IPTCExtStylePeriod { get; }
public static Foundation.NSString IPTCExtSupplyChainSource { get; }
public static Foundation.NSString IPTCExtSupplyChainSourceIdentifier { get; }
public static Foundation.NSString IPTCExtSupplyChainSourceName { get; }
public static Foundation.NSString IPTCExtTemporalCoverage { get; }
public static Foundation.NSString IPTCExtTemporalCoverageFrom { get; }
public static Foundation.NSString IPTCExtTemporalCoverageTo { get; }
public static Foundation.NSString IPTCExtTranscript { get; }
public static Foundation.NSString IPTCExtTranscriptLink { get; }
public static Foundation.NSString IPTCExtTranscriptLinkLink { get; }
public static Foundation.NSString IPTCExtTranscriptLinkLinkQualifier { get; }
public static Foundation.NSString IPTCExtVideoBitrate { get; }
public static Foundation.NSString IPTCExtVideoBitrateMode { get; }
public static Foundation.NSString IPTCExtVideoDisplayAspectRatio { get; }
public static Foundation.NSString IPTCExtVideoEncodingProfile { get; }
public static Foundation.NSString IPTCExtVideoShotType { get; }
public static Foundation.NSString IPTCExtVideoShotTypeIdentifier { get; }
public static Foundation.NSString IPTCExtVideoShotTypeName { get; }
public static Foundation.NSString IPTCExtVideoStreamsCount { get; }
public static Foundation.NSString IPTCExtVisualColor { get; }
public static Foundation.NSString IPTCExtWorkflowTag { get; }
public static Foundation.NSString IPTCExtWorkflowTagCvId { get; }
public static Foundation.NSString IPTCExtWorkflowTagCvTermId { get; }
public static Foundation.NSString IPTCExtWorkflowTagCvTermName { get; }
public static Foundation.NSString IPTCExtWorkflowTagCvTermRefinedAbout { get; }
public static Foundation.NSString OpenExrAspectRatio { get; }
public static Foundation.NSString OpenExrDictionary { get; }

Namespace ImageKit

Type Changed: ImageKit.IKCameraDeviceView

Added constructor:

public IKCameraDeviceView (CoreGraphics.CGRect frameRect);

Added property:

public virtual IKCameraDeviceViewDisplayMode Mode { get; set; }

Type Changed: ImageKit.IKDeviceBrowserView

Added constructor:

public IKDeviceBrowserView (CoreGraphics.CGRect frameRect);

Type Changed: ImageKit.IKFilterBrowserView

Added constructor:

public IKFilterBrowserView (CoreGraphics.CGRect frameRect);

Type Changed: ImageKit.IKFilterUIView

Added constructor:

public IKFilterUIView (CoreGraphics.CGRect frameRect);

Added method:

public static IKFilterUIView Create (CoreGraphics.CGRect frame, CoreImage.CIFilter filter);

Type Changed: ImageKit.IKImageBrowserView

Added interface:

AppKit.INSDraggingSource

Added property:

public virtual bool IgnoreModifierKeysWhileDragging { get; }

Added methods:

public virtual void DraggedImageBeganAt (AppKit.NSImage image, CoreGraphics.CGPoint screenPoint);
public virtual void DraggedImageEndedAtDeposited (AppKit.NSImage image, CoreGraphics.CGPoint screenPoint, bool deposited);
public virtual void DraggedImageEndedAtOperation (AppKit.NSImage image, CoreGraphics.CGPoint screenPoint, AppKit.NSDragOperation operation);
public virtual void DraggedImageMovedTo (AppKit.NSImage image, CoreGraphics.CGPoint screenPoint);
public virtual AppKit.NSDragOperation DraggingSourceOperationMaskForLocal (bool flag);
public virtual string[] NamesOfPromisedFilesDroppedAtDestination (Foundation.NSUrl dropDestination);

Type Changed: ImageKit.IKImageView

Added constructor:

public IKImageView (CoreGraphics.CGRect frameRect);

Type Changed: ImageKit.IKScannerDeviceView

Added constructor:

public IKScannerDeviceView (CoreGraphics.CGRect frameRect);

Added event:

public event System.EventHandler<IKScannerDeviceViewScanUrlEventArgs> DidScanToUrl;

Type Changed: ImageKit.IKScannerDeviceViewDelegate

Added method:

public virtual void DidScanToUrl (IKScannerDeviceView scannerDeviceView, Foundation.NSUrl url, Foundation.NSError error);

Type Changed: ImageKit.IKScannerDeviceViewDelegate_Extensions

Added method:

public static void DidScanToUrl (this IIKScannerDeviceViewDelegate This, IKScannerDeviceView scannerDeviceView, Foundation.NSUrl url, Foundation.NSError error);

New Type: ImageKit.IKOverlayType

[Serializable]
public enum IKOverlayType {
	Background = 0,
	Image = 1,
}

New Type: ImageKit.IKOverlayTypeExtensions

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

New Type: ImageKit.IKScannerDeviceViewScanUrlEventArgs

public class IKScannerDeviceViewScanUrlEventArgs : System.EventArgs {
	// constructors
	public IKScannerDeviceViewScanUrlEventArgs (Foundation.NSUrl url, Foundation.NSError error);
	// properties
	public Foundation.NSError Error { get; set; }
	public Foundation.NSUrl Url { get; set; }
}

New Type: ImageKit.IKToolMode

[Serializable]
public enum IKToolMode {
	Annotate = 0,
	Crop = 1,
	Move = 2,
	None = 3,
	Rotate = 4,
	Select = 5,
	SelectEllipse = 6,
	SelectLasso = 7,
	SelectRect = 8,
}

New Type: ImageKit.IKToolModeExtensions

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

Namespace Intents

Type Changed: Intents.INSpeakableString

Added constructor:

public INSpeakableString (Foundation.NSCoder coder);

Added interfaces:

Foundation.INSCoding
Foundation.INSSecureCoding

Added method:

public virtual void EncodeTo (Foundation.NSCoder encoder);

Namespace MapKit

Type Changed: MapKit.MKMapItem

Added constructor:

public MKMapItem (Foundation.NSCoder coder);

Added interfaces:

Foundation.INSCoding
Foundation.INSSecureCoding

Added method:

public virtual void EncodeTo (Foundation.NSCoder encoder);

Namespace MediaLibrary

Type Changed: MediaLibrary.MediaLibraryTypeIdentifierKey

Added property:

public static Foundation.NSString PhotosDepthEffectGroupTypeIdentifier { get; }

Namespace MediaToolbox

New Type: MediaToolbox.MTProfessionalVideoWorkflow

public static class MTProfessionalVideoWorkflow {
	// methods
	public static void RegisterFormatReaders ();
}

Namespace MetalKit

Type Changed: MetalKit.MTKTextureLoader

Added methods:

public virtual void FromName (string name, nfloat scaleFactor, AppKit.NSDisplayGamut displayGamut, Foundation.NSBundle bundle, Foundation.NSDictionary options, MTKTextureLoaderCallback completionHandler);
public virtual Metal.IMTLTexture FromName (string name, nfloat scaleFactor, AppKit.NSDisplayGamut displayGamut, Foundation.NSBundle bundle, Foundation.NSDictionary options, out Foundation.NSError error);
public void FromName (string name, nfloat scaleFactor, AppKit.NSDisplayGamut displayGamut, Foundation.NSBundle bundle, MTKTextureLoaderOptions options, MTKTextureLoaderCallback completionHandler);
public Metal.IMTLTexture FromName (string name, nfloat scaleFactor, AppKit.NSDisplayGamut displayGamut, Foundation.NSBundle bundle, MTKTextureLoaderOptions options, out Foundation.NSError error);
public virtual System.Threading.Tasks.Task<Metal.IMTLTexture> FromNameAsync (string name, nfloat scaleFactor, AppKit.NSDisplayGamut displayGamut, Foundation.NSBundle bundle, Foundation.NSDictionary options);
public System.Threading.Tasks.Task<Metal.IMTLTexture> FromNameAsync (string name, nfloat scaleFactor, AppKit.NSDisplayGamut displayGamut, Foundation.NSBundle bundle, MTKTextureLoaderOptions options);
public virtual void FromNames (string[] names, nfloat scaleFactor, AppKit.NSDisplayGamut displayGamut, Foundation.NSBundle bundle, Foundation.NSDictionary options, MTKTextureLoaderArrayCallback completionHandler);
public void FromNames (string[] names, nfloat scaleFactor, AppKit.NSDisplayGamut displayGamut, Foundation.NSBundle bundle, MTKTextureLoaderOptions options, MTKTextureLoaderArrayCallback completionHandler);
public virtual System.Threading.Tasks.Task<Metal.IMTLTexture[]> FromNamesAsync (string[] names, nfloat scaleFactor, AppKit.NSDisplayGamut displayGamut, Foundation.NSBundle bundle, Foundation.NSDictionary options);
public System.Threading.Tasks.Task<Metal.IMTLTexture[]> FromNamesAsync (string[] names, nfloat scaleFactor, AppKit.NSDisplayGamut displayGamut, Foundation.NSBundle bundle, MTKTextureLoaderOptions options);

Namespace MetalPerformanceShaders

Type Changed: MetalPerformanceShaders.MPSImageLanczosScale

Modified base type:

-MetalPerformanceShaders.MPSUnaryImageKernel
+MetalPerformanceShaders.MPSImageScale

Removed property:

public virtual MPSScaleTransform? ScaleTransform { get; set; }

Type Changed: MetalPerformanceShaders.MPSImageScale

Modified properties:

-public virtual MPSScaleTransform ScaleTransform { get; set; }
+public virtual MPSScaleTransform? ScaleTransform { get; set; }

Namespace ModelIO

Type Changed: ModelIO.MDLVoxelArray

Modified base type:

-Foundation.NSObject
+ModelIO.MDLObject

Added interface:

IMDLNamed

Namespace NotificationCenter

Type Changed: NotificationCenter.NCWidgetListViewController

Added constructor:

public NCWidgetListViewController (string nibNameOrNull, Foundation.NSBundle nibBundleOrNull);

Type Changed: NotificationCenter.NCWidgetSearchViewController

Added constructor:

public NCWidgetSearchViewController (string nibNameOrNull, Foundation.NSBundle nibBundleOrNull);

Namespace ObjCRuntime

Type Changed: ObjCRuntime.Constants

Modified fields:

-public const string Version = "4.2.1";
+public const string Version = "4.4.99";

Added fields:

public static const string BusinessChatLibrary = "/System/Library/Frameworks/BusinessChat.framework/BusinessChat";
public static const string CoreSpotlightLibrary = "/System/Library/Frameworks/CoreSpotlight.framework/CoreSpotlight";

Type Changed: ObjCRuntime.MacAttribute

Added constructors:

public MacAttribute (byte major, byte minor, PlatformArchitecture arch);
public MacAttribute (byte major, byte minor, byte subminor, PlatformArchitecture arch);

Type Changed: ObjCRuntime.Runtime

Added property:

public static bool DynamicRegistrationSupported { get; }

Type Changed: ObjCRuntime.iOSAttribute

Added constructors:

public iOSAttribute (byte major, byte minor, bool onlyOn64);
public iOSAttribute (byte major, byte minor, byte subminor, bool onlyOn64);

New Type: ObjCRuntime.BindingImplAttribute

public class BindingImplAttribute : System.Attribute {
	// constructors
	public BindingImplAttribute (BindingImplOptions options);
	// properties
	public BindingImplOptions Options { get; set; }
}

New Type: ObjCRuntime.BindingImplOptions

[Serializable]
[Flags]
public enum BindingImplOptions {
	GeneratedCode = 1,
	Optimizable = 2,
}

New Type: ObjCRuntime.NoMacAttribute

public sealed class NoMacAttribute : ObjCRuntime.UnavailableAttribute {
	// constructors
	public NoMacAttribute ();
}

New Type: ObjCRuntime.NoTVAttribute

public sealed class NoTVAttribute : ObjCRuntime.UnavailableAttribute {
	// constructors
	public NoTVAttribute ();
}

New Type: ObjCRuntime.NoWatchAttribute

public sealed class NoWatchAttribute : ObjCRuntime.UnavailableAttribute {
	// constructors
	public NoWatchAttribute ();
}

New Type: ObjCRuntime.NoiOSAttribute

public sealed class NoiOSAttribute : ObjCRuntime.UnavailableAttribute {
	// constructors
	public NoiOSAttribute ();
}

New Type: ObjCRuntime.RequiresSuperAttribute

public sealed class RequiresSuperAttribute : Foundation.AdviceAttribute {
	// constructors
	public RequiresSuperAttribute ();
}

New Type: ObjCRuntime.TVAttribute

public sealed class TVAttribute : ObjCRuntime.IntroducedAttribute {
	// constructors
	public TVAttribute (byte major, byte minor);
	public TVAttribute (byte major, byte minor, bool onlyOn64);
	public TVAttribute (byte major, byte minor, byte subminor);
	public TVAttribute (byte major, byte minor, byte subminor, bool onlyOn64);
}

New Type: ObjCRuntime.WatchAttribute

public sealed class WatchAttribute : ObjCRuntime.IntroducedAttribute {
	// constructors
	public WatchAttribute (byte major, byte minor);
	public WatchAttribute (byte major, byte minor, bool onlyOn64);
	public WatchAttribute (byte major, byte minor, byte subminor);
	public WatchAttribute (byte major, byte minor, byte subminor, bool onlyOn64);
}

Namespace Photos

New Type: Photos.PHLivePhotoEditingError

[Serializable]
public enum PHLivePhotoEditingError {
	Aborted = 1,
	Unknown = 0,
}

New Type: Photos.PHLivePhotoEditingErrorExtensions

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

Namespace PhotosUI

New Type: PhotosUI.IPHLivePhotoViewDelegate

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

New Type: PhotosUI.PHLivePhotoView

public class PHLivePhotoView : AppKit.NSView, AppKit.INSAccessibility, AppKit.INSAccessibilityElementProtocol, AppKit.INSAppearanceCustomization, AppKit.INSDraggingDestination, AppKit.INSTouchBarProvider, AppKit.INSUserInterfaceItemIdentification, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public PHLivePhotoView ();
	public PHLivePhotoView (CoreGraphics.CGRect frame);
	public PHLivePhotoView (Foundation.NSCoder coder);
	protected PHLivePhotoView (Foundation.NSObjectFlag t);
	protected PHLivePhotoView (IntPtr handle);
	// properties
	public virtual float AudioVolume { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual PHLivePhotoViewContentMode ContentMode { get; set; }
	public IPHLivePhotoViewDelegate Delegate { get; set; }
	public virtual Photos.PHLivePhoto LivePhoto { get; set; }
	public virtual AppKit.NSView LivePhotoBadgeView { get; }
	public virtual bool Muted { get; set; }
	public virtual Foundation.NSObject WeakDelegate { get; set; }
	// methods
	protected override void Dispose (bool disposing);
	public virtual void StartPlayback (PHLivePhotoViewPlaybackStyle playbackStyle);
	public virtual void StopPlayback ();
	public virtual void StopPlayback (bool animated);
}

New Type: PhotosUI.PHLivePhotoViewContentMode

[Serializable]
public enum PHLivePhotoViewContentMode {
	AspectFill = 1,
	AspectFit = 0,
}

New Type: PhotosUI.PHLivePhotoViewDelegate

public class PHLivePhotoViewDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, IPHLivePhotoViewDelegate, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public PHLivePhotoViewDelegate ();
	protected PHLivePhotoViewDelegate (Foundation.NSObjectFlag t);
	protected PHLivePhotoViewDelegate (IntPtr handle);
	// methods
	public virtual void DidEndPlayback (PHLivePhotoView livePhotoView, PHLivePhotoViewPlaybackStyle playbackStyle);
	public virtual void WillBeginPlayback (PHLivePhotoView livePhotoView, PHLivePhotoViewPlaybackStyle playbackStyle);
}

New Type: PhotosUI.PHLivePhotoViewDelegate_Extensions

public static class PHLivePhotoViewDelegate_Extensions {
	// methods
	public static void DidEndPlayback (this IPHLivePhotoViewDelegate This, PHLivePhotoView livePhotoView, PHLivePhotoViewPlaybackStyle playbackStyle);
	public static void WillBeginPlayback (this IPHLivePhotoViewDelegate This, PHLivePhotoView livePhotoView, PHLivePhotoViewPlaybackStyle playbackStyle);
}

New Type: PhotosUI.PHLivePhotoViewPlaybackStyle

[Serializable]
public enum PHLivePhotoViewPlaybackStyle {
	Full = 1,
	Hint = 2,
	Undefined = 0,
}

Namespace QTKit

Type Changed: QTKit.QTCaptureView

Added constructor:

public QTCaptureView (CoreGraphics.CGRect frameRect);

Type Changed: QTKit.QTMovieView

Added constructor:

public QTMovieView (CoreGraphics.CGRect frameRect);

Namespace QuickLookUI

New Type: QuickLookUI.IQLPreviewingController

public interface IQLPreviewingController : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void PreparePreviewOfSearchableItem (string identifier, string queryString, System.Action<Foundation.NSError> ItemLoadingHandler);
}

New Type: QuickLookUI.QLPreviewView

public class QLPreviewView : AppKit.NSView, AppKit.INSAccessibility, AppKit.INSAccessibilityElementProtocol, AppKit.INSAppearanceCustomization, AppKit.INSDraggingDestination, AppKit.INSTouchBarProvider, AppKit.INSUserInterfaceItemIdentification, Foundation.INSCoding, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public QLPreviewView ();
	public QLPreviewView (CoreGraphics.CGRect frame);
	public QLPreviewView (Foundation.NSCoder coder);
	protected QLPreviewView (Foundation.NSObjectFlag t);
	protected QLPreviewView (IntPtr handle);
	public QLPreviewView (CoreGraphics.CGRect frame, QLPreviewViewStyle style);
	// properties
	public virtual bool Autostarts { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSObject DisplayState { get; set; }
	public virtual IQLPreviewItem PreviewItem { get; set; }
	public virtual bool ShouldCloseWithWindow { get; set; }
	// methods
	public virtual void Close ();
	public virtual void RefreshPreviewItem ();
}

New Type: QuickLookUI.QLPreviewViewStyle

[Serializable]
public enum QLPreviewViewStyle {
	Compact = 1,
	Normal = 0,
}

Namespace SafariServices

Type Changed: SafariServices.SFSafariExtensionHandler

Added method:

public virtual void AdditionalRequestHeaders (Foundation.NSUrl url, System.Action<Foundation.NSDictionary<Foundation.NSString,Foundation.NSString>> completionHandler);

Type Changed: SafariServices.SFSafariExtensionHandling_Extensions

Added method:

public static void AdditionalRequestHeaders (this ISFSafariExtensionHandling This, Foundation.NSUrl url, System.Action<Foundation.NSDictionary<Foundation.NSString,Foundation.NSString>> completionHandler);

Type Changed: SafariServices.SFSafariExtensionViewController

Added constructor:

public SFSafariExtensionViewController (string nibNameOrNull, Foundation.NSBundle nibBundleOrNull);

Namespace SceneKit

New Type: SceneKit.SCNAnimatableExtensions

public static class SCNAnimatableExtensions {
	// methods
	public static void AddAnimation (this ISCNAnimatable self, SCNAnimation animation, string key);
}

Namespace ScriptingBridge

Type Changed: ScriptingBridge.SBElementArray

Added interface:

CloudKit.ICKRecordValue

Namespace Security

Type Changed: Security.SecAccessControlCreateFlags

Added values:

BiometryAny = 2,
BiometryCurrentSet = 8,

Type Changed: Security.SecKey

Added methods:

public static SecKey CreateRandomKey (SecKeyGenerationParameters parameters, out Foundation.NSError error);
public static SecStatusCode GenerateKeyPair (SecKeyType type, int keySizeInBits, SecPublicPrivateKeyAttrs publicAndPrivateKeyAttrs, out SecKey publicKey, out SecKey privateKey);

Type Changed: Security.SslStatus

Added values:

SSLBadCertificateStatusResponse = -9862,
SSLCertificateRequired = -9863,
SSLConfigurationFailed = -9854,
SSLDecodeError = -9859,
SSLDecompressFail = -9857,
SSLHandshakeFail = -9858,
SSLInappropriateFallback = -9860,
SSLMissingExtension = -9861,
SSLNetworkTimeout = -9853,
SSLTransportReset = -9852,
SSLUnexpectedMessage = -9856,
SSLUnknownPskIdentity = -9864,
SSLUnrecognizedName = -9865,
SSLUnsupportedExtension = -9855,

New Type: Security.SecKeyGenerationParameters

public class SecKeyGenerationParameters : Foundation.DictionaryContainer {
	// constructors
	public SecKeyGenerationParameters ();
	public SecKeyGenerationParameters (Foundation.NSDictionary dictionary);
	// properties
	public SecAccessControl AccessControl { get; set; }
	public Foundation.NSData ApplicationTag { get; set; }
	public bool? CanDecrypt { get; set; }
	public bool? CanDerive { get; set; }
	public bool? CanEncrypt { get; set; }
	public bool? CanSign { get; set; }
	public bool? CanUnwrap { get; set; }
	public bool? CanVerify { get; set; }
	public bool? CanWrap { get; set; }
	public int? EffectiveKeySize { get; set; }
	public bool? IsPermanent { get; set; }
	public int? KeySizeInBits { get; set; }
	public SecKeyType KeyType { get; set; }
	public string Label { get; set; }
	public SecKeyParameters PrivateKeyAttrs { get; set; }
	public SecKeyParameters PublicKeyAttrs { get; set; }
	public SecTokenID TokenID { get; set; }
}

New Type: Security.SecKeyParameters

public class SecKeyParameters : Foundation.DictionaryContainer {
	// constructors
	public SecKeyParameters ();
	public SecKeyParameters (Foundation.NSDictionary dictionary);
	// properties
	public SecAccessControl AccessControl { get; set; }
	public Foundation.NSData ApplicationTag { get; set; }
	public bool? CanDecrypt { get; set; }
	public bool? CanDerive { get; set; }
	public bool? CanEncrypt { get; set; }
	public bool? CanSign { get; set; }
	public bool? CanUnwrap { get; set; }
	public bool? CanVerify { get; set; }
	public int? EffectiveKeySize { get; set; }
	public bool? IsPermanent { get; set; }
	public string Label { get; set; }
}

New Type: Security.SecPublicPrivateKeyAttrs

public class SecPublicPrivateKeyAttrs : Foundation.DictionaryContainer {
	// constructors
	public SecPublicPrivateKeyAttrs ();
	public SecPublicPrivateKeyAttrs (Foundation.NSDictionary dictionary);
	// properties
	public Foundation.NSData ApplicationTag { get; set; }
	public bool? CanDecrypt { get; set; }
	public bool? CanDerive { get; set; }
	public bool? CanEncrypt { get; set; }
	public bool? CanSign { get; set; }
	public bool? CanUnwrap { get; set; }
	public bool? CanVerify { get; set; }
	public int? EffectiveKeySize { get; set; }
	public bool? IsPermanent { get; set; }
	public string Label { get; set; }
}

New Type: Security.SecStatusCodeExtensions

public static class SecStatusCodeExtensions {
	// methods
	public static string GetStatusDescription (this SecStatusCode status);
}

New Type: Security.SecTokenID

[Serializable]
public enum SecTokenID {
	None = 0,
	SecureEnclave = 1,
}

New Type: Security.SecTokenIDExtensions

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

Namespace Social

Type Changed: Social.SLRequest

Added method:

public virtual void AddMultipartData (Foundation.NSData data, string partName, string partType);

New Type: Social.SLComposeServiceViewController

public class SLComposeServiceViewController : AppKit.NSViewController, AppKit.INSSeguePerforming, AppKit.INSTextDelegate, AppKit.INSTextViewDelegate, AppKit.INSTouchBarProvider, AppKit.INSUserInterfaceItemIdentification, Foundation.INSCoding, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public SLComposeServiceViewController ();
	public SLComposeServiceViewController (Foundation.NSCoder coder);
	protected SLComposeServiceViewController (Foundation.NSObjectFlag t);
	protected SLComposeServiceViewController (IntPtr handle);
	public SLComposeServiceViewController (string nibName, Foundation.NSBundle bundle);
	// properties
	public virtual Foundation.NSNumber CharactersRemaining { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual string ContentText { get; }
	public virtual string Placeholder { get; set; }
	public virtual AppKit.NSTextView TextView { get; }
	// methods
	public virtual void Cancel ();
	public virtual void CellClicked (AppKit.NSTextView textView, AppKit.NSTextAttachmentCell cell, CoreGraphics.CGRect cellFrame, uint charIndex);
	public virtual void CellDoubleClicked (AppKit.NSTextView textView, AppKit.NSTextAttachmentCell cell, CoreGraphics.CGRect cellFrame, uint charIndex);
	public virtual void DidChangeSelection (Foundation.NSNotification notification);
	public virtual void DidChangeTypingAttributes (Foundation.NSNotification notification);
	public virtual Foundation.NSTextCheckingResult[] DidCheckText (AppKit.NSTextView view, Foundation.NSRange range, Foundation.NSTextCheckingTypes checkingTypes, Foundation.NSDictionary options, Foundation.NSTextCheckingResult[] results, Foundation.NSOrthography orthography, nint wordCount);
	public virtual void DidSelectCancel ();
	public virtual void DidSelectPost ();
	public virtual bool DoCommandBySelector (AppKit.NSTextView textView, ObjCRuntime.Selector commandSelector);
	public virtual void DraggedCell (AppKit.NSTextView view, AppKit.NSTextAttachmentCell cell, CoreGraphics.CGRect rect, AppKit.NSEvent theevent);
	public virtual Foundation.NSObject[] GetCandidates (AppKit.NSTextView textView, Foundation.NSRange selectedRange);
	public virtual string[] GetCompletions (AppKit.NSTextView textView, string[] words, Foundation.NSRange charRange, ref nint index);
	public virtual Foundation.NSTextCheckingResult[] GetTextCheckingCandidates (AppKit.NSTextView textView, Foundation.NSTextCheckingResult[] candidates, Foundation.NSRange selectedRange);
	public virtual Foundation.NSUndoManager GetUndoManager (AppKit.NSTextView view);
	public virtual string[] GetWritablePasteboardTypes (AppKit.NSTextView view, AppKit.NSTextAttachmentCell forCell, uint charIndex);
	public virtual bool IsContentValid ();
	public virtual bool LinkClicked (AppKit.NSTextView textView, Foundation.NSObject link, uint charIndex);
	public virtual AppKit.NSMenu MenuForEvent (AppKit.NSTextView view, AppKit.NSMenu menu, AppKit.NSEvent theEvent, uint charIndex);
	public virtual void PresentationAnimationDidFinish ();
	public virtual bool ShouldChangeTextInRange (AppKit.NSTextView textView, Foundation.NSRange affectedCharRange, string replacementString);
	public virtual bool ShouldChangeTextInRanges (AppKit.NSTextView textView, Foundation.NSValue[] affectedRanges, string[] replacementStrings);
	public virtual Foundation.NSDictionary ShouldChangeTypingAttributes (AppKit.NSTextView textView, Foundation.NSDictionary oldTypingAttributes, Foundation.NSDictionary newTypingAttributes);
	public virtual bool ShouldSelectCandidates (AppKit.NSTextView textView, uint index);
	public virtual nint ShouldSetSpellingState (AppKit.NSTextView textView, nint value, Foundation.NSRange affectedCharRange);
	public virtual string[] ShouldUpdateTouchBarItemIdentifiers (AppKit.NSTextView textView, string[] identifiers);
	public virtual void ValidateContent ();
	public virtual Foundation.NSRange WillChangeSelection (AppKit.NSTextView textView, Foundation.NSRange oldSelectedCharRange, Foundation.NSRange newSelectedCharRange);
	public virtual Foundation.NSValue[] WillChangeSelectionFromRanges (AppKit.NSTextView textView, Foundation.NSValue[] oldSelectedCharRanges, Foundation.NSValue[] newSelectedCharRanges);
	public virtual Foundation.NSDictionary WillCheckText (AppKit.NSTextView view, Foundation.NSRange range, Foundation.NSDictionary options, Foundation.NSTextCheckingTypes checkingTypes);
	public virtual string WillDisplayToolTip (AppKit.NSTextView textView, string tooltip, uint characterIndex);
	public virtual bool WriteCell (AppKit.NSTextView view, AppKit.NSTextAttachmentCell cell, uint charIndex, AppKit.NSPasteboard pboard, string type);
}

Namespace VideoToolbox

Type Changed: VideoToolbox.VTStatus

Added value:

VideoDecoderRemoved = -17690,

Type Changed: VideoToolbox.VTVideoDecoderSpecification

Added properties:

public Foundation.NSNumber PreferredDecoderGpuRegistryId { get; }
public Foundation.NSNumber RequiredDecoderGpuRegistryId { get; }

Type Changed: VideoToolbox.VTVideoDecoderSpecificationKeys

Added properties:

public static Foundation.NSString PreferredDecoderGpuRegistryId { get; }
public static Foundation.NSString RequiredDecoderGpuRegistryId { get; }

Namespace WebKit

Type Changed: WebKit.WKOpenPanelParameters

Added property:

public virtual bool AllowsDirectories { get; }

Type Changed: WebKit.WKPreferences

Added interface:

Foundation.INSSecureCoding

Type Changed: WebKit.WKProcessPool

Added interface:

Foundation.INSSecureCoding

Type Changed: WebKit.WKUserContentController

Added interface:

Foundation.INSSecureCoding

Type Changed: WebKit.WKWebView

Added interface:

AppKit.INSUserInterfaceValidations

Added method:

public virtual bool ValidateUserInterfaceItem (AppKit.INSValidatedUserInterfaceItem item);

Type Changed: WebKit.WKWebViewConfiguration

Added interface:

Foundation.INSSecureCoding

Type Changed: WebKit.WKWebsiteDataStore

Added interface:

Foundation.INSSecureCoding

Type Changed: WebKit.WKWebsiteDataType

Added properties:

public static Foundation.NSString FetchCache { get; }
public static Foundation.NSString ServiceWorkerRegistrations { get; }

Type Changed: WebKit.WebFrameView

Added constructor:

public WebFrameView (CoreGraphics.CGRect frameRect);

Type Changed: WebKit.WebView

Added constructor:

public WebView (CoreGraphics.CGRect frame);

Added interface:

AppKit.INSUserInterfaceValidations

Added method:

public virtual bool ValidateUserInterfaceItem (AppKit.INSValidatedUserInterfaceItem item);

New Namespace BusinessChat

New Type: BusinessChat.BCChatAction

public class BCChatAction : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected BCChatAction (Foundation.NSObjectFlag t);
	protected BCChatAction (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public static void OpenTranscript (string businessIdentifier, Foundation.NSDictionary<Foundation.NSString,Foundation.NSString> intentParameters);
	public static void OpenTranscript (string businessIdentifier, System.Collections.Generic.Dictionary<BCParameterName,System.String> intentParameters);
}

New Type: BusinessChat.BCChatButton

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

New Type: BusinessChat.BCChatButtonStyle

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

New Type: BusinessChat.BCParameterName

[Serializable]
public enum BCParameterName {
	Body = 2,
	Group = 1,
	Intent = 0,
}

New Type: BusinessChat.BCParameterNameExtensions

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

New Namespace CoreSpotlight

New Type: CoreSpotlight.CSCustomAttributeKey

public class CSCustomAttributeKey : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CSCustomAttributeKey (Foundation.NSCoder coder);
	protected CSCustomAttributeKey (Foundation.NSObjectFlag t);
	protected CSCustomAttributeKey (IntPtr handle);
	public CSCustomAttributeKey (string keyName);
	public CSCustomAttributeKey (string keyName, bool searchable, bool searchableByDefault, bool unique, bool multiValued);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string KeyName { get; }
	public virtual bool MultiValued { get; }
	public virtual bool Searchable { get; }
	public virtual bool SearchableByDefault { get; }
	public virtual bool Unique { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: CoreSpotlight.CSIndexErrorCode

[Serializable]
public enum CSIndexErrorCode {
	IndexUnavailableError = -1000,
	IndexingUnsupported = -1005,
	InvalidClientStateError = -1002,
	InvalidItemError = -1001,
	QuotaExceeded = -1004,
	RemoteConnectionError = -1003,
	UnknownError = -1,
}

New Type: CoreSpotlight.CSIndexErrorCodeExtensions

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

New Type: CoreSpotlight.CSIndexExtensionRequestHandler

public class CSIndexExtensionRequestHandler : Foundation.NSObject, ICSSearchableIndexDelegate, Foundation.INSExtensionRequestHandling, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CSIndexExtensionRequestHandler ();
	protected CSIndexExtensionRequestHandler (Foundation.NSObjectFlag t);
	protected CSIndexExtensionRequestHandler (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void BeginRequestWithExtensionContext (Foundation.NSExtensionContext context);
	public virtual void DidFinishThrottle (CSSearchableIndex searchableIndex);
	public virtual void DidThrottle (CSSearchableIndex searchableIndex);
	public virtual Foundation.NSData GetData (CSSearchableIndex searchableIndex, string itemIdentifier, string typeIdentifier, out Foundation.NSError outError);
	public virtual Foundation.NSUrl GetFileUrl (CSSearchableIndex searchableIndex, string itemIdentifier, string typeIdentifier, bool inPlace, out Foundation.NSError outError);
	public virtual void ReindexAllSearchableItems (CSSearchableIndex searchableIndex, System.Action acknowledgementHandler);
	public virtual void ReindexSearchableItems (CSSearchableIndex searchableIndex, string[] identifiers, System.Action acknowledgementHandler);
}

New Type: CoreSpotlight.CSLocalizedString

public class CSLocalizedString : Foundation.NSString, AppKit.INSPasteboardReading, AppKit.INSPasteboardWriting, CloudKit.ICKRecordValue, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSItemProviderReading, Foundation.INSItemProviderWriting, Foundation.INSMutableCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CSLocalizedString ();
	public CSLocalizedString (Foundation.NSCoder coder);
	public CSLocalizedString (Foundation.NSDictionary localizedStrings);
	protected CSLocalizedString (Foundation.NSObjectFlag t);
	protected CSLocalizedString (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public virtual string GetLocalizedString ();
}

New Type: CoreSpotlight.CSMailboxKey

public static class CSMailboxKey {
	// properties
	public static Foundation.NSString Archive { get; }
	public static Foundation.NSString Drafts { get; }
	public static Foundation.NSString Inbox { get; }
	public static Foundation.NSString Junk { get; }
	public static Foundation.NSString Sent { get; }
	public static Foundation.NSString Trash { get; }
}

New Type: CoreSpotlight.CSPerson

public class CSPerson : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CSPerson ();
	public CSPerson (Foundation.NSCoder coder);
	protected CSPerson (Foundation.NSObjectFlag t);
	protected CSPerson (IntPtr handle);
	public CSPerson (string displayName, string[] handles, Foundation.NSString handleIdentifier);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string ContactIdentifier { get; set; }
	public virtual string DisplayName { get; }
	public virtual Foundation.NSString HandleIdentifier { get; }
	public virtual string[] Handles { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: CoreSpotlight.CSSearchQuery

public class CSSearchQuery : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected CSSearchQuery (Foundation.NSObjectFlag t);
	protected CSSearchQuery (IntPtr handle);
	public CSSearchQuery (string queryString, string[] attributes);
	// properties
	public virtual bool Cancelled { get; }
	public override IntPtr ClassHandle { get; }
	public virtual System.Action<Foundation.NSError> CompletionHandler { get; set; }
	public virtual uint FoundItemCount { get; }
	public virtual System.Action<CSSearchableItem[]> FoundItemsHandler { get; set; }
	public virtual string[] ProtectionClasses { get; set; }
	// methods
	public virtual void Cancel ();
	public virtual void Start ();
}

New Type: CoreSpotlight.CSSearchQueryErrorCode

[Serializable]
public enum CSSearchQueryErrorCode {
	Cancelled = -2003,
	IndexUnreachable = -2001,
	InvalidQuery = -2002,
	Unknown = -2000,
}

New Type: CoreSpotlight.CSSearchQueryErrorCodeExtensions

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

New Type: CoreSpotlight.CSSearchableIndex

public class CSSearchableIndex : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CSSearchableIndex ();
	protected CSSearchableIndex (Foundation.NSObjectFlag t);
	protected CSSearchableIndex (IntPtr handle);
	public CSSearchableIndex (string name);
	// properties
	public override IntPtr ClassHandle { get; }
	public static CSSearchableIndex DefaultSearchableIndex { get; }
	public virtual ICSSearchableIndexDelegate IndexDelegate { get; set; }
	public static bool IsIndexingAvailable { get; }
	// methods
	public virtual void Delete (string[] identifiers, System.Action<Foundation.NSError> completionHandler);
	public virtual void DeleteAll (System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task DeleteAllAsync ();
	public virtual System.Threading.Tasks.Task DeleteAsync (string[] identifiers);
	public virtual void DeleteWithDomain (string[] domainIdentifiers, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task DeleteWithDomainAsync (string[] domainIdentifiers);
	protected override void Dispose (bool disposing);
	public virtual void Index (CSSearchableItem[] items, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task IndexAsync (CSSearchableItem[] items);
}

New Type: CoreSpotlight.CSSearchableIndexDelegate

public abstract class CSSearchableIndexDelegate : Foundation.NSObject, ICSSearchableIndexDelegate, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected CSSearchableIndexDelegate ();
	protected CSSearchableIndexDelegate (Foundation.NSObjectFlag t);
	protected CSSearchableIndexDelegate (IntPtr handle);
	// methods
	public virtual void DidFinishThrottle (CSSearchableIndex searchableIndex);
	public virtual void DidThrottle (CSSearchableIndex searchableIndex);
	public virtual Foundation.NSData GetData (CSSearchableIndex searchableIndex, string itemIdentifier, string typeIdentifier, out Foundation.NSError outError);
	public virtual Foundation.NSUrl GetFileUrl (CSSearchableIndex searchableIndex, string itemIdentifier, string typeIdentifier, bool inPlace, out Foundation.NSError outError);
	public virtual void ReindexAllSearchableItems (CSSearchableIndex searchableIndex, System.Action acknowledgementHandler);
	public virtual void ReindexSearchableItems (CSSearchableIndex searchableIndex, string[] identifiers, System.Action acknowledgementHandler);
}

New Type: CoreSpotlight.CSSearchableIndexDelegate_Extensions

public static class CSSearchableIndexDelegate_Extensions {
	// methods
	public static void DidFinishThrottle (this ICSSearchableIndexDelegate This, CSSearchableIndex searchableIndex);
	public static void DidThrottle (this ICSSearchableIndexDelegate This, CSSearchableIndex searchableIndex);
	public static Foundation.NSData GetData (this ICSSearchableIndexDelegate This, CSSearchableIndex searchableIndex, string itemIdentifier, string typeIdentifier, out Foundation.NSError outError);
	public static Foundation.NSUrl GetFileUrl (this ICSSearchableIndexDelegate This, CSSearchableIndex searchableIndex, string itemIdentifier, string typeIdentifier, bool inPlace, out Foundation.NSError outError);
}

New Type: CoreSpotlight.CSSearchableIndexFetchHandler

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

New Type: CoreSpotlight.CSSearchableIndex_CSOptionalBatchingExtension

public static class CSSearchableIndex_CSOptionalBatchingExtension {
	// methods
	public static void BeginIndexBatch (this CSSearchableIndex This);
	public static void EndIndexBatch (this CSSearchableIndex This, Foundation.NSData clientState, System.Action<Foundation.NSError> completionHandler);
	public static void FetchLastClientState (this CSSearchableIndex This, CSSearchableIndexFetchHandler completionHandler);
}

New Type: CoreSpotlight.CSSearchableItem

public class CSSearchableItem : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CSSearchableItem ();
	public CSSearchableItem (Foundation.NSCoder coder);
	protected CSSearchableItem (Foundation.NSObjectFlag t);
	protected CSSearchableItem (IntPtr handle);
	public CSSearchableItem (string uniqueIdentifier, string domainIdentifier, CSSearchableItemAttributeSet attributeSet);
	// properties
	public static Foundation.NSString ActionType { get; }
	public static Foundation.NSString ActivityIdentifier { get; }
	public virtual CSSearchableItemAttributeSet AttributeSet { get; set; }
	public override IntPtr ClassHandle { get; }
	public static Foundation.NSString ContinuationActionType { get; }
	public virtual string DomainIdentifier { get; set; }
	public virtual Foundation.NSDate ExpirationDate { get; set; }
	public static Foundation.NSString QueryString { get; }
	public virtual string UniqueIdentifier { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: CoreSpotlight.CSSearchableItemAttributeSet

public class CSSearchableItemAttributeSet : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CSSearchableItemAttributeSet ();
	public CSSearchableItemAttributeSet (Foundation.NSCoder coder);
	protected CSSearchableItemAttributeSet (Foundation.NSObjectFlag t);
	protected CSSearchableItemAttributeSet (IntPtr handle);
	public CSSearchableItemAttributeSet (string itemContentType);
	// properties
	public virtual string[] AccountHandles { get; set; }
	public virtual string AccountIdentifier { get; set; }
	public virtual string AcquisitionMake { get; set; }
	public virtual string AcquisitionModel { get; set; }
	public virtual Foundation.NSDate AddedDate { get; set; }
	public virtual CSPerson[] AdditionalRecipients { get; set; }
	public virtual string Album { get; set; }
	public virtual Foundation.NSNumber AllDay { get; set; }
	public virtual string[] AlternateNames { get; set; }
	public virtual Foundation.NSNumber Altitude { get; set; }
	public virtual Foundation.NSNumber Aperture { get; set; }
	public virtual string Artist { get; set; }
	public virtual string[] Audiences { get; set; }
	public virtual Foundation.NSNumber AudioBitRate { get; set; }
	public virtual Foundation.NSNumber AudioChannelCount { get; set; }
	public virtual string AudioEncodingApplication { get; set; }
	public virtual Foundation.NSNumber AudioSampleRate { get; set; }
	public virtual Foundation.NSNumber AudioTrackNumber { get; set; }
	public virtual string[] AuthorAddresses { get; set; }
	public virtual string[] AuthorEmailAddresses { get; set; }
	public virtual string[] AuthorNames { get; set; }
	public virtual CSPerson[] Authors { get; set; }
	public virtual Foundation.NSNumber BitsPerSample { get; set; }
	public virtual string CameraOwner { get; set; }
	public virtual string City { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual string[] Codecs { get; set; }
	public virtual string ColorSpace { get; set; }
	public virtual string Comment { get; set; }
	public virtual Foundation.NSDate CompletionDate { get; set; }
	public virtual string Composer { get; set; }
	public virtual string[] ContactKeywords { get; set; }
	public virtual string ContainerDisplayName { get; set; }
	public virtual string ContainerIdentifier { get; set; }
	public virtual Foundation.NSNumber ContainerOrder { get; set; }
	public virtual string ContainerTitle { get; set; }
	public virtual Foundation.NSDate ContentCreationDate { get; set; }
	public virtual string ContentDescription { get; set; }
	public virtual Foundation.NSDate ContentModificationDate { get; set; }
	public virtual Foundation.NSNumber ContentRating { get; set; }
	public virtual string[] ContentSources { get; set; }
	public virtual string ContentType { get; set; }
	public virtual string[] ContentTypeTree { get; set; }
	public virtual Foundation.NSUrl ContentUrl { get; set; }
	public virtual string[] Contributors { get; set; }
	public virtual string Copyright { get; set; }
	public virtual string Country { get; set; }
	public virtual string[] Coverage { get; set; }
	public virtual string Creator { get; set; }
	public virtual Foundation.NSNumber DeliveryType { get; set; }
	public virtual string Director { get; set; }
	public virtual string DisplayName { get; set; }
	public virtual string DomainIdentifier { get; set; }
	public virtual Foundation.NSDate DownloadedDate { get; set; }
	public virtual Foundation.NSDate DueDate { get; set; }
	public virtual Foundation.NSNumber Duration { get; set; }
	public virtual string[] Editors { get; set; }
	public virtual string[] EmailAddresses { get; set; }
	public virtual Foundation.NSDictionary EmailHeaders { get; set; }
	public virtual string[] EncodingApplications { get; set; }
	public virtual Foundation.NSDate EndDate { get; set; }
	public virtual string ExifGpsVersion { get; set; }
	public virtual string ExifVersion { get; set; }
	public virtual Foundation.NSNumber ExposureMode { get; set; }
	public virtual string ExposureProgram { get; set; }
	public virtual Foundation.NSNumber ExposureTime { get; set; }
	public virtual string ExposureTimeString { get; set; }
	public virtual Foundation.NSNumber FNumber { get; set; }
	public virtual Foundation.NSNumber FileSize { get; set; }
	public virtual Foundation.NSNumber FlashOn { get; set; }
	public virtual Foundation.NSNumber FocalLength { get; set; }
	public virtual Foundation.NSNumber FocalLength35mm { get; set; }
	public virtual string[] FontNames { get; set; }
	public virtual string FullyFormattedAddress { get; set; }
	public virtual Foundation.NSNumber GeneralMidiSequence { get; set; }
	public virtual string Genre { get; set; }
	public virtual string GpsAreaInformation { get; set; }
	public virtual Foundation.NSDate GpsDateStamp { get; set; }
	public virtual Foundation.NSNumber GpsDestBearing { get; set; }
	public virtual Foundation.NSNumber GpsDestDistance { get; set; }
	public virtual Foundation.NSNumber GpsDestLatitude { get; set; }
	public virtual Foundation.NSNumber GpsDestLongitude { get; set; }
	public virtual Foundation.NSNumber GpsDifferental { get; set; }
	public virtual Foundation.NSNumber GpsDop { get; set; }
	public virtual string GpsMapDatum { get; set; }
	public virtual string GpsMeasureMode { get; set; }
	public virtual string GpsProcessingMethod { get; set; }
	public virtual string GpsStatus { get; set; }
	public virtual Foundation.NSNumber GpsTrack { get; set; }
	public virtual Foundation.NSNumber HasAlphaChannel { get; set; }
	public virtual string Headline { get; set; }
	public virtual CSPerson[] HiddenAdditionalRecipients { get; set; }
	public virtual Foundation.NSData HtmlContentData { get; set; }
	public virtual string Identifier { get; set; }
	public virtual Foundation.NSNumber ImageDirection { get; set; }
	public virtual Foundation.NSDate[] ImportantDates { get; set; }
	public virtual string Information { get; set; }
	public virtual string[] InstantMessageAddresses { get; set; }
	public virtual string Instructions { get; set; }
	public bool? IsUserCreated { get; set; }
	public bool? IsUserCurated { get; set; }
	public bool? IsUserOwned { get; set; }
	public virtual Foundation.NSNumber IsoSpeed { get; set; }
	public Foundation.INSSecureCoding Item { get; set; }
	public virtual string KeySignature { get; set; }
	public virtual string[] Keywords { get; set; }
	public virtual string Kind { get; set; }
	public virtual string[] Languages { get; set; }
	public virtual Foundation.NSDate LastUsedDate { get; set; }
	public virtual Foundation.NSNumber Latitude { get; set; }
	public virtual string[] LayerNames { get; set; }
	public virtual string LensModel { get; set; }
	public virtual Foundation.NSNumber LikelyJunk { get; set; }
	public virtual Foundation.NSNumber Local { get; set; }
	public virtual Foundation.NSNumber Longitude { get; set; }
	public virtual string Lyricist { get; set; }
	public virtual string[] MailboxIdentifiers { get; set; }
	public virtual Foundation.NSNumber MaxAperture { get; set; }
	public virtual string[] MediaTypes { get; set; }
	public virtual Foundation.NSDate MetadataModificationDate { get; set; }
	public virtual string MeteringMode { get; set; }
	public virtual string MusicalGenre { get; set; }
	public virtual string MusicalInstrumentCategory { get; set; }
	public virtual string MusicalInstrumentName { get; set; }
	public virtual string NamedLocation { get; set; }
	public virtual string[] Organizations { get; set; }
	public virtual Foundation.NSNumber Orientation { get; set; }
	public virtual string OriginalFormat { get; set; }
	public virtual string OriginalSource { get; set; }
	public virtual Foundation.NSNumber PageCount { get; set; }
	public virtual Foundation.NSNumber PageHeight { get; set; }
	public virtual Foundation.NSNumber PageWidth { get; set; }
	public virtual string[] Participants { get; set; }
	public virtual string Path { get; set; }
	public virtual string[] Performers { get; set; }
	public virtual string[] PhoneNumbers { get; set; }
	public virtual Foundation.NSNumber PixelCount { get; set; }
	public virtual Foundation.NSNumber PixelHeight { get; set; }
	public virtual Foundation.NSNumber PixelWidth { get; set; }
	public virtual Foundation.NSNumber PlayCount { get; set; }
	public virtual string PostalCode { get; set; }
	public virtual CSPerson[] PrimaryRecipients { get; set; }
	public virtual string Producer { get; set; }
	public virtual string ProfileName { get; set; }
	public virtual string[] Projects { get; set; }
	public virtual string[] ProviderDataTypeIdentifiers { get; set; }
	public virtual string[] ProviderFileTypeIdentifiers { get; set; }
	public virtual string[] ProviderInPlaceFileTypeIdentifiers { get; set; }
	public virtual string[] Publishers { get; set; }
	public virtual Foundation.NSNumber RankingHint { get; set; }
	public virtual Foundation.NSNumber Rating { get; set; }
	public virtual Foundation.NSNumber RatingDescription { get; set; }
	public virtual string[] RecipientAddresses { get; set; }
	public virtual string[] RecipientEmailAddresses { get; set; }
	public virtual string[] RecipientNames { get; set; }
	public virtual Foundation.NSDate RecordingDate { get; set; }
	public virtual Foundation.NSNumber RedEyeOn { get; set; }
	public virtual string RelatedUniqueIdentifier { get; set; }
	public virtual Foundation.NSNumber ResolutionHeightDPI { get; set; }
	public virtual Foundation.NSNumber ResolutionWidthDpi { get; set; }
	public virtual string Rights { get; set; }
	public virtual string Role { get; set; }
	public virtual string SecurityMethod { get; set; }
	public virtual Foundation.NSNumber Speed { get; set; }
	public virtual Foundation.NSDate StartDate { get; set; }
	public virtual string StateOrProvince { get; set; }
	public virtual Foundation.NSNumber Streamable { get; set; }
	public virtual string SubThoroughfare { get; set; }
	public virtual string Subject { get; set; }
	public virtual Foundation.NSNumber SupportsNavigation { get; set; }
	public virtual Foundation.NSNumber SupportsPhoneCall { get; set; }
	public virtual Foundation.NSNumber Tempo { get; set; }
	public virtual string TextContent { get; set; }
	public virtual string Theme { get; set; }
	public virtual string Thoroughfare { get; set; }
	public virtual Foundation.NSData ThumbnailData { get; set; }
	public virtual Foundation.NSUrl ThumbnailUrl { get; set; }
	public virtual string TimeSignature { get; set; }
	public virtual Foundation.NSDate Timestamp { get; set; }
	public virtual string Title { get; set; }
	public virtual Foundation.NSNumber TotalBitRate { get; set; }
	public virtual Foundation.NSUrl Url { get; set; }
	public virtual string Version { get; set; }
	public virtual Foundation.NSNumber VideoBitRate { get; set; }
	public virtual string WeakRelatedUniqueIdentifier { get; set; }
	public virtual Foundation.NSNumber WhiteBalance { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: CoreSpotlight.ICSSearchableIndexDelegate

public interface ICSSearchableIndexDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void ReindexAllSearchableItems (CSSearchableIndex searchableIndex, System.Action acknowledgementHandler);
	public virtual void ReindexSearchableItems (CSSearchableIndex searchableIndex, string[] identifiers, System.Action acknowledgementHandler);
}