Xamarin.Mac SDK API diff: 4.6.0 vs 5.2.0

mscorlib.dll

Namespace System

Type Changed: System.BitConverter

Added method:

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

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

Added constructor:

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

Added methods:

public bool Contains (char value);
public bool Contains (char value, StringComparison comparisonType);
public bool Contains (string value, StringComparison comparisonType);
public bool EndsWith (char value);
public int GetHashCode (StringComparison comparisonType);
public int IndexOf (char value, StringComparison comparisonType);
public static string Join<T> (char separator, System.Collections.Generic.IEnumerable<T> values);
public static string Join (char separator, object[] values);
public static string Join (char separator, string[] value);
public static string Join (char separator, string[] value, int startIndex, int count);
public string Replace (string oldValue, string newValue, StringComparison comparisonType);
public string Replace (string oldValue, string newValue, bool ignoreCase, Globalization.CultureInfo culture);
public string[] Split (char separator, StringSplitOptions options);
public string[] Split (string separator, StringSplitOptions options);
public string[] Split (char separator, int count, StringSplitOptions options);
public string[] Split (string separator, int count, StringSplitOptions options);
public bool StartsWith (char value);
public string Trim (char trimChar);
public string TrimEnd ();
public string TrimEnd (char trimChar);
public string TrimStart ();
public string TrimStart (char trimChar);
public static System.ReadOnlySpan<char> op_Implicit (string value);

Type Changed: System.StringComparer

Added method:

public static StringComparer FromComparison (StringComparison comparisonType);

New Type: System.MemoryExtensions

public static class MemoryExtensions {
	// methods
	public static System.ReadOnlySpan<byte> AsBytes<T> (this System.ReadOnlySpan<T> source);
	public static System.Span<byte> AsBytes<T> (this System.Span<T> source);
	public static System.ReadOnlyMemory<T> AsReadOnlyMemory<T> (this System.Memory<T> memory);
	public static System.ReadOnlyMemory<char> AsReadOnlyMemory (this string text);
	public static System.ReadOnlyMemory<char> AsReadOnlyMemory (this string text, int start);
	public static System.ReadOnlyMemory<char> AsReadOnlyMemory (this string text, int start, int length);
	public static System.ReadOnlySpan<T> AsReadOnlySpan<T> (this System.ArraySegment<T> arraySegment);
	public static System.ReadOnlySpan<T> AsReadOnlySpan<T> (this System.Span<T> span);
	public static System.ReadOnlySpan<char> AsReadOnlySpan (this string text);
	public static System.ReadOnlySpan<T> AsReadOnlySpan<T> (this T[] array);
	public static System.ReadOnlySpan<char> AsReadOnlySpan (this string text, int start);
	public static System.ReadOnlySpan<char> AsReadOnlySpan (this string text, int start, int length);
	public static System.Span<T> AsSpan<T> (this System.ArraySegment<T> arraySegment);
	public static System.ReadOnlySpan<char> AsSpan (this string text);
	public static System.Span<T> AsSpan<T> (this T[] array);
	public static int BinarySearch<T> (this System.ReadOnlySpan<T> span, System.IComparable<T> comparable);
	public static int BinarySearch<T, TComparable> (this System.ReadOnlySpan<T> span, TComparable comparable);
	public static int BinarySearch<T> (this System.Span<T> span, System.IComparable<T> comparable);
	public static int BinarySearch<T, TComparable> (this System.Span<T> span, TComparable comparable);
	public static int BinarySearch<T, TComparer> (this System.ReadOnlySpan<T> span, T value, TComparer comparer);
	public static int BinarySearch<T, TComparer> (this System.Span<T> span, T value, TComparer comparer);
	public static void CopyTo<T> (this T[] array, System.Memory<T> destination);
	public static void CopyTo<T> (this T[] array, System.Span<T> destination);
	public static bool EndsWith<T> (this System.ReadOnlySpan<T> span, System.ReadOnlySpan<T> value);
	public static bool EndsWith<T> (this System.Span<T> span, System.ReadOnlySpan<T> value);
	public static int IndexOf<T> (this System.ReadOnlySpan<T> span, System.ReadOnlySpan<T> value);
	public static int IndexOf<T> (this System.ReadOnlySpan<T> span, T value);
	public static int IndexOf<T> (this System.Span<T> span, System.ReadOnlySpan<T> value);
	public static int IndexOf<T> (this System.Span<T> span, T value);
	public static int IndexOfAny<T> (this System.ReadOnlySpan<T> span, System.ReadOnlySpan<T> values);
	public static int IndexOfAny<T> (this System.Span<T> span, System.ReadOnlySpan<T> values);
	public static int IndexOfAny<T> (this System.ReadOnlySpan<T> span, T value0, T value1);
	public static int IndexOfAny<T> (this System.Span<T> span, T value0, T value1);
	public static int IndexOfAny<T> (this System.ReadOnlySpan<T> span, T value0, T value1, T value2);
	public static int IndexOfAny<T> (this System.Span<T> span, T value0, T value1, T value2);
	public static int LastIndexOf<T> (this System.ReadOnlySpan<T> span, System.ReadOnlySpan<T> value);
	public static int LastIndexOf<T> (this System.ReadOnlySpan<T> span, T value);
	public static int LastIndexOf<T> (this System.Span<T> span, System.ReadOnlySpan<T> value);
	public static int LastIndexOf<T> (this System.Span<T> span, T value);
	public static int LastIndexOfAny<T> (this System.ReadOnlySpan<T> span, System.ReadOnlySpan<T> values);
	public static int LastIndexOfAny<T> (this System.Span<T> span, System.ReadOnlySpan<T> values);
	public static int LastIndexOfAny<T> (this System.ReadOnlySpan<T> span, T value0, T value1);
	public static int LastIndexOfAny<T> (this System.Span<T> span, T value0, T value1);
	public static int LastIndexOfAny<T> (this System.ReadOnlySpan<T> span, T value0, T value1, T value2);
	public static int LastIndexOfAny<T> (this System.Span<T> span, T value0, T value1, T value2);
	public static System.ReadOnlySpan<TTo> NonPortableCast<TFrom, TTo> (this System.ReadOnlySpan<TFrom> source);
	public static System.Span<TTo> NonPortableCast<TFrom, TTo> (this System.Span<TFrom> source);
	public static bool Overlaps<T> (this System.ReadOnlySpan<T> first, System.ReadOnlySpan<T> second);
	public static bool Overlaps<T> (this System.Span<T> first, System.ReadOnlySpan<T> second);
	public static bool Overlaps<T> (this System.ReadOnlySpan<T> first, System.ReadOnlySpan<T> second, out int elementOffset);
	public static bool Overlaps<T> (this System.Span<T> first, System.ReadOnlySpan<T> second, out int elementOffset);
	public static void Reverse<T> (this System.Span<T> span);
	public static int SequenceCompareTo<T> (this System.ReadOnlySpan<T> first, System.ReadOnlySpan<T> second);
	public static int SequenceCompareTo<T> (this System.Span<T> first, System.ReadOnlySpan<T> second);
	public static bool SequenceEqual<T> (this System.ReadOnlySpan<T> first, System.ReadOnlySpan<T> second);
	public static bool SequenceEqual<T> (this System.Span<T> first, System.ReadOnlySpan<T> second);
	public static bool StartsWith<T> (this System.ReadOnlySpan<T> span, System.ReadOnlySpan<T> value);
	public static bool StartsWith<T> (this System.Span<T> span, System.ReadOnlySpan<T> value);
	public static bool TryGetString (this System.ReadOnlyMemory<char> readOnlyMemory, out string text, out int start, out int length);
}

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 Buffers.MemoryHandle Retain (bool pin);
	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 Buffers.MemoryHandle Retain (bool pin);
	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 ();
	}
}

Namespace System.Buffers

New Type: System.Buffers.OwnedMemory`1

public abstract class OwnedMemory`1 : IRetainable, System.IDisposable {
	// constructors
	protected OwnedMemory`1 ();
	// properties
	public virtual bool IsDisposed { get; }
	protected virtual bool IsRetained { get; }
	public virtual int Length { get; }
	public System.Memory<T> Memory { get; }
	public virtual System.Span<T> Span { get; }
	// methods
	public virtual void Dispose ();
	protected virtual void Dispose (bool disposing);
	public virtual MemoryHandle Pin (int offset);
	public virtual bool Release ();
	public virtual void Retain ();
	protected virtual bool TryGetArray (out System.ArraySegment<T> arraySegment);
}

New Type: System.Buffers.StandardFormat

public struct StandardFormat, System.IEquatable<StandardFormat> {
	// constructors
	public StandardFormat (char symbol, byte precision);
	// fields
	public static const byte MaxPrecision;
	public static const byte NoPrecision;
	// properties
	public bool HasPrecision { get; }
	public bool IsDefault { get; }
	public byte Precision { get; }
	public char Symbol { get; }
	// methods
	public virtual bool Equals (StandardFormat other);
	public override bool Equals (object obj);
	public override int GetHashCode ();
	public static StandardFormat Parse (System.ReadOnlySpan<char> format);
	public static StandardFormat Parse (string format);
	public override string ToString ();
	public static bool op_Equality (StandardFormat left, StandardFormat right);
	public static StandardFormat op_Implicit (char symbol);
	public static bool op_Inequality (StandardFormat left, StandardFormat right);
}

Namespace System.Collections

Type Changed: System.Collections.BitArray

Added methods:

public BitArray LeftShift (int count);
public BitArray RightShift (int count);

Namespace System.Collections.ObjectModel

Type Changed: System.Collections.ObjectModel.KeyedCollection`2

Added method:

public bool TryGetValue (TKey key, out TItem item);

Namespace System.Globalization

New Type: System.Globalization.GlobalizationExtensions

public static class GlobalizationExtensions {
	// methods
	public static System.StringComparer GetStringComparer (this CompareInfo compareInfo, CompareOptions options);
}

Namespace System.IO

Type Changed: System.IO.Stream

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);
public virtual System.Threading.Tasks.Task WriteAsync (System.ReadOnlyMemory<byte> source, System.Threading.CancellationToken cancellationToken);

Namespace System.Reflection

Type Changed: System.Reflection.BindingFlags

Added value:

DoNotWrapExceptions = 33554432,

Namespace System.Reflection.Emit

Type Changed: System.Reflection.Emit.FieldBuilder

Added property:

public override int MetadataToken { get; }

Namespace System.Runtime

New Type: System.Runtime.ProfileOptimization

public static class ProfileOptimization {
	// methods
	public static void SetProfileRoot (string directoryPath);
	public static void StartProfile (string profile);
}

Namespace System.Runtime.CompilerServices

Type Changed: System.Runtime.CompilerServices.ConditionalWeakTable`2

Added interfaces:

System.Collections.Generic.IEnumerable<System.Collections.Generic.KeyValuePair<TKey,TValue>>
System.Collections.IEnumerable

Namespace System.Runtime.InteropServices

New Type: System.Runtime.InteropServices.MemoryMarshal

public static class MemoryMarshal {
	// methods
	public static System.Memory<T> AsMemory<T> (System.ReadOnlyMemory<T> readOnlyMemory);
	public static  T GetReference<T> (System.ReadOnlySpan<T> span);
	public static  T GetReference<T> (System.Span<T> span);
	public static bool TryGetArray<T> (System.ReadOnlyMemory<T> readOnlyMemory, out System.ArraySegment<T> arraySegment);
}

Namespace System.Text

Type Changed: System.Text.Encoding

Added method:

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

Namespace System.Threading

Type Changed: System.Threading.LazyInitializer

Added method:

public static T EnsureInitialized<T> (ref T target, ref object syncLock, System.Func<T> valueFactory);

New Type: System.Threading.Lock

public class Lock {
	// constructors
	public Lock ();
	// methods
	public void Acquire ();
	public void Release ();
}

New Type: System.Threading.LockHolder

public struct LockHolder, System.IDisposable {
	// methods
	public virtual void Dispose ();
	public static LockHolder Hold (Lock l);
}

Namespace System.Threading.Tasks

Type Changed: System.Threading.Tasks.Task

Added methods:

public static System.Threading.Tasks.Task<TResult> CreateUnwrapPromise<TResult> (Task outerTask, bool lookForOce);
public virtual void MarkAborted (System.Threading.ThreadAbortException e);

New Namespace System.Buffers.Binary

New Type: System.Buffers.Binary.BinaryPrimitives

public static class BinaryPrimitives {
	// methods
	public static short ReadInt16BigEndian (System.ReadOnlySpan<byte> buffer);
	public static short ReadInt16LittleEndian (System.ReadOnlySpan<byte> buffer);
	public static int ReadInt32BigEndian (System.ReadOnlySpan<byte> buffer);
	public static int ReadInt32LittleEndian (System.ReadOnlySpan<byte> buffer);
	public static long ReadInt64BigEndian (System.ReadOnlySpan<byte> buffer);
	public static long ReadInt64LittleEndian (System.ReadOnlySpan<byte> buffer);
	public static T ReadMachineEndian<T> (System.ReadOnlySpan<byte> buffer);
	public static ushort ReadUInt16BigEndian (System.ReadOnlySpan<byte> buffer);
	public static ushort ReadUInt16LittleEndian (System.ReadOnlySpan<byte> buffer);
	public static uint ReadUInt32BigEndian (System.ReadOnlySpan<byte> buffer);
	public static uint ReadUInt32LittleEndian (System.ReadOnlySpan<byte> buffer);
	public static ulong ReadUInt64BigEndian (System.ReadOnlySpan<byte> buffer);
	public static ulong ReadUInt64LittleEndian (System.ReadOnlySpan<byte> buffer);
	public static byte ReverseEndianness (byte value);
	public static short ReverseEndianness (short value);
	public static int ReverseEndianness (int value);
	public static long ReverseEndianness (long value);
	public static sbyte ReverseEndianness (sbyte value);
	public static ushort ReverseEndianness (ushort value);
	public static uint ReverseEndianness (uint value);
	public static ulong ReverseEndianness (ulong value);
	public static bool TryReadInt16BigEndian (System.ReadOnlySpan<byte> buffer, out short value);
	public static bool TryReadInt16LittleEndian (System.ReadOnlySpan<byte> buffer, out short value);
	public static bool TryReadInt32BigEndian (System.ReadOnlySpan<byte> buffer, out int value);
	public static bool TryReadInt32LittleEndian (System.ReadOnlySpan<byte> buffer, out int value);
	public static bool TryReadInt64BigEndian (System.ReadOnlySpan<byte> buffer, out long value);
	public static bool TryReadInt64LittleEndian (System.ReadOnlySpan<byte> buffer, out long value);
	public static bool TryReadMachineEndian<T> (System.ReadOnlySpan<byte> buffer, out T value);
	public static bool TryReadUInt16BigEndian (System.ReadOnlySpan<byte> buffer, out ushort value);
	public static bool TryReadUInt16LittleEndian (System.ReadOnlySpan<byte> buffer, out ushort value);
	public static bool TryReadUInt32BigEndian (System.ReadOnlySpan<byte> buffer, out uint value);
	public static bool TryReadUInt32LittleEndian (System.ReadOnlySpan<byte> buffer, out uint value);
	public static bool TryReadUInt64BigEndian (System.ReadOnlySpan<byte> buffer, out ulong value);
	public static bool TryReadUInt64LittleEndian (System.ReadOnlySpan<byte> buffer, out ulong value);
	public static bool TryWriteInt16BigEndian (System.Span<byte> buffer, short value);
	public static bool TryWriteInt16LittleEndian (System.Span<byte> buffer, short value);
	public static bool TryWriteInt32BigEndian (System.Span<byte> buffer, int value);
	public static bool TryWriteInt32LittleEndian (System.Span<byte> buffer, int value);
	public static bool TryWriteInt64BigEndian (System.Span<byte> buffer, long value);
	public static bool TryWriteInt64LittleEndian (System.Span<byte> buffer, long value);
	public static bool TryWriteMachineEndian<T> (System.Span<byte> buffer, ref T value);
	public static bool TryWriteUInt16BigEndian (System.Span<byte> buffer, ushort value);
	public static bool TryWriteUInt16LittleEndian (System.Span<byte> buffer, ushort value);
	public static bool TryWriteUInt32BigEndian (System.Span<byte> buffer, uint value);
	public static bool TryWriteUInt32LittleEndian (System.Span<byte> buffer, uint value);
	public static bool TryWriteUInt64BigEndian (System.Span<byte> buffer, ulong value);
	public static bool TryWriteUInt64LittleEndian (System.Span<byte> buffer, ulong value);
	public static void WriteInt16BigEndian (System.Span<byte> buffer, short value);
	public static void WriteInt16LittleEndian (System.Span<byte> buffer, short value);
	public static void WriteInt32BigEndian (System.Span<byte> buffer, int value);
	public static void WriteInt32LittleEndian (System.Span<byte> buffer, int value);
	public static void WriteInt64BigEndian (System.Span<byte> buffer, long value);
	public static void WriteInt64LittleEndian (System.Span<byte> buffer, long value);
	public static void WriteMachineEndian<T> (System.Span<byte> buffer, ref T value);
	public static void WriteUInt16BigEndian (System.Span<byte> buffer, ushort value);
	public static void WriteUInt16LittleEndian (System.Span<byte> buffer, ushort value);
	public static void WriteUInt32BigEndian (System.Span<byte> buffer, uint value);
	public static void WriteUInt32LittleEndian (System.Span<byte> buffer, uint value);
	public static void WriteUInt64BigEndian (System.Span<byte> buffer, ulong value);
	public static void WriteUInt64LittleEndian (System.Span<byte> buffer, ulong value);
}

System.Core.dll

Namespace System.Runtime.CompilerServices

Type Changed: System.Runtime.CompilerServices.DynamicAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Namespace System.Runtime.InteropServices

Type Changed: System.Runtime.InteropServices.ComAwareEventInfo

Added interface:

_EventInfo

Namespace System.Security.Cryptography

New Type: System.Security.Cryptography.IncrementalHash

public sealed class IncrementalHash : System.IDisposable {
	// properties
	public HashAlgorithmName AlgorithmName { get; }
	// methods
	public void AppendData (byte[] data);
	public void AppendData (byte[] data, int offset, int count);
	public static IncrementalHash CreateHMAC (HashAlgorithmName hashAlgorithm, byte[] key);
	public static IncrementalHash CreateHash (HashAlgorithmName hashAlgorithm);
	public virtual void Dispose ();
	public byte[] GetHashAndReset ();
}

System.dll

Namespace System

Type Changed: System.UriFormatException

Added interface:

Runtime.InteropServices._Exception

New Type: System.StringNormalizationExtensions

public static class StringNormalizationExtensions {
	// methods
	public static bool IsNormalized (this string strInput);
	public static bool IsNormalized (this string strInput, Text.NormalizationForm normalizationForm);
	public static string Normalize (this string strInput);
	public static string Normalize (this string strInput, Text.NormalizationForm normalizationForm);
}

Namespace System.CodeDom.Compiler

Type Changed: System.CodeDom.Compiler.GeneratedCodeAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Namespace System.ComponentModel

Type Changed: System.ComponentModel.AmbientValueAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.AttributeProviderAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.BindableAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.BrowsableAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.CategoryAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.ComplexBindingPropertiesAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.DataObjectAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.DataObjectFieldAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.DataObjectMethodAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.DefaultBindingPropertyAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.DefaultEventAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.DefaultPropertyAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.DefaultValueAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.DescriptionAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.DesignOnlyAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.DesignTimeVisibleAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.DesignerAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.DesignerCategoryAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.DesignerSerializationVisibilityAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.DisplayNameAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.EditorAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.EditorBrowsableAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.ExtenderProvidedPropertyAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.ImmutableObjectAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.InheritanceAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.InitializationEventAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.InstallerTypeAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.InvalidAsynchronousStateException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: System.ComponentModel.InvalidEnumArgumentException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: System.ComponentModel.LicenseException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: System.ComponentModel.LicenseProviderAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.ListBindableAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.LocalizableAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.LookupBindingPropertiesAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.MergablePropertyAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.NotifyParentPropertyAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.ParenthesizePropertyNameAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.PasswordPropertyTextAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.PropertyTabAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.ProvidePropertyAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.ReadOnlyAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.RecommendedAsConfigurableAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.RefreshPropertiesAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.RunInstallerAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.SettingsBindableAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.ToolboxItemAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.ToolboxItemFilterAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.TypeConverterAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.TypeDescriptionProviderAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.WarningException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: System.ComponentModel.Win32Exception

Added interface:

System.Runtime.InteropServices._Exception

Namespace System.ComponentModel.Design

Type Changed: System.ComponentModel.Design.CheckoutException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: System.ComponentModel.Design.HelpKeywordAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Namespace System.ComponentModel.Design.Serialization

Type Changed: System.ComponentModel.Design.Serialization.DefaultSerializationProviderAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.Design.Serialization.DesignerSerializerAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.ComponentModel.Design.Serialization.RootDesignerSerializerAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Namespace System.Diagnostics

Type Changed: System.Diagnostics.MonitoringDescriptionAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.Diagnostics.SwitchAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.Diagnostics.SwitchLevelAttribute

Added interface:

System.Runtime.InteropServices._Attribute

New Type: System.Diagnostics.StackFrameExtensions

public static class StackFrameExtensions {
	// methods
	public static IntPtr GetNativeIP (this StackFrame stackFrame);
	public static IntPtr GetNativeImageBase (this StackFrame stackFrame);
	public static bool HasILOffset (this StackFrame stackFrame);
	public static bool HasMethod (this StackFrame stackFrame);
	public static bool HasNativeImage (this StackFrame stackFrame);
	public static bool HasSource (this StackFrame stackFrame);
}

Namespace System.Diagnostics.CodeAnalysis

Type Changed: System.Diagnostics.CodeAnalysis.ExcludeFromCodeCoverageAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Namespace System.IO

Type Changed: System.IO.IODescriptionAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.IO.InternalBufferOverflowException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: System.IO.InvalidDataException

Added interface:

System.Runtime.InteropServices._Exception

Namespace System.IO.Compression

Type Changed: System.IO.Compression.GZipStream

Added methods:

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);
public override System.Threading.Tasks.Task WriteAsync (System.ReadOnlyMemory<byte> source, System.Threading.CancellationToken cancellationToken);

Namespace System.Net

Type Changed: System.Net.CookieException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: System.Net.FtpWebRequest

Added properties:

public override Cache.RequestCachePolicy CachePolicy { get; set; }
public static Cache.RequestCachePolicy DefaultCachePolicy { get; set; }

Type Changed: System.Net.HttpListenerException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: System.Net.ProtocolViolationException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: System.Net.SocketPermissionAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.Net.WebException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: System.Net.WebPermissionAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Namespace System.Net.Mail

Type Changed: System.Net.Mail.SmtpException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: System.Net.Mail.SmtpFailedRecipientException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: System.Net.Mail.SmtpFailedRecipientsException

Added interface:

System.Runtime.InteropServices._Exception

Namespace System.Net.NetworkInformation

Type Changed: System.Net.NetworkInformation.NetworkInformationException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: System.Net.NetworkInformation.NetworkInformationPermissionAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.Net.NetworkInformation.PingException

Added interface:

System.Runtime.InteropServices._Exception

Namespace System.Net.Sockets

Type Changed: System.Net.Sockets.SocketException

Added interface:

System.Runtime.InteropServices._Exception

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);

Type Changed: System.Net.WebSockets.WebSocketException

Added interface:

System.Runtime.InteropServices._Exception

Namespace System.Runtime.InteropServices

Type Changed: System.Runtime.InteropServices.DefaultParameterValueAttribute

Added interface:

_Attribute

Namespace System.Security.Authentication

Type Changed: System.Security.Authentication.AuthenticationException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: System.Security.Authentication.InvalidCredentialException

Added interface:

System.Runtime.InteropServices._Exception

Namespace System.Text.RegularExpressions

Type Changed: System.Text.RegularExpressions.CaptureCollection

Added interfaces:

System.Collections.Generic.ICollection<Capture>
System.Collections.Generic.IEnumerable<Capture>
System.Collections.Generic.IList<Capture>
System.Collections.Generic.IReadOnlyCollection<Capture>
System.Collections.Generic.IReadOnlyList<Capture>
System.Collections.IList

Added method:

public virtual void CopyTo (Capture[] array, int arrayIndex);

Type Changed: System.Text.RegularExpressions.GroupCollection

Added interfaces:

System.Collections.Generic.ICollection<Group>
System.Collections.Generic.IEnumerable<Group>
System.Collections.Generic.IList<Group>
System.Collections.Generic.IReadOnlyCollection<Group>
System.Collections.Generic.IReadOnlyList<Group>
System.Collections.IList

Added method:

public virtual void CopyTo (Group[] array, int arrayIndex);

Type Changed: System.Text.RegularExpressions.MatchCollection

Added interfaces:

System.Collections.Generic.ICollection<Match>
System.Collections.Generic.IEnumerable<Match>
System.Collections.Generic.IList<Match>
System.Collections.Generic.IReadOnlyCollection<Match>
System.Collections.Generic.IReadOnlyList<Match>
System.Collections.IList

Added method:

public virtual void CopyTo (Match[] array, int arrayIndex);

Type Changed: System.Text.RegularExpressions.Regex

Modified fields:

 ---[NonSerialized]
 ---public readonly System.TimeSpan InfiniteMatchTimeout;

Modified methods:

-protected bool UseOptionR ()
+protected bool UseOptionR ()

Type Changed: System.Text.RegularExpressions.RegexMatchTimeoutException

Added interface:

System.Runtime.InteropServices._Exception

Namespace System.Threading

Type Changed: System.Threading.BarrierPostPhaseException

Added interface:

System.Runtime.InteropServices._Exception

Namespace System.Timers

Type Changed: System.Timers.TimersDescriptionAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Namespace System.Windows.Markup

Type Changed: System.Windows.Markup.ValueSerializerAttribute

Added interface:

System.Runtime.InteropServices._Attribute

New Namespace System.Security

New Type: System.Security.SecureStringMarshal

public static class SecureStringMarshal {
	// methods
	public static IntPtr SecureStringToCoTaskMemAnsi (SecureString s);
	public static IntPtr SecureStringToCoTaskMemUnicode (SecureString s);
	public static IntPtr SecureStringToGlobalAllocAnsi (SecureString s);
	public static IntPtr SecureStringToGlobalAllocUnicode (SecureString s);
}

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 static BigInteger Parse (System.ReadOnlySpan<char> value, System.Globalization.NumberStyles style, System.IFormatProvider provider);
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.Runtime.Serialization.dll

Namespace System.Runtime.Serialization

Type Changed: System.Runtime.Serialization.CollectionDataContractAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.Runtime.Serialization.ContractNamespaceAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.Runtime.Serialization.DataContractAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.Runtime.Serialization.DataMemberAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.Runtime.Serialization.EnumMemberAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.Runtime.Serialization.IgnoreDataMemberAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: System.Runtime.Serialization.InvalidDataContractException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: System.Runtime.Serialization.KnownTypeAttribute

Added interface:

System.Runtime.InteropServices._Attribute

New Type: System.Runtime.Serialization.DataContractSerializerExtensions

public static class DataContractSerializerExtensions {
	// methods
	public static ISerializationSurrogateProvider GetSerializationSurrogateProvider (this DataContractSerializer serializer);
	public static void SetSerializationSurrogateProvider (this DataContractSerializer serializer, ISerializationSurrogateProvider provider);
}

New Type: System.Runtime.Serialization.ISerializationSurrogateProvider

public interface ISerializationSurrogateProvider {
	// methods
	public virtual object GetDeserializedObject (object obj, System.Type targetType);
	public virtual object GetObjectToSerialize (object obj, System.Type targetType);
	public virtual System.Type GetSurrogateType (System.Type type);
}

System.Xml.Linq.dll

Namespace System.Xml.XPath

New Type: System.Xml.XPath.XDocumentExtensions

public static class XDocumentExtensions {
	// methods
	public static IXPathNavigable ToXPathNavigable (this System.Xml.Linq.XNode node);
}

Xamarin.Mac.dll

Namespace AVFoundation

Type Changed: AVFoundation.AVAssetResourceLoadingRequest

Added properties:

public virtual AVAssetResourceLoadingRequestor Requestor { get; }
public static Foundation.NSString StreamingContentKeyRequestRequiresPersistentKey { get; }

Type Changed: AVFoundation.AVAudioEngine

Added methods:

public virtual void ConnectMidi (AVAudioNode sourceNode, AVAudioNode destinationNode, AVAudioFormat format, AudioUnit.AUMidiOutputEventBlock tapHandler);
public virtual void ConnectMidi (AVAudioNode sourceNode, AVAudioNode[] destinationNodes, AVAudioFormat format, AudioUnit.AUMidiOutputEventBlock tapHandler);
public virtual void DisableManualRenderingMode ();
public virtual void DisconnectMidi (AVAudioNode sourceNode, AVAudioNode destinationNode);
public virtual void DisconnectMidi (AVAudioNode sourceNode, AVAudioNode[] destinationNodes);
public virtual void DisconnectMidiInput (AVAudioNode node);
public virtual void DisconnectMidiOutput (AVAudioNode node);

Type Changed: AVFoundation.AVAudioRecorder

Added property:

public virtual double DeviceCurrentTime { get; }

Added methods:

public virtual bool RecordAt (double time);
public virtual bool RecordAt (double time, double duration);

Type Changed: AVFoundation.AVCaptureDevice

Added methods:

public static AVAuthorizationStatus GetAuthorizationStatus (AVAuthorizationMediaType mediaType);
public static AVAuthorizationStatus GetAuthorizationStatus (Foundation.NSString avMediaTypeToken);
public static void RequestAccessForMediaType (Foundation.NSString avMediaTypeToken, AVRequestAccessStatus completion);
public static System.Threading.Tasks.Task<bool> RequestAccessForMediaTypeAsync (Foundation.NSString avMediaTypeToken);

Type Changed: AVFoundation.AVCaptureFileOutput

Added methods:

public virtual void PauseRecording ();
public virtual void ResumeRecording ();

Type Changed: AVFoundation.AVCaptureSession

Added properties:

public static Foundation.NSString InterruptionEndedNotification { get; }
public static Foundation.NSString WasInterruptedNotification { get; }

Type Changed: AVFoundation.AVCaptureSession.Notifications

Added methods:

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

Type Changed: AVFoundation.AVContentKeySessionDelegate

Added methods:

public virtual void DidGenerateExpiredSessionReport (AVContentKeySession session);
public virtual void DidSucceed (AVContentKeySession session, AVContentKeyRequest keyRequest);

Type Changed: AVFoundation.AVContentKeySessionDelegate_Extensions

Added methods:

public static void DidGenerateExpiredSessionReport (this IAVContentKeySessionDelegate This, AVContentKeySession session);
public static void DidSucceed (this IAVContentKeySessionDelegate This, AVContentKeySession session, AVContentKeyRequest keyRequest);

Type Changed: AVFoundation.AVFragmentedAssetMinder

Added constructor:

public AVFragmentedAssetMinder (IAVFragmentMinding asset, double mindingInterval);

Type Changed: AVFoundation.AVMutableCompositionTrack

Added methods:

public virtual void AddTrackAssociation (AVCompositionTrack compositionTrack, string trackAssociationType);
public virtual void RemoveTrackAssociation (AVCompositionTrack compositionTrack, string trackAssociationType);

Type Changed: AVFoundation.AVMutableVideoComposition

Added property:

public virtual float RenderScale { get; set; }

Type Changed: AVFoundation.AVPlayer

Added property:

public virtual bool PreventsDisplaySleepDuringVideoPlayback { get; set; }

Type Changed: AVFoundation.AVSampleBufferRenderSynchronizer

Added properties:

public virtual CoreMedia.CMTime CurrentTime { get; }
public static Foundation.NSString RateDidChangeNotification { get; }

Type Changed: AVFoundation.AVVideoComposition

Added property:

public virtual float RenderScale { get; set; }

New Type: AVFoundation.AVAssetResourceLoadingRequestor

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

New Type: AVFoundation.AVAuthorizationMediaType

[Serializable]
public enum AVAuthorizationMediaType {
	Audio = 1,
	Video = 0,
}

New Type: AVFoundation.AVPortraitEffectsMatte

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

New Type: AVFoundation.AVRequestAccessStatus

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

Namespace AppKit

Type Changed: AppKit.AppKitThreadAccessException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: AppKit.NSAnimationContext

Added method:

public static void RunAnimation (System.Action<NSAnimationContext> changes);

Type Changed: AppKit.NSAppearance

Added interface:

Foundation.INSSecureCoding

Added properties:

public static Foundation.NSString NameAccessibilityHighContrastAqua { get; }
public static Foundation.NSString NameAccessibilityHighContrastDarkAqua { get; }
public static Foundation.NSString NameAccessibilityHighContrastVibrantDark { get; }
public static Foundation.NSString NameAccessibilityHighContrastVibrantLight { get; }
public static Foundation.NSString NameDarkAqua { get; }

Added method:

public virtual string FindBestMatch (string[] appearances);

Type Changed: AppKit.NSApplication

Added interfaces:

INSAppearanceCustomization
INSMenuItemValidation
INSUserInterfaceValidations

Added properties:

public virtual NSAppearance Appearance { get; set; }
public virtual NSAppearance EffectiveAppearance { get; }
public NSApplicationHandlesKey HandlesKey { get; set; }
public virtual bool IsRegisteredForRemoteNotifications { get; }

Added methods:

public virtual void RegisterForRemoteNotifications ();
public virtual bool ValidateMenuItem (NSMenuItem menuItem);
public virtual bool ValidateUserInterfaceItem (INSValidatedUserInterfaceItem item);

Type Changed: AppKit.NSApplicationDelegate

Added method:

public virtual bool HandlesKey (NSApplication sender, string key);

Type Changed: AppKit.NSApplicationDelegate_Extensions

Added method:

public static bool HandlesKey (this INSApplicationDelegate This, NSApplication sender, string key);

Type Changed: AppKit.NSArrayController

Added interface:

INSEditorRegistration

Type Changed: AppKit.NSBackgroundStyle

Added values:

Emphasized = 1,
Normal = 0,

Type Changed: AppKit.NSBezierPath

Added interface:

Foundation.INSSecureCoding

Type Changed: AppKit.NSButton

Added interface:

INSUserInterfaceValidations

Added property:

public virtual NSColor ContentTintColor { get; set; }

Added method:

public virtual bool ValidateUserInterfaceItem (INSValidatedUserInterfaceItem item);

Type Changed: AppKit.NSCollectionViewItem

Added interface:

INSEditor

Type Changed: AppKit.NSColor

Added properties:

public static NSColor[] AlternatingContentBackgroundColors { get; }
public static NSColor ControlAccentColor { get; }
public static NSColor FindHighlightColor { get; }
public static NSColor LinkColor { get; }
public static NSColor PlaceholderTextColor { get; }
public static NSColor SelectedContentBackgroundColor { get; }
public static NSColor SeparatorColor { get; }
public static NSColor UnemphasizedSelectedContentBackgroundColor { get; }
public static NSColor UnemphasizedSelectedTextBackgroundColor { get; }
public static NSColor UnemphasizedSelectedTextColor { get; }

Added method:

public virtual NSColor FromSystemEffect (NSColorSystemEffect systemEffect);

Type Changed: AppKit.NSColorPanel

Added interfaces:

INSMenuItemValidation
INSUserInterfaceValidations

Type Changed: AppKit.NSComboBox

Added interface:

INSUserInterfaceValidations

Type Changed: AppKit.NSControlTextEditingDelegate

Added methods:

public virtual void ControlTextDidBeginEditing (Foundation.NSNotification obj);
public virtual void ControlTextDidChange (Foundation.NSNotification obj);
public virtual void ControlTextDidEndEditing (Foundation.NSNotification obj);

Type Changed: AppKit.NSControlTextEditingDelegate_Extensions

Added methods:

public static void ControlTextDidBeginEditing (this INSControlTextEditingDelegate This, Foundation.NSNotification obj);
public static void ControlTextDidChange (this INSControlTextEditingDelegate This, Foundation.NSNotification obj);
public static void ControlTextDidEndEditing (this INSControlTextEditingDelegate This, Foundation.NSNotification obj);

Type Changed: AppKit.NSController

Added interface:

INSEditorRegistration

Type Changed: AppKit.NSDictionaryController

Added interface:

INSEditorRegistration

Type Changed: AppKit.NSDocument

Added interfaces:

INSEditorRegistration
INSMenuItemValidation
Foundation.INSFilePresenter

Added properties:

public virtual Foundation.NSOperationQueue PesentedItemOperationQueue { get; }
public virtual Foundation.NSSet<Foundation.NSString> PresentedItemObservedUbiquityAttributes { get; }
public virtual Foundation.NSUrl PresentedItemURL { get; }
public virtual Foundation.NSUrl PrimaryPresentedItemUrl { get; }

Added methods:

public virtual void AccommodatePresentedItemDeletion (System.Action<Foundation.NSError> completionHandler);
public virtual void AccommodatePresentedSubitemDeletion (Foundation.NSUrl url, System.Action<Foundation.NSError> completionHandler);
public virtual void ObjectDidBeginEditing (INSEditor editor);
public virtual void ObjectDidEndEditing (INSEditor editor);
public virtual void PresentedItemChanged ();
public virtual void PresentedItemChangedUbiquityAttributes (Foundation.NSSet<Foundation.NSString> attributes);
public virtual void PresentedItemGainedVersion (Foundation.NSFileVersion version);
public virtual void PresentedItemLostVersion (Foundation.NSFileVersion version);
public virtual void PresentedItemMoved (Foundation.NSUrl newURL);
public virtual void PresentedItemResolveConflictVersion (Foundation.NSFileVersion version);
public virtual void PresentedSubitemAppeared (Foundation.NSUrl atUrl);
public virtual void PresentedSubitemChanged (Foundation.NSUrl url);
public virtual void PresentedSubitemGainedVersion (Foundation.NSUrl url, Foundation.NSFileVersion version);
public virtual void PresentedSubitemLostVersion (Foundation.NSUrl url, Foundation.NSFileVersion version);
public virtual void PresentedSubitemMoved (Foundation.NSUrl oldURL, Foundation.NSUrl newURL);
public virtual void PresentedSubitemResolvedConflictVersion (Foundation.NSUrl url, Foundation.NSFileVersion version);
public virtual void RelinquishPresentedItemToReader (Foundation.NSFilePresenterReacquirer readerAction);
public virtual void RelinquishPresentedItemToWriter (Foundation.NSFilePresenterReacquirer writerAction);
public virtual void SavePresentedItemChanges (System.Action<Foundation.NSError> completionHandler);
public virtual bool ValidateMenuItem (NSMenuItem menuItem);
public bool ValidateUserInterfaceItem (INSValidatedUserInterfaceItem anItem);

Type Changed: AppKit.NSDocumentController

Added interface:

INSMenuItemValidation

Added methods:

public virtual bool ValidateMenuItem (NSMenuItem menuItem);
public bool ValidateUserInterfaceItem (INSValidatedUserInterfaceItem anItem);

Type Changed: AppKit.NSFontManager

Added interface:

INSMenuItemValidation

Added method:

public virtual bool ValidateMenuItem (NSMenuItem menuItem);

Type Changed: AppKit.NSFontPanel

Added interfaces:

INSMenuItemValidation
INSUserInterfaceValidations

Type Changed: AppKit.NSForm

Added interfaces:

INSUserInterfaceValidations
INSViewToolTipOwner

Type Changed: AppKit.NSGradient

Added interface:

Foundation.INSSecureCoding

Type Changed: AppKit.NSImageRep

Added method:

public static ObjCRuntime.Class[] GetRegisteredImageRepClasses ();

Type Changed: AppKit.NSImageView

Added interface:

INSMenuItemValidation

Added property:

public virtual NSColor ContentTintColor { get; set; }

Added method:

public virtual bool ValidateMenuItem (NSMenuItem menuItem);

Type Changed: AppKit.NSLayoutManager

Added property:

public virtual bool LimitsLayoutForSuspiciousContents { get; set; }

Type Changed: AppKit.NSMatrix

Added interfaces:

INSUserInterfaceValidations
INSViewToolTipOwner

Added methods:

public virtual string GetStringForToolTip (NSView view, nint tag, CoreGraphics.CGPoint point, IntPtr data);
public virtual bool ValidateUserInterfaceItem (INSValidatedUserInterfaceItem item);

Type Changed: AppKit.NSMatrixDelegate

Added methods:

public virtual void ControlTextDidBeginEditing (Foundation.NSNotification obj);
public virtual void ControlTextDidChange (Foundation.NSNotification obj);
public virtual void ControlTextDidEndEditing (Foundation.NSNotification obj);

Type Changed: AppKit.NSMenu

Added property:

public virtual NSMenuItem[] Items { get; set; }

Obsoleted methods:

 [Obsolete ("Use 'Items' instead.")]
 public virtual NSMenuItem[] ItemArray ();

Type Changed: AppKit.NSMenuItem

Added interface:

INSValidatedUserInterfaceItem

Type Changed: AppKit.NSObjectController

Added interface:

INSEditorRegistration

Type Changed: AppKit.NSOpenPanel

Added interfaces:

INSMenuItemValidation
INSUserInterfaceValidations

Type Changed: AppKit.NSOutlineView

Added interface:

INSUserInterfaceValidations

Type Changed: AppKit.NSPageController

Added interface:

INSEditor

Type Changed: AppKit.NSPanel

Added interfaces:

INSMenuItemValidation
INSUserInterfaceValidations

Type Changed: AppKit.NSPathCell

Added interface:

INSMenuItemValidation

Added method:

public virtual bool ValidateMenuItem (NSMenuItem menuItem);

Type Changed: AppKit.NSPopUpButton

Added interface:

INSUserInterfaceValidations

Type Changed: AppKit.NSPopUpButtonCell

Added interface:

INSMenuItemValidation

Added method:

public virtual bool ValidateMenuItem (NSMenuItem menuItem);

Type Changed: AppKit.NSRemoteOpenPanel

Added interfaces:

INSMenuItemValidation
INSUserInterfaceValidations

Type Changed: AppKit.NSRemoteSavePanel

Added interfaces:

INSMenuItemValidation
INSUserInterfaceValidations

Type Changed: AppKit.NSSavePanel

Added interfaces:

INSMenuItemValidation
INSUserInterfaceValidations

Type Changed: AppKit.NSSearchField

Added interface:

INSUserInterfaceValidations

Type Changed: AppKit.NSSecureTextField

Added interface:

INSUserInterfaceValidations

Type Changed: AppKit.NSShadow

Added interface:

Foundation.INSSecureCoding

Type Changed: AppKit.NSSharingServiceName

Added values:

PostOnLinkedIn = 17,
PostOnTencentWeibo = 16,
UseAsFacebookProfileImage = 18,
UseAsLinkedInProfileImage = 19,

Type Changed: AppKit.NSSound

Added interface:

Foundation.INSSecureCoding

Type Changed: AppKit.NSSplitViewController

Added interface:

INSEditor

Type Changed: AppKit.NSStatusBarButton

Added interface:

INSUserInterfaceValidations

Type Changed: AppKit.NSTabView

Added method:

public virtual void SetItems (NSTabViewItem[] items);

Type Changed: AppKit.NSTabViewController

Added interface:

INSEditor

Type Changed: AppKit.NSTableHeaderView

Added interface:

INSViewToolTipOwner

Added method:

public virtual string GetStringForToolTip (NSView view, nint tag, CoreGraphics.CGPoint point, IntPtr data);

Type Changed: AppKit.NSTableView

Added interface:

INSUserInterfaceValidations

Added method:

public virtual bool ValidateUserInterfaceItem (INSValidatedUserInterfaceItem item);

Type Changed: AppKit.NSTextField

Added interface:

INSUserInterfaceValidations

Added method:

public virtual bool ValidateUserInterfaceItem (INSValidatedUserInterfaceItem item);

Type Changed: AppKit.NSTextView

Added interfaces:

INSMenuItemValidation
INSTextInput
INSUserInterfaceValidations

Added property:

public virtual nint ConversationIdentifier { get; }

Added methods:

public static NSTextView CreateFieldEditor ();
public static NSScrollView CreateScrollableDocumentContentTextView ();
public static NSScrollView CreateScrollablePlainDocumentContentTextView ();
public static NSScrollView CreateScrollableTextView ();
public virtual Foundation.NSAttributedString GetAttributedSubstring (Foundation.NSRange range);
public virtual CoreGraphics.CGRect GetFirstRectForCharacterRange (Foundation.NSRange range);
public virtual bool PerformValidatedReplacement (Foundation.NSRange range, Foundation.NSAttributedString attributedString);
public virtual void SetMarkedText (Foundation.NSObject string, Foundation.NSRange selRange);
public virtual bool ValidateMenuItem (NSMenuItem menuItem);
public virtual bool ValidateUserInterfaceItem (INSValidatedUserInterfaceItem item);

Type Changed: AppKit.NSTitlebarAccessoryViewController

Added interface:

INSEditor

Type Changed: AppKit.NSTokenField

Added interface:

INSUserInterfaceValidations

Type Changed: AppKit.NSToolbar

Added property:

public virtual string CenteredItemIdentifier { get; set; }

Type Changed: AppKit.NSToolbarItem

Added interfaces:

INSMenuItemValidation
INSValidatedUserInterfaceItem

Added method:

public virtual bool ValidateMenuItem (NSMenuItem menuItem);

Type Changed: AppKit.NSToolbarItemGroup

Added interfaces:

INSMenuItemValidation
INSValidatedUserInterfaceItem

Type Changed: AppKit.NSTreeController

Added interface:

INSEditorRegistration

Type Changed: AppKit.NSUserDefaultsController

Added interface:

INSEditorRegistration

Type Changed: AppKit.NSView

Added method:

public virtual void ViewDidChangeEffectiveAppearance ();

Type Changed: AppKit.NSViewController

Added interface:

INSEditor

Added properties:

public virtual NSMenu Menu { get; set; }
public virtual NSResponder NextResponder { get; set; }
public virtual NSTouchBar TouchBar { get; }
public virtual Foundation.NSUserActivity UserActivity { get; set; }

Added methods:

public virtual bool AcceptsFirstResponder ();
public virtual bool BecomeFirstResponder ();
public virtual void BeginGestureWithEvent (NSEvent theEvent);
public virtual bool CommitEditing (out Foundation.NSError error);
public virtual void CursorUpdate (NSEvent theEvent);
public virtual void EncodeRestorableState (Foundation.NSCoder coder);
public virtual void EncodeRestorableState (Foundation.NSCoder coder, Foundation.NSOperationQueue queue);
public virtual void EndGestureWithEvent (NSEvent theEvent);
public virtual void FlagsChanged (NSEvent theEvent);
public virtual void FlushBufferedKeyEvents ();
public virtual void GetNewWindowForTab (Foundation.NSObject sender);
public virtual void HelpRequested (NSEvent theEventPtr);
public virtual void InterpretKeyEvents (NSEvent[] eventArray);
public virtual void InvalidateRestorableState ();
public virtual void KeyDown (NSEvent theEvent);
public virtual void KeyUp (NSEvent theEvent);
public virtual void MagnifyWithEvent (NSEvent theEvent);
public virtual void MouseDown (NSEvent theEvent);
public virtual void MouseDragged (NSEvent theEvent);
public virtual void MouseEntered (NSEvent theEvent);
public virtual void MouseExited (NSEvent theEvent);
public virtual void MouseMoved (NSEvent theEvent);
public virtual void MouseUp (NSEvent theEvent);
public virtual void NoResponderFor (ObjCRuntime.Selector eventSelector);
public virtual void OtherMouseDown (NSEvent theEvent);
public virtual void OtherMouseDragged (NSEvent theEvent);
public virtual void OtherMouseUp (NSEvent theEvent);
public virtual bool PerformKeyEquivalent (NSEvent theEvent);
public virtual bool PresentError (Foundation.NSError error);
public void PresentError (Foundation.NSError error, NSWindow window, Foundation.NSObject delegate, ObjCRuntime.Selector didPresentSelector, IntPtr contextInfo);
public virtual void PressureChange (NSEvent pressureChangeEvent);
public virtual void QuickLook (NSEvent withEvent);
public virtual bool ResignFirstResponder ();
public static string[] RestorableStateKeyPaths ();
public virtual void RestoreState (Foundation.NSCoder coder);
public virtual void RestoreUserActivityState (Foundation.NSUserActivity userActivity);
public virtual void RightMouseDown (NSEvent theEvent);
public virtual void RightMouseDragged (NSEvent theEvent);
public virtual void RightMouseUp (NSEvent theEvent);
public virtual void RotateWithEvent (NSEvent theEvent);
public virtual void ScrollWheel (NSEvent theEvent);
public virtual bool ShouldBeTreatedAsInkEvent (NSEvent theEvent);
public virtual void ShowContextHelp (Foundation.NSObject sender);
public virtual void SmartMagnify (NSEvent withEvent);
public virtual Foundation.NSObject SupplementalTargetForAction (ObjCRuntime.Selector action, Foundation.NSObject sender);
public virtual void SwipeWithEvent (NSEvent theEvent);
public virtual void TabletPoint (NSEvent theEvent);
public virtual void TabletProximity (NSEvent theEvent);
public virtual void TouchesBeganWithEvent (NSEvent theEvent);
public virtual void TouchesCancelledWithEvent (NSEvent theEvent);
public virtual void TouchesEndedWithEvent (NSEvent theEvent);
public virtual void TouchesMovedWithEvent (NSEvent theEvent);
public virtual bool TryToPerformwith (ObjCRuntime.Selector anAction, Foundation.NSObject anObject);
public virtual void UpdateUserActivityState (Foundation.NSUserActivity userActivity);
public virtual Foundation.NSObject ValidRequestorForSendType (string sendType, string returnType);
public virtual bool WantsForwardedScrollEventsForAxis (NSEventGestureAxis axis);
public virtual bool WantsScrollEventsForSwipeTrackingOnAxis (NSEventGestureAxis axis);
public virtual Foundation.NSError WillPresentError (Foundation.NSError error);

Type Changed: AppKit.NSVisualEffectMaterial

Added values:

ContentBackground = 18,
FullScreenUI = 15,
HeaderView = 10,
HudWindow = 13,
Sheet = 11,
ToolTip = 17,
UnderPageBackground = 22,
UnderWindowBackground = 21,
WindowBackground = 12,

Type Changed: AppKit.NSWindow

Added interfaces:

INSMenuItemValidation
INSUserInterfaceValidations

Added property:

public virtual INSAppearanceCustomization AppearanceSource { get; set; }

Added methods:

public virtual CoreGraphics.CGPoint ConvertPointFromBacking (CoreGraphics.CGPoint point);
public virtual CoreGraphics.CGPoint ConvertPointFromScreen (CoreGraphics.CGPoint point);
public virtual CoreGraphics.CGPoint ConvertPointToBacking (CoreGraphics.CGPoint point);
public virtual CoreGraphics.CGPoint ConvertPointToScreen (CoreGraphics.CGPoint point);
public virtual bool ValidateMenuItem (NSMenuItem menuItem);
public virtual bool ValidateUserInterfaceItem (INSValidatedUserInterfaceItem item);

Type Changed: AppKit.NSWorkspace

Added method:

public virtual void RequestAuthorization (NSWorkspaceAuthorizationType type, System.Action<NSWorkspaceAuthorization,Foundation.NSError> completionHandler);

New Type: AppKit.INSColorChanging

public interface INSColorChanging : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void ChangeColor (NSColorPanel sender);
}

New Type: AppKit.INSEditor

public interface INSEditor : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual bool CommitEditing ();
	public virtual bool CommitEditing (out Foundation.NSError error);
	public virtual void CommitEditing (Foundation.NSObject delegateObject, ObjCRuntime.Selector didCommitSelector, IntPtr contextInfo);
	public virtual void DiscardEditing ();
}

New Type: AppKit.INSEditorRegistration

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

New Type: AppKit.INSFontChanging

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

New Type: AppKit.INSMenuItemValidation

public interface INSMenuItemValidation : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual bool ValidateMenuItem (NSMenuItem menuItem);
}

New Type: AppKit.INSPasteboardTypeOwner

public interface INSPasteboardTypeOwner : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void ProvideData (NSPasteboard sender, string type);
}

New Type: AppKit.INSStandardKeyBindingResponding

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

New Type: AppKit.INSTextInput

public interface INSTextInput : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual nint ConversationIdentifier { get; }
	public virtual bool HasMarkedText { get; }
	public virtual Foundation.NSRange MarkedRange { get; }
	public virtual Foundation.NSRange SelectedRange { get; }
	public virtual Foundation.NSString[] ValidAttributesForMarkedText { get; }
	// methods
	public virtual Foundation.NSAttributedString GetAttributedSubstring (Foundation.NSRange range);
	public virtual uint GetCharacterIndex (CoreGraphics.CGPoint point);
	public virtual CoreGraphics.CGRect GetFirstRectForCharacterRange (Foundation.NSRange range);
	public virtual void InsertText (Foundation.NSObject insertString);
	public virtual void SetMarkedText (Foundation.NSObject string, Foundation.NSRange selRange);
	public virtual void UnmarkText ();
}

New Type: AppKit.INSToolbarItemValidation

public interface INSToolbarItemValidation : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual bool ValidateToolbarItem (NSToolbarItem item);
}

New Type: AppKit.INSViewToolTipOwner

public interface INSViewToolTipOwner : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual string GetStringForToolTip (NSView view, nint tag, CoreGraphics.CGPoint point, IntPtr data);
}

New Type: AppKit.NSApplicationHandlesKey

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

New Type: AppKit.NSColorSystemEffect

[Serializable]
public enum NSColorSystemEffect {
	DeepPressed = 2,
	Disabled = 3,
	None = 0,
	Pressed = 1,
	Rollover = 4,
}

New Type: AppKit.NSEditorRegistration_Extensions

public static class NSEditorRegistration_Extensions {
	// methods
	public static void ObjectDidBeginEditing (this INSEditorRegistration This, INSEditor editor);
	public static void ObjectDidEndEditing (this INSEditorRegistration This, INSEditor editor);
}

New Type: AppKit.NSFontChanging_Extensions

public static class NSFontChanging_Extensions {
	// methods
	public static void ChangeFont (this INSFontChanging This, NSFontManager sender);
	public static NSFontPanelModeMask GetValidModes (this INSFontChanging This, NSFontPanel fontPanel);
}

New Type: AppKit.NSObject_NSEditorRegistration

public static class NSObject_NSEditorRegistration {
	// methods
	public static void ObjectDidBeginEditing (this Foundation.NSObject This, INSEditor editor);
	public static void ObjectDidEndEditing (this Foundation.NSObject This, INSEditor editor);
}

New Type: AppKit.NSObject_NSToolbarItemValidation

public static class NSObject_NSToolbarItemValidation {
	// methods
	public static bool ValidateToolbarItem (this Foundation.NSObject This, NSToolbarItem item);
}

New Type: AppKit.NSPasteboardTypeOwner_Extensions

public static class NSPasteboardTypeOwner_Extensions {
	// methods
	public static void PasteboardChangedOwner (this INSPasteboardTypeOwner This, NSPasteboard sender);
}

New Type: AppKit.NSSharingServiceNameExtensions

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

New Type: AppKit.NSStandardKeyBindingResponding_Extensions

public static class NSStandardKeyBindingResponding_Extensions {
	// methods
	public static void CancelOperation (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void CapitalizeWord (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void CenterSelectionInVisibleArea (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void ChangeCaseOfLetter (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void Complete (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void DeleteBackward (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void DeleteBackwardByDecomposingPreviousCharacter (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void DeleteForward (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void DeleteToBeginningOfLine (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void DeleteToBeginningOfParagraph (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void DeleteToEndOfLine (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void DeleteToEndOfParagraph (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void DeleteToMark (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void DeleteWordBackward (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void DeleteWordForward (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void DoCommandBySelector (this INSStandardKeyBindingResponding This, ObjCRuntime.Selector selector);
	public static void Indent (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void InsertBacktab (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void InsertContainerBreak (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void InsertDoubleQuoteIgnoringSubstitution (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void InsertLineBreak (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void InsertNewline (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void InsertNewlineIgnoringFieldEditor (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void InsertParagraphSeparator (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void InsertSingleQuoteIgnoringSubstitution (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void InsertTab (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void InsertTabIgnoringFieldEditor (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void InsertText (this INSStandardKeyBindingResponding This, Foundation.NSObject insertString);
	public static void LowercaseWord (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MakeBaseWritingDirectionLeftToRight (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MakeBaseWritingDirectionNatural (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MakeBaseWritingDirectionRightToLeft (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MakeTextWritingDirectionLeftToRight (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MakeTextWritingDirectionNatural (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MakeTextWritingDirectionRightToLeft (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveBackward (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveBackwardAndModifySelection (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveDown (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveDownAndModifySelection (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveForward (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveForwardAndModifySelection (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveLeft (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveLeftAndModifySelection (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveParagraphBackwardAndModifySelection (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveParagraphForwardAndModifySelection (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveRight (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveRightAndModifySelection (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveToBeginningOfDocument (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveToBeginningOfDocumentAndModifySelection (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveToBeginningOfLine (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveToBeginningOfLineAndModifySelection (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveToBeginningOfParagraph (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveToBeginningOfParagraphAndModifySelection (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveToEndOfDocument (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveToEndOfDocumentAndModifySelection (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveToEndOfLine (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveToEndOfLineAndModifySelection (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveToEndOfParagraph (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveToEndOfParagraphAndModifySelection (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveToLeftEndOfLine (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveToLeftEndOfLineAndModifySelection (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveToRightEndOfLine (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveToRightEndOfLineAndModifySelection (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveUp (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveUpAndModifySelection (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveWordBackward (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveWordBackwardAndModifySelection (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveWordForward (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveWordForwardAndModifySelection (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveWordLeft (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveWordLeftAndModifySelection (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveWordRight (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void MoveWordRightAndModifySelection (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void PageDown (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void PageDownAndModifySelection (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void PageUp (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void PageUpAndModifySelection (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void QuickLookPreviewItems (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void ScrollLineDown (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void ScrollLineUp (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void ScrollPageDown (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void ScrollPageUp (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void ScrollToBeginningOfDocument (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void ScrollToEndOfDocument (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void SelectAll (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void SelectLine (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void SelectParagraph (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void SelectToMark (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void SelectWord (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void SetMark (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void SwapWithMark (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void Transpose (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void TransposeWords (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void UppercaseWord (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
	public static void Yank (this INSStandardKeyBindingResponding This, Foundation.NSObject sender);
}

New Type: AppKit.NSWorkspaceAuthorization

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

New Type: AppKit.NSWorkspaceAuthorizationType

[Serializable]
public enum NSWorkspaceAuthorizationType {
	CreateSymbolicLink = 0,
	ReplaceFile = 2,
	SetAttributes = 1,
}

Namespace AudioToolbox

Type Changed: AudioToolbox.AudioChannelLabel

Added values:

BinauralLeft = 208,
BinauralRight = 209,

Type Changed: AudioToolbox.AudioChannelLayoutTagExtensions

Added method:

public static bool IsReserved (this AudioChannelLayoutTag value);

Type Changed: AudioToolbox.AudioQueueException

Added interface:

System.Runtime.InteropServices._Exception

New Type: AudioToolbox.AudioChannelLabelExtensions

public static class AudioChannelLabelExtensions {
	// methods
	public static bool IsReserved (this AudioChannelLabel value);
}

Namespace AudioUnit

Type Changed: AudioUnit.AUAudioUnit

Added property:

public virtual AUMidiCIProfileChangedCallback ProfileChangedCallback { get; set; }

Added methods:

public virtual bool Disable (CoreMidi.MidiCIProfile profile, byte cable, byte channel, out Foundation.NSError outError);
public virtual bool Enable (CoreMidi.MidiCIProfile profile, byte cable, byte channel, out Foundation.NSError outError);
public virtual CoreMidi.MidiCIProfileState GetProfileState (byte cable, byte channel);

Type Changed: AudioUnit.AudioUnitException

Added interface:

System.Runtime.InteropServices._Exception

New Type: AudioUnit.AUMidiCIProfileChangedCallback

public sealed delegate AUMidiCIProfileChangedCallback : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public AUMidiCIProfileChangedCallback (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (byte cable, byte channel, CoreMidi.MidiCIProfile profile, bool enabled, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (byte cable, byte channel, CoreMidi.MidiCIProfile profile, bool enabled);
}

Namespace CloudKit

Type Changed: CloudKit.CKDatabaseSubscription

Added constructor:

public CKDatabaseSubscription ();

Type Changed: CloudKit.CKFetchRecordZoneChangesOperation

Added constructor:

public CKFetchRecordZoneChangesOperation (CKRecordZoneID[] recordZoneIDs, Foundation.NSDictionary<CKRecordZoneID,CloudKit.CKFetchRecordZoneChangesConfiguration> configurationsByRecordZoneID);

Added property:

public virtual Foundation.NSDictionary<CKRecordZoneID,CloudKit.CKFetchRecordZoneChangesConfiguration> ConfigurationsByRecordZoneID { get; set; }

Type Changed: CloudKit.CKOperation

Added constructor:

protected CKOperation ();

Type Changed: CloudKit.CKOperationGroup

Added constructor:

public CKOperationGroup ();

Type Changed: CloudKit.CKShareMetadata

Added property:

public virtual CKShareParticipantRole ParticipantRole { get; }

Type Changed: CloudKit.CKShareParticipant

Added property:

public virtual CKShareParticipantRole Role { get; set; }

New Type: CloudKit.CKFetchRecordZoneChangesConfiguration

public class CKFetchRecordZoneChangesConfiguration : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public CKFetchRecordZoneChangesConfiguration ();
	public CKFetchRecordZoneChangesConfiguration (Foundation.NSCoder coder);
	protected CKFetchRecordZoneChangesConfiguration (Foundation.NSObjectFlag t);
	protected CKFetchRecordZoneChangesConfiguration (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string[] DesiredKeys { get; set; }
	public virtual CKServerChangeToken PreviousServerChangeToken { get; set; }
	public virtual uint ResultsLimit { get; set; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: CloudKit.CKShareParticipantRole

[Serializable]
public enum CKShareParticipantRole {
	Owner = 1,
	PrivateUser = 3,
	PublicUser = 4,
	Unknown = 0,
}

Namespace Compression

Type Changed: Compression.CompressionStream

Added methods:

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);
public override System.Threading.Tasks.Task WriteAsync (System.ReadOnlyMemory<byte> source, System.Threading.CancellationToken cancellationToken);

Namespace Contacts

Type Changed: Contacts.CNContact

Added methods:

public static Foundation.NSPredicate GetPredicateForContacts (CNPhoneNumber phoneNumber);
public static Foundation.NSPredicate GetPredicateForContactsMatchingEmailAddress (string emailAddress);

Type Changed: Contacts.CNErrorCode

Added values:

RecordIdentifierInvalid = 205,
VCardSummarizationError = 701,

Namespace ContactsUI

Type Changed: ContactsUI.CNContactViewController

Added interface:

AppKit.INSEditor

Namespace CoreAnimation

Type Changed: CoreAnimation.CAGradientLayer

Obsoleted properties:

 [Obsolete ("Use 'LayerType' property instead.")]
 public virtual string Type { get; set; }

Added property:

public virtual CAGradientLayerType LayerType { get; set; }

New Type: CoreAnimation.CAGradientLayerType

[Serializable]
public enum CAGradientLayerType {
	Axial = 0,
	Conic = 2,
	Radial = 1,
}

New Type: CoreAnimation.CAGradientLayerTypeExtensions

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

New Type: CoreAnimation.CARenderer

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

New Type: CoreAnimation.CARendererOptions

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

Namespace CoreAudioKit

Type Changed: CoreAudioKit.AUViewController

Added interface:

AppKit.INSEditor

Type Changed: CoreAudioKit.CAInterDeviceAudioViewController

Added interface:

AppKit.INSEditor

Namespace CoreBluetooth

Type Changed: CoreBluetooth.CBCentralManager

Added property:

public static Foundation.NSString OptionStartDelayKey { get; }

Type Changed: CoreBluetooth.CBError

Added value:

OperationNotSupported = 13,

Namespace CoreData

Type Changed: CoreData.NSManagedObjectContext

Added interfaces:

AppKit.INSEditor
AppKit.INSEditorRegistration

Added methods:

public virtual bool CommitEditing ();
public virtual bool CommitEditing (out Foundation.NSError error);
public virtual void CommitEditing (Foundation.NSObject delegateObject, ObjCRuntime.Selector didCommitSelector, IntPtr contextInfo);
public virtual void DiscardEditing ();
public virtual void ObjectDidBeginEditing (AppKit.INSEditor editor);
public virtual void ObjectDidEndEditing (AppKit.INSEditor editor);

Type Changed: CoreData.NSPersistentStore

Added properties:

public virtual NSCoreDataCoreSpotlightDelegate CoreSpotlightExporter { get; }
public static ObjCRuntime.Class MigrationManagerClass { get; }

New Type: CoreData.NSCoreDataCoreSpotlightDelegate

public class NSCoreDataCoreSpotlightDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NSCoreDataCoreSpotlightDelegate ();
	protected NSCoreDataCoreSpotlightDelegate (Foundation.NSObjectFlag t);
	protected NSCoreDataCoreSpotlightDelegate (IntPtr handle);
	public NSCoreDataCoreSpotlightDelegate (NSPersistentStoreDescription description, NSManagedObjectModel model);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string DomainIdentifier { get; }
	public virtual string IndexName { get; }
	// methods
	public virtual CoreSpotlight.CSSearchableItemAttributeSet GetAttributeSet (NSManagedObject object);
	public virtual void ReindexAllSearchableItems (CoreSpotlight.CSSearchableIndex searchableIndex, System.Action acknowledgementHandler);
	public virtual void ReindexSearchableItems (CoreSpotlight.CSSearchableIndex searchableIndex, string[] identifiers, System.Action acknowledgementHandler);
}

Namespace CoreFoundation

Type Changed: CoreFoundation.CFException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: CoreFoundation.CFSocketException

Added interface:

System.Runtime.InteropServices._Exception

New Type: CoreFoundation.CFPropertyList

public class CFPropertyList : ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public CFPropertyList (IntPtr handle);
	public CFPropertyList (IntPtr handle, bool owns);
	// properties
	public virtual IntPtr Handle { get; }
	public object Value { get; }
	// methods
	public System.ValueTuple<Foundation.NSData,Foundation.NSError> AsData (CFPropertyListFormat format);
	public CFPropertyList DeepCopy (CFPropertyListMutabilityOptions options);
	public virtual void Dispose ();
	public virtual void Dispose (bool disposing);
	public static System.ValueTuple<CFPropertyList,CoreFoundation.CFPropertyListFormat,Foundation.NSError> FromData (Foundation.NSData data, CFPropertyListMutabilityOptions options);
	public bool IsValid (CFPropertyListFormat format);
	protected override void ~CFPropertyList ();
}

New Type: CoreFoundation.CFPropertyListFormat

[Serializable]
public enum CFPropertyListFormat {
	BinaryFormat1 = 200,
	OpenStep = 1,
	XmlFormat1 = 100,
}

New Type: CoreFoundation.CFPropertyListMutabilityOptions

[Serializable]
[Flags]
public enum CFPropertyListMutabilityOptions {
	Immutable = 0,
	MutableContainers = 1,
	MutableContainersAndLeaves = 2,
}

New Type: CoreFoundation.DispatchData

public class DispatchData : CoreFoundation.DispatchObject, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public DispatchData (IntPtr handle);
	public DispatchData (IntPtr handle, bool owns);
	// properties
	public uint Size { get; }
	// methods
	public static DispatchData Concat (DispatchData data1, DispatchData data2);
	public DispatchData CreateMap (out IntPtr bufferPtr, out uint size);
	public DispatchData CreateSubrange (uint offset, uint size);
	public static DispatchData FromBuffer (IntPtr buffer, uint size);
	public static DispatchData FromByteBuffer (byte[] buffer);
	public static DispatchData FromByteBuffer (byte[] buffer, int start, int length);
}

New Type: CoreFoundation.DispatchIO

public class DispatchIO : CoreFoundation.DispatchObject, ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public static void Read (int fd, uint size, DispatchQueue dispatchQueue, DispatchIOHandler handler);
	public static void Write (int fd, DispatchData dispatchData, DispatchQueue dispatchQueue, DispatchIOHandler handler);
}

New Type: CoreFoundation.DispatchIOHandler

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

New Type: CoreFoundation.NativeObject

public abstract class NativeObject : ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	protected NativeObject ();
	protected NativeObject (IntPtr handle, bool owns);
	// properties
	protected override IntPtr Handle { get; set; }
	// methods
	public virtual void Dispose ();
	protected virtual void Dispose (bool disposing);
	protected virtual void InitializeHandle (IntPtr handle);
	protected virtual void Release ();
	protected virtual void Retain ();
	protected override void ~NativeObject ();
}

Namespace CoreGraphics

Type Changed: CoreGraphics.CGColorSpace

Added constructor:

public CGColorSpace (CoreFoundation.CFPropertyList propertyList);

Added method:

public CoreFoundation.CFPropertyList ToPropertyList ();

Type Changed: CoreGraphics.CGColorSpaceModel

Added value:

Xyz = 7,

Type Changed: CoreGraphics.CGFunction

Added property:

public CGFunction.CGFunctionEvaluate EvaluateFunction { get; set; }

Type Changed: CoreGraphics.CGImage

Added properties:

public CGImageByteOrderInfo ByteOrderInfo { get; }
public CGImagePixelFormatInfo PixelFormatInfo { get; }

Type Changed: CoreGraphics.CGPDFArray

Added methods:

public bool Apply (CGPDFArray.ApplyCallback callback, object info);
public bool GetArray (nint idx, out CGPDFArray array);
public bool GetBoolean (nint idx, out bool result);
public bool GetDictionary (nint idx, out CGPDFDictionary result);
public bool GetFloat (nint idx, out nfloat result);
public bool GetInt (nint idx, out nint result);
public bool GetName (nint idx, out string result);
public bool GetStream (nint idx, out CGPDFStream result);
public bool GetString (nint idx, out string result);

Type Changed: CoreGraphics.CGPDFDictionary

Added method:

public void Apply (CGPDFDictionary.ApplyCallback callback, object info);

New Type: CoreGraphics.CGImageByteOrderInfo

[Serializable]
[Flags]
public enum CGImageByteOrderInfo {
	ByteOrder16Big = 12288,
	ByteOrder16Little = 4096,
	ByteOrder32Big = 16384,
	ByteOrder32Little = 8192,
	ByteOrderDefault = 0,
	ByteOrderMask = 28672,
}

New Type: CoreGraphics.CGImagePixelFormatInfo

[Serializable]
public enum CGImagePixelFormatInfo {
	Mask = 983040,
	Packed = 0,
	Rgb101010 = 196608,
	Rgb555 = 65536,
	Rgb565 = 131072,
	RgbCif10 = 262144,
}

Namespace CoreImage

Type Changed: CoreImage.CIAreaMaximum

Modified base type:

-CoreImage.CIFilter
+CoreImage.CIReductionFilter

Removed property:

public CIVector Extent { get; set; }

Type Changed: CoreImage.CIAreaMaximumAlpha

Modified base type:

-CoreImage.CIFilter
+CoreImage.CIReductionFilter

Removed property:

public CIVector Extent { get; set; }

Type Changed: CoreImage.CIAreaMinimum

Modified base type:

-CoreImage.CIFilter
+CoreImage.CIReductionFilter

Removed property:

public CIVector Extent { get; set; }

Type Changed: CoreImage.CIAreaMinimumAlpha

Modified base type:

-CoreImage.CIFilter
+CoreImage.CIReductionFilter

Removed property:

public CIVector Extent { get; set; }

Type Changed: CoreImage.CIColumnAverage

Modified base type:

-CoreImage.CIFilter
+CoreImage.CIReductionFilter

Removed property:

public CIVector Extent { get; set; }

Type Changed: CoreImage.CIContext

Added constructor:

public CIContext ();

Added method:

public static CIContext Create ();

Type Changed: CoreImage.CIFilterInputKey

Added properties:

public static Foundation.NSString Amount { get; }
public static Foundation.NSString MatteImage { get; }

Type Changed: CoreImage.CIImage

Added constructors:

public CIImage (AVFoundation.AVDepthData data);
public CIImage (AVFoundation.AVPortraitEffectsMatte matte);
public CIImage (AVFoundation.AVDepthData data, Foundation.NSDictionary options);
public CIImage (AVFoundation.AVPortraitEffectsMatte matte, Foundation.NSDictionary options);

Added property:

public virtual AVFoundation.AVPortraitEffectsMatte PortraitEffectsMatte { get; }

Added methods:

public virtual CIImage CreateByInsertingIntermediate ();
public virtual CIImage CreateByInsertingIntermediate (bool cache);
public virtual CIImage CreateBySamplingLinear ();
public virtual CIImage CreateBySamplingNearest ();
public static CIImage FromDepthData (AVFoundation.AVDepthData data);
public static CIImage FromDepthData (AVFoundation.AVDepthData data, Foundation.NSDictionary options);
public static CIImage FromPortraitEffectsMatte (AVFoundation.AVPortraitEffectsMatte matte);
public static CIImage FromPortraitEffectsMatte (AVFoundation.AVPortraitEffectsMatte matte, Foundation.NSDictionary options);

Type Changed: CoreImage.CIImageInitializationOptions

Added property:

public bool? AuxiliaryPortraitEffectsMatte { get; }

Type Changed: CoreImage.CIImageRepresentationOptions

Added property:

public AVFoundation.AVPortraitEffectsMatte AVPortraitEffectsMatte { get; set; }

New Type: CoreImage.CIAreaMinMax

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

New Type: CoreImage.CICameraCalibrationLensCorrection

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

New Type: CoreImage.CIContext_CIDepthBlurEffect

public static class CIContext_CIDepthBlurEffect {
	// methods
	public static CIFilter GetDepthBlurEffectFilter (this CIContext This, Foundation.NSData data, Foundation.NSDictionary options);
	public static CIFilter GetDepthBlurEffectFilter (this CIContext This, Foundation.NSUrl url, Foundation.NSDictionary options);
	public static CIFilter GetDepthBlurEffectFilter (this CIContext This, CIImage image, CIImage disparityImage, CIImage portraitEffectsMatte, ImageIO.CGImagePropertyOrientation orientation, Foundation.NSDictionary options);
}

New Type: CoreImage.CICoreMLModelFilter

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

New Type: CoreImage.CIDither

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

New Type: CoreImage.CIGuidedFilter

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

New Type: CoreImage.CIMeshGenerator

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

New Type: CoreImage.CIMix

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

New Type: CoreImage.CIReductionFilter

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

New Type: CoreImage.CISaliencyMapFilter

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

New Type: CoreImage.CISampleNearest

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

Namespace CoreLocation

Type Changed: CoreLocation.CLActivityType

Added value:

Airborne = 5,

Type Changed: CoreLocation.CLLocationManager

Added property:

public static double MaxTimeInterval { get; }

Added method:

public virtual void RequestLocation ();

Namespace CoreML

Type Changed: CoreML.MLFeatureDescription

Added property:

public virtual MLSequenceConstraint SequenceConstraint { get; }

Type Changed: CoreML.MLFeatureType

Added value:

Sequence = 7,

Type Changed: CoreML.MLFeatureValue

Added property:

public virtual MLSequence SequenceValue { get; }

Added method:

public static MLFeatureValue Create (MLSequence sequence);

Type Changed: CoreML.MLImageConstraint

Added property:

public virtual MLImageSizeConstraint SizeConstraint { get; }

Type Changed: CoreML.MLModel

Added property:

public virtual MLModelConfiguration Configuration { get; }

Added methods:

public static MLModel Create (Foundation.NSUrl url, MLModelConfiguration configuration, out Foundation.NSError error);
public virtual IMLBatchProvider GetPredictions (IMLBatchProvider inputBatch, MLPredictionOptions options, out Foundation.NSError error);

Type Changed: CoreML.MLModelError

Added value:

CustomModel = 5,

Type Changed: CoreML.MLMultiArrayConstraint

Added property:

public virtual MLMultiArrayShapeConstraint ShapeConstraint { get; }

New Type: CoreML.IMLBatchProvider

public interface IMLBatchProvider : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual nint Count { get; }
	// methods
	public virtual IMLFeatureProvider GetFeatures (nint index);
}

New Type: CoreML.IMLCustomModel

public interface IMLCustomModel : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual IMLFeatureProvider GetPrediction (IMLFeatureProvider inputFeatures, MLPredictionOptions options, out Foundation.NSError error);
}

New Type: CoreML.MLArrayBatchProvider

public class MLArrayBatchProvider : Foundation.NSObject, IMLBatchProvider, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MLArrayBatchProvider (IMLFeatureProvider[] array);
	protected MLArrayBatchProvider (Foundation.NSObjectFlag t);
	protected MLArrayBatchProvider (IntPtr handle);
	public MLArrayBatchProvider (Foundation.NSDictionary<Foundation.NSString,Foundation.NSArray> dictionary, out Foundation.NSError error);
	// properties
	public virtual IMLFeatureProvider[] Array { get; }
	public override IntPtr ClassHandle { get; }
	public virtual nint Count { get; }
	// methods
	public virtual IMLFeatureProvider GetFeatures (nint index);
}

New Type: CoreML.MLComputeUnits

[Serializable]
public enum MLComputeUnits {
	All = 2,
	CpuAndGpu = 1,
	CpuOnly = 0,
}

New Type: CoreML.MLCustomModel

public abstract class MLCustomModel : Foundation.NSObject, IMLCustomModel, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLCustomModel ();
	protected MLCustomModel (Foundation.NSObjectFlag t);
	protected MLCustomModel (IntPtr handle);
	public MLCustomModel (MLModelDescription modelDescription, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> parameters, out Foundation.NSError error);
	// methods
	public virtual IMLFeatureProvider GetPrediction (IMLFeatureProvider inputFeatures, MLPredictionOptions options, out Foundation.NSError error);
	public virtual IMLBatchProvider GetPredictions (IMLBatchProvider inputBatch, MLPredictionOptions options, out Foundation.NSError error);
}

New Type: CoreML.MLCustomModel_Extensions

public static class MLCustomModel_Extensions {
	// methods
	public static IMLBatchProvider GetPredictions (this IMLCustomModel This, IMLBatchProvider inputBatch, MLPredictionOptions options, out Foundation.NSError error);
}

New Type: CoreML.MLImageSize

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

New Type: CoreML.MLImageSizeConstraint

public class MLImageSizeConstraint : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLImageSizeConstraint (Foundation.NSObjectFlag t);
	protected MLImageSizeConstraint (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual MLImageSize[] EnumeratedImageSizes { get; }
	public virtual Foundation.NSRange PixelsHighRange { get; }
	public virtual Foundation.NSRange PixelsWideRange { get; }
	public virtual MLImageSizeConstraintType Type { get; }
}

New Type: CoreML.MLImageSizeConstraintType

[Serializable]
public enum MLImageSizeConstraintType {
	Enumerated = 2,
	Range = 3,
	Unspecified = 0,
}

New Type: CoreML.MLModelConfiguration

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

New Type: CoreML.MLMultiArrayShapeConstraint

public class MLMultiArrayShapeConstraint : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLMultiArrayShapeConstraint (Foundation.NSObjectFlag t);
	protected MLMultiArrayShapeConstraint (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSArray<Foundation.NSNumber>[] EnumeratedShapes { get; }
	public virtual Foundation.NSValue[] SizeRangeForDimension { get; }
	public virtual MLMultiArrayShapeConstraintType Type { get; }
}

New Type: CoreML.MLMultiArrayShapeConstraintType

[Serializable]
public enum MLMultiArrayShapeConstraintType {
	Enumerated = 2,
	Range = 3,
	Unspecified = 1,
}

New Type: CoreML.MLSequence

public class MLSequence : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MLSequence (Foundation.NSObjectFlag t);
	protected MLSequence (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSNumber[] Int64Values { get; }
	public virtual string[] StringValues { get; }
	public virtual MLFeatureType Type { get; }
	// methods
	public static MLSequence Create (Foundation.NSNumber[] int64Values);
	public static MLSequence Create (string[] stringValues);
	public static MLSequence CreateEmpty (MLFeatureType type);
}

New Type: CoreML.MLSequenceConstraint

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

Namespace CoreMedia

Type Changed: CoreMedia.CMTime

Added method:

public static CMTime Fold (CMTime time, CMTimeRange foldRange);

Namespace CoreMidi

Type Changed: CoreMidi.MidiDevice

Added properties:

public string FactoryPatchNameFile { get; set; }
public string UserPatchNameFile { get; set; }
public bool UsesSerial { get; set; }

Added method:

public int Add (string name, bool embedded, uint numSourceEndpoints, uint numDestinationEndpoints, MidiEntity newEntity);

Type Changed: CoreMidi.MidiException

Added interface:

System.Runtime.InteropServices._Exception

New Type: CoreMidi.MidiCIDeviceIdentification

public struct MidiCIDeviceIdentification {
	// fields
	public byte[] Family;
	public byte[] Manufacturer;
	public byte[] ModelNumber;
	public byte[] Reserved;
	public byte[] RevisionLevel;
}

New Type: CoreMidi.MidiCIProfile

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

New Type: CoreMidi.MidiCIProfileChangedHandler

public sealed delegate MidiCIProfileChangedHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public MidiCIProfileChangedHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (MidiCISession session, byte channel, MidiCIProfile profile, bool enabled, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (MidiCISession session, byte channel, MidiCIProfile profile, bool enabled);
}

New Type: CoreMidi.MidiCIProfileState

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

New Type: CoreMidi.MidiCIPropertyChangedHandler

public sealed delegate MidiCIPropertyChangedHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public MidiCIPropertyChangedHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (MidiCISession session, byte channel, Foundation.NSData data, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (MidiCISession session, byte channel, Foundation.NSData data);
}

New Type: CoreMidi.MidiCIPropertyResponseHandler

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

New Type: CoreMidi.MidiCISession

public class MidiCISession : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected MidiCISession (Foundation.NSObjectFlag t);
	protected MidiCISession (IntPtr handle);
	public MidiCISession (uint entity, System.Action handler);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual MidiCIDeviceIdentification DeviceIdentification { get; }
	public virtual uint Entity { get; }
	public virtual MidiCIProfileChangedHandler ProfileChangedCallback { get; set; }
	public virtual MidiCIPropertyChangedHandler PropertyChangedCallback { get; set; }
	public virtual bool SupportsProfileCapability { get; }
	public virtual bool SupportsPropertyCapability { get; }
	// methods
	public virtual bool DisableProfile (MidiCIProfile profile, byte channel, out Foundation.NSError outError);
	public virtual bool EnableProfile (MidiCIProfile profile, byte channel, out Foundation.NSError outError);
	public virtual MidiCIProfileState GetProfileState (byte channel);
	public virtual void GetProperty (Foundation.NSData inquiry, byte channel, MidiCIPropertyResponseHandler handler);
	public virtual void HasProperty (Foundation.NSData inquiry, byte channel, MidiCIPropertyResponseHandler handler);
	public virtual void SetProperty (Foundation.NSData inquiry, byte channel, MidiCIPropertyResponseHandler handler);
}

New Type: CoreMidi.MidiDeviceList

public class MidiDeviceList : CoreMidi.MidiObject, System.IDisposable {
	// methods
	public int Add (MidiDevice device);
	public MidiDevice Get (uint index);
	public uint GetNumberOfDevices ();
}

Namespace CoreText

Type Changed: CoreText.CTFontCollection

Added method:

public CTFontDescriptor[] GetMatchingFontDescriptors (CTFontCollectionOptions options);

Type Changed: CoreText.CTFramesetter

Added method:

public static CTFramesetter Create (CTTypesetter typesetter);

Type Changed: CoreText.CTTypesetterOptionKey

Added property:

public static Foundation.NSString AllowUnboundedLayout { get; }

Type Changed: CoreText.CTTypesetterOptions

Added property:

public bool AllowUnboundedLayout { get; set; }

Namespace CoreVideo

Type Changed: CoreVideo.CVImageBufferTransferFunction

Added value:

Linear = 11,

Type Changed: CoreVideo.CVPixelFormatDescription

Added field:

public static Foundation.NSString ContainsGrayscaleKey;

Namespace CoreWlan

Type Changed: CoreWlan.CWConfiguration

Added method:

public static CWConfiguration Create ();

Namespace EventKit

Type Changed: EventKit.EKRecurrenceDayOfWeek

Added constructor:

public EKRecurrenceDayOfWeek (Foundation.NSCoder coder);

Added interfaces:

Foundation.INSCoding
Foundation.INSSecureCoding

Added method:

public virtual void EncodeTo (Foundation.NSCoder encoder);

Type Changed: EventKit.EKRecurrenceEnd

Added constructor:

public EKRecurrenceEnd (Foundation.NSCoder coder);

Added interfaces:

Foundation.INSCoding
Foundation.INSSecureCoding

Added method:

public virtual void EncodeTo (Foundation.NSCoder encoder);

Namespace FinderSync

Type Changed: FinderSync.FIFinderSyncController

Added property:

public static bool ExtensionEnabled { get; }

Added method:

public static void ShowExtensionManagementInterface ();

Namespace Foundation

Type Changed: Foundation.ActionAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: Foundation.AdviceAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: Foundation.ConnectAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: Foundation.ExportAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: Foundation.FieldAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: Foundation.LinkerSafeAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: Foundation.ModelAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: Foundation.ModelNotImplementedException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: Foundation.NSDistributedNotificationCenter

Added method:

public static NSDistributedNotificationCenter GetDefaultCenter ();

Type Changed: Foundation.NSErrorException

Added interface:

System.Runtime.InteropServices._Exception

Added property:

public override string Message { get; }

Type Changed: Foundation.NSFileManager

Added method:

public static NSFileManager FromAuthorization (AppKit.NSWorkspaceAuthorization authorization);

Type Changed: Foundation.NSFileWrapper

Added interface:

INSSecureCoding

Type Changed: Foundation.NSItemProvider

Added property:

public virtual string SuggestedName { get; set; }

Type Changed: Foundation.NSKeyedArchiver

Added constructor:

public NSKeyedArchiver (bool requiresSecureCoding);

Added method:

public static NSData ArchivedDataWithRootObject (NSObject object, bool requiresSecureCoding, out NSError error);

Type Changed: Foundation.NSKeyedUnarchiver

Added constructor:

public NSKeyedUnarchiver (NSData data, out NSError error);

Added methods:

public static NSObject GetUnarchivedObject (Foundation.NSSet<ObjCRuntime.Class> classes, NSData data, out NSError error);
public static NSObject GetUnarchivedObject (ObjCRuntime.Class cls, NSData data, out NSError error);
public static NSObject GetUnarchivedObject (System.Type type, NSData data, out NSError error);
public static NSObject GetUnarchivedObject (System.Type[] types, NSData data, out NSError error);

Type Changed: Foundation.NSString

Added method:

public static NSString GetLocalizedUserNotificationString (NSString key, NSObject[] arguments);

Type Changed: Foundation.NSUrlRequestNetworkServiceType

Added value:

ResponsiveData = 5,

Type Changed: Foundation.NSValueTransformer

Added property:

public static NSString SecureUnarchiveFromDataTransformerName { get; }

Type Changed: Foundation.NotImplementedAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: Foundation.ObjCException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: Foundation.OutletAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: Foundation.PreserveAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: Foundation.ProtocolAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: Foundation.ProtocolMemberAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: Foundation.RegisterAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: Foundation.You_Should_Not_Call_base_In_This_Method

Added interface:

System.Runtime.InteropServices._Exception

New Type: Foundation.NSBindingSelectionMarker

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

New Type: Foundation.NSSecureUnarchiveFromDataTransformer

public class NSSecureUnarchiveFromDataTransformer : Foundation.NSValueTransformer, INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<NSObject> {
	// constructors
	public NSSecureUnarchiveFromDataTransformer ();
	protected NSSecureUnarchiveFromDataTransformer (NSObjectFlag t);
	protected NSSecureUnarchiveFromDataTransformer (IntPtr handle);
	// properties
	public static ObjCRuntime.Class[] AllowedTopLevelClasses { get; }
	public static System.Type[] AllowedTopLevelTypes { get; }
	public override IntPtr ClassHandle { get; }
}

Namespace GameController

Type Changed: GameController.GCEventViewController

Added interface:

AppKit.INSEditor

Namespace GameKit

Type Changed: GameKit.GKAchievementViewController

Added interface:

AppKit.INSEditor

Type Changed: GameKit.GKChallengesViewController

Added interface:

AppKit.INSEditor

Type Changed: GameKit.GKFriendRequestComposeViewController

Added interface:

AppKit.INSEditor

Type Changed: GameKit.GKGameCenterViewController

Added interface:

AppKit.INSEditor

Type Changed: GameKit.GKLeaderboardViewController

Added interface:

AppKit.INSEditor

Type Changed: GameKit.GKMatchmakerViewController

Added interface:

AppKit.INSEditor

Type Changed: GameKit.GKTurnBasedMatchmakerViewController

Added interface:

AppKit.INSEditor

Namespace GameplayKit

Type Changed: GameplayKit.GKAgent

Added interface:

Foundation.INSSecureCoding

Type Changed: GameplayKit.GKAgent2D

Added interface:

Foundation.INSSecureCoding

Type Changed: GameplayKit.GKAgent3D

Added interface:

Foundation.INSSecureCoding

Type Changed: GameplayKit.GKComponent

Added interface:

Foundation.INSSecureCoding

Type Changed: GameplayKit.GKEntity

Added interface:

Foundation.INSSecureCoding

Type Changed: GameplayKit.GKGraph

Added interface:

Foundation.INSSecureCoding

Type Changed: GameplayKit.GKGraphNode

Added interface:

Foundation.INSSecureCoding

Type Changed: GameplayKit.GKGraphNode2D

Added interface:

Foundation.INSSecureCoding

Type Changed: GameplayKit.GKGraphNode3D

Added interface:

Foundation.INSSecureCoding

Type Changed: GameplayKit.GKGridGraph

Added interface:

Foundation.INSSecureCoding

Type Changed: GameplayKit.GKGridGraphNode

Added interface:

Foundation.INSSecureCoding

Type Changed: GameplayKit.GKMeshGraph`1

Added interface:

Foundation.INSSecureCoding

Type Changed: GameplayKit.GKObstacleGraph

Added interface:

Foundation.INSSecureCoding

Type Changed: GameplayKit.GKObstacleGraph`1

Added interface:

Foundation.INSSecureCoding

Type Changed: GameplayKit.GKPolygonObstacle

Added interface:

Foundation.INSSecureCoding

Type Changed: GameplayKit.GKSCNNodeComponent

Added interface:

Foundation.INSSecureCoding

Type Changed: GameplayKit.GKSKNodeComponent

Added interface:

Foundation.INSSecureCoding

Type Changed: GameplayKit.GKScene

Added interface:

Foundation.INSSecureCoding

Namespace ImageIO

Type Changed: ImageIO.CGImageAuxiliaryDataType

Added value:

PortraitEffectsMatte = 2,

Type Changed: ImageIO.CGImageProperties

Added properties:

public static Foundation.NSString DNGActiveArea { get; }
public static Foundation.NSString DNGAnalogBalance { get; }
public static Foundation.NSString DNGAntiAliasStrength { get; }
public static Foundation.NSString DNGAsShotICCProfile { get; }
public static Foundation.NSString DNGAsShotPreProfileMatrix { get; }
public static Foundation.NSString DNGAsShotProfileName { get; }
public static Foundation.NSString DNGBaselineExposureOffset { get; }
public static Foundation.NSString DNGBayerGreenSplit { get; }
public static Foundation.NSString DNGBestQualityScale { get; }
public static Foundation.NSString DNGBlackLevelDeltaHorizontal { get; }
public static Foundation.NSString DNGBlackLevelDeltaVertical { get; }
public static Foundation.NSString DNGBlackLevelRepeatDim { get; }
public static Foundation.NSString DNGCfaLayout { get; }
public static Foundation.NSString DNGCfaPlaneColor { get; }
public static Foundation.NSString DNGChromaBlurRadius { get; }
public static Foundation.NSString DNGColorimetricReference { get; }
public static Foundation.NSString DNGCurrentICCProfile { get; }
public static Foundation.NSString DNGCurrentPreProfileMatrix { get; }
public static Foundation.NSString DNGDefaultBlackRender { get; }
public static Foundation.NSString DNGDefaultCropOrigin { get; }
public static Foundation.NSString DNGDefaultCropSize { get; }
public static Foundation.NSString DNGDefaultScale { get; }
public static Foundation.NSString DNGDefaultUserCrop { get; }
public static Foundation.NSString DNGExtraCameraProfiles { get; }
public static Foundation.NSString DNGForwardMatrix1 { get; }
public static Foundation.NSString DNGForwardMatrix2 { get; }
public static Foundation.NSString DNGLinearResponseLimit { get; }
public static Foundation.NSString DNGLinearizationTable { get; }
public static Foundation.NSString DNGMakerNoteSafety { get; }
public static Foundation.NSString DNGMaskedAreas { get; }
public static Foundation.NSString DNGNewRawImageDigest { get; }
public static Foundation.NSString DNGNoiseReductionApplied { get; }
public static Foundation.NSString DNGOpcodeList1 { get; }
public static Foundation.NSString DNGOpcodeList2 { get; }
public static Foundation.NSString DNGOpcodeList3 { get; }
public static Foundation.NSString DNGOriginalBestQualityFinalSize { get; }
public static Foundation.NSString DNGOriginalDefaultCropSize { get; }
public static Foundation.NSString DNGOriginalDefaultFinalSize { get; }
public static Foundation.NSString DNGOriginalRawFileData { get; }
public static Foundation.NSString DNGOriginalRawFileDigest { get; }
public static Foundation.NSString DNGOriginalRawFileName { get; }
public static Foundation.NSString DNGPreviewApplicationName { get; }
public static Foundation.NSString DNGPreviewApplicationVersion { get; }
public static Foundation.NSString DNGPreviewColorSpace { get; }
public static Foundation.NSString DNGPreviewDateTime { get; }
public static Foundation.NSString DNGPreviewSettingsDigest { get; }
public static Foundation.NSString DNGPreviewSettingsName { get; }
public static Foundation.NSString DNGProfileCopyright { get; }
public static Foundation.NSString DNGProfileEmbedPolicy { get; }
public static Foundation.NSString DNGProfileHueSatMapData1 { get; }
public static Foundation.NSString DNGProfileHueSatMapData2 { get; }
public static Foundation.NSString DNGProfileHueSatMapDims { get; }
public static Foundation.NSString DNGProfileHueSatMapEncoding { get; }
public static Foundation.NSString DNGProfileLookTableData { get; }
public static Foundation.NSString DNGProfileLookTableDims { get; }
public static Foundation.NSString DNGProfileLookTableEncoding { get; }
public static Foundation.NSString DNGProfileName { get; }
public static Foundation.NSString DNGProfileToneCurve { get; }
public static Foundation.NSString DNGRawDataUniqueId { get; }
public static Foundation.NSString DNGRawImageDigest { get; }
public static Foundation.NSString DNGRawToPreviewGain { get; }
public static Foundation.NSString DNGReductionMatrix1 { get; }
public static Foundation.NSString DNGReductionMatrix2 { get; }
public static Foundation.NSString DNGRowInterleaveFactor { get; }
public static Foundation.NSString DNGShadowScale { get; }
public static Foundation.NSString DNGSubTileBlockSize { get; }
public static Foundation.NSString PNGComment { get; }
public static Foundation.NSString PNGDisclaimer { get; }
public static Foundation.NSString PNGSource { get; }
public static Foundation.NSString PNGWarning { get; }
public static Foundation.NSString PrimaryImage { get; }

Type Changed: ImageIO.CGImageSource

Added method:

public uint GetPrimaryImageIndex ();

Namespace ImageKit

Type Changed: ImageKit.IKFilterBrowserPanel

Added interfaces:

AppKit.INSMenuItemValidation
AppKit.INSUserInterfaceValidations

Type Changed: ImageKit.IKImageEditPanel

Added interfaces:

AppKit.INSMenuItemValidation
AppKit.INSUserInterfaceValidations

Type Changed: ImageKit.IKPictureTaker

Added interfaces:

AppKit.INSMenuItemValidation
AppKit.INSUserInterfaceValidations

Namespace Intents

Type Changed: Intents.INIntent

Added methods:

public virtual INImage GetImage (string parameterName);
public virtual INImage GetKeyImage ();
public virtual void SetImage (INImage image, string parameterName);

Type Changed: Intents.INIntentErrorCode

Added values:

DecodingGeneric = 9000,
EncodingFailed = 8001,
EncodingGeneric = 8000,
ImageGeneric = 6000,
ImageLoadingFailed = 6003,
ImageNoServiceAvailable = 6001,
ImageProxyInvalid = 6006,
ImageProxyLoop = 6005,
ImageProxyTimeout = 6007,
ImageRetrievalFailed = 6004,
ImageScalingFailed = 6009,
ImageServiceFailure = 6008,
ImageStorageFailed = 6002,
NoAppAvailable = 2005,
PermissionDenied = 6010,
VoiceShortcutCreationFailed = 7000,
VoiceShortcutDeleteFailed = 7002,
VoiceShortcutGetFailed = 7001,

Type Changed: Intents.INIntentHandlingStatus

Added value:

UserConfirmationRequired = 6,

Type Changed: Intents.INIntentResponse

Modified properties:

-public virtual Foundation.NSUserActivity UserActivity { get; set; }
+public virtual Foundation.NSUserActivity UserActivity { get; }

Type Changed: Intents.INMessageType

Added values:

ActivitySnippet = 23,
Animoji = 22,
File = 24,
Link = 25,
PaymentNote = 21,
PaymentRequest = 20,
PaymentSent = 19,

Type Changed: Intents.INPerson

Added constructor:

public INPerson (INPersonHandle personHandle, Foundation.NSPersonNameComponents nameComponents, string displayName, INImage image, string contactIdentifier, string customIdentifier, bool isMe);

Type Changed: Intents.INPersonSuggestionType

Added value:

None = 0,

Type Changed: Intents.INSearchForMessagesIntent

Added constructor:

public INSearchForMessagesIntent (INPerson[] recipients, INPerson[] senders, string[] searchTerms, INMessageAttributeOptions attributes, INDateComponentsRange dateTimeRange, string[] identifiers, string[] notificationIdentifiers, INSpeakableString[] speakableGroupNames, string[] conversationIdentifiers);

Added properties:

public virtual string[] ConversationIdentifiers { get; }
public virtual INConditionalOperator ConversationIdentifiersOperator { get; }

Type Changed: Intents.INSendMessageRecipientUnsupportedReason

Added values:

NoHandleForLabel = 6,
NoValidHandle = 4,
RequestedHandleInvalid = 5,

Type Changed: Intents.INSpeakableString

Added interface:

Foundation.INSCopying

Added method:

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

New Type: Intents.INParameter

public class INParameter : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public INParameter (Foundation.NSCoder coder);
	protected INParameter (Foundation.NSObjectFlag t);
	protected INParameter (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual ObjCRuntime.Class ParameterClass { get; }
	public virtual string ParameterKeyPath { get; }
	public System.Type ParameterType { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public virtual uint GetIndex (string subKeyPath);
	public static INParameter GetParameter (ObjCRuntime.Class aClass, string keyPath);
	public static INParameter GetParameter (System.Type type, string keyPath);
	public virtual bool IsEqualTo (INParameter parameter);
	public virtual void SetIndex (uint index, string subKeyPath);
}

Namespace MapKit

Type Changed: MapKit.MKMapSnapshot

Added property:

public virtual AppKit.NSAppearance Appearance { get; }

Type Changed: MapKit.MKMapSnapshotOptions

Added property:

public virtual AppKit.NSAppearance Appearance { get; set; }

Type Changed: MapKit.MKMapView

Added event:

public event System.EventHandler DidChangeVisibleRegion;

Type Changed: MapKit.MKMapViewDelegate

Added method:

public virtual void DidChangeVisibleRegion (MKMapView mapView);

Type Changed: MapKit.MKMapViewDelegate_Extensions

Added method:

public static void DidChangeVisibleRegion (this IMKMapViewDelegate This, MKMapView mapView);

Namespace MediaPlayer

New Type: MediaPlayer.AVMediaSelectionGroup_MPNowPlayingInfoLanguageOptionAdditions

public static class AVMediaSelectionGroup_MPNowPlayingInfoLanguageOptionAdditions {
	// methods
	public static MPNowPlayingInfoLanguageOptionGroup CreateNowPlayingInfoLanguageOptionGroup (this AVFoundation.AVMediaSelectionGroup This);
}

New Type: MediaPlayer.AVMediaSelectionOption_MPNowPlayingInfoLanguageOptionAdditions

public static class AVMediaSelectionOption_MPNowPlayingInfoLanguageOptionAdditions {
	// methods
	public static MPNowPlayingInfoLanguageOption CreateNowPlayingInfoLanguageOption (this AVFoundation.AVMediaSelectionOption This);
}

Namespace Metal

Type Changed: Metal.MTLArgumentEncoder_Extensions

Added methods:

public static void SetIndirectCommandBuffer (this IMTLArgumentEncoder This, IMTLIndirectCommandBuffer indirectCommandBuffer, uint index);
public static void SetIndirectCommandBuffers (this IMTLArgumentEncoder This, IMTLIndirectCommandBuffer[] buffers, Foundation.NSRange range);
public static void SetRenderPipelineState (this IMTLArgumentEncoder This, IMTLRenderPipelineState pipeline, uint index);
public static void SetRenderPipelineStates (this IMTLArgumentEncoder This, IMTLRenderPipelineState[] pipelines, Foundation.NSRange range);

Type Changed: Metal.MTLBlitCommandEncoder_Extensions

Added methods:

public static void Copy (this IMTLBlitCommandEncoder This, IMTLIndirectCommandBuffer source, Foundation.NSRange sourceRange, IMTLIndirectCommandBuffer destination, uint destinationIndex);
public static void Optimize (this IMTLBlitCommandEncoder This, IMTLIndirectCommandBuffer indirectCommandBuffer, Foundation.NSRange range);
public static void OptimizeContentsForCpuAccess (this IMTLBlitCommandEncoder This, IMTLTexture texture);
public static void OptimizeContentsForCpuAccess (this IMTLBlitCommandEncoder This, IMTLTexture texture, uint slice, uint level);
public static void OptimizeContentsForGpuAccess (this IMTLBlitCommandEncoder This, IMTLTexture texture);
public static void OptimizeContentsForGpuAccess (this IMTLBlitCommandEncoder This, IMTLTexture texture, uint slice, uint level);
public static void ResetCommands (this IMTLBlitCommandEncoder This, IMTLIndirectCommandBuffer buffer, Foundation.NSRange range);

Type Changed: Metal.MTLCommandBuffer_Extensions

Added methods:

public static IMTLComputeCommandEncoder ComputeCommandEncoderDispatch (this IMTLCommandBuffer This, MTLDispatchType dispatchType);
public static void EncodeSignal (this IMTLCommandBuffer This, IMTLEvent event, ulong value);
public static void EncodeWait (this IMTLCommandBuffer This, IMTLEvent event, ulong value);

Type Changed: Metal.MTLComputeCommandEncoder_Extensions

Added methods:

public static MTLDispatchType GetDispatchType (this IMTLComputeCommandEncoder This);
public static void MemoryBarrier (this IMTLComputeCommandEncoder This, MTLBarrierScope scope);
public static void MemoryBarrier (this IMTLComputeCommandEncoder This, IMTLResource[] resources, uint count);
public static void SetStageInRegion (this IMTLComputeCommandEncoder This, IMTLBuffer indirectBuffer, uint indirectBufferOffset);

Type Changed: Metal.MTLComputePipelineDescriptor

Added property:

public virtual uint MaxTotalThreadsPerThreadgroup { get; set; }

Type Changed: Metal.MTLDataType

Added values:

IndirectCommandBuffer = 80,
RenderPipeline = 78,

Type Changed: Metal.MTLDevice_Extensions

Added methods:

public static IMTLEvent CreateEvent (this IMTLDevice This);
public static IMTLIndirectCommandBuffer CreateIndirectCommandBuffer (this IMTLDevice This, MTLIndirectCommandBufferDescriptor descriptor, uint maxCount, MTLResourceOptions options);
public static IMTLSharedEvent CreateSharedEvent (this IMTLDevice This);
public static IMTLSharedEvent CreateSharedEvent (this IMTLDevice This, MTLSharedEventHandle sharedEventHandle);
public static IMTLTexture CreateSharedTexture (this IMTLDevice This, MTLSharedTextureHandle sharedHandle);
public static IMTLTexture CreateSharedTexture (this IMTLDevice This, MTLTextureDescriptor descriptor);
public static uint GetMaxArgumentBufferSamplerCount (this IMTLDevice This);
public static uint GetMaxBufferLength (this IMTLDevice This);
public static uint GetMinimumTextureBufferAlignment (this IMTLDevice This, MTLPixelFormat format);

Type Changed: Metal.MTLFeatureSet

Added values:

iOS_GPUFamily1_v5 = 12,
iOS_GPUFamily2_v5 = 13,
iOS_GPUFamily3_v4 = 14,
iOS_GPUFamily4_v2 = 15,
iOS_GPUFamily5_v1 = 16,
tvOS_GPUFamily1_v4 = 30004,

Type Changed: Metal.MTLLanguageVersion

Added value:

v2_1 = 131073,

Type Changed: Metal.MTLRenderCommandEncoder_Extensions

Added methods:

public static void ExecuteCommands (this IMTLRenderCommandEncoder This, IMTLIndirectCommandBuffer indirectCommandBuffer, Foundation.NSRange executionRange);
public static void ExecuteCommands (this IMTLRenderCommandEncoder This, IMTLIndirectCommandBuffer indirectCommandbuffer, IMTLBuffer indirectRangeBuffer, uint indirectBufferOffset);
public static void MemoryBarrier (this IMTLRenderCommandEncoder This, MTLBarrierScope scope, MTLRenderStages after, MTLRenderStages before);
public static void MemoryBarrier (this IMTLRenderCommandEncoder This, IMTLResource[] resources, uint count, MTLRenderStages after, MTLRenderStages before);

Type Changed: Metal.MTLRenderPassDepthAttachmentDescriptor

Added property:

public virtual MTLMultisampleDepthResolveFilter DepthResolveFilter { get; set; }

Type Changed: Metal.MTLRenderPassStencilAttachmentDescriptor

Added property:

public virtual MTLMultisampleStencilResolveFilter StencilResolveFilter { get; set; }

Type Changed: Metal.MTLRenderPipelineDescriptor

Added property:

public virtual bool SupportIndirectCommandBuffers { get; set; }

Type Changed: Metal.MTLTextureDescriptor

Added property:

public virtual bool AllowGpuOptimizedContents { get; set; }

Added method:

public static MTLTextureDescriptor CreateTextureBufferDescriptor (MTLPixelFormat pixelFormat, uint width, MTLResourceOptions resourceOptions, MTLTextureUsage usage);

Type Changed: Metal.MTLTextureType

Added values:

k2DMultisampleArray = 8,
kTextureBuffer = 9,

Type Changed: Metal.MTLTexture_Extensions

Added methods:

public static MTLSharedTextureHandle CreateSharedTextureHandle (this IMTLTexture This);
public static bool GetAllowGpuOptimizedContents (this IMTLTexture This);
public static bool GetShareable (this IMTLTexture This);

New Type: Metal.IMTLEvent

public interface IMTLEvent : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual IMTLDevice Device { get; }
	public virtual string Label { get; set; }
}

New Type: Metal.IMTLIndirectCommandBuffer

public interface IMTLIndirectCommandBuffer : IMTLResource, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual uint Size { get; }
	// methods
	public virtual IMTLIndirectRenderCommand GetCommand (uint commandIndex);
	public virtual void Reset (Foundation.NSRange range);
}

New Type: Metal.IMTLIndirectRenderCommand

public interface IMTLIndirectRenderCommand : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DrawIndexedPatches (uint numberOfPatchControlPoints, uint patchStart, uint patchCount, IMTLBuffer patchIndexBuffer, uint patchIndexBufferOffset, IMTLBuffer controlPointIndexBuffer, uint controlPointIndexBufferOffset, uint instanceCount, uint baseInstance, IMTLBuffer buffer, uint offset, uint instanceStride);
	public virtual void DrawIndexedPrimitives (MTLPrimitiveType primitiveType, uint indexCount, MTLIndexType indexType, IMTLBuffer indexBuffer, uint indexBufferOffset, uint instanceCount, nint baseVertex, uint baseInstance);
	public virtual void DrawPatches (uint numberOfPatchControlPoints, uint patchStart, uint patchCount, IMTLBuffer patchIndexBuffer, uint patchIndexBufferOffset, uint instanceCount, uint baseInstance, IMTLBuffer buffer, uint offset, uint instanceStride);
	public virtual void DrawPrimitives (MTLPrimitiveType primitiveType, uint vertexStart, uint vertexCount, uint instanceCount, uint baseInstance);
	public virtual void Reset ();
	public virtual void SetFragmentBuffer (IMTLBuffer buffer, uint offset, uint index);
	public virtual void SetRenderPipelineState (IMTLRenderPipelineState pipelineState);
	public virtual void SetVertexBuffer (IMTLBuffer buffer, uint offset, uint index);
}

New Type: Metal.IMTLSharedEvent

public interface IMTLSharedEvent : IMTLEvent, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual ulong SignaledValue { get; set; }
	// methods
	public virtual MTLSharedEventHandle CreateSharedEventHandle ();
	public virtual void NotifyListener (MTLSharedEventListener listener, ulong atValue, MTLSharedEventNotificationBlock block);
}

New Type: Metal.MTLBarrierScope

[Serializable]
[Flags]
public enum MTLBarrierScope {
	Buffers = 1,
	RenderTargets = 4,
	Textures = 2,
}

New Type: Metal.MTLDispatchType

[Serializable]
public enum MTLDispatchType {
	Concurrent = 1,
	Serial = 0,
}

New Type: Metal.MTLIndirectCommandBufferDescriptor

public class MTLIndirectCommandBufferDescriptor : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public MTLIndirectCommandBufferDescriptor ();
	protected MTLIndirectCommandBufferDescriptor (Foundation.NSObjectFlag t);
	protected MTLIndirectCommandBufferDescriptor (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual MTLIndirectCommandType CommandTypes { get; set; }
	public virtual bool InheritBuffers { get; set; }
	public virtual bool InheritPipelineState { get; set; }
	public virtual uint MaxFragmentBufferBindCount { get; set; }
	public virtual uint MaxVertexBufferBindCount { get; set; }
}

New Type: Metal.MTLIndirectCommandType

[Serializable]
[Flags]
public enum MTLIndirectCommandType {
	Draw = 1,
	DrawIndexed = 2,
	DrawIndexedPatches = 8,
	DrawPatches = 4,
}

New Type: Metal.MTLMultisampleStencilResolveFilter

[Serializable]
public enum MTLMultisampleStencilResolveFilter {
	DepthResolvedSample = 1,
	Sample0 = 0,
}

New Type: Metal.MTLRenderPipelineState_Extensions

public static class MTLRenderPipelineState_Extensions {
	// methods
	public static bool GetSupportIndirectCommandBuffers (this IMTLRenderPipelineState This);
}

New Type: Metal.MTLSharedEventHandle

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

New Type: Metal.MTLSharedEventListener

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

New Type: Metal.MTLSharedEventNotificationBlock

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

New Type: Metal.MTLSharedTextureHandle

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

New Type: Metal.MTLStageInRegionIndirectArguments

public struct MTLStageInRegionIndirectArguments {
	// fields
	public uint StageInOrigin1;
	public uint StageInOrigin2;
	public uint StageInOrigin3;
	public uint StageInSize1;
	public uint StageInSize2;
	public uint StageInSize3;
}

Namespace MetalPerformanceShaders

Type Changed: MetalPerformanceShaders.IMPSCnnConvolutionDataSource

Added interface:

Foundation.INSCopying

Type Changed: MetalPerformanceShaders.MPSCnnConvolutionDataSource

Added interface:

Foundation.INSCopying

Added method:

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

Type Changed: MetalPerformanceShaders.MPSImageDescriptor

Added interface:

Foundation.INSCopying

Added method:

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

Namespace MobileCoreServices

Type Changed: MobileCoreServices.UTType

Added method:

public static bool Equals (Foundation.NSString uti1, Foundation.NSString uti2);

Namespace ModelIO

Type Changed: ModelIO.MDLSkeleton

Added property:

public virtual MDLMatrix4x4Array JointRestTransforms { get; }

Type Changed: ModelIO.MDLTexture

Obsoleted methods:

 [Obsolete ("Use 'CreateTexture' instead.")]
 public static MDLTexture FromBundle (string name);
 [Obsolete ("Use 'CreateTexture' instead.")]
 public static MDLTexture FromBundle (string name, Foundation.NSBundle bundleOrNil);

Added methods:

public static MDLTexture CreateTexture (string name);
public static MDLTexture CreateTexture (string name, Foundation.NSBundle bundleOrNil);
public static MDLTexture CreateTexture (string name, IMDLAssetResolver resolver);

Namespace MultipeerConnectivity

Type Changed: MultipeerConnectivity.MCBrowserViewController

Added interface:

AppKit.INSEditor

Namespace NetworkExtension

Type Changed: NetworkExtension.NWHostEndpoint

Obsoleted constructors:

 [Obsolete ("Use the 'Create' method instead.")]
 public NWHostEndpoint ();

Type Changed: NetworkExtension.NWPath

Obsoleted constructors:

 [Obsolete ("This type is not meant to be user created.")]
 public NWPath ();

Namespace NotificationCenter

Type Changed: NotificationCenter.NCWidgetListViewController

Added interface:

AppKit.INSEditor

Type Changed: NotificationCenter.NCWidgetSearchViewController

Added interface:

AppKit.INSEditor

Namespace ObjCRuntime

Type Changed: ObjCRuntime.AdoptsAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.AvailabilityAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.AvailabilityBaseAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.BindAsAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.BindingImplAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.BlockLiteral

Added method:

public static T GetTarget<T> (IntPtr block);

Type Changed: ObjCRuntime.BlockProxyAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.CategoryAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.Class

Added constructor:

public Class (IntPtr handle, bool owns);

Type Changed: ObjCRuntime.Constants

Modified fields:

-public const string SdkVersion = "10.13";
+public const string SdkVersion = "10.14";
-public const string Version = "4.6.0";
+public const string Version = "5.2.0";

Added fields:

public static const string AdSupportLibrary = "/System/Library/Frameworks/AdSupport.framework/AdSupport";
public static const string NaturalLanguageLibrary = "/System/Library/Frameworks/Frameworks/NaturalLanguage.framework/NaturalLanguage";
public static const string NetworkLibrary = "/System/Library/Frameworks/Network.framework/Network";
public static const string UserNotificationsLibrary = "/System/Library/Frameworks/UserNotifications.framework/UserNotifications";
public static const string VideoSubscriberAccountLibrary = "/System/Library/Frameworks/VideoSubscriberAccount.framework/VideoSubscriberAccount";
public static const string iTunesLibraryLibrary = "/System/Library/Frameworks/iTunesLibrary.framewor/iTunesLibrary";

Type Changed: ObjCRuntime.DelayedRegistrationAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.DelegateProxyAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.DeprecatedAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.DesignatedInitializerAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.IntroducedAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.LinkWithAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.MacAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.MonoNativeFunctionWrapperAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.MonoPInvokeCallbackAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.NativeAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.NoMacAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.NoTVAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.NoWatchAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.NoiOSAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.ObsoletedAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.ReleaseAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.RequiredFrameworkAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.RequiresSuperAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.Runtime

Added method:

public static void ReleaseBlockOnMainThread (IntPtr block);

Type Changed: ObjCRuntime.RuntimeException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: ObjCRuntime.TVAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.ThreadSafeAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.TransientAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.UnavailableAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.UserDelegateTypeAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.WatchAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Type Changed: ObjCRuntime.iOSAttribute

Added interface:

System.Runtime.InteropServices._Attribute

Namespace PdfKit

Type Changed: PdfKit.PdfDestination

Added property:

public static nfloat UnspecifiedValue { get; }

Type Changed: PdfKit.PdfView

Added property:

public virtual bool PageShadowsEnabled { get; set; }

Namespace Photos

Type Changed: Photos.PHProject

Added property:

public virtual bool HasProjectPreview { get; }

Type Changed: Photos.PHProjectChangeRequest

Added methods:

public virtual void RemoveAssets (PHAsset[] assets);
public virtual void SetProjectPreviewImage (AppKit.NSImage previewImage);

New Type: Photos.FigExifCustomRenderedValue

[Serializable]
public enum FigExifCustomRenderedValue {
	Custom = 1,
	HdrImage = 2,
	HdrPlusEV0_EV0Image = 4,
	HdrPlusEV0_HdrImage = 3,
	NotCustom = 0,
	PanoramaImage = 6,
	SdofImage = 7,
	SdofPlusOriginal_OriginalImage = 9,
	SdofPlusOriginal_SdofImage = 8,
}

Namespace PhotosUI

Type Changed: PhotosUI.PHProjectAssetElement

Added properties:

public virtual bool HorizontallyFlipped { get; }
public virtual bool VerticallyFlipped { get; }

Type Changed: PhotosUI.PHProjectExtensionContext

Added methods:

public virtual void ShowEditor (Photos.PHAsset asset);
public virtual Foundation.NSProgress UpdatedProjectInfo (PHProjectInfo existingProjectInfo, System.Action<PHProjectInfo> completionHandler);

Type Changed: PhotosUI.PHProjectExtensionController_Extensions

Added method:

public static IPHProjectTypeDescriptionDataSource GetTypeDescriptionDataSource (this IPHProjectExtensionController This, Foundation.NSString category, IPHProjectTypeDescriptionInvalidator invalidator);

Type Changed: PhotosUI.PHProjectInfo

Added properties:

public virtual bool BrandingEnabled { get; }
public virtual bool PageNumbersEnabled { get; }
public virtual string ProductIdentifier { get; }
public virtual string ThemeIdentifier { get; }

Type Changed: PhotosUI.PHProjectRegionOfInterest

Added property:

public virtual double Quality { get; }

Type Changed: PhotosUI.PHProjectSectionContent

Added property:

public virtual AppKit.NSColor BackgroundColor { get; }

Type Changed: PhotosUI.PHProjectTypeDescription

Added constructors:

public PHProjectTypeDescription (Foundation.NSString projectType, string localizedTitle, Foundation.NSAttributedString localizedAttributedDescription, AppKit.NSImage image, PHProjectTypeDescription[] subtypeDescriptions);
public PHProjectTypeDescription (Foundation.NSString projectType, string localizedTitle, Foundation.NSAttributedString localizedAttributedDescription, AppKit.NSImage image, bool canProvideSubtypes);
public PHProjectTypeDescription (Foundation.NSString projectType, string localizedTitle, string localizedDescription, AppKit.NSImage image, bool canProvideSubtypes);

Added properties:

public virtual bool CanProvideSubtypes { get; }
public virtual Foundation.NSAttributedString LocalizedAttributedDescription { get; }

New Type: PhotosUI.IPHProjectTypeDescriptionDataSource

public interface IPHProjectTypeDescriptionDataSource : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual Foundation.NSAttributedString GetFooterTextForSubtypes (Foundation.NSString projectType);
	public virtual PHProjectTypeDescription[] GetSubtypes (Foundation.NSString projectType);
	public virtual PHProjectTypeDescription GetTypeDescription (Foundation.NSString projectType);
}

New Type: PhotosUI.IPHProjectTypeDescriptionInvalidator

public interface IPHProjectTypeDescriptionInvalidator : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void InvalidateFooterTextForSubtypes (Foundation.NSString projectType);
	public virtual void InvalidateTypeDescription (Foundation.NSString projectType);
}

New Type: PhotosUI.PHProjectCategory

[Serializable]
public enum PHProjectCategory {
	Book = 0,
	Calendar = 1,
	Card = 2,
	Other = 6,
	Prints = 3,
	Slideshow = 4,
	WallDecor = 5,
}

New Type: PhotosUI.PHProjectCategoryExtensions

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

New Type: PhotosUI.PHProjectMapElement

public class PHProjectMapElement : PhotosUI.PHProjectElement, Foundation.INSCoding, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public PHProjectMapElement (Foundation.NSCoder coder);
	protected PHProjectMapElement (Foundation.NSObjectFlag t);
	protected PHProjectMapElement (IntPtr handle);
	// properties
	public virtual double Altitude { get; }
	public virtual MapKit.IMKAnnotation[] Annotations { get; }
	public virtual CoreLocation.CLLocationCoordinate2D CenterCoordinate { get; }
	public override IntPtr ClassHandle { get; }
	public virtual double Heading { get; }
	public virtual MapKit.MKMapType MapType { get; }
	public virtual nfloat Pitch { get; }
	// methods
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: PhotosUI.PHProjectTypeDescriptionDataSource

public abstract class PHProjectTypeDescriptionDataSource : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, IPHProjectTypeDescriptionDataSource, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected PHProjectTypeDescriptionDataSource ();
	protected PHProjectTypeDescriptionDataSource (Foundation.NSObjectFlag t);
	protected PHProjectTypeDescriptionDataSource (IntPtr handle);
	// methods
	public virtual Foundation.NSAttributedString GetFooterTextForSubtypes (Foundation.NSString projectType);
	public virtual PHProjectTypeDescription[] GetSubtypes (Foundation.NSString projectType);
	public virtual PHProjectTypeDescription GetTypeDescription (Foundation.NSString projectType);
	public virtual void WillDiscardDataSource ();
}

New Type: PhotosUI.PHProjectTypeDescriptionDataSource_Extensions

public static class PHProjectTypeDescriptionDataSource_Extensions {
	// methods
	public static void WillDiscardDataSource (this IPHProjectTypeDescriptionDataSource This);
}

Namespace PrintCore

Type Changed: PrintCore.PMPrintException

Added interface:

System.Runtime.InteropServices._Exception

Namespace QuickLookUI

Type Changed: QuickLookUI.QLPreviewPanel

Added interfaces:

AppKit.INSMenuItemValidation
AppKit.INSUserInterfaceValidations

Namespace SafariServices

Type Changed: SafariServices.SFSafariExtensionViewController

Added interface:

AppKit.INSEditor

Namespace SceneKit

Type Changed: SceneKit.SCNPhysicsBody

Added properties:

public virtual nfloat AngularRestingThreshold { get; set; }
public virtual SCNVector3 CenterOfMassOffset { get; set; }
public virtual nfloat ContinuousCollisionDetectionThreshold { get; set; }
public virtual nfloat LinearRestingThreshold { get; set; }

Added method:

public virtual void SetResting (bool resting);

Namespace Security

Type Changed: Security.SecCertificate

Added method:

public SecKey GetKey ();

Type Changed: Security.SecTrust

Added method:

public bool Evaluate (out Foundation.NSError error);

Type Changed: Security.SecurityException

Added interface:

System.Runtime.InteropServices._Exception

Type Changed: Security.SslCipherSuite

Added values:

SSL_NO_SUCH_CIPHERSUITE = 65535,
SSL_RSA_WITH_3DES_EDE_CBC_MD5 = 65411,
SSL_RSA_WITH_DES_CBC_MD5 = 65410,
SSL_RSA_WITH_IDEA_CBC_MD5 = 65409,
SSL_RSA_WITH_RC2_CBC_MD5 = 65408,
TLS_DHE_PSK_WITH_AES_128_CBC_SHA256 = 178,
TLS_DHE_PSK_WITH_AES_128_GCM_SHA256 = 170,
TLS_DHE_PSK_WITH_AES_256_CBC_SHA384 = 179,
TLS_DHE_PSK_WITH_AES_256_GCM_SHA384 = 171,
TLS_DHE_PSK_WITH_NULL_SHA256 = 180,
TLS_DHE_PSK_WITH_NULL_SHA384 = 181,
TLS_DH_DSS_WITH_AES_256_GCM_SHA384 = 165,
TLS_EMPTY_RENEGOTIATION_INFO_SCSV = 255,
TLS_PSK_WITH_AES_128_GCM_SHA256 = 168,
TLS_PSK_WITH_AES_256_GCM_SHA384 = 169,
TLS_RSA_PSK_WITH_AES_128_CBC_SHA256 = 182,
TLS_RSA_PSK_WITH_AES_128_GCM_SHA256 = 172,
TLS_RSA_PSK_WITH_AES_256_CBC_SHA384 = 183,
TLS_RSA_PSK_WITH_AES_256_GCM_SHA384 = 173,
TLS_RSA_PSK_WITH_NULL_SHA256 = 184,
TLS_RSA_PSK_WITH_NULL_SHA384 = 185,

New Type: Security.SecCertificate2

public class SecCertificate2 : CoreFoundation.NativeObject, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public SecCertificate2 (SecCertificate certificate);
	public SecCertificate2 (IntPtr handle, bool owns);
	// properties
	public SecCertificate Certificate { get; }
}

New Type: Security.SecIdentity2

public class SecIdentity2 : CoreFoundation.NativeObject, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public SecIdentity2 (SecIdentity identity);
	public SecIdentity2 (SecIdentity identity, SecCertificate[] certificates);
	public SecIdentity2 (IntPtr handle, bool owns);
	// properties
	public SecCertificate[] Certificates { get; }
	public SecIdentity Identity { get; }
}

New Type: Security.SecProtocolChallenge

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

New Type: Security.SecProtocolChallengeComplete

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

New Type: Security.SecProtocolKeyUpdate

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

New Type: Security.SecProtocolMetadata

public class SecProtocolMetadata : CoreFoundation.NativeObject, ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public bool EarlyDataAccepted { get; }
	public SslCipherSuite NegotiatedCipherSuite { get; }
	public string NegotiatedProtocol { get; }
	public SslProtocol NegotiatedProtocolVersion { get; }
	public CoreFoundation.DispatchData PeerPublicKey { get; }
	// methods
	public static bool ChallengeParametersAreEqual (SecProtocolMetadata metadataA, SecProtocolMetadata metadataB);
	public static bool PeersAreEqual (SecProtocolMetadata metadataA, SecProtocolMetadata metadataB);
	public void SetCertificateChainForPeerHandler (System.Action<SecCertificate> callback);
	public void SetDistinguishedNamesForPeerHandler (System.Action<CoreFoundation.DispatchData> callback);
	public void SetOcspResponseForPeerHandler (System.Action<CoreFoundation.DispatchData> callback);
	public void SetSignatureAlgorithmsForPeerHandler (System.Action<ushort> callback);
}

New Type: Security.SecProtocolOptions

public class SecProtocolOptions : CoreFoundation.NativeObject, ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public void AddPreSharedKey (CoreFoundation.DispatchData parameters);
	public void AddTlsApplicationProtocol (string applicationProtocol);
	public void AddTlsCipherSuite (SslCipherSuite cipherSuite);
	public void AddTlsCipherSuiteGroup (SslCipherSuiteGroup cipherSuiteGroup);
	public void SetKeyUpdateCallback (SecProtocolKeyUpdate keyUpdate, CoreFoundation.DispatchQueue keyUpdateQueue);
	public void SetLocalIdentity (SecIdentity2 identity);
	public void SetPeerAuthenticationRequired (bool peerAuthenticationRequired);
	public void SetTlsDiffieHellmanParameters (CoreFoundation.DispatchData parameters);
	public void SetTlsFalseStartEnabled (bool falseStartEnabled);
	public void SetTlsIsFallbackAttempt (bool isFallbackAttempt);
	public void SetTlsMaxVersion (SslProtocol protocol);
	public void SetTlsMinVersion (SslProtocol protocol);
	public void SetTlsOcspEnabled (bool ocspEnabled);
	public void SetTlsRenegotiationEnabled (bool renegotiationEnabled);
	public void SetTlsResumptionEnabled (bool resumptionEnabled);
	public void SetTlsServerName (string serverName);
	public void SetTlsSignCertificateTimestampEnabled (bool sctEnabled);
	public void SetTlsTicketsEnabled (bool ticketsEnabled);
}

New Type: Security.SecProtocolVerify

public sealed delegate SecProtocolVerify : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public SecProtocolVerify (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (SecProtocolMetadata metadata, SecTrust2 trust, SecProtocolVerifyComplete verifyComplete, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (SecProtocolMetadata metadata, SecTrust2 trust, SecProtocolVerifyComplete verifyComplete);
}

New Type: Security.SecProtocolVerifyComplete

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

New Type: Security.SecTrust2

public class SecTrust2 : CoreFoundation.NativeObject, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public SecTrust2 (SecTrust trust);
	public SecTrust2 (IntPtr handle, bool owns);
	// properties
	public SecTrust Trust { get; }
}

New Type: Security.SslCipherSuiteGroup

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

Namespace Social

Type Changed: Social.SLComposeServiceViewController

Added interface:

AppKit.INSEditor

Namespace SpriteKit

Type Changed: SpriteKit.SK3DNode

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKAction

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKAttribute

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKAttributeValue

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKAudioNode

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKCameraNode

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKConstraint

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKCropNode

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKEffectNode

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKEmitterNode

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKFieldNode

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKKeyframeSequence

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKLabelNode

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKLightNode

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKMutableTexture

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKNode

Added interface:

Foundation.INSSecureCoding

Added methods:

public static SKNode Create (string filename, Foundation.NSSet<ObjCRuntime.Class> classes, out Foundation.NSError error);
public static SKNode Create (string filename, System.Type[] types, out Foundation.NSError error);

Type Changed: SpriteKit.SKPhysicsBody

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKPhysicsJoint

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKPhysicsJointFixed

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKPhysicsJointLimit

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKPhysicsJointPin

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKPhysicsJointSliding

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKPhysicsJointSpring

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKPhysicsWorld

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKRange

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKReachConstraints

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKReferenceNode

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKRegion

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKScene

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKShader

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKShapeNode

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKSpriteNode

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKTexture

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKTextureAtlas

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKTileDefinition

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKTileGroup

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKTileGroupRule

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKTileMapNode

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKTileSet

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKTransformNode

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKUniform

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKVideoNode

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKView

Added interface:

Foundation.INSSecureCoding

Added method:

public virtual void EncodeTo (Foundation.NSCoder encoder);

Type Changed: SpriteKit.SKWarpGeometry

Added interface:

Foundation.INSSecureCoding

Type Changed: SpriteKit.SKWarpGeometryGrid

Added interface:

Foundation.INSSecureCoding

Namespace StoreKit

Type Changed: StoreKit.SKDownload

Obsoleted properties:

 [Obsolete ("Use 'State' instead.")]
 public virtual SKDownloadState DownloadState { get; }

Added properties:

public virtual SKDownloadState State { get; }
public static double TimeRemainingUnknown { get; }

Type Changed: StoreKit.SKMutablePayment

Added property:

public virtual bool SimulatesAskToBuyInSandbox { get; set; }

Type Changed: StoreKit.SKPayment

Added property:

public virtual bool SimulatesAskToBuyInSandbox { get; set; }

Type Changed: StoreKit.SKProduct

Added properties:

public virtual Foundation.NSNumber[] ContentLengths { get; }
public virtual string ContentVersion { get; }
public virtual string SubscriptionGroupIdentifier { get; }

Type Changed: StoreKit.SKReceiptRefreshRequest

Added method:

public static void TerminateForInvalidReceipt ();

New Type: StoreKit.SKStoreReviewController

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

Namespace SystemConfiguration

Type Changed: SystemConfiguration.SystemConfigurationException

Added interface:

System.Runtime.InteropServices._Exception

Namespace VideoToolbox

Type Changed: VideoToolbox.VTCompressionProperties

Added properties:

public bool? AllowOpenGop { get; set; }
public bool? MaximizePowerEfficiency { get; set; }

Type Changed: VideoToolbox.VTCompressionPropertyKey

Added properties:

public static Foundation.NSString AllowOpenGop { get; }
public static Foundation.NSString MaximizePowerEfficiency { get; }

Type Changed: VideoToolbox.VTDecompressionProperties

Added property:

public bool? MaximizePowerEfficiency { get; set; }

Type Changed: VideoToolbox.VTDecompressionPropertyKey

Added property:

public static Foundation.NSString MaximizePowerEfficiency { get; }

Namespace Vision

Type Changed: Vision.VNBarcodeObservation

Added interface:

IVNRequestRevisionProviding

Added method:

public static VNBarcodeObservation FromBoundingBox (VNBarcodeObservationRequestRevision requestRevision, CoreGraphics.CGRect boundingBox);

Type Changed: Vision.VNClassificationObservation

Added interface:

IVNRequestRevisionProviding

Type Changed: Vision.VNCoreMLFeatureValueObservation

Added interface:

IVNRequestRevisionProviding

Type Changed: Vision.VNCoreMLRequest

Added properties:

public static VNCoreMLRequestRevision CurrentRevision { get; }
public static VNCoreMLRequestRevision DefaultRevision { get; }
public virtual VNCoreMLRequestRevision Revision { get; set; }
public static VNCoreMLRequestRevision[] SupportedRevisions { get; }
public static Foundation.NSIndexSet WeakSupportedRevisions { get; }

Type Changed: Vision.VNDetectBarcodesRequest

Added properties:

public static VNDetectBarcodesRequestRevision CurrentRevision { get; }
public static VNDetectBarcodesRequestRevision DefaultRevision { get; }
public virtual VNDetectBarcodesRequestRevision Revision { get; set; }
public static VNDetectBarcodesRequestRevision[] SupportedRevisions { get; }
public static Foundation.NSIndexSet WeakSupportedRevisions { get; }

Type Changed: Vision.VNDetectFaceLandmarksRequest

Added properties:

public static VNDetectFaceLandmarksRequestRevision CurrentRevision { get; }
public static VNDetectFaceLandmarksRequestRevision DefaultRevision { get; }
public virtual VNDetectFaceLandmarksRequestRevision Revision { get; set; }
public static VNDetectFaceLandmarksRequestRevision[] SupportedRevisions { get; }
public static Foundation.NSIndexSet WeakSupportedRevisions { get; }

Type Changed: Vision.VNDetectFaceRectanglesRequest

Added properties:

public static VNDetectFaceRectanglesRequestRevision CurrentRevision { get; }
public static VNDetectFaceRectanglesRequestRevision DefaultRevision { get; }
public virtual VNDetectFaceRectanglesRequestRevision Revision { get; set; }
public static VNDetectFaceRectanglesRequestRevision[] SupportedRevisions { get; }
public static Foundation.NSIndexSet WeakSupportedRevisions { get; }

Type Changed: Vision.VNDetectHorizonRequest

Added properties:

public static VNDetectHorizonRequestRevision CurrentRevision { get; }
public static VNDetectHorizonRequestRevision DefaultRevision { get; }
public virtual VNDetectHorizonRequestRevision Revision { get; set; }
public static VNDetectHorizonRequestRevision[] SupportedRevisions { get; }
public static Foundation.NSIndexSet WeakSupportedRevisions { get; }

Type Changed: Vision.VNDetectRectanglesRequest

Added properties:

public static VNDetectRectanglesRequestRevision CurrentRevision { get; }
public static VNDetectRectanglesRequestRevision DefaultRevision { get; }
public virtual VNDetectRectanglesRequestRevision Revision { get; set; }
public static VNDetectRectanglesRequestRevision[] SupportedRevisions { get; }
public static Foundation.NSIndexSet WeakSupportedRevisions { get; }

Type Changed: Vision.VNDetectTextRectanglesRequest

Added properties:

public static VNDetectTextRectanglesRequestRevision CurrentRevision { get; }
public static VNDetectTextRectanglesRequestRevision DefaultRevision { get; }
public virtual VNDetectTextRectanglesRequestRevision Revision { get; set; }
public static VNDetectTextRectanglesRequestRevision[] SupportedRevisions { get; }
public static Foundation.NSIndexSet WeakSupportedRevisions { get; }

Type Changed: Vision.VNDetectedObjectObservation

Added interface:

IVNRequestRevisionProviding

Added method:

public static VNDetectedObjectObservation FromBoundingBox (VNDetectedObjectObservationRequestRevision requestRevision, CoreGraphics.CGRect boundingBox);

Type Changed: Vision.VNErrorCode

Added value:

UnsupportedRevision = 16,

Type Changed: Vision.VNFaceObservation

Added interface:

IVNRequestRevisionProviding

Added properties:

public virtual nfloat? Roll { get; }
public virtual nfloat? Yaw { get; }

Added methods:

public static VNFaceObservation FromBoundingBox (VNFaceObservationRequestRevision requestRevision, CoreGraphics.CGRect boundingBox);
public static VNFaceObservation FromBoundingBox (VNFaceObservationRequestRevision requestRevision, CoreGraphics.CGRect boundingBox, nfloat? roll, nfloat? yaw);

Type Changed: Vision.VNHomographicImageRegistrationRequest

Added properties:

public static VNHomographicImageRegistrationRequestRevision CurrentRevision { get; }
public static VNHomographicImageRegistrationRequestRevision DefaultRevision { get; }
public virtual VNHomographicImageRegistrationRequestRevision Revision { get; set; }
public static VNHomographicImageRegistrationRequestRevision[] SupportedRevisions { get; }
public static Foundation.NSIndexSet WeakSupportedRevisions { get; }

Type Changed: Vision.VNHorizonObservation

Added interface:

IVNRequestRevisionProviding

Type Changed: Vision.VNImageAlignmentObservation

Added interface:

IVNRequestRevisionProviding

Type Changed: Vision.VNImageHomographicAlignmentObservation

Added interface:

IVNRequestRevisionProviding

Type Changed: Vision.VNImageTranslationAlignmentObservation

Added interface:

IVNRequestRevisionProviding

Type Changed: Vision.VNObservation

Added interface:

IVNRequestRevisionProviding

Added property:

public virtual VNRequestRevision RequestRevision { get; }

Type Changed: Vision.VNPixelBufferObservation

Added interface:

IVNRequestRevisionProviding

Type Changed: Vision.VNRectangleObservation

Added interface:

IVNRequestRevisionProviding

Added method:

public static VNRectangleObservation FromBoundingBox (VNRectangleObservationRequestRevision requestRevision, CoreGraphics.CGRect boundingBox);

Type Changed: Vision.VNTextObservation

Modified base type:

-Vision.VNDetectedObjectObservation
+Vision.VNRectangleObservation

Added interface:

IVNRequestRevisionProviding

Added method:

public static VNTextObservation FromBoundingBox (VNTextObservationRequestRevision requestRevision, CoreGraphics.CGRect boundingBox);

Type Changed: Vision.VNTrackObjectRequest

Added properties:

public static VNTrackObjectRequestRevision CurrentRevision { get; }
public static VNTrackObjectRequestRevision DefaultRevision { get; }
public virtual VNTrackObjectRequestRevision Revision { get; set; }
public static VNTrackObjectRequestRevision[] SupportedRevisions { get; }
public static Foundation.NSIndexSet WeakSupportedRevisions { get; }

Type Changed: Vision.VNTrackRectangleRequest

Added properties:

public static VNTrackRectangleRequestRevision CurrentRevision { get; }
public static VNTrackRectangleRequestRevision DefaultRevision { get; }
public virtual VNTrackRectangleRequestRevision Revision { get; set; }
public static VNTrackRectangleRequestRevision[] SupportedRevisions { get; }
public static Foundation.NSIndexSet WeakSupportedRevisions { get; }

Type Changed: Vision.VNTranslationalImageRegistrationRequest

Added properties:

public static VNTranslationalImageRegistrationRequestRevision CurrentRevision { get; }
public static VNTranslationalImageRegistrationRequestRevision DefaultRevision { get; }
public static VNTranslationalImageRegistrationRequestRevision[] SupportedRevisions { get; }
public static Foundation.NSIndexSet WeakSupportedRevisions { get; }

New Type: Vision.IVNRequestRevisionProviding

public interface IVNRequestRevisionProviding : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual VNRequestRevision RequestRevision { get; }
}

New Type: Vision.VNBarcodeObservationRequestRevision

[Serializable]
public enum VNBarcodeObservationRequestRevision {
	One = 1,
	Two = 2,
	Unspecified = 0,
}

New Type: Vision.VNCoreMLRequestRevision

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

New Type: Vision.VNDetectBarcodesRequestRevision

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

New Type: Vision.VNDetectFaceLandmarksRequestRevision

[Serializable]
public enum VNDetectFaceLandmarksRequestRevision {
	One = 1,
	Two = 2,
	Unspecified = 0,
}

New Type: Vision.VNDetectFaceRectanglesRequestRevision

[Serializable]
public enum VNDetectFaceRectanglesRequestRevision {
	One = 1,
	Two = 2,
	Unspecified = 0,
}

New Type: Vision.VNDetectHorizonRequestRevision

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

New Type: Vision.VNDetectRectanglesRequestRevision

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

New Type: Vision.VNDetectTextRectanglesRequestRevision

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

New Type: Vision.VNDetectedObjectObservationRequestRevision

[Serializable]
public enum VNDetectedObjectObservationRequestRevision {
	One = 1,
	Two = 2,
	Unspecified = 0,
}

New Type: Vision.VNFaceObservationRequestRevision

[Serializable]
public enum VNFaceObservationRequestRevision {
	One = 1,
	Two = 2,
	Unspecified = 0,
}

New Type: Vision.VNHomographicImageRegistrationRequestRevision

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

New Type: Vision.VNRecognizedObjectObservation

public class VNRecognizedObjectObservation : Vision.VNDetectedObjectObservation, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, IVNRequestRevisionProviding {
	// constructors
	public VNRecognizedObjectObservation (Foundation.NSCoder coder);
	protected VNRecognizedObjectObservation (Foundation.NSObjectFlag t);
	protected VNRecognizedObjectObservation (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual VNClassificationObservation[] Labels { get; }
	// methods
	public static VNRecognizedObjectObservation FromBoundingBox (CoreGraphics.CGRect boundingBox);
	public static VNRecognizedObjectObservation FromBoundingBox (VNRecognizedObjectObservationRequestRevision requestRevision, CoreGraphics.CGRect boundingBox);
}

New Type: Vision.VNRecognizedObjectObservationRequestRevision

[Serializable]
public enum VNRecognizedObjectObservationRequestRevision {
	One = 1,
	Two = 2,
	Unspecified = 0,
}

New Type: Vision.VNRectangleObservationRequestRevision

[Serializable]
public enum VNRectangleObservationRequestRevision {
	One = 1,
	Two = 2,
	Unspecified = 0,
}

New Type: Vision.VNRequestRevision

[Serializable]
public enum VNRequestRevision {
	One = 1,
	Two = 2,
	Unspecified = 0,
}

New Type: Vision.VNTextObservationRequestRevision

[Serializable]
public enum VNTextObservationRequestRevision {
	One = 1,
	Two = 2,
	Unspecified = 0,
}

New Type: Vision.VNTrackObjectRequestRevision

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

New Type: Vision.VNTrackRectangleRequestRevision

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

New Type: Vision.VNTranslationalImageRegistrationRequestRevision

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

New Namespace AdSupport

New Type: AdSupport.ASIdentifierManager

public class ASIdentifierManager : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected ASIdentifierManager (Foundation.NSObjectFlag t);
	protected ASIdentifierManager (IntPtr handle);
	// properties
	public virtual Foundation.NSUuid AdvertisingIdentifier { get; }
	public override IntPtr ClassHandle { get; }
	public virtual bool IsAdvertisingTrackingEnabled { get; }
	public static ASIdentifierManager SharedManager { get; }
	// methods
	public virtual void ClearAdvertisingIdentifier ();
}

New Namespace NaturalLanguage

New Type: NaturalLanguage.NLLanguage

[Serializable]
public enum NLLanguage {
	Amharic = 2,
	Arabic = 3,
	Armenian = 4,
	Bengali = 5,
	Bulgarian = 6,
	Burmese = 7,
	Catalan = 8,
	Cherokee = 9,
	Croatian = 10,
	Czech = 11,
	Danish = 12,
	Dutch = 13,
	English = 14,
	Finnish = 15,
	French = 16,
	Georgian = 17,
	German = 18,
	Greek = 19,
	Gujarati = 20,
	Hebrew = 21,
	Hindi = 22,
	Hungarian = 23,
	Icelandic = 24,
	Indonesian = 25,
	Italian = 26,
	Japanese = 27,
	Kannada = 28,
	Khmer = 29,
	Korean = 30,
	Lao = 31,
	Malay = 32,
	Malayalam = 33,
	Marathi = 34,
	Mongolian = 35,
	Norwegian = 36,
	Oriya = 37,
	Persian = 38,
	Polish = 39,
	Portuguese = 40,
	Punjabi = 41,
	Romanian = 42,
	Russian = 43,
	SimplifiedChinese = 44,
	Sinhalese = 45,
	Slovak = 46,
	Spanish = 47,
	Swedish = 48,
	Tamil = 49,
	Telugu = 50,
	Thai = 51,
	Tibetan = 52,
	TraditionalChinese = 53,
	Turkish = 54,
	Ukrainian = 55,
	Undetermined = 1,
	Unevaluated = 0,
	Urdu = 56,
	Vietnamese = 57,
}

New Type: NaturalLanguage.NLLanguageExtensions

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

New Type: NaturalLanguage.NLLanguageRecognizer

public class NLLanguageRecognizer : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NLLanguageRecognizer ();
	protected NLLanguageRecognizer (Foundation.NSObjectFlag t);
	protected NLLanguageRecognizer (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public NLLanguage DominantLanguage { get; }
	public virtual NLLanguage[] LanguageConstraints { get; set; }
	public System.Collections.Generic.Dictionary<NLLanguage,System.Double> LanguageHints { get; set; }
	public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSNumber> NativeLanguageHints { get; set; }
	// methods
	public static NLLanguage GetDominantLanguage (string string);
	public System.Collections.Generic.Dictionary<NLLanguage,System.Double> GetLanguageHypotheses (uint maxHypotheses);
	public virtual Foundation.NSDictionary<Foundation.NSString,Foundation.NSNumber> GetNativeLanguageHypotheses (uint maxHypotheses);
	public virtual void Process (string string);
	public virtual void Reset ();
}

New Type: NaturalLanguage.NLModel

public class NLModel : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NLModel (Foundation.NSObjectFlag t);
	protected NLModel (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual NLModelConfiguration Configuration { get; }
	// methods
	public static NLModel Create (CoreML.MLModel mlModel, out Foundation.NSError error);
	public static NLModel Create (Foundation.NSUrl url, out Foundation.NSError error);
	public virtual string GetPredictedLabel (string string);
	public virtual string[] GetPredictedLabels (string[] tokens);
}

New Type: NaturalLanguage.NLModelConfiguration

public class NLModelConfiguration : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public NLModelConfiguration ();
	public NLModelConfiguration (Foundation.NSCoder coder);
	protected NLModelConfiguration (Foundation.NSObjectFlag t);
	protected NLModelConfiguration (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual NLLanguage Language { get; }
	public virtual uint Revision { get; }
	public virtual NLModelType Type { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public static uint GetCurrentRevision (NLModelType type);
	public static Foundation.NSIndexSet GetSupportedRevisions (NLModelType type);
}

New Type: NaturalLanguage.NLModelType

[Serializable]
public enum NLModelType {
	Classifier = 0,
	Sequence = 1,
}

New Type: NaturalLanguage.NLTag

public static class NLTag {
	// properties
	public static Foundation.NSString Adjective { get; }
	public static Foundation.NSString Adverb { get; }
	public static Foundation.NSString Classifier { get; }
	public static Foundation.NSString CloseParenthesis { get; }
	public static Foundation.NSString CloseQuote { get; }
	public static Foundation.NSString Conjunction { get; }
	public static Foundation.NSString Dash { get; }
	public static Foundation.NSString Determiner { get; }
	public static Foundation.NSString Idiom { get; }
	public static Foundation.NSString Interjection { get; }
	public static Foundation.NSString Noun { get; }
	public static Foundation.NSString Number { get; }
	public static Foundation.NSString OpenParenthesis { get; }
	public static Foundation.NSString OpenQuote { get; }
	public static Foundation.NSString OrganizationName { get; }
	public static Foundation.NSString Other { get; }
	public static Foundation.NSString OtherPunctuation { get; }
	public static Foundation.NSString OtherWhitespace { get; }
	public static Foundation.NSString OtherWord { get; }
	public static Foundation.NSString ParagraphBreak { get; }
	public static Foundation.NSString Particle { get; }
	public static Foundation.NSString PersonalName { get; }
	public static Foundation.NSString PlaceName { get; }
	public static Foundation.NSString Preposition { get; }
	public static Foundation.NSString Pronoun { get; }
	public static Foundation.NSString Punctuation { get; }
	public static Foundation.NSString SentenceTerminator { get; }
	public static Foundation.NSString Verb { get; }
	public static Foundation.NSString Whitespace { get; }
	public static Foundation.NSString Word { get; }
	public static Foundation.NSString WordJoiner { get; }
}

New Type: NaturalLanguage.NLTagScheme

[Serializable]
public enum NLTagScheme {
	Language = 5,
	Lemma = 4,
	LexicalClass = 1,
	NameType = 2,
	NameTypeOrLexicalClass = 3,
	Script = 6,
	TokenType = 0,
}

New Type: NaturalLanguage.NLTagSchemeExtensions

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

New Type: NaturalLanguage.NLTagger

public class NLTagger : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NLTagger (Foundation.NSObjectFlag t);
	public NLTagger (Foundation.NSString[] tagSchemes);
	public NLTagger (NLTagScheme[] tagSchemes);
	protected NLTagger (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public NLLanguage DominantLanguage { get; }
	public virtual string String { get; set; }
	public NLTagScheme[] TagSchemes { get; }
	// methods
	public virtual void EnumerateTags (Foundation.NSRange range, NLTokenUnit unit, Foundation.NSString scheme, NLTaggerOptions options, NLTaggerEnumerateTagsContinuationHandler handler);
	public void EnumerateTags (Foundation.NSRange range, NLTokenUnit unit, NLTagScheme scheme, NLTaggerOptions options, NLTaggerEnumerateTagsContinuationHandler handler);
	public static Foundation.NSString[] GetAvailableTagSchemes (NLTokenUnit unit, Foundation.NSString language);
	public static NLTagScheme[] GetAvailableTagSchemes (NLTokenUnit unit, NLLanguage language);
	public virtual NLModel[] GetModels (Foundation.NSString tagScheme);
	public NLModel[] GetModels (NLTagScheme tagScheme);
	public virtual Foundation.NSString GetTag (uint characterIndex, NLTokenUnit unit, Foundation.NSString scheme, out Foundation.NSRange tokenRange);
	public Foundation.NSString GetTag (uint characterIndex, NLTokenUnit unit, NLTagScheme scheme, out Foundation.NSRange tokenRange);
	public virtual Foundation.NSString[] GetTags (Foundation.NSRange range, NLTokenUnit unit, Foundation.NSString scheme, NLTaggerOptions options, out Foundation.NSValue[] tokenRanges);
	public Foundation.NSString[] GetTags (Foundation.NSRange range, NLTokenUnit unit, NLTagScheme scheme, NLTaggerOptions options, out Foundation.NSValue[] tokenRanges);
	public virtual Foundation.NSRange GetTokenRange (uint characterIndex, Foundation.NSString unit);
	public virtual void SetLanguage (Foundation.NSString language, Foundation.NSRange range);
	public void SetLanguage (NLLanguage language, Foundation.NSRange range);
	public virtual void SetModels (NLModel[] models, Foundation.NSString tagScheme);
	public void SetModels (NLModel[] models, NLTagScheme tagScheme);
	public virtual void SetOrthography (Foundation.NSOrthography orthography, Foundation.NSRange range);
}

New Type: NaturalLanguage.NLTaggerEnumerateTagsContinuationHandler

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

New Type: NaturalLanguage.NLTaggerOptions

[Serializable]
[Flags]
public enum NLTaggerOptions {
	JoinContractions = 32,
	JoinNames = 16,
	OmitOther = 8,
	OmitPunctuation = 2,
	OmitWhitespace = 4,
	OmitWords = 1,
}

New Type: NaturalLanguage.NLTokenUnit

[Serializable]
public enum NLTokenUnit {
	Document = 3,
	Paragraph = 2,
	Sentence = 1,
	Word = 0,
}

New Type: NaturalLanguage.NLTokenizer

public class NLTokenizer : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected NLTokenizer (Foundation.NSObjectFlag t);
	public NLTokenizer (NLTokenUnit unit);
	protected NLTokenizer (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string String { get; set; }
	public virtual NLTokenUnit Unit { get; }
	// methods
	public virtual void EnumerateTokens (Foundation.NSRange range, NLTokenizerEnumerateContinuationHandler handler);
	public virtual Foundation.NSRange GetTokenRange (uint characterIndex);
	public virtual Foundation.NSValue[] GetTokens (Foundation.NSRange range);
	public void SetLanguage (NLLanguage language);
}

New Type: NaturalLanguage.NLTokenizerAttributes

[Serializable]
[Flags]
public enum NLTokenizerAttributes {
	Emoji = 4,
	Numeric = 1,
	Symbolic = 2,
}

New Type: NaturalLanguage.NLTokenizerEnumerateContinuationHandler

public sealed delegate NLTokenizerEnumerateContinuationHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public NLTokenizerEnumerateContinuationHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (Foundation.NSRange tokenRange, NLTokenizerAttributes flags, out bool stop, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (out bool stop, System.IAsyncResult result);
	public virtual void Invoke (Foundation.NSRange tokenRange, NLTokenizerAttributes flags, out bool stop);
}

New Namespace Network

New Type: Network.NWAdvertiseDescriptor

public class NWAdvertiseDescriptor : CoreFoundation.NativeObject, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public NWAdvertiseDescriptor (IntPtr handle, bool owns);
	// properties
	public bool NoAutoRename { get; set; }
	// methods
	public static NWAdvertiseDescriptor CreateBonjourService (string name, string type, string domain);
	public void SetTxtRecord (string txt);
}

New Type: Network.NWConnection

public class NWConnection : CoreFoundation.NativeObject, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public NWConnection (NWEndpoint endpoint, NWParameters parameters);
	public NWConnection (IntPtr handle, bool owns);
	// properties
	public NWPath CurrentPath { get; }
	public string Description { get; }
	public NWEndpoint Endpoint { get; }
	public uint MaximumDatagramSize { get; }
	public NWParameters Parameters { get; }
	// methods
	public void Batch (System.Action method);
	public void Cancel ();
	public void CancelCurrentEndpoint ();
	public void ForceCancel ();
	public NWProtocolMetadata GetProtocolMetadata (NWProtocolDefinition definition);
	public void Receive (uint minimumIncompleteLength, uint maximumLength, NWConnectionReceiveCompletion callback);
	public void ReceiveData (uint minimumIncompleteLength, uint maximumLength, NWConnectionReceiveDispatchDataCompletion callback);
	public void ReceiveMessage (NWConnectionReceiveCompletion callback);
	public void ReceiveMessageData (NWConnectionReceiveDispatchDataCompletion callback);
	public void Restart ();
	public void Send (CoreFoundation.DispatchData buffer, NWContentContext context, bool isComplete, System.Action<NWError> callback);
	public void Send (byte[] buffer, NWContentContext context, bool isComplete, System.Action<NWError> callback);
	public void Send (byte[] buffer, int start, int length, NWContentContext context, bool isComplete, System.Action<NWError> callback);
	public void SendIdempotent (CoreFoundation.DispatchData buffer, NWContentContext context, bool isComplete);
	public void SendIdempotent (byte[] buffer, NWContentContext context, bool isComplete);
	public void SetBetterPathAvailableHandler (System.Action<bool> callback);
	public void SetBooleanChangeHandler (System.Action<bool> callback);
	public void SetPathChangedHandler (System.Action<NWPath> callback);
	public void SetQueue (CoreFoundation.DispatchQueue queue);
	public void SetStateChangeHandler (System.Action<NWConnectionState,Network.NWError> stateHandler);
	public void Start ();
}

New Type: Network.NWConnectionReceiveCompletion

public sealed delegate NWConnectionReceiveCompletion : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public NWConnectionReceiveCompletion (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (IntPtr data, uint dataSize, NWContentContext context, bool isComplete, NWError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (IntPtr data, uint dataSize, NWContentContext context, bool isComplete, NWError error);
}

New Type: Network.NWConnectionReceiveDispatchDataCompletion

public sealed delegate NWConnectionReceiveDispatchDataCompletion : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public NWConnectionReceiveDispatchDataCompletion (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (CoreFoundation.DispatchData data, NWContentContext context, bool isComplete, NWError error, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (CoreFoundation.DispatchData data, NWContentContext context, bool isComplete, NWError error);
}

New Type: Network.NWConnectionState

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

New Type: Network.NWContentContext

public class NWContentContext : CoreFoundation.NativeObject, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public NWContentContext (string contextIdentifier);
	public NWContentContext (IntPtr handle, bool owns);
	// properties
	public NWContentContext Antecedent { get; set; }
	public static NWContentContext DefaultMessage { get; }
	public static NWContentContext DefaultStream { get; }
	public ulong ExpirationMilliseconds { get; set; }
	public static NWContentContext FinalMessage { get; }
	public string Identifier { get; }
	public bool IsFinal { get; set; }
	public double RelativePriority { get; set; }
	// methods
	public NWProtocolMetadata GetProtocolMetadata (NWProtocolDefinition protocolDefinition);
	public void IterateProtocolMetadata (System.Action<NWProtocolDefinition,Network.NWProtocolMetadata> callback);
	protected override void Release ();
	public void SetMetadata (NWProtocolMetadata protocolMetadata);
}

New Type: Network.NWEndpoint

public class NWEndpoint : CoreFoundation.NativeObject, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public NWEndpoint (IntPtr handle, bool owns);
	// properties
	public string Address { get; }
	public string BonjourServiceDomain { get; }
	public string BonjourServiceName { get; }
	public string BonjourServiceType { get; }
	public string Hostname { get; }
	public string Port { get; }
	public ushort PortNumber { get; }
	public NWEndpointType Type { get; }
	// methods
	public static NWEndpoint Create (string hostname, string port);
	public static NWEndpoint CreateBonjourService (string name, string serviceType, string domain);
}

New Type: Network.NWEndpointType

[Serializable]
public enum NWEndpointType {
	Address = 1,
	BonjourService = 3,
	Host = 2,
	Invalid = 0,
}

New Type: Network.NWError

public class NWError : CoreFoundation.NativeObject, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public NWError (IntPtr handle, bool owns);
	// properties
	public CoreFoundation.CFException CFError { get; }
	public int ErrorCode { get; }
	public NWErrorDomain ErrorDomain { get; }
}

New Type: Network.NWErrorDomain

[Serializable]
public enum NWErrorDomain {
	Dns = 2,
	Invalid = 0,
	Posix = 1,
	Tls = 3,
}

New Type: Network.NWErrorDomainExtensions

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

New Type: Network.NWIPEcnFlag

[Serializable]
public enum NWIPEcnFlag {
	Ce = 3,
	Ect = 2,
	Ect1 = 1,
	NonEct = 0,
}

New Type: Network.NWIPVersion

[Serializable]
public enum NWIPVersion {
	Any = 0,
	Version4 = 1,
	Version6 = 2,
}

New Type: Network.NWInterface

public class NWInterface : CoreFoundation.NativeObject, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public NWInterface (IntPtr handle, bool owns);
	// properties
	public uint Index { get; }
	public NWInterfaceType InterfaceType { get; }
	public string Name { get; }
}

New Type: Network.NWInterfaceType

[Serializable]
public enum NWInterfaceType {
	Cellular = 2,
	Loopback = 4,
	Other = 0,
	Wifi = 1,
	Wired = 3,
}

New Type: Network.NWListener

public class NWListener : CoreFoundation.NativeObject, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public NWListener (IntPtr handle, bool owns);
	// properties
	public ushort Port { get; }
	// methods
	public void Cancel ();
	public static NWListener Create (NWParameters parameters);
	public static NWListener Create (NWConnection connection, NWParameters parameters);
	public static NWListener Create (string port, NWParameters parameters);
	public void SetAdvertiseDescriptor (NWAdvertiseDescriptor descriptor);
	public void SetAdvertisedEndpointChangedHandler (NWListener.AdvertisedEndpointChanged callback);
	public void SetNewConnectionHandler (System.Action<NWConnection> callback);
	public void SetQueue (CoreFoundation.DispatchQueue queue);
	public void SetStateChangedHandler (System.Action<NWListenerState,Network.NWError> callback);
	public void Start ();

	// inner types
	public sealed delegate AdvertisedEndpointChanged : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
		// constructors
		public NWListener.AdvertisedEndpointChanged (object object, IntPtr method);
		// methods
		public virtual System.IAsyncResult BeginInvoke (NWEndpoint endpoint, bool added, System.AsyncCallback callback, object object);
		public virtual void EndInvoke (System.IAsyncResult result);
		public virtual void Invoke (NWEndpoint endpoint, bool added);
	}
}

New Type: Network.NWListenerState

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

New Type: Network.NWMultiPathService

[Serializable]
public enum NWMultiPathService {
	Aggregate = 3,
	Disabled = 0,
	Handover = 1,
	Interactive = 2,
}

New Type: Network.NWParameters

public class NWParameters : CoreFoundation.NativeObject, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public NWParameters ();
	public NWParameters (IntPtr handle, bool owns);
	// properties
	public NWParametersExpiredDnsBehavior ExpiredDnsBehavior { get; set; }
	public bool FastOpenEnabled { get; set; }
	public bool IncludePeerToPeer { get; set; }
	public NWEndpoint LocalEndpoint { get; set; }
	public bool LocalOnly { get; set; }
	public NWMultiPathService MultipathService { get; set; }
	public bool PreferNoProxy { get; set; }
	public bool ProhibitExpensive { get; set; }
	public NWProtocolStack ProtocolStack { get; }
	public NWInterface RequiredInterface { get; set; }
	public NWInterfaceType RequiredInterfaceType { get; set; }
	public bool ReuseLocalAddress { get; set; }
	public NWServiceClass ServiceClass { get; set; }
	// methods
	public void ClearProhibitedInterfaceTypes ();
	public void ClearProhibitedInterfaces ();
	public NWParameters Clone ();
	public static NWParameters CreateSecureTcp (System.Action<NWProtocolOptions> configureTls, System.Action<NWProtocolOptions> configureTcp);
	public static NWParameters CreateSecureUdp (System.Action<NWProtocolOptions> configureTls, System.Action<NWProtocolOptions> configureUdp);
	public static NWParameters CreateTcp (System.Action<NWProtocolOptions> configureTcp);
	public static NWParameters CreateUdp (System.Action<NWProtocolOptions> configureUdp);
	public void IterateProhibitedInterfaces (System.Func<NWInterface,System.Boolean> iterationCallback);
	public void IterateProhibitedInterfaces (System.Func<NWInterfaceType,System.Boolean> callback);
	public void ProhibitInterface (NWInterface iface);
	public void ProhibitInterfaceType (NWInterfaceType ifaceType);
}

New Type: Network.NWParametersExpiredDnsBehavior

[Serializable]
public enum NWParametersExpiredDnsBehavior {
	Allow = 1,
	Default = 0,
	Prohibit = 2,
}

New Type: Network.NWPath

public class NWPath : CoreFoundation.NativeObject, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public NWPath (IntPtr handle, bool owns);
	// properties
	public NWEndpoint EffectiveLocalEndpoint { get; }
	public NWEndpoint EffectiveRemoteEndpoint { get; }
	public bool HasDns { get; }
	public bool HasIPV4 { get; }
	public bool HasIPV6 { get; }
	public bool IsExpensive { get; }
	public NWPathStatus Status { get; }
	// methods
	public void EnumerateInterfaces (System.Action<NWInterface> callback);
	public bool EqualsTo (NWPath other);
	public bool UsesInterfaceType (NWInterfaceType type);
}

New Type: Network.NWPathMonitor

public class NWPathMonitor : CoreFoundation.NativeObject, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public NWPathMonitor ();
	public NWPathMonitor (NWInterfaceType interfaceType);
	public NWPathMonitor (IntPtr handle, bool owns);
	// methods
	public void Cancel ();
	public void SetMonitorCanceledHandler (System.Action callback);
	public void SetQueue (CoreFoundation.DispatchQueue queue);
	public void SetUpdatedSnapshotHandler (System.Action<NWPath> callback);
	public void Start ();
}

New Type: Network.NWPathStatus

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

New Type: Network.NWProtocolDefinition

public class NWProtocolDefinition : CoreFoundation.NativeObject, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public NWProtocolDefinition (IntPtr handle, bool owns);
	// properties
	public static NWProtocolDefinition IPDefinition { get; }
	public static NWProtocolDefinition TcpDefinition { get; }
	public static NWProtocolDefinition TlsDefinition { get; }
	public static NWProtocolDefinition UdpDefinition { get; }
	// methods
	public bool Equals (object other);
}

New Type: Network.NWProtocolMetadata

public class NWProtocolMetadata : CoreFoundation.NativeObject, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public NWProtocolMetadata (IntPtr handle, bool owns);
	// properties
	public NWIPEcnFlag IPMetadataEcnFlag { get; set; }
	public ulong IPMetadataReceiveTime { get; }
	public bool IsIP { get; }
	public bool IsTcp { get; }
	public bool IsTls { get; }
	public bool IsUdp { get; }
	public NWProtocolDefinition ProtocolDefinition { get; }
	public Security.SecProtocolMetadata SecProtocolMetadata { get; }
	public NWServiceClass ServiceClass { get; set; }
	// methods
	public static NWProtocolMetadata CreateIPMetadata ();
	public static NWProtocolMetadata CreateUdpMetadata ();
	public uint TcpGetAvailableReceiveBuffer ();
	public uint TcpGetAvailableSendBuffer ();
}

New Type: Network.NWProtocolOptions

public class NWProtocolOptions : CoreFoundation.NativeObject, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public NWProtocolOptions (IntPtr handle, bool owns);
	// properties
	public NWProtocolDefinition ProtocolDefinition { get; }
	public Security.SecProtocolOptions TlsProtocolOptions { get; }
	// methods
	public static NWProtocolOptions CreateTcp ();
	public static NWProtocolOptions CreateTls ();
	public static NWProtocolOptions CreateUdp ();
	public void IPSetCalculateReceiveTime (bool calculateReceiveTime);
	public void IPSetDisableFragmentation (bool disableFragmentation);
	public void IPSetHopLimit (byte hopLimit);
	public void IPSetUseMinimumMtu (bool useMinimumMtu);
	public void IPSetVersion (NWIPVersion version);
	public void TcpSetConnectionTimeout (uint connectionTimeout);
	public void TcpSetDisableAckStretching (bool disableAckStretching);
	public void TcpSetDisableEcn (bool disableEcn);
	public void TcpSetEnableFastOpen (bool enableFastOpen);
	public void TcpSetEnableKeepAlive (bool enableKeepAlive);
	public void TcpSetKeepAliveCount (uint keepaliveCount);
	public void TcpSetKeepAliveIdleTime (uint keepaliveIdleTime);
	public void TcpSetKeepAliveInterval (uint keepaliveInterval);
	public void TcpSetMaximumSegmentSize (uint maximumSegmentSize);
	public void TcpSetNoDelay (bool noDelay);
	public void TcpSetNoOptions (bool noOptions);
	public void TcpSetNoPush (bool noPush);
	public void TcpSetPersistTimeout (uint persistTimeout);
	public void TcpSetRetransmitConnectionDropTime (uint retransmitConnectionDropTime);
	public void TcpSetRetransmitFinDrop (bool retransmitFinDrop);
	public void UdpSetPreferNoChecksum (bool preferNoChecksums);
}

New Type: Network.NWProtocolStack

public class NWProtocolStack : CoreFoundation.NativeObject, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public NWProtocolStack (IntPtr handle, bool owns);
	// properties
	public NWProtocolOptions InternetProtocol { get; }
	public NWProtocolOptions TransportProtocol { get; set; }
	// methods
	public void ClearApplicationProtocols ();
	public void IterateProtocols (System.Action<NWProtocolOptions> callback);
	public void PrependApplicationProtocol (NWProtocolOptions options);
}

New Type: Network.NWServiceClass

[Serializable]
public enum NWServiceClass {
	Background = 1,
	BestEffort = 0,
	InteractiveVideo = 2,
	InteractiveVoice = 3,
	ResponsiveData = 4,
	Signaling = 5,
}

New Namespace UserNotifications

New Type: UserNotifications.IUNUserNotificationCenterDelegate

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

New Type: UserNotifications.UNAlertStyle

[Serializable]
public enum UNAlertStyle {
	Alert = 2,
	Banner = 1,
	None = 0,
}

New Type: UserNotifications.UNAuthorizationOptions

[Serializable]
[Flags]
public enum UNAuthorizationOptions {
	Alert = 4,
	Badge = 1,
	CarPlay = 8,
	CriticalAlert = 16,
	None = 0,
	ProvidesAppNotificationSettings = 32,
	Provisional = 64,
	Sound = 2,
}

New Type: UserNotifications.UNAuthorizationStatus

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

New Type: UserNotifications.UNCalendarNotificationTrigger

public class UNCalendarNotificationTrigger : UserNotifications.UNNotificationTrigger, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public UNCalendarNotificationTrigger (Foundation.NSCoder coder);
	protected UNCalendarNotificationTrigger (Foundation.NSObjectFlag t);
	protected UNCalendarNotificationTrigger (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSDateComponents DateComponents { get; }
	public virtual Foundation.NSDate NextTriggerDate { get; }
	// methods
	public static UNCalendarNotificationTrigger CreateTrigger (Foundation.NSDateComponents dateComponents, bool repeats);
}

New Type: UserNotifications.UNErrorCode

[Serializable]
public enum UNErrorCode {
	AttachmentCorrupt = 105,
	AttachmentInvalidFileSize = 102,
	AttachmentInvalidUrl = 100,
	AttachmentMoveIntoDataStoreFailed = 104,
	AttachmentNotInDataStore = 103,
	AttachmentUnrecognizedType = 101,
	NotificationInvalidNoContent = 1401,
	NotificationInvalidNoDate = 1400,
	NotificationsNotAllowed = 1,
}

New Type: UserNotifications.UNErrorCodeExtensions

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

New Type: UserNotifications.UNMutableNotificationContent

public class UNMutableNotificationContent : UserNotifications.UNNotificationContent, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSMutableCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public UNMutableNotificationContent ();
	public UNMutableNotificationContent (Foundation.NSCoder coder);
	protected UNMutableNotificationContent (Foundation.NSObjectFlag t);
	protected UNMutableNotificationContent (IntPtr handle);
	// properties
	public virtual UNNotificationAttachment[] Attachments { get; set; }
	public virtual Foundation.NSNumber Badge { get; set; }
	public virtual string Body { get; set; }
	public virtual string CategoryIdentifier { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual UNNotificationSound Sound { get; set; }
	public virtual string Subtitle { get; set; }
	public virtual string SummaryArgument { get; set; }
	public virtual uint SummaryArgumentCount { get; set; }
	public virtual string ThreadIdentifier { get; set; }
	public virtual string Title { get; set; }
	public virtual Foundation.NSDictionary UserInfo { get; set; }
}

New Type: UserNotifications.UNNotification

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

New Type: UserNotifications.UNNotificationAction

public class UNNotificationAction : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public UNNotificationAction (Foundation.NSCoder coder);
	protected UNNotificationAction (Foundation.NSObjectFlag t);
	protected UNNotificationAction (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string Identifier { get; }
	public virtual UNNotificationActionOptions Options { get; }
	public virtual string Title { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public static UNNotificationAction FromIdentifier (string identifier, string title, UNNotificationActionOptions options);
}

New Type: UserNotifications.UNNotificationActionOptions

[Serializable]
[Flags]
public enum UNNotificationActionOptions {
	AuthenticationRequired = 1,
	Destructive = 2,
	Foreground = 4,
	None = 0,
}

New Type: UserNotifications.UNNotificationAttachment

public class UNNotificationAttachment : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public UNNotificationAttachment (Foundation.NSCoder coder);
	protected UNNotificationAttachment (Foundation.NSObjectFlag t);
	protected UNNotificationAttachment (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string Identifier { get; }
	public virtual string Type { get; }
	public virtual Foundation.NSUrl Url { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public static UNNotificationAttachment FromIdentifier (string identifier, Foundation.NSUrl url, Foundation.NSDictionary options, out Foundation.NSError error);
	public static UNNotificationAttachment FromIdentifier (string identifier, Foundation.NSUrl url, UNNotificationAttachmentOptions attachmentOptions, out Foundation.NSError error);
}

New Type: UserNotifications.UNNotificationAttachmentOptions

public class UNNotificationAttachmentOptions : Foundation.DictionaryContainer {
	// constructors
	public UNNotificationAttachmentOptions ();
	public UNNotificationAttachmentOptions (Foundation.NSDictionary dictionary);
	// properties
	public CoreGraphics.CGRect? ThumbnailClippingRect { get; set; }
	public bool? ThumbnailHidden { get; set; }
	public CoreMedia.CMTime? ThumbnailTime { get; set; }
	public double? ThumbnailTimeInSeconds { get; set; }
	public string TypeHint { get; set; }
}

New Type: UserNotifications.UNNotificationCategory

public class UNNotificationCategory : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public UNNotificationCategory (Foundation.NSCoder coder);
	protected UNNotificationCategory (Foundation.NSObjectFlag t);
	protected UNNotificationCategory (IntPtr handle);
	// properties
	public virtual UNNotificationAction[] Actions { get; }
	public virtual string CategorySummaryFormat { get; }
	public override IntPtr ClassHandle { get; }
	public virtual string HiddenPreviewsBodyPlaceholder { get; }
	public virtual string Identifier { get; }
	public virtual string[] IntentIdentifiers { get; }
	public virtual UNNotificationCategoryOptions Options { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public static UNNotificationCategory FromIdentifier (string identifier, UNNotificationAction[] actions, string[] intentIdentifiers, UNNotificationCategoryOptions options);
	public static UNNotificationCategory FromIdentifier (string identifier, UNNotificationAction[] actions, string[] intentIdentifiers, string hiddenPreviewsBodyPlaceholder, UNNotificationCategoryOptions options);
	public static UNNotificationCategory FromIdentifier (string identifier, UNNotificationAction[] actions, string[] intentIdentifiers, string hiddenPreviewsBodyPlaceholder, Foundation.NSString categorySummaryFormat, UNNotificationCategoryOptions options);
}

New Type: UserNotifications.UNNotificationCategoryOptions

[Serializable]
[Flags]
public enum UNNotificationCategoryOptions {
	AllowInCarPlay = 2,
	CustomDismissAction = 1,
	HiddenPreviewsShowSubtitle = 8,
	HiddenPreviewsShowTitle = 4,
	None = 0,
}

New Type: UserNotifications.UNNotificationContent

public class UNNotificationContent : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSMutableCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public UNNotificationContent (Foundation.NSCoder coder);
	protected UNNotificationContent (Foundation.NSObjectFlag t);
	protected UNNotificationContent (IntPtr handle);
	// properties
	public virtual UNNotificationAttachment[] Attachments { get; }
	public virtual Foundation.NSNumber Badge { get; }
	public virtual string Body { get; }
	public virtual string CategoryIdentifier { get; }
	public override IntPtr ClassHandle { get; }
	public virtual UNNotificationSound Sound { get; }
	public virtual string Subtitle { get; }
	public virtual string SummaryArgument { get; }
	public virtual uint SummaryArgumentCount { get; }
	public virtual string ThreadIdentifier { get; }
	public virtual string Title { get; }
	public virtual Foundation.NSDictionary UserInfo { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public virtual Foundation.NSObject MutableCopy (Foundation.NSZone zone);
}

New Type: UserNotifications.UNNotificationPresentationOptions

[Serializable]
[Flags]
public enum UNNotificationPresentationOptions {
	Alert = 4,
	Badge = 1,
	None = 0,
	Sound = 2,
}

New Type: UserNotifications.UNNotificationRequest

public class UNNotificationRequest : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public UNNotificationRequest (Foundation.NSCoder coder);
	protected UNNotificationRequest (Foundation.NSObjectFlag t);
	protected UNNotificationRequest (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual UNNotificationContent Content { get; }
	public virtual string Identifier { get; }
	public virtual UNNotificationTrigger Trigger { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public static UNNotificationRequest FromIdentifier (string identifier, UNNotificationContent content, UNNotificationTrigger trigger);
}

New Type: UserNotifications.UNNotificationResponse

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

New Type: UserNotifications.UNNotificationServiceExtension

public class UNNotificationServiceExtension : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected UNNotificationServiceExtension (Foundation.NSObjectFlag t);
	protected UNNotificationServiceExtension (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	// methods
	public virtual void DidReceiveNotificationRequest (UNNotificationRequest request, System.Action<UNNotificationContent> contentHandler);
	public virtual void TimeWillExpire ();
}

New Type: UserNotifications.UNNotificationSetting

[Serializable]
public enum UNNotificationSetting {
	Disabled = 1,
	Enabled = 2,
	NotSupported = 0,
}

New Type: UserNotifications.UNNotificationSettings

public class UNNotificationSettings : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public UNNotificationSettings (Foundation.NSCoder coder);
	protected UNNotificationSettings (Foundation.NSObjectFlag t);
	protected UNNotificationSettings (IntPtr handle);
	// properties
	public virtual UNNotificationSetting AlertSetting { get; }
	public virtual UNAlertStyle AlertStyle { get; }
	public virtual UNAuthorizationStatus AuthorizationStatus { get; }
	public virtual UNNotificationSetting BadgeSetting { get; }
	public override IntPtr ClassHandle { get; }
	public virtual UNNotificationSetting CriticalAlertSetting { get; }
	public virtual UNNotificationSetting LockScreenSetting { get; }
	public virtual UNNotificationSetting NotificationCenterSetting { get; }
	public virtual bool ProvidesAppNotificationSettings { get; }
	public virtual UNShowPreviewsSetting ShowPreviewsSetting { get; }
	public virtual UNNotificationSetting SoundSetting { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: UserNotifications.UNNotificationSound

public class UNNotificationSound : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public UNNotificationSound (Foundation.NSCoder coder);
	protected UNNotificationSound (Foundation.NSObjectFlag t);
	protected UNNotificationSound (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static UNNotificationSound Default { get; }
	public static UNNotificationSound DefaultCriticalSound { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
	public static UNNotificationSound GetCriticalSound (string name);
	public static UNNotificationSound GetCriticalSound (string name, float volume);
	public static UNNotificationSound GetDefaultCriticalSound (float volume);
	public static UNNotificationSound GetSound (string name);
}

New Type: UserNotifications.UNNotificationTrigger

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

New Type: UserNotifications.UNPushNotificationTrigger

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

New Type: UserNotifications.UNShowPreviewsSetting

[Serializable]
public enum UNShowPreviewsSetting {
	Always = 0,
	Never = 2,
	WhenAuthenticated = 1,
}

New Type: UserNotifications.UNTextInputNotificationAction

public class UNTextInputNotificationAction : UserNotifications.UNNotificationAction, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public UNTextInputNotificationAction (Foundation.NSCoder coder);
	protected UNTextInputNotificationAction (Foundation.NSObjectFlag t);
	protected UNTextInputNotificationAction (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string TextInputButtonTitle { get; }
	public virtual string TextInputPlaceholder { get; }
	// methods
	public static UNTextInputNotificationAction FromIdentifier (string identifier, string title, UNNotificationActionOptions options, string textInputButtonTitle, string textInputPlaceholder);
}

New Type: UserNotifications.UNTextInputNotificationResponse

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

New Type: UserNotifications.UNTimeIntervalNotificationTrigger

public class UNTimeIntervalNotificationTrigger : UserNotifications.UNNotificationTrigger, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSObjectProtocol, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public UNTimeIntervalNotificationTrigger (Foundation.NSCoder coder);
	protected UNTimeIntervalNotificationTrigger (Foundation.NSObjectFlag t);
	protected UNTimeIntervalNotificationTrigger (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSDate NextTriggerDate { get; }
	public virtual double TimeInterval { get; }
	// methods
	public static UNTimeIntervalNotificationTrigger CreateTrigger (double timeInterval, bool repeats);
}

New Type: UserNotifications.UNUserNotificationCenter

public class UNUserNotificationCenter : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	protected UNUserNotificationCenter (Foundation.NSObjectFlag t);
	protected UNUserNotificationCenter (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public static UNUserNotificationCenter Current { get; }
	public virtual IUNUserNotificationCenterDelegate Delegate { get; set; }
	public virtual bool SupportsContentExtensions { get; }
	// methods
	public virtual void AddNotificationRequest (UNNotificationRequest request, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task AddNotificationRequestAsync (UNNotificationRequest request);
	protected override void Dispose (bool disposing);
	public virtual void GetDeliveredNotifications (System.Action<UNNotification[]> completionHandler);
	public virtual System.Threading.Tasks.Task<UNNotification[]> GetDeliveredNotificationsAsync ();
	public virtual void GetNotificationCategories (System.Action<Foundation.NSSet<UNNotificationCategory>> completionHandler);
	public virtual System.Threading.Tasks.Task<Foundation.NSSet<UNNotificationCategory>> GetNotificationCategoriesAsync ();
	public virtual void GetNotificationSettings (System.Action<UNNotificationSettings> completionHandler);
	public virtual System.Threading.Tasks.Task<UNNotificationSettings> GetNotificationSettingsAsync ();
	public virtual void GetPendingNotificationRequests (System.Action<UNNotificationRequest[]> completionHandler);
	public virtual System.Threading.Tasks.Task<UNNotificationRequest[]> GetPendingNotificationRequestsAsync ();
	public virtual void RemoveAllDeliveredNotifications ();
	public virtual void RemoveAllPendingNotificationRequests ();
	public virtual void RemoveDeliveredNotifications (string[] identifiers);
	public virtual void RemovePendingNotificationRequests (string[] identifiers);
	public virtual void RequestAuthorization (UNAuthorizationOptions options, System.Action<System.Boolean,Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task<System.Tuple<System.Boolean,Foundation.NSError>> RequestAuthorizationAsync (UNAuthorizationOptions options);
	public virtual void SetNotificationCategories (Foundation.NSSet<UNNotificationCategory> categories);
}

New Type: UserNotifications.UNUserNotificationCenterDelegate

public class UNUserNotificationCenterDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, IUNUserNotificationCenterDelegate {
	// constructors
	public UNUserNotificationCenterDelegate ();
	protected UNUserNotificationCenterDelegate (Foundation.NSObjectFlag t);
	protected UNUserNotificationCenterDelegate (IntPtr handle);
	// methods
	public virtual void DidReceiveNotificationResponse (UNUserNotificationCenter center, UNNotificationResponse response, System.Action completionHandler);
	public virtual void OpenSettings (UNUserNotificationCenter center, UNNotification notification);
	public virtual void WillPresentNotification (UNUserNotificationCenter center, UNNotification notification, System.Action<UNNotificationPresentationOptions> completionHandler);
}

New Type: UserNotifications.UNUserNotificationCenterDelegate_Extensions

public static class UNUserNotificationCenterDelegate_Extensions {
	// methods
	public static void DidReceiveNotificationResponse (this IUNUserNotificationCenterDelegate This, UNUserNotificationCenter center, UNNotificationResponse response, System.Action completionHandler);
	public static void OpenSettings (this IUNUserNotificationCenterDelegate This, UNUserNotificationCenter center, UNNotification notification);
	public static void WillPresentNotification (this IUNUserNotificationCenterDelegate This, UNUserNotificationCenter center, UNNotification notification, System.Action<UNNotificationPresentationOptions> completionHandler);
}

New Namespace VideoSubscriberAccount

New Type: VideoSubscriberAccount.IVSAccountManagerDelegate

public interface IVSAccountManagerDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DismissViewController (VSAccountManager accountManager, AppKit.NSViewController viewController);
	public virtual void PresentViewController (VSAccountManager accountManager, AppKit.NSViewController viewController);
}

New Type: VideoSubscriberAccount.VSAccountAccessStatus

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

New Type: VideoSubscriberAccount.VSAccountManager

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

New Type: VideoSubscriberAccount.VSAccountManagerAccessOptions

public class VSAccountManagerAccessOptions : Foundation.DictionaryContainer {
	// constructors
	public VSAccountManagerAccessOptions ();
	public VSAccountManagerAccessOptions (Foundation.NSDictionary dictionary);
	// properties
	public bool? CheckAccessOptionPrompt { get; set; }
}

New Type: VideoSubscriberAccount.VSAccountManagerDelegate

public abstract class VSAccountManagerDelegate : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject>, IVSAccountManagerDelegate {
	// constructors
	protected VSAccountManagerDelegate ();
	protected VSAccountManagerDelegate (Foundation.NSObjectFlag t);
	protected VSAccountManagerDelegate (IntPtr handle);
	// methods
	public virtual void DismissViewController (VSAccountManager accountManager, AppKit.NSViewController viewController);
	public virtual void PresentViewController (VSAccountManager accountManager, AppKit.NSViewController viewController);
	public virtual bool ShouldAuthenticateAccountProvider (VSAccountManager accountManager, string accountProviderIdentifier);
}

New Type: VideoSubscriberAccount.VSAccountManagerDelegate_Extensions

public static class VSAccountManagerDelegate_Extensions {
	// methods
	public static bool ShouldAuthenticateAccountProvider (this IVSAccountManagerDelegate This, VSAccountManager accountManager, string accountProviderIdentifier);
}

New Type: VideoSubscriberAccount.VSAccountManagerResult

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

New Type: VideoSubscriberAccount.VSAccountMetadata

public class VSAccountMetadata : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public VSAccountMetadata ();
	protected VSAccountMetadata (Foundation.NSObjectFlag t);
	protected VSAccountMetadata (IntPtr handle);
	// properties
	public virtual string AccountProviderIdentifier { get; }
	public virtual VSAccountProviderResponse AccountProviderResponse { get; }
	public virtual Foundation.NSDate AuthenticationExpirationDate { get; }
	public override IntPtr ClassHandle { get; }
	public virtual string SamlAttributeQueryResponse { get; }
	public virtual Foundation.NSData VerificationData { get; }
}

New Type: VideoSubscriberAccount.VSAccountMetadataRequest

public class VSAccountMetadataRequest : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public VSAccountMetadataRequest ();
	protected VSAccountMetadataRequest (Foundation.NSObjectFlag t);
	protected VSAccountMetadataRequest (IntPtr handle);
	// properties
	public virtual string[] AttributeNames { get; set; }
	public virtual string ChannelIdentifier { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual string[] FeaturedAccountProviderIdentifiers { get; set; }
	public virtual bool ForceAuthentication { get; set; }
	public virtual bool IncludeAccountProviderIdentifier { get; set; }
	public virtual bool IncludeAuthenticationExpirationDate { get; set; }
	public virtual bool InterruptionAllowed { get; set; }
	public virtual string LocalizedVideoTitle { get; set; }
	public virtual string[] SupportedAccountProviderIdentifiers { get; set; }
	public VSAccountProviderAuthenticationScheme[] SupportedAuthenticationSchemes { get; set; }
	protected virtual Foundation.NSString[] SupportedAuthenticationSchemesString { get; set; }
	public virtual string VerificationToken { get; set; }
}

New Type: VideoSubscriberAccount.VSAccountProviderAuthenticationScheme

[Serializable]
public enum VSAccountProviderAuthenticationScheme {
	Saml = 0,
}

New Type: VideoSubscriberAccount.VSAccountProviderAuthenticationSchemeExtensions

public static class VSAccountProviderAuthenticationSchemeExtensions {
	// methods
	public static Foundation.NSString GetConstant (this VSAccountProviderAuthenticationScheme self);
	public static Foundation.NSString[] GetConstants (this VSAccountProviderAuthenticationScheme[] self);
	public static VSAccountProviderAuthenticationScheme GetValue (Foundation.NSString constant);
	public static VSAccountProviderAuthenticationScheme[] GetValues (Foundation.NSString[] constants);
}

New Type: VideoSubscriberAccount.VSAccountProviderResponse

public class VSAccountProviderResponse : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public VSAccountProviderResponse ();
	protected VSAccountProviderResponse (Foundation.NSObjectFlag t);
	protected VSAccountProviderResponse (IntPtr handle);
	// properties
	public VSAccountProviderAuthenticationScheme AuthenticationScheme { get; }
	protected virtual Foundation.NSString AuthenticationSchemeString { get; }
	public virtual string Body { get; }
	public override IntPtr ClassHandle { get; }
	public virtual string Status { get; }
}

New Type: VideoSubscriberAccount.VSErrorCode

[Serializable]
public enum VSErrorCode {
	AccessNotGranted = 0,
	InvalidVerificationToken = 5,
	ProviderRejected = 4,
	ServiceTemporarilyUnavailable = 3,
	UnsupportedProvider = 1,
	UserCancelled = 2,
}

New Type: VideoSubscriberAccount.VSErrorCodeExtensions

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

New Type: VideoSubscriberAccount.VSErrorInfo

public class VSErrorInfo : Foundation.DictionaryContainer {
	// constructors
	public VSErrorInfo ();
	public VSErrorInfo (Foundation.NSDictionary dictionary);
	// properties
	public string AccountProviderResponse { get; }
	public string SamlResponse { get; }
	public string SamlResponseStatus { get; }
	public string UnsupportedProviderIdentifier { get; }
}

New Type: VideoSubscriberAccount.VSSubscription

public class VSSubscription : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public VSSubscription ();
	protected VSSubscription (Foundation.NSObjectFlag t);
	protected VSSubscription (IntPtr handle);
	// properties
	public virtual VSSubscriptionAccessLevel AccessLevel { get; set; }
	public virtual string BillingIdentifier { get; set; }
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSDate ExpirationDate { get; set; }
	public virtual string[] TierIdentifiers { get; set; }
}

New Type: VideoSubscriberAccount.VSSubscriptionAccessLevel

[Serializable]
public enum VSSubscriptionAccessLevel {
	FreeWithAccount = 1,
	Paid = 2,
	Unknown = 0,
}

New Type: VideoSubscriberAccount.VSSubscriptionRegistrationCenter

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

New Namespace iTunesLibrary

New Type: iTunesLibrary.ITLibAlbum

public class ITLibAlbum : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ITLibAlbum ();
	protected ITLibAlbum (Foundation.NSObjectFlag t);
	protected ITLibAlbum (IntPtr handle);
	// properties
	public virtual string AlbumArtist { get; }
	public virtual ITLibArtist Artist { get; }
	public override IntPtr ClassHandle { get; }
	public virtual bool Compilation { get; }
	public virtual uint DiscCount { get; }
	public virtual uint DiscNumber { get; }
	public virtual bool Gapless { get; }
	public virtual Foundation.NSNumber PersistentId { get; }
	public virtual nint Rating { get; }
	public virtual bool RatingComputed { get; }
	public virtual string SortAlbumArtist { get; }
	public virtual string SortTitle { get; }
	public virtual string Title { get; }
	public virtual uint TrackCount { get; }
}

New Type: iTunesLibrary.ITLibArtist

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

New Type: iTunesLibrary.ITLibArtwork

public class ITLibArtwork : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ITLibArtwork ();
	protected ITLibArtwork (Foundation.NSObjectFlag t);
	protected ITLibArtwork (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual AppKit.NSImage Image { get; }
	public virtual Foundation.NSData ImageData { get; }
	public virtual ITLibArtworkFormat ImageDataFormat { get; }
}

New Type: iTunesLibrary.ITLibArtworkFormat

[Serializable]
public enum ITLibArtworkFormat {
	Bitmap = 1,
	Bmp = 6,
	Gif = 4,
	Jpeg = 2,
	Jpeg2000 = 3,
	None = 0,
	Pict = 8,
	Png = 5,
	Tiff = 7,
}

New Type: iTunesLibrary.ITLibDistinguishedPlaylistKind

[Serializable]
public enum ITLibDistinguishedPlaylistKind {
	Applications = 51,
	Audiobooks = 4,
	Books = 4,
	ClassicalMusic = 48,
	HomeVideos = 50,
	LibraryMusicVideos = 49,
	LovedSongs = 52,
	Movies = 1,
	Music = 3,
	MusicShowsAndMovies = 53,
	MusicVideos = 47,
	MyTopRated = 43,
	NightiesMusic = 42,
	None = 0,
	Podcasts = 7,
	Purchases = 16,
	RecentlyAdded = 46,
	RecentlyPlayed = 45,
	Ringtones = 5,
	TVShows = 2,
	Top25MostPlayed = 44,
	VoiceMemos = 14,
	iTunesU = 26,
}

New Type: iTunesLibrary.ITLibExportFeature

[Serializable]
public enum ITLibExportFeature {
	ITLibExportFeatureNone = 0,
}

New Type: iTunesLibrary.ITLibInitOptions

[Serializable]
public enum ITLibInitOptions {
	LazyLoadData = 1,
	None = 0,
}

New Type: iTunesLibrary.ITLibMediaEntity

public class ITLibMediaEntity : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ITLibMediaEntity ();
	protected ITLibMediaEntity (Foundation.NSObjectFlag t);
	protected ITLibMediaEntity (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual Foundation.NSNumber PersistentId { get; }
	// methods
	public virtual void EnumerateValues (Foundation.NSSet<Foundation.NSString> properties, ITLibMediaEntityEnumerateValuesHandler handler);
	public virtual void EnumerateValuesExcept (Foundation.NSSet<Foundation.NSString> properties, ITLibMediaEntityEnumerateValuesHandler handler);
	public virtual Foundation.NSObject GetValue (string property);
}

New Type: iTunesLibrary.ITLibMediaEntityEnumerateValuesHandler

public sealed delegate ITLibMediaEntityEnumerateValuesHandler : System.MulticastDelegate, System.ICloneable, System.Runtime.Serialization.ISerializable {
	// constructors
	public ITLibMediaEntityEnumerateValuesHandler (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (Foundation.NSString property, Foundation.NSObject value, out bool stop, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (out bool stop, System.IAsyncResult result);
	public virtual void Invoke (Foundation.NSString property, Foundation.NSObject value, out bool stop);
}

New Type: iTunesLibrary.ITLibMediaEntityProperty

[Serializable]
public enum ITLibMediaEntityProperty {
	PersistentId = 0,
}

New Type: iTunesLibrary.ITLibMediaEntityPropertyExtensions

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

New Type: iTunesLibrary.ITLibMediaItem

public class ITLibMediaItem : iTunesLibrary.ITLibMediaEntity, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ITLibMediaItem ();
	protected ITLibMediaItem (Foundation.NSObjectFlag t);
	protected ITLibMediaItem (IntPtr handle);
	// properties
	public virtual Foundation.NSDate AddedDate { get; }
	public virtual ITLibAlbum Album { get; }
	public virtual ITLibArtist Artist { get; }
	public virtual ITLibArtwork Artwork { get; }
	public virtual bool ArtworkAvailable { get; }
	public virtual uint BeatsPerMinute { get; }
	public virtual uint Bitrate { get; }
	public virtual string Category { get; }
	public override IntPtr ClassHandle { get; }
	public virtual bool Cloud { get; }
	public virtual string Comments { get; }
	public virtual string Composer { get; }
	public virtual string ContentRating { get; }
	public virtual string Description { get; }
	public virtual bool DrmProtected { get; }
	public virtual ulong FileSize { get; }
	public virtual uint FileType { get; }
	public virtual string Genre { get; }
	public virtual string Grouping { get; }
	public virtual string Kind { get; }
	public virtual Foundation.NSDate LastPlayedDate { get; }
	public virtual Foundation.NSUrl Location { get; }
	public virtual ITLibMediaItemLocationType LocationType { get; }
	public virtual ITLibMediaItemLyricsContentRating LyricsContentRating { get; }
	public virtual ITLibMediaItemMediaKind MediaKind { get; }
	public virtual Foundation.NSDate ModifiedDate { get; }
	public virtual uint PlayCount { get; }
	public virtual ITLibMediaItemPlayStatus PlayStatus { get; }
	public virtual bool Purchased { get; }
	public virtual nint Rating { get; }
	public virtual bool RatingComputed { get; }
	public virtual Foundation.NSDate ReleaseDate { get; }
	public virtual uint SampleRate { get; }
	public virtual uint Size { get; }
	public virtual uint SkipCount { get; }
	public virtual Foundation.NSDate SkipDate { get; }
	public virtual string SortComposer { get; }
	public virtual string SortTitle { get; }
	public virtual uint StartTime { get; }
	public virtual uint StopTime { get; }
	public virtual string Title { get; }
	public virtual uint TotalTime { get; }
	public virtual uint TrackNumber { get; }
	public virtual bool UserDisabled { get; }
	public virtual bool Video { get; }
	public virtual ITLibMediaItemVideoInfo VideoInfo { get; }
	public virtual string VoiceOverLanguage { get; }
	public virtual nint VolumeAdjustment { get; }
	public virtual uint VolumeNormalizationEnergy { get; }
	public virtual uint Year { get; }
}

New Type: iTunesLibrary.ITLibMediaItemLocationType

[Serializable]
public enum ITLibMediaItemLocationType {
	File = 1,
	Remote = 3,
	Unknown = 0,
	Url = 2,
}

New Type: iTunesLibrary.ITLibMediaItemLyricsContentRating

[Serializable]
public enum ITLibMediaItemLyricsContentRating {
	Clean = 2,
	Explicit = 1,
	None = 0,
}

New Type: iTunesLibrary.ITLibMediaItemMediaKind

[Serializable]
public enum ITLibMediaItemMediaKind {
	AlertTone = 21,
	Audiobook = 5,
	Book = 19,
	DigitalBooklet = 15,
	HomeVideo = 12,
	InteractiveBooklet = 9,
	Movie = 3,
	MusicVideo = 7,
	PdfBook = 20,
	PdfBooklet = 6,
	Podcast = 4,
	Ringtone = 14,
	Song = 2,
	TVShow = 8,
	Unknown = 1,
	VoiceMemo = 17,
	iOSApplication = 16,
	iTunesU = 18,
}

New Type: iTunesLibrary.ITLibMediaItemPlayStatus

[Serializable]
public enum ITLibMediaItemPlayStatus {
	None = 0,
	PartiallyPlayed = 1,
	Unplayed = 2,
}

New Type: iTunesLibrary.ITLibMediaItemVideoInfo

public class ITLibMediaItemVideoInfo : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ITLibMediaItemVideoInfo ();
	protected ITLibMediaItemVideoInfo (Foundation.NSObjectFlag t);
	protected ITLibMediaItemVideoInfo (IntPtr handle);
	// properties
	public override IntPtr ClassHandle { get; }
	public virtual string Episode { get; }
	public virtual nint EpisodeOrder { get; }
	public virtual bool HD { get; }
	public virtual uint Season { get; }
	public virtual string Series { get; }
	public virtual string SortSeries { get; }
	public virtual uint VideoHeight { get; }
	public virtual uint VideoWidth { get; }
}

New Type: iTunesLibrary.ITLibPlaylist

public class ITLibPlaylist : iTunesLibrary.ITLibMediaEntity, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ITLibPlaylist ();
	protected ITLibPlaylist (Foundation.NSObjectFlag t);
	protected ITLibPlaylist (IntPtr handle);
	// properties
	public virtual bool AllItemsPlaylist { get; }
	public override IntPtr ClassHandle { get; }
	public virtual ITLibDistinguishedPlaylistKind DistinguishedKind { get; }
	public virtual ITLibMediaItem[] Items { get; }
	public virtual ITLibPlaylistKind Kind { get; }
	public virtual bool Master { get; }
	public virtual string Name { get; }
	public virtual Foundation.NSNumber ParentId { get; }
	public virtual bool Visible { get; }
}

New Type: iTunesLibrary.ITLibPlaylistKind

[Serializable]
public enum ITLibPlaylistKind {
	Folder = 3,
	Genius = 2,
	GeniusMix = 4,
	Regular = 0,
	Smart = 1,
}

New Type: iTunesLibrary.ITLibPlaylistProperty

[Serializable]
public enum ITLibPlaylistProperty {
	AllItemsPlaylist = 1,
	DistinguisedKind = 2,
	Items = 6,
	Kind = 7,
	Master = 3,
	Name = 0,
	ParentPersistentId = 4,
	Visible = 5,
}

New Type: iTunesLibrary.ITLibPlaylistPropertyExtensions

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

New Type: iTunesLibrary.ITLibrary

public class ITLibrary : Foundation.NSObject, Foundation.INSObjectProtocol, ObjCRuntime.INativeObject, System.IDisposable, System.IEquatable<Foundation.NSObject> {
	// constructors
	public ITLibrary ();
	protected ITLibrary (Foundation.NSObjectFlag t);
	protected ITLibrary (IntPtr handle);
	public ITLibrary (string requestedAPIVersion, out Foundation.NSError error);
	public ITLibrary (string requestedAPIVersion, ITLibInitOptions options, out Foundation.NSError error);
	// properties
	public virtual ITLibMediaItem[] AllMediaItems { get; }
	public virtual ITLibPlaylist[] AllPlaylists { get; }
	public virtual uint ApiMajorVersion { get; }
	public virtual uint ApiMinorVersion { get; }
	public virtual string ApplicationVersion { get; }
	public override IntPtr ClassHandle { get; }
	public virtual ITLibExportFeature Features { get; }
	public virtual Foundation.NSUrl MediaFolderLocation { get; }
	public virtual Foundation.NSUrl MusicFolderLocation { get; }
	public virtual bool ShowContentRating { get; }
	// methods
	public virtual ITLibArtwork GetArtwork (Foundation.NSUrl mediaFileUrl);
	public static ITLibrary GetLibrary (string requestedAPIVersion, out Foundation.NSError error);
	public static ITLibrary GetLibrary (string requestedAPIVersion, ITLibInitOptions options, out Foundation.NSError error);
	public virtual bool ReloadData ();
	public virtual void UnloadData ();
}

New Type: iTunesLibrary.MediaItemProperty

[Serializable]
public enum MediaItemProperty {
	AddedDate = 30,
	AlbumArtist = 2,
	AlbumDiscCount = 8,
	AlbumDiscNumber = 9,
	AlbumIsCompilation = 7,
	AlbumIsGapless = 6,
	AlbumRating = 3,
	AlbumRatingComputed = 4,
	AlbumTitle = 0,
	AlbumTrackCount = 10,
	ArtistName = 11,
	Artwork = 69,
	BeatsPerMinute = 23,
	BitRate = 22,
	Category = 24,
	Comments = 25,
	Composer = 26,
	ContentRating = 28,
	Description = 32,
	FileSize = 55,
	FileType = 34,
	Genre = 35,
	Grouping = 36,
	HasArtwork = 21,
	IsDrmProtected = 45,
	IsPurchased = 46,
	IsUserDisabled = 33,
	IsVideo = 37,
	Kind = 38,
	LastPlayDate = 43,
	Location = 68,
	LocationType = 62,
	LyricsContentRating = 29,
	MediaKind = 67,
	ModifiedDate = 31,
	MovementCount = 47,
	MovementName = 48,
	MovementNumber = 49,
	PlayCount = 42,
	PlayStatus = 44,
	Rating = 50,
	RatingComputed = 51,
	ReleaseDate = 52,
	SampleRate = 53,
	Size = 54,
	SkipDate = 57,
	SortAlbumArtist = 5,
	SortAlbumTitle = 1,
	SortArtistName = 12,
	SortComposer = 27,
	SortTitle = 40,
	StartTime = 58,
	StopTime = 59,
	Title = 39,
	TotalTime = 60,
	TrackNumber = 61,
	UserSkipCount = 56,
	VideoEpisode = 19,
	VideoEpisodeOrder = 20,
	VideoHeight = 15,
	VideoIsHD = 13,
	VideoSeason = 18,
	VideoSeries = 16,
	VideoSortSeries = 17,
	VideoWidth = 14,
	VoiceOverLanguage = 63,
	VolumeAdjustment = 64,
	VolumeNormalizationEnergy = 41,
	Work = 65,
	Year = 66,
}

New Type: iTunesLibrary.MediaItemPropertyExtensions

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