Skip to content

Instantly share code, notes, and snippets.

@vs-mobiletools-engineering-service2
Created December 30, 2024 11:26
Show Gist options
  • Save vs-mobiletools-engineering-service2/0bd82f09a2eaf20a937110482674e2eb to your computer and use it in GitHub Desktop.
Save vs-mobiletools-engineering-service2/0bd82f09a2eaf20a937110482674e2eb to your computer and use it in GitHub Desktop.
stable-api-comparison/diff/Microsoft.MacCatalyst.md

API diff: Microsoft.MacCatalyst.dll

Microsoft.MacCatalyst.dll

Assembly Version Changed: 18.0.0.0 -> 18.2.0.0

Namespace AVFoundation

Type Changed: AVFoundation.AVCaptureConnection

Added property:

public virtual System.Runtime.InteropServices.NFloat VideoRotationAngle { get; }

Added method:

public virtual bool IsVideoRotationAngleSupported (System.Runtime.InteropServices.NFloat videoRotationAngle);

Type Changed: AVFoundation.AVCaptureFileOutputRecordingDelegate

Added methods:

public virtual void DidPauseRecording (AVCaptureFileOutput captureOutput, Foundation.NSUrl outputFileUrl, AVCaptureConnection[] connections);
public virtual void DidResumeRecording (AVCaptureFileOutput captureOutput, Foundation.NSUrl outputFileUrl, AVCaptureConnection[] connections);
public virtual void DidStartRecording (AVCaptureFileOutput captureOutput, Foundation.NSUrl outputFileUrl, CoreMedia.CMTime startPts, Foundation.NSObject[] connections);

Type Changed: AVFoundation.AVCaptureFileOutputRecordingDelegate_Extensions

Added methods:

public static void DidPauseRecording (this IAVCaptureFileOutputRecordingDelegate This, AVCaptureFileOutput captureOutput, Foundation.NSUrl outputFileUrl, AVCaptureConnection[] connections);
public static void DidResumeRecording (this IAVCaptureFileOutputRecordingDelegate This, AVCaptureFileOutput captureOutput, Foundation.NSUrl outputFileUrl, AVCaptureConnection[] connections);
public static void DidStartRecording (this IAVCaptureFileOutputRecordingDelegate This, AVCaptureFileOutput captureOutput, Foundation.NSUrl outputFileUrl, CoreMedia.CMTime startPts, Foundation.NSObject[] connections);

Type Changed: AVFoundation.AVCaptureVideoStabilizationMode

Added values:

CinematicExtendedEnhanced = 5,
PreviewOptimized = 4,

Type Changed: AVFoundation.IAVCaptureFileOutputRecordingDelegate

Added methods:

public virtual void DidPauseRecording (AVCaptureFileOutput captureOutput, Foundation.NSUrl outputFileUrl, AVCaptureConnection[] connections);
public virtual void DidResumeRecording (AVCaptureFileOutput captureOutput, Foundation.NSUrl outputFileUrl, AVCaptureConnection[] connections);
public virtual void DidStartRecording (AVCaptureFileOutput captureOutput, Foundation.NSUrl outputFileUrl, CoreMedia.CMTime startPts, Foundation.NSObject[] connections);

New Type: AVFoundation.AVAudioApplication

public class AVAudioApplication : Foundation.NSObject {
	// constructors
	protected AVAudioApplication (Foundation.NSObjectFlag t);
	protected AVAudioApplication (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual bool InputMuted { get; }
	public virtual AVAudioApplicationRecordPermission RecordPermission { get; }
	public static AVAudioApplication SharedInstance { get; }
	// methods
	public static void RequestRecordPermission (System.Action<bool> response);
	public static System.Threading.Tasks.Task<bool> RequestRecordPermissionAsync ();
	public virtual bool SetInputMuted (bool muted, out Foundation.NSError outError);
}

New Type: AVFoundation.AVAudioApplicationRecordPermission

[Serializable]
public enum AVAudioApplicationRecordPermission {
	Denied = 1684369017,
	Granted = 1735552628,
	Undetermined = 1970168948,
}

New Type: AVFoundation.AVCaptureReactionType

[Serializable]
public enum AVCaptureReactionType {
	Balloons = 2,
	Confetti = 6,
	Fireworks = 4,
	Heart = 3,
	Lasers = 7,
	Rain = 5,
	ThumbsDown = 1,
	ThumbsUp = 0,
}

New Type: AVFoundation.AVCaptureReactionTypeExtensions

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

Namespace AVKit

Type Changed: AVKit.AVPictureInPictureControllerContentSource

Added constructor:

public AVPictureInPictureControllerContentSource (UIKit.UIView sourceView, AVPictureInPictureVideoCallViewController contentViewController);

Added properties:

public virtual AVPictureInPictureVideoCallViewController ActiveVideoCallContentViewController { get; }
public virtual UIKit.UIView ActiveVideoCallSourceView { get; }

New Type: AVKit.AVCaptureEvent

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

New Type: AVKit.AVCaptureEventInteraction

public class AVCaptureEventInteraction : Foundation.NSObject, ObjCRuntime.INativeObject, System.IDisposable, UIKit.IUIInteraction {
	// constructors
	protected AVCaptureEventInteraction (Foundation.NSObjectFlag t);
	protected AVCaptureEventInteraction (ObjCRuntime.NativeHandle handle);
	public AVCaptureEventInteraction (System.Action<AVCaptureEvent> handler);
	public AVCaptureEventInteraction (System.Action<AVCaptureEvent> primaryHandler, System.Action<AVCaptureEvent> secondaryHandler);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual bool Enabled { get; set; }
	public virtual UIKit.UIView View { get; }
	// methods
	public virtual void DidMoveToView (UIKit.UIView view);
	protected override void Dispose (bool disposing);
	public virtual void WillMoveToView (UIKit.UIView view);
}

New Type: AVKit.AVCaptureEventPhase

[Serializable]
public enum AVCaptureEventPhase {
	Began = 0,
	Cancelled = 2,
	Ended = 1,
}

Namespace Accessibility

Type Changed: Accessibility.AXSettingsFeature

Added value:

AllowAppsToAddAudioToCalls = 2,

New Type: Accessibility.AXMathExpression

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

New Type: Accessibility.AXMathExpressionFenced

public class AXMathExpressionFenced : Accessibility.AXMathExpression {
	// constructors
	protected AXMathExpressionFenced (Foundation.NSObjectFlag t);
	protected AXMathExpressionFenced (ObjCRuntime.NativeHandle handle);
	public AXMathExpressionFenced (AXMathExpression[] expressions, string openString, string closeString);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual string CloseString { get; }
	public virtual AXMathExpression[] Expressions { get; }
	public virtual string OpenString { get; }
}

New Type: Accessibility.AXMathExpressionFraction

public class AXMathExpressionFraction : Accessibility.AXMathExpression {
	// constructors
	protected AXMathExpressionFraction (Foundation.NSObjectFlag t);
	protected AXMathExpressionFraction (ObjCRuntime.NativeHandle handle);
	public AXMathExpressionFraction (AXMathExpression numeratorExpression, AXMathExpression denimonatorExpression);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual AXMathExpression DenimonatorExpression { get; }
	public virtual AXMathExpression NumeratorExpression { get; }
}

New Type: Accessibility.AXMathExpressionIdentifier

public class AXMathExpressionIdentifier : Accessibility.AXMathExpression {
	// constructors
	protected AXMathExpressionIdentifier (Foundation.NSObjectFlag t);
	protected AXMathExpressionIdentifier (ObjCRuntime.NativeHandle handle);
	public AXMathExpressionIdentifier (string content);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual string Content { get; }
}

New Type: Accessibility.AXMathExpressionMultiscript

public class AXMathExpressionMultiscript : Accessibility.AXMathExpression {
	// constructors
	protected AXMathExpressionMultiscript (Foundation.NSObjectFlag t);
	protected AXMathExpressionMultiscript (ObjCRuntime.NativeHandle handle);
	public AXMathExpressionMultiscript (AXMathExpression baseExpression, AXMathExpressionSubSuperscript[] prescriptExpressions, AXMathExpressionSubSuperscript[] postscriptExpressions);
	// properties
	public virtual AXMathExpression BaseExpression { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual AXMathExpressionSubSuperscript[] PostscriptExpressions { get; }
	public virtual AXMathExpressionSubSuperscript[] PrescriptExpressions { get; }
}

New Type: Accessibility.AXMathExpressionNumber

public class AXMathExpressionNumber : Accessibility.AXMathExpression {
	// constructors
	protected AXMathExpressionNumber (Foundation.NSObjectFlag t);
	protected AXMathExpressionNumber (ObjCRuntime.NativeHandle handle);
	public AXMathExpressionNumber (string content);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual string Content { get; }
}

New Type: Accessibility.AXMathExpressionOperator

public class AXMathExpressionOperator : Accessibility.AXMathExpression {
	// constructors
	protected AXMathExpressionOperator (Foundation.NSObjectFlag t);
	protected AXMathExpressionOperator (ObjCRuntime.NativeHandle handle);
	public AXMathExpressionOperator (string content);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual string Content { get; }
}

New Type: Accessibility.AXMathExpressionRoot

public class AXMathExpressionRoot : Accessibility.AXMathExpression {
	// constructors
	protected AXMathExpressionRoot (Foundation.NSObjectFlag t);
	protected AXMathExpressionRoot (ObjCRuntime.NativeHandle handle);
	public AXMathExpressionRoot (AXMathExpression[] radicandExpressions, AXMathExpression rootIndexExpression);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual AXMathExpression[] RadicandExpressions { get; }
	public virtual AXMathExpression RootIndexExpression { get; }
}

New Type: Accessibility.AXMathExpressionRow

public class AXMathExpressionRow : Accessibility.AXMathExpression {
	// constructors
	public AXMathExpressionRow (AXMathExpression[] expressions);
	protected AXMathExpressionRow (Foundation.NSObjectFlag t);
	protected AXMathExpressionRow (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual AXMathExpression[] Expressions { get; }
}

New Type: Accessibility.AXMathExpressionSubSuperscript

public class AXMathExpressionSubSuperscript : Accessibility.AXMathExpression {
	// constructors
	protected AXMathExpressionSubSuperscript (Foundation.NSObjectFlag t);
	protected AXMathExpressionSubSuperscript (ObjCRuntime.NativeHandle handle);
	public AXMathExpressionSubSuperscript (AXMathExpression[] baseExpression, AXMathExpression[] subscriptExpressions, AXMathExpression[] superscriptExpressions);
	// properties
	public virtual AXMathExpression BaseExpression { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual AXMathExpression[] SubscriptExpressions { get; }
	public virtual AXMathExpression[] SuperscriptExpressions { get; }
}

New Type: Accessibility.AXMathExpressionTable

public class AXMathExpressionTable : Accessibility.AXMathExpression {
	// constructors
	public AXMathExpressionTable (AXMathExpression[] expressions);
	protected AXMathExpressionTable (Foundation.NSObjectFlag t);
	protected AXMathExpressionTable (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual AXMathExpression[] Expressions { get; }
}

New Type: Accessibility.AXMathExpressionTableCell

public class AXMathExpressionTableCell : Accessibility.AXMathExpression {
	// constructors
	public AXMathExpressionTableCell (AXMathExpression[] expressions);
	protected AXMathExpressionTableCell (Foundation.NSObjectFlag t);
	protected AXMathExpressionTableCell (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual AXMathExpression[] Expressions { get; }
}

New Type: Accessibility.AXMathExpressionTableRow

public class AXMathExpressionTableRow : Accessibility.AXMathExpression {
	// constructors
	public AXMathExpressionTableRow (AXMathExpression[] expressions);
	protected AXMathExpressionTableRow (Foundation.NSObjectFlag t);
	protected AXMathExpressionTableRow (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual AXMathExpression[] Expressions { get; }
}

New Type: Accessibility.AXMathExpressionText

public class AXMathExpressionText : Accessibility.AXMathExpression {
	// constructors
	protected AXMathExpressionText (Foundation.NSObjectFlag t);
	protected AXMathExpressionText (ObjCRuntime.NativeHandle handle);
	public AXMathExpressionText (string content);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual string Content { get; }
}

New Type: Accessibility.AXMathExpressionUnderOver

public class AXMathExpressionUnderOver : Accessibility.AXMathExpression {
	// constructors
	protected AXMathExpressionUnderOver (Foundation.NSObjectFlag t);
	protected AXMathExpressionUnderOver (ObjCRuntime.NativeHandle handle);
	public AXMathExpressionUnderOver (AXMathExpression baseExpression, AXMathExpression underExpression, AXMathExpression overExpression);
	// properties
	public virtual AXMathExpression BaseExpression { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual AXMathExpression OverExpression { get; }
	public virtual AXMathExpression UnderExpression { get; }
}

New Type: Accessibility.IAXMathExpressionProvider

public interface IAXMathExpressionProvider : ObjCRuntime.INativeObject, System.IDisposable {
	// properties
	public virtual AXMathExpression AccessibilityMathExpression { get; }
}

Namespace AppKit

Type Changed: AppKit.NSToolbar

Added property:

public static Foundation.NSString NSToolbarWritingToolsItemIdentifier { get; }

New Type: AppKit.NSToolbarItemVisibilityPriority

[Serializable]
public enum NSToolbarItemVisibilityPriority {
	High = 1000,
	Low = -1000,
	Standard = 0,
	User = 2000,
}

Namespace AudioUnit

Type Changed: AudioUnit.AudioComponentStatus

Added value:

InstanceTimedOut = -66754,

Type Changed: AudioUnit.AudioUnitStatus

Added values:

ComponentManagerNotSupported = -66740,
InvalidFilePath = -66742,
MissingKey = -66741,
MultipleVoiceProcessors = -66635,
RenderTimeout = -66745,

Namespace AuthenticationServices

Type Changed: AuthenticationServices.ASAuthorizationError

Added values:

CredentialExport = 1008,
CredentialImport = 1007,

Namespace CoreImage

New Type: CoreImage.CIDistanceGradientFromRedMask

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

Namespace CoreLocation

Type Changed: CoreLocation.CLLocation

Obsoleted properties:

 [Obsolete ("Use 'AccuracyBestForNavigation' instead.")]
 public static double AccurracyBestForNavigation { get; }

Added property:

public static double AccuracyBestForNavigation { get; }

Namespace CoreMedia

Type Changed: CoreMedia.CMSampleBuffer

Added methods:

public static CMSampleBuffer CreateWithNewTiming (CMSampleBuffer original, CMSampleTimingInfo[] timing, out int status);
public CMSampleTimingInfo[] GetSampleTimingInfo (out int status);

Namespace CoreVideo

Type Changed: CoreVideo.CVMetalBufferCache

Added methods:

public static bool TryCreate (Metal.IMTLDevice device, Foundation.NSDictionary attributes, out CVMetalBufferCache metalBufferCache, out CVReturn status);
public static bool TryCreateHandle (Metal.IMTLDevice device, Foundation.NSDictionary attributes, out IntPtr handle, out CVReturn status);

Namespace Foundation

Type Changed: Foundation.NSArray

Added method:

public static T[] ArrayFromHandleFunc<T> (ObjCRuntime.NativeHandle handle, System.Func<ObjCRuntime.NativeHandle,T> createObject, bool releaseHandle);

Type Changed: Foundation.NSAttributedString

Obsoleted constructors:

 [Obsolete ("Use the 'Create' method instead, because there's no way to return an error from a constructor.")]
 public NSAttributedString (NSData data, NSAttributedStringDocumentAttributes options, out NSDictionary resultDocumentAttributes, ref NSError error);
 [Obsolete ("Use the 'Create' method instead, because there's no way to return an error from a constructor.")]
 public NSAttributedString (NSData data, NSDictionary options, out NSDictionary resultDocumentAttributes, ref NSError error);
 [Obsolete ("Use the 'Create' method instead, because there's no way to return an error from a constructor.")]
 public NSAttributedString (NSUrl url, NSAttributedStringDocumentAttributes options, out NSDictionary resultDocumentAttributes, ref NSError error);
 [Obsolete ("Use the 'Create' method instead, because there's no way to return an error from a constructor.")]
 public NSAttributedString (NSUrl url, NSDictionary options, out NSDictionary resultDocumentAttributes, ref NSError error);

Added methods:

public static NSAttributedString Create (NSData data, NSAttributedStringDocumentAttributes options, out NSDictionary resultDocumentAttributes, out NSError error);
public static NSAttributedString Create (NSData data, NSDictionary options, out NSDictionary resultDocumentAttributes, out NSError error);
public static NSAttributedString Create (NSUrl url, NSAttributedStringDocumentAttributes options, out NSDictionary resultDocumentAttributes, out NSError error);
public static NSAttributedString Create (NSUrl url, NSDictionary options, out NSDictionary resultDocumentAttributes, out NSError error);

Type Changed: Foundation.NSBundle

Obsoleted constructors:

 [Obsolete ("Do not use this constructor, it does not work as expected.")]
 public NSBundle ();

Type Changed: Foundation.NSHttpCookie

Added property:

public static NSString KeySetByJavaScript { get; }

Type Changed: Foundation.NSMutableUrlRequest

Added property:

public virtual string CookiePartitionIdentifier { get; set; }

Type Changed: Foundation.NSUrlRequest

Added property:

public virtual string CookiePartitionIdentifier { get; }

Namespace HealthKit

Type Changed: HealthKit.HKAudiogramSample

Added method:

public static HKAudiogramSample GetAudiogramSample (HKAudiogramSensitivityPoint[] sensitivityPoints, Foundation.NSDate startDate, Foundation.NSDate endDate, HKDevice device, Foundation.NSDictionary<Foundation.NSString,Foundation.NSObject> metadata);

Type Changed: HealthKit.HKAudiogramSensitivityPoint

Added property:

public virtual HKAudiogramSensitivityTest[] Tests { get; }

Added method:

public static HKAudiogramSensitivityPoint GetSensitivityPoint (HKQuantity frequency, HKAudiogramSensitivityTest[] tests, out Foundation.NSError error);

Type Changed: HealthKit.HKMetadata

Added property:

public string AppleFitnessPlusCatalogIdentifier { get; set; }

Type Changed: HealthKit.HKMetadataKey

Added property:

public static Foundation.NSString AppleFitnessPlusCatalogIdentifier { get; }

New Type: HealthKit.HKAudiogramConductionType

[Serializable]
public enum HKAudiogramConductionType {
	Air = 0,
}

New Type: HealthKit.HKAudiogramSensitivityPointClampingRange

public class HKAudiogramSensitivityPointClampingRange : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public HKAudiogramSensitivityPointClampingRange (Foundation.NSCoder coder);
	protected HKAudiogramSensitivityPointClampingRange (Foundation.NSObjectFlag t);
	protected HKAudiogramSensitivityPointClampingRange (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual HKQuantity LowerBound { get; }
	public virtual HKQuantity UpperBound { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public static HKAudiogramSensitivityPointClampingRange Create (double? lowerBound, double? upperBound, out Foundation.NSError error);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: HealthKit.HKAudiogramSensitivityTest

public class HKAudiogramSensitivityTest : Foundation.NSObject, Foundation.INSCoding, Foundation.INSCopying, Foundation.INSSecureCoding, ObjCRuntime.INativeObject, System.IDisposable {
	// constructors
	public HKAudiogramSensitivityTest (Foundation.NSCoder coder);
	protected HKAudiogramSensitivityTest (Foundation.NSObjectFlag t);
	protected HKAudiogramSensitivityTest (ObjCRuntime.NativeHandle handle);
	public HKAudiogramSensitivityTest (HKQuantity sensitivity, HKAudiogramConductionType type, bool masked, HKAudiogramSensitivityTestSide side, HKAudiogramSensitivityPointClampingRange clampingRange, out Foundation.NSError error);
	// properties
	public virtual HKAudiogramSensitivityPointClampingRange ClampingRange { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual bool Masked { get; }
	public virtual HKQuantity Sensitivity { get; }
	public virtual HKAudiogramSensitivityTestSide Side { get; }
	public virtual HKAudiogramConductionType Type { get; }
	// methods
	public virtual Foundation.NSObject Copy (Foundation.NSZone zone);
	public virtual void EncodeTo (Foundation.NSCoder encoder);
}

New Type: HealthKit.HKAudiogramSensitivityTestSide

[Serializable]
public enum HKAudiogramSensitivityTestSide {
	Left = 0,
	Right = 1,
}

Namespace HomeKit

Type Changed: HomeKit.HMHome

Added property:

public virtual System.Func<Foundation.NSXpcConnection> MatterStartupParametersXPCConnectHandler { get; }

Namespace MapKit

Type Changed: MapKit.MKUserLocation

Added interfaces:

IMKAnnotation
ObjCRuntime.INativeObject
System.IDisposable

Namespace MetalPerformanceShadersGraph

Type Changed: MetalPerformanceShadersGraph.MPSGraph_MPSGraphTensorShapeOps

Added methods:

public static MPSGraphTensor Slice (this MPSGraph This, MPSGraphTensor tensor, MPSGraphTensor startTensor, MPSGraphTensor sizeTensor, uint squeezeMask, string name);
public static MPSGraphTensor Slice (this MPSGraph This, MPSGraphTensor tensor, MPSGraphTensor startTensor, MPSGraphTensor endTensor, MPSGraphTensor strideTensor, uint startMask, uint endMask, uint squeezeMask, string name);
public static MPSGraphTensor SliceGradient (this MPSGraph This, MPSGraphTensor inputGradientTensor, MPSGraphTensor fwdInShapeTensor, MPSGraphTensor startTensor, MPSGraphTensor sizeTensor, uint squeezeMask, string name);
public static MPSGraphTensor SliceGradient (this MPSGraph This, MPSGraphTensor inputGradientTensor, MPSGraphTensor fwdInShapeTensor, MPSGraphTensor startTensor, MPSGraphTensor endTensor, MPSGraphTensor strideTensor, uint startMask, uint endMask, uint squeezeMask, string name);

Namespace NetworkExtension

Type Changed: NetworkExtension.NEProviderStopReason

Added value:

InternalError = 17,

Namespace ObjCRuntime

Type Changed: ObjCRuntime.Constants

Modified fields:

-public const string SdkVersion = "18.0";
+public const string SdkVersion = "18.2";
-public const string Version = "17.99.0";
+public const string Version = "18.2.9164";

Added field:

public static const string ScreenCaptureKitLibrary = "/System/Library/Frameworks/ScreenCaptureKit.framework/ScreenCaptureKit";

Type Changed: ObjCRuntime.Runtime

Added method:

public static Foundation.NSObject GetNSObject (NativeHandle ptr, bool owns);

Type Changed: ObjCRuntime.Selector

Added method:

public static Selector FromHandle (NativeHandle selector, bool owns);

Namespace PassKit

Type Changed: PassKit.PKPassLibrary

Added method:

public virtual Foundation.NSSet<PKSecureElementPass> GetPasses (string readerIdentifier);

Namespace SafariServices

Type Changed: SafariServices.SFExtension

Added property:

public static Foundation.NSString ProfileKey { get; }

Namespace Speech

Type Changed: Speech.SFSpeechErrorCode

Added value:

Timeout = 10,

Namespace StoreKit

New Type: StoreKit.AppStore

public static class AppStore {
	// methods
	public static void RequestReview (UIKit.UIWindowScene in);
}

Namespace UIKit

Type Changed: UIKit.IUIResponderStandardEditActions

Added method:

public virtual void ShowWritingTools (Foundation.NSObject sender);

Type Changed: UIKit.UIApplication

Added property:

public static Foundation.NSString UIApplicationOpenDefaultApplicationsSettingsUrlString { get; }

Type Changed: UIKit.UIBarButtonSystemItem

Added value:

WritingTools = 25,

Type Changed: UIKit.UIMenuIdentifier

Added value:

Open = 48,

Type Changed: UIKit.UIPresentationController

Added methods:

public virtual IUITraitChangeRegistration RegisterForTraitChanges<T> (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler);
public virtual IUITraitChangeRegistration RegisterForTraitChanges<T1, T2> (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler);
public virtual IUITraitChangeRegistration RegisterForTraitChanges<T1, T2, T3> (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler);
public virtual IUITraitChangeRegistration RegisterForTraitChanges<T1, T2, T3, T4> (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler);
public virtual IUITraitChangeRegistration RegisterForTraitChanges (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler, System.Type[] traits);
public virtual IUITraitChangeRegistration RegisterForTraitChanges (System.Type[] traits, ObjCRuntime.Selector action);
public virtual IUITraitChangeRegistration RegisterForTraitChanges (System.Type[] traits, System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler);
public virtual IUITraitChangeRegistration RegisterForTraitChanges (System.Type[] traits, Foundation.NSObject target, ObjCRuntime.Selector action);

Type Changed: UIKit.UIPressType

Added values:

TVRemoteFourColors = 33,
TVRemoteOneTwoThree = 32,

Type Changed: UIKit.UIResponder

Added method:

public virtual void ShowWritingTools (Foundation.NSObject sender);

Type Changed: UIKit.UIResponderStandardEditActions_Extensions

Added method:

public static void ShowWritingTools (this IUIResponderStandardEditActions This, Foundation.NSObject sender);

Type Changed: UIKit.UIStringAttributeKey

Added property:

public static Foundation.NSString WritingToolsExclusion { get; }

Type Changed: UIKit.UITextView

Added property:

public virtual UIWritingToolsCoordinator WritingToolsCoordinator { get; }

Type Changed: UIKit.UITraitCollection

Obsoleted methods:

 [Obsolete ("Use the overload that takes a 'UITraitMutations' parameter instead.")]
 public virtual UITraitCollection GetTraitCollectionByModifyingTraits (System.Func<IUIMutableTraits> mutations);
 [Obsolete ("Use the overload that takes a 'UITraitMutations' parameter instead.")]
 public static UITraitCollection GetTraitCollectionWithTraits (System.Func<IUIMutableTraits> mutations);

Added methods:

public virtual UITraitCollection GetTraitCollectionByModifyingTraits (UITraitMutations mutations);
public static UITraitCollection GetTraitCollectionWithTraits (UITraitMutations mutations);

Type Changed: UIKit.UIView

Added methods:

public virtual IUITraitChangeRegistration RegisterForTraitChanges<T> (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler);
public virtual IUITraitChangeRegistration RegisterForTraitChanges<T1, T2> (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler);
public virtual IUITraitChangeRegistration RegisterForTraitChanges<T1, T2, T3> (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler);
public virtual IUITraitChangeRegistration RegisterForTraitChanges<T1, T2, T3, T4> (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler);
public virtual IUITraitChangeRegistration RegisterForTraitChanges (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler, System.Type[] traits);
public virtual IUITraitChangeRegistration RegisterForTraitChanges (System.Type[] traits, ObjCRuntime.Selector action);
public virtual IUITraitChangeRegistration RegisterForTraitChanges (System.Type[] traits, System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler);
public virtual IUITraitChangeRegistration RegisterForTraitChanges (System.Type[] traits, Foundation.NSObject target, ObjCRuntime.Selector action);

Type Changed: UIKit.UIViewController

Added methods:

public virtual IUITraitChangeRegistration RegisterForTraitChanges<T> (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler);
public virtual IUITraitChangeRegistration RegisterForTraitChanges<T1, T2> (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler);
public virtual IUITraitChangeRegistration RegisterForTraitChanges<T1, T2, T3> (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler);
public virtual IUITraitChangeRegistration RegisterForTraitChanges<T1, T2, T3, T4> (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler);
public virtual IUITraitChangeRegistration RegisterForTraitChanges (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler, System.Type[] traits);
public virtual IUITraitChangeRegistration RegisterForTraitChanges (System.Type[] traits, ObjCRuntime.Selector action);
public virtual IUITraitChangeRegistration RegisterForTraitChanges (System.Type[] traits, System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler);
public virtual IUITraitChangeRegistration RegisterForTraitChanges (System.Type[] traits, Foundation.NSObject target, ObjCRuntime.Selector action);

Type Changed: UIKit.UIWindowScene

Added methods:

public virtual IUITraitChangeRegistration RegisterForTraitChanges<T> (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler);
public virtual IUITraitChangeRegistration RegisterForTraitChanges<T1, T2> (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler);
public virtual IUITraitChangeRegistration RegisterForTraitChanges<T1, T2, T3> (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler);
public virtual IUITraitChangeRegistration RegisterForTraitChanges<T1, T2, T3, T4> (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler);
public virtual IUITraitChangeRegistration RegisterForTraitChanges (System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler, System.Type[] traits);
public virtual IUITraitChangeRegistration RegisterForTraitChanges (System.Type[] traits, ObjCRuntime.Selector action);
public virtual IUITraitChangeRegistration RegisterForTraitChanges (System.Type[] traits, System.Action<IUITraitEnvironment,UIKit.UITraitCollection> handler);
public virtual IUITraitChangeRegistration RegisterForTraitChanges (System.Type[] traits, Foundation.NSObject target, ObjCRuntime.Selector action);

New Type: UIKit.IUIWritingToolsCoordinatorDelegate

public interface IUIWritingToolsCoordinatorDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void FinishTextAnimation (UIWritingToolsCoordinator writingToolsCoordinator, UIWritingToolsCoordinatorTextAnimation textAnimation, Foundation.NSRange range, UIWritingToolsCoordinatorContext context, System.Action completion);
	public virtual void PrepareForTextAnimation (UIWritingToolsCoordinator writingToolsCoordinator, UIWritingToolsCoordinatorTextAnimation textAnimation, Foundation.NSRange range, UIWritingToolsCoordinatorContext context, System.Action completion);
	public virtual void ReplaceRange (UIWritingToolsCoordinator writingToolsCoordinator, Foundation.NSRange range, UIWritingToolsCoordinatorContext context, Foundation.NSAttributedString replacementText, UIWritingToolsCoordinatorTextReplacementReason reason, UIWritingToolsCoordinatorAnimationParameters animationParameters, UIWritingToolsCoordinatorDelegateReplaceRangeCallback completion);
	public virtual void RequestsBoundingBezierPaths (UIWritingToolsCoordinator writingToolsCoordinator, Foundation.NSRange range, UIWritingToolsCoordinatorContext context, UIWritingToolsCoordinatorDelegateRequestsBoundingBezierPathsCallback completion);
	public virtual void RequestsContexts (UIWritingToolsCoordinator writingToolsCoordinator, UIWritingToolsCoordinatorContextScope scope, UIWritingToolsCoordinatorDelegateRequestsContextsCallback completion);
	public virtual void RequestsDecorationContainerView (UIWritingToolsCoordinator writingToolsCoordinator, Foundation.NSRange range, UIWritingToolsCoordinatorContext context, UIWritingToolsCoordinatorDelegateRequestsDecorationContainerViewCallback completion);
	public virtual void RequestsPreviewForTextAnimation (UIWritingToolsCoordinator writingToolsCoordinator, UIWritingToolsCoordinatorTextAnimation textAnimation, Foundation.NSRange range, UIWritingToolsCoordinatorContext context, UIWritingToolsCoordinatorDelegateRequestsPreviewForTextAnimationCallback completion);
	public virtual void RequestsRange (UIWritingToolsCoordinator writingToolsCoordinator, CoreGraphics.CGPoint point, UIWritingToolsCoordinatorDelegateRequestsRangeCallback completion);
	public virtual void RequestsSingleContainerSubranges (UIWritingToolsCoordinator writingToolsCoordinator, Foundation.NSRange range, UIWritingToolsCoordinatorContext context, UIWritingToolsCoordinatorDelegateRequestsSingleContainerSubrangesCallback completion);
	public virtual void RequestsUnderlinePaths (UIWritingToolsCoordinator writingToolsCoordinator, Foundation.NSRange range, UIWritingToolsCoordinatorContext context, UIWritingToolsCoordinatorDelegateRequestsUnderlinePathsCallback completion);
	public virtual void SelectRanges (UIWritingToolsCoordinator writingToolsCoordinator, Foundation.NSValue[] ranges, UIWritingToolsCoordinatorContext context, System.Action completion);
	public virtual void WillChangeToState (UIWritingToolsCoordinator writingToolsCoordinator, UIWritingToolsCoordinatorState newState, System.Action completion);
}

New Type: UIKit.NSObject_UIAccessibilityTextOperations

public static class NSObject_UIAccessibilityTextOperations {
	// methods
	public static IUITextInput GetAccessibilityTextInputResponder (this Foundation.NSObject This);
	public static UITextInputReturnHandler GetAccessibilityTextInputResponderHandler (this Foundation.NSObject This);
	public static void SetAccessibilityTextInputResponder (this Foundation.NSObject This, IUITextInput textInput);
	public static void SetAccessibilityTextInputResponderHandler (this Foundation.NSObject This, UITextInputReturnHandler handler);
}

New Type: UIKit.UITextInputReturnHandler

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

New Type: UIKit.UITraitMutations

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

New Type: UIKit.UIWritingToolsCoordinator

public class UIWritingToolsCoordinator : Foundation.NSObject, ObjCRuntime.INativeObject, System.IDisposable, IUIInteraction {
	// constructors
	public UIWritingToolsCoordinator ();
	protected UIWritingToolsCoordinator (Foundation.NSObjectFlag t);
	protected UIWritingToolsCoordinator (ObjCRuntime.NativeHandle handle);
	public UIWritingToolsCoordinator (IUIWritingToolsCoordinatorDelegate delegate);
	// properties
	public virtual UIWritingToolsBehavior Behavior { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual UIView DecorationContainerView { get; set; }
	public IUIWritingToolsCoordinatorDelegate Delegate { get; }
	public virtual UIView EffectContainerView { get; set; }
	public static bool IsWritingToolsAvailable { get; }
	public virtual UIWritingToolsBehavior PreferredBehavior { get; set; }
	public virtual UIWritingToolsResultOptions PreferredResultOptions { get; set; }
	public virtual UIWritingToolsResultOptions ResultOptions { get; }
	public virtual UIWritingToolsCoordinatorState State { get; }
	public virtual UIView View { get; }
	public virtual Foundation.NSObject WeakDelegate { get; }
	// methods
	public virtual void DidMoveToView (UIView view);
	protected override void Dispose (bool disposing);
	public virtual void StopWritingTools ();
	public virtual void UpdateForReflowedTextInContext (Foundation.NSUuid contextId);
	public virtual void UpdateRange (Foundation.NSRange range, Foundation.NSAttributedString replacementText, UIWritingToolsCoordinatorTextUpdateReason reason, Foundation.NSUuid contextId);
	public virtual void WillMoveToView (UIView view);
}

New Type: UIKit.UIWritingToolsCoordinatorAnimationParameters

public class UIWritingToolsCoordinatorAnimationParameters : Foundation.NSObject {
	// constructors
	protected UIWritingToolsCoordinatorAnimationParameters (Foundation.NSObjectFlag t);
	protected UIWritingToolsCoordinatorAnimationParameters (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual System.Action CompletionHandler { get; set; }
	public virtual System.Runtime.InteropServices.NFloat Delay { get; }
	public virtual System.Runtime.InteropServices.NFloat Duration { get; }
	public virtual System.Action<float> ProgressHandler { get; set; }
}

New Type: UIKit.UIWritingToolsCoordinatorContext

public class UIWritingToolsCoordinatorContext : Foundation.NSObject {
	// constructors
	protected UIWritingToolsCoordinatorContext (Foundation.NSObjectFlag t);
	protected UIWritingToolsCoordinatorContext (ObjCRuntime.NativeHandle handle);
	public UIWritingToolsCoordinatorContext (Foundation.NSAttributedString attributedString, Foundation.NSRange range);
	// properties
	public virtual Foundation.NSAttributedString AttributedString { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual Foundation.NSUuid Identifier { get; }
	public virtual Foundation.NSRange Range { get; }
	public virtual Foundation.NSRange ResolvedRange { get; }
}

New Type: UIKit.UIWritingToolsCoordinatorContextScope

[Serializable]
public enum UIWritingToolsCoordinatorContextScope {
	FullDocument = 1,
	UserSelection = 0,
	VisibleArea = 2,
}

New Type: UIKit.UIWritingToolsCoordinatorDelegate

public abstract class UIWritingToolsCoordinatorDelegate : Foundation.NSObject, ObjCRuntime.INativeObject, System.IDisposable, IUIWritingToolsCoordinatorDelegate {
	// constructors
	protected UIWritingToolsCoordinatorDelegate ();
	protected UIWritingToolsCoordinatorDelegate (Foundation.NSObjectFlag t);
	protected UIWritingToolsCoordinatorDelegate (ObjCRuntime.NativeHandle handle);
	// methods
	public virtual void FinishTextAnimation (UIWritingToolsCoordinator writingToolsCoordinator, UIWritingToolsCoordinatorTextAnimation textAnimation, Foundation.NSRange range, UIWritingToolsCoordinatorContext context, System.Action completion);
	public virtual void PrepareForTextAnimation (UIWritingToolsCoordinator writingToolsCoordinator, UIWritingToolsCoordinatorTextAnimation textAnimation, Foundation.NSRange range, UIWritingToolsCoordinatorContext context, System.Action completion);
	public virtual void ReplaceRange (UIWritingToolsCoordinator writingToolsCoordinator, Foundation.NSRange range, UIWritingToolsCoordinatorContext context, Foundation.NSAttributedString replacementText, UIWritingToolsCoordinatorTextReplacementReason reason, UIWritingToolsCoordinatorAnimationParameters animationParameters, UIWritingToolsCoordinatorDelegateReplaceRangeCallback completion);
	public virtual void RequestsBoundingBezierPaths (UIWritingToolsCoordinator writingToolsCoordinator, Foundation.NSRange range, UIWritingToolsCoordinatorContext context, UIWritingToolsCoordinatorDelegateRequestsBoundingBezierPathsCallback completion);
	public virtual void RequestsContexts (UIWritingToolsCoordinator writingToolsCoordinator, UIWritingToolsCoordinatorContextScope scope, UIWritingToolsCoordinatorDelegateRequestsContextsCallback completion);
	public virtual void RequestsDecorationContainerView (UIWritingToolsCoordinator writingToolsCoordinator, Foundation.NSRange range, UIWritingToolsCoordinatorContext context, UIWritingToolsCoordinatorDelegateRequestsDecorationContainerViewCallback completion);
	public virtual void RequestsPreviewForTextAnimation (UIWritingToolsCoordinator writingToolsCoordinator, UIWritingToolsCoordinatorTextAnimation textAnimation, Foundation.NSRange range, UIWritingToolsCoordinatorContext context, UIWritingToolsCoordinatorDelegateRequestsPreviewForTextAnimationCallback completion);
	public virtual void RequestsRange (UIWritingToolsCoordinator writingToolsCoordinator, CoreGraphics.CGPoint point, UIWritingToolsCoordinatorDelegateRequestsRangeCallback completion);
	public virtual void RequestsSingleContainerSubranges (UIWritingToolsCoordinator writingToolsCoordinator, Foundation.NSRange range, UIWritingToolsCoordinatorContext context, UIWritingToolsCoordinatorDelegateRequestsSingleContainerSubrangesCallback completion);
	public virtual void RequestsUnderlinePaths (UIWritingToolsCoordinator writingToolsCoordinator, Foundation.NSRange range, UIWritingToolsCoordinatorContext context, UIWritingToolsCoordinatorDelegateRequestsUnderlinePathsCallback completion);
	public virtual void SelectRanges (UIWritingToolsCoordinator writingToolsCoordinator, Foundation.NSValue[] ranges, UIWritingToolsCoordinatorContext context, System.Action completion);
	public virtual void WillChangeToState (UIWritingToolsCoordinator writingToolsCoordinator, UIWritingToolsCoordinatorState newState, System.Action completion);
}

New Type: UIKit.UIWritingToolsCoordinatorDelegateReplaceRangeCallback

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

New Type: UIKit.UIWritingToolsCoordinatorDelegateRequestsBoundingBezierPathsCallback

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

New Type: UIKit.UIWritingToolsCoordinatorDelegateRequestsContextsCallback

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

New Type: UIKit.UIWritingToolsCoordinatorDelegateRequestsDecorationContainerViewCallback

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

New Type: UIKit.UIWritingToolsCoordinatorDelegateRequestsPreviewForTextAnimationCallback

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

New Type: UIKit.UIWritingToolsCoordinatorDelegateRequestsRangeCallback

public sealed delegate UIWritingToolsCoordinatorDelegateRequestsRangeCallback : System.MulticastDelegate {
	// constructors
	public UIWritingToolsCoordinatorDelegateRequestsRangeCallback (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (Foundation.NSRange range, Foundation.NSUuid contextId, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (Foundation.NSRange range, Foundation.NSUuid contextId);
}

New Type: UIKit.UIWritingToolsCoordinatorDelegateRequestsSingleContainerSubrangesCallback

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

New Type: UIKit.UIWritingToolsCoordinatorDelegateRequestsUnderlinePathsCallback

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

New Type: UIKit.UIWritingToolsCoordinatorState

[Serializable]
public enum UIWritingToolsCoordinatorState {
	Inactive = 0,
	InteractiveResting = 2,
	InteractiveStreaming = 3,
	Noninteractive = 1,
}

New Type: UIKit.UIWritingToolsCoordinatorTextAnimation

[Serializable]
public enum UIWritingToolsCoordinatorTextAnimation {
	Anticipate = 0,
	AnticipateInactive = 8,
	Insert = 2,
	Remove = 1,
	Translate = 9,
}

New Type: UIKit.UIWritingToolsCoordinatorTextReplacementReason

[Serializable]
public enum UIWritingToolsCoordinatorTextReplacementReason {
	Interactive = 0,
	Noninteractive = 1,
}

New Type: UIKit.UIWritingToolsCoordinatorTextUpdateReason

[Serializable]
public enum UIWritingToolsCoordinatorTextUpdateReason {
	Typing = 0,
	UndoRedo = 1,
}

Namespace UniformTypeIdentifiers

Type Changed: UniformTypeIdentifiers.UTTypes

Added property:

public static UTType JpegXl { get; }

Namespace Vision

Type Changed: Vision.VNCircle

Added constructor:

public VNCircle (VNPoint center, double radiusOrDiameter, VNCircleInitializationOption option);

Type Changed: Vision.VNUtils

Added property:

public static double VisionVersionNumber { get; }

Type Changed: Vision.VNVector

Added constructor:

public VNVector (System.ValueTuple<System.Double,System.Double> polarCoordinates);

New Type: Vision.VNCircleInitializationOption

[Serializable]
public enum VNCircleInitializationOption {
	Diameter = 1,
	Radius = 0,
}

Namespace WebKit

Type Changed: WebKit.IWKDownloadDelegate

Added methods:

public virtual void DecidePlaceholderPolicy (WKDownload download, WKDownloadDelegateDecidePlaceholderPolicyCallback completionHandler);
public virtual void DidReceiveFinalUrl (WKDownload download, Foundation.NSUrl url);
public virtual void DidReceivePlaceholderUrl (WKDownload download, Foundation.NSUrl url, System.Action completionHandler);

Type Changed: WebKit.WKDownload

Added properties:

public virtual WKFrameInfo OriginatingFrame { get; }
public virtual bool UserInitiated { get; }

Type Changed: WebKit.WKDownloadDelegate

Added methods:

public virtual void DecidePlaceholderPolicy (WKDownload download, WKDownloadDelegateDecidePlaceholderPolicyCallback completionHandler);
public virtual void DidReceiveFinalUrl (WKDownload download, Foundation.NSUrl url);
public virtual void DidReceivePlaceholderUrl (WKDownload download, Foundation.NSUrl url, System.Action completionHandler);

Type Changed: WebKit.WKDownloadDelegate_Extensions

Added methods:

public static void DecidePlaceholderPolicy (this IWKDownloadDelegate This, WKDownload download, WKDownloadDelegateDecidePlaceholderPolicyCallback completionHandler);
public static void DidReceiveFinalUrl (this IWKDownloadDelegate This, WKDownload download, Foundation.NSUrl url);
public static void DidReceivePlaceholderUrl (this IWKDownloadDelegate This, WKDownload download, Foundation.NSUrl url, System.Action completionHandler);

Type Changed: WebKit.WKWebpagePreferences

Added property:

public virtual WKWebpagePreferencesUpgradeToHttpsPolicy PreferredHttpsNavigationPolicy { get; set; }

Type Changed: WebKit.WKWebsiteDataStore

Added property:

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

New Type: WebKit.WKDownloadDelegateDecidePlaceholderPolicyCallback

public sealed delegate WKDownloadDelegateDecidePlaceholderPolicyCallback : System.MulticastDelegate {
	// constructors
	public WKDownloadDelegateDecidePlaceholderPolicyCallback (object object, IntPtr method);
	// methods
	public virtual System.IAsyncResult BeginInvoke (WKDownloadPlaceholderPolicy policy, Foundation.NSUrl url, System.AsyncCallback callback, object object);
	public virtual void EndInvoke (System.IAsyncResult result);
	public virtual void Invoke (WKDownloadPlaceholderPolicy policy, Foundation.NSUrl url);
}

New Type: WebKit.WKDownloadPlaceholderPolicy

[Serializable]
public enum WKDownloadPlaceholderPolicy {
	Disable = 0,
	Enable = 1,
}

New Type: WebKit.WKWebpagePreferencesUpgradeToHttpsPolicy

[Serializable]
public enum WKWebpagePreferencesUpgradeToHttpsPolicy {
	AutomaticFallbackToHttp = 1,
	ErrorOnFailure = 3,
	KeepAsRequested = 0,
	UserMediatedFallbackToHttp = 2,
}

New Namespace ObjCBindings

New Type: ObjCBindings.BindingTypeAttribute

public class BindingTypeAttribute : System.Attribute {
	// constructors
	public BindingTypeAttribute ();
	// properties
	public string Name { get; set; }
}

New Type: ObjCBindings.Constructor

[Serializable]
[Flags]
public enum Constructor {
	Default = 0,
	DesignatedInitializer = 4,
}

New Type: ObjCBindings.EnumValue

[Serializable]
[Flags]
public enum EnumValue {
	None = 0,
}

New Type: ObjCBindings.ExportAttribute`1

public class ExportAttribute`1 : System.Attribute {
	// constructors
	protected ExportAttribute`1 ();
	public ExportAttribute`1 (string selector);
	public ExportAttribute`1 (string selector, ObjCRuntime.ArgumentSemantic semantic);
	public ExportAttribute`1 (string selector, T flags);
	public ExportAttribute`1 (string selector, ObjCRuntime.ArgumentSemantic semantic, T flags);
	// properties
	public ObjCRuntime.ArgumentSemantic ArgumentSemantic { get; set; }
	public T Flags { get; set; }
	public string Selector { get; set; }
}

New Type: ObjCBindings.Field

[Serializable]
[Flags]
public enum Field {
	None = 0,
}

New Type: ObjCBindings.FieldAttribute`1

public class FieldAttribute`1 : System.Attribute {
	// constructors
	public FieldAttribute`1 (string symbolName);
	public FieldAttribute`1 (string symbolName, string libraryName);
	public FieldAttribute`1 (string symbolName, T flags);
	public FieldAttribute`1 (string symbolName, string libraryName, T flags);
	// properties
	public T Flags { get; set; }
	public string LibraryName { get; set; }
	public string SymbolName { get; set; }
}

New Type: ObjCBindings.Method

[Serializable]
[Flags]
public enum Method {
	Default = 0,
	IgnoredInDelegate = 8,
	IsVariadic = 4,
	MarshalNativeExceptions = 16,
}

New Type: ObjCBindings.Property

[Serializable]
[Flags]
public enum Property {
	Default = 0,
	IsThreadStaticAttribute = 4,
	Notification = 8,
}

New Namespace ScreenCaptureKit

New Type: ScreenCaptureKit.ISCContentSharingPickerObserver

public interface ISCContentSharingPickerObserver : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DidCancel (SCContentSharingPicker picker, SCStream stream);
	public virtual void DidFail (Foundation.NSError error);
	public virtual void DidUpdate (SCContentSharingPicker picker, SCContentFilter filter, SCStream stream);
}

New Type: ScreenCaptureKit.ISCRecordingOutputDelegate

public interface ISCRecordingOutputDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DidFail (SCRecordingOutput recordingOutput, Foundation.NSError error);
	public virtual void DidFinishRecording (SCRecordingOutput recordingOutput);
	public virtual void DidStartRecording (SCRecordingOutput recordingOutput);
}

New Type: ScreenCaptureKit.ISCStreamDelegate

public interface ISCStreamDelegate : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DidStop (SCStream stream, Foundation.NSError error);
	public virtual void OutputVideoEffectDidStart (SCStream stream);
	public virtual void OutputVideoEffectDidStop (SCStream stream);
	public virtual void StreamDidBecomeActive (SCStream stream);
	public virtual void StreamDidBecomeInactive (SCStream stream);
}

New Type: ScreenCaptureKit.ISCStreamOutput

public interface ISCStreamOutput : ObjCRuntime.INativeObject, System.IDisposable {
	// methods
	public virtual void DidOutputSampleBuffer (SCStream stream, CoreMedia.CMSampleBuffer sampleBuffer, SCStreamOutputType type);
}

New Type: ScreenCaptureKit.SCCaptureDynamicRange

[Serializable]
public enum SCCaptureDynamicRange {
	HdrCanonicalDisplay = 2,
	HdrLocalDisplay = 1,
	Sdr = 0,
}

New Type: ScreenCaptureKit.SCCaptureResolutionType

[Serializable]
public enum SCCaptureResolutionType {
	Automatic = 0,
	Best = 1,
	Nominal = 2,
}

New Type: ScreenCaptureKit.SCContentFilter

public class SCContentFilter : Foundation.NSObject {
	// constructors
	protected SCContentFilter (Foundation.NSObjectFlag t);
	protected SCContentFilter (ObjCRuntime.NativeHandle handle);
	public SCContentFilter (SCWindow window);
	public SCContentFilter (SCDisplay display, SCWindow[] windows, SCContentFilterOption option);
	public SCContentFilter (SCDisplay display, SCRunningApplication[] applications, SCWindow[] exceptingWindows, SCContentFilterOption option);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual CoreGraphics.CGRect ContentRect { get; }
	public virtual bool IncludeMenuBar { get; set; }
	public virtual SCRunningApplication[] IncludedApplications { get; }
	public virtual SCDisplay[] IncludedDisplays { get; }
	public virtual SCWindow[] IncludedWindows { get; }
	public virtual float PointPixelScale { get; }
	public virtual SCShareableContentStyle Style { get; }
}

New Type: ScreenCaptureKit.SCContentFilterOption

[Serializable]
public enum SCContentFilterOption {
	Exclude = 1,
	Include = 0,
}

New Type: ScreenCaptureKit.SCContentSharingPicker

public class SCContentSharingPicker : Foundation.NSObject {
	// constructors
	protected SCContentSharingPicker (Foundation.NSObjectFlag t);
	protected SCContentSharingPicker (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual bool Active { get; set; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual SCContentSharingPickerConfiguration DefaultConfiguration { get; set; }
	public virtual int MaximumStreamCount { get; set; }
	public static SCContentSharingPicker SharedPicker { get; }
	// methods
	public virtual void AddObserver (ISCContentSharingPickerObserver observer);
	public virtual void Present ();
	public virtual void Present (SCShareableContentStyle contentStyle);
	public virtual void Present (SCStream stream);
	public virtual void Present (SCStream stream, SCShareableContentStyle contentStyle);
	public virtual void RemoveObserver (ISCContentSharingPickerObserver observer);
	public virtual void SetConfiguration (SCContentSharingPickerConfiguration pickerConfig, SCStream stream);
}

New Type: ScreenCaptureKit.SCContentSharingPickerConfiguration

public class SCContentSharingPickerConfiguration : Foundation.NSObject {
	// constructors
	public SCContentSharingPickerConfiguration ();
	protected SCContentSharingPickerConfiguration (Foundation.NSObjectFlag t);
	protected SCContentSharingPickerConfiguration (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual SCContentSharingPickerMode AllowedPickerModes { get; set; }
	public virtual bool AllowsChangingSelectedContent { get; set; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual string[] ExcludedBundleIds { get; set; }
	public virtual Foundation.NSNumber[] ExcludedWindowIds { get; set; }
}

New Type: ScreenCaptureKit.SCContentSharingPickerMode

[Serializable]
[Flags]
public enum SCContentSharingPickerMode {
	MultipleApplications = 8,
	MultipleWindows = 2,
	SingleApplication = 4,
	SingleDisplay = 16,
	SingleWindow = 1,
}

New Type: ScreenCaptureKit.SCContentSharingPickerObserver

public abstract class SCContentSharingPickerObserver : Foundation.NSObject, ObjCRuntime.INativeObject, ISCContentSharingPickerObserver, System.IDisposable {
	// constructors
	protected SCContentSharingPickerObserver ();
	protected SCContentSharingPickerObserver (Foundation.NSObjectFlag t);
	protected SCContentSharingPickerObserver (ObjCRuntime.NativeHandle handle);
	// methods
	public virtual void DidCancel (SCContentSharingPicker picker, SCStream stream);
	public virtual void DidFail (Foundation.NSError error);
	public virtual void DidUpdate (SCContentSharingPicker picker, SCContentFilter filter, SCStream stream);
}

New Type: ScreenCaptureKit.SCDisplay

public class SCDisplay : Foundation.NSObject {
	// constructors
	protected SCDisplay (Foundation.NSObjectFlag t);
	protected SCDisplay (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual uint DisplayId { get; }
	public virtual CoreGraphics.CGRect Frame { get; }
	public virtual IntPtr Height { get; }
	public virtual IntPtr Width { get; }
}

New Type: ScreenCaptureKit.SCFrameStatus

[Serializable]
public enum SCFrameStatus {
	Blank = 2,
	Complete = 0,
	Idle = 1,
	Started = 4,
	Stopped = 5,
	Suspended = 3,
}

New Type: ScreenCaptureKit.SCPresenterOverlayAlertSetting

[Serializable]
public enum SCPresenterOverlayAlertSetting {
	Always = 2,
	Never = 1,
	System = 0,
}

New Type: ScreenCaptureKit.SCRecordingOutput

public class SCRecordingOutput : Foundation.NSObject {
	// constructors
	protected SCRecordingOutput (Foundation.NSObjectFlag t);
	protected SCRecordingOutput (ObjCRuntime.NativeHandle handle);
	public SCRecordingOutput (SCRecordingOutputConfiguration recordingOutputConfiguration, ISCRecordingOutputDelegate delegate);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual CoreMedia.CMTime RecordedDuration { get; }
	public virtual IntPtr RecordedFileSize { get; }
}

New Type: ScreenCaptureKit.SCRecordingOutputConfiguration

public class SCRecordingOutputConfiguration : Foundation.NSObject {
	// constructors
	public SCRecordingOutputConfiguration ();
	protected SCRecordingOutputConfiguration (Foundation.NSObjectFlag t);
	protected SCRecordingOutputConfiguration (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual AVFoundation.AVFileTypes[] AvailableOutputFileTypes { get; }
	public virtual AVFoundation.AVVideoCodecType[] AvailableVideoCodecTypes { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual AVFoundation.AVFileTypes OutputFileType { get; set; }
	public virtual Foundation.NSUrl OutputUrl { get; set; }
	public virtual AVFoundation.AVVideoCodecType VideoCodecType { get; set; }
}

New Type: ScreenCaptureKit.SCRecordingOutputDelegate

public class SCRecordingOutputDelegate : Foundation.NSObject, ObjCRuntime.INativeObject, ISCRecordingOutputDelegate, System.IDisposable {
	// constructors
	public SCRecordingOutputDelegate ();
	protected SCRecordingOutputDelegate (Foundation.NSObjectFlag t);
	protected SCRecordingOutputDelegate (ObjCRuntime.NativeHandle handle);
	// methods
	public virtual void DidFail (SCRecordingOutput recordingOutput, Foundation.NSError error);
	public virtual void DidFinishRecording (SCRecordingOutput recordingOutput);
	public virtual void DidStartRecording (SCRecordingOutput recordingOutput);
}

New Type: ScreenCaptureKit.SCRunningApplication

public class SCRunningApplication : Foundation.NSObject {
	// constructors
	protected SCRunningApplication (Foundation.NSObjectFlag t);
	protected SCRunningApplication (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual string ApplicationName { get; }
	public virtual string BundleIdentifier { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual int ProcessId { get; }
}

New Type: ScreenCaptureKit.SCScreenshotManager

public class SCScreenshotManager : Foundation.NSObject {
	// constructors
	protected SCScreenshotManager (Foundation.NSObjectFlag t);
	protected SCScreenshotManager (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	// methods
	public static void CaptureImage (CoreGraphics.CGRect rect, SCScreenshotManagerCaptureImageCallback completionHandler);
	public static void CaptureImage (SCContentFilter contentFilter, SCStreamConfiguration config, System.Action<CoreGraphics.CGImage,Foundation.NSError> completionHandler);
	public static System.Threading.Tasks.Task<CoreGraphics.CGImage> CaptureImageAsync (CoreGraphics.CGRect rect);
	public static System.Threading.Tasks.Task<CoreGraphics.CGImage> CaptureImageAsync (SCContentFilter contentFilter, SCStreamConfiguration config);
	public static void CaptureSampleBuffer (SCContentFilter contentFilter, SCStreamConfiguration config, System.Action<CoreMedia.CMSampleBuffer,Foundation.NSError> completionHandler);
	public static System.Threading.Tasks.Task<CoreMedia.CMSampleBuffer> CaptureSampleBufferAsync (SCContentFilter contentFilter, SCStreamConfiguration config);
}

New Type: ScreenCaptureKit.SCScreenshotManagerCaptureImageCallback

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

New Type: ScreenCaptureKit.SCShareableContent

public class SCShareableContent : Foundation.NSObject {
	// constructors
	protected SCShareableContent (Foundation.NSObjectFlag t);
	protected SCShareableContent (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual SCRunningApplication[] Applications { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual SCDisplay[] Displays { get; }
	public virtual SCWindow[] Windows { get; }
	// methods
	public static void GetCurrentProcessShareableContent (System.Action<SCShareableContent,Foundation.NSError> completionHandler);
	public static System.Threading.Tasks.Task<SCShareableContent> GetCurrentProcessShareableContentAsync ();
	public static SCShareableContentInfo GetInfo (SCContentFilter filter);
	public static void GetShareableContent (System.Action<SCShareableContent,Foundation.NSError> completionHandler);
	public static void GetShareableContent (bool excludeDesktopWindows, bool onScreenWindowsOnly, System.Action<SCShareableContent,Foundation.NSError> completionHandler);
	public static void GetShareableContentAboveWindow (bool excludeDesktopWindows, SCWindow onScreenWindowsOnlyAboveWindow, System.Action<SCShareableContent,Foundation.NSError> completionHandler);
	public static System.Threading.Tasks.Task<SCShareableContent> GetShareableContentAboveWindowAsync (bool excludeDesktopWindows, SCWindow onScreenWindowsOnlyAboveWindow);
	public static System.Threading.Tasks.Task<SCShareableContent> GetShareableContentAsync ();
	public static System.Threading.Tasks.Task<SCShareableContent> GetShareableContentAsync (bool excludeDesktopWindows, bool onScreenWindowsOnly);
	public static void GetShareableContentBelowWindow (bool excludeDesktopWindows, SCWindow onScreenWindowsOnlyBelowWindow, System.Action<SCShareableContent,Foundation.NSError> completionHandler);
	public static System.Threading.Tasks.Task<SCShareableContent> GetShareableContentBelowWindowAsync (bool excludeDesktopWindows, SCWindow onScreenWindowsOnlyBelowWindow);
}

New Type: ScreenCaptureKit.SCShareableContentInfo

public class SCShareableContentInfo : Foundation.NSObject {
	// constructors
	protected SCShareableContentInfo (Foundation.NSObjectFlag t);
	protected SCShareableContentInfo (ObjCRuntime.NativeHandle handle);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual CoreGraphics.CGRect ContentRect { get; }
	public virtual float PointPixelScale { get; }
	public virtual SCShareableContentStyle Style { get; }
}

New Type: ScreenCaptureKit.SCShareableContentStyle

[Serializable]
public enum SCShareableContentStyle {
	Application = 3,
	Display = 2,
	None = 0,
	Window = 1,
}

New Type: ScreenCaptureKit.SCStream

public class SCStream : Foundation.NSObject {
	// constructors
	protected SCStream (Foundation.NSObjectFlag t);
	protected SCStream (ObjCRuntime.NativeHandle handle);
	public SCStream (SCContentFilter contentFilter, SCStreamConfiguration streamConfig, ISCStreamDelegate aDelegate);
	// properties
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual CoreMedia.CMClock SynchronizationClock { get; }
	// methods
	public virtual bool AddRecordingOutput (SCRecordingOutput recordingOutput, out Foundation.NSError error);
	public virtual bool AddStreamOutput (ISCStreamOutput output, SCStreamOutputType type, CoreFoundation.DispatchQueue sampleHandlerQueue, out Foundation.NSError error);
	public virtual bool RemoveRecordingOutput (SCRecordingOutput recordingOutput, out Foundation.NSError error);
	public virtual bool RemoveStreamOutput (ISCStreamOutput output, SCStreamOutputType type, out Foundation.NSError error);
	public virtual void StartCapture (System.Action<Foundation.NSError> completionHandler);
	public virtual void StopCapture (System.Action<Foundation.NSError> completionHandler);
	public virtual void UpdateConfiguration (SCStreamConfiguration streamConfig, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task UpdateConfigurationAsync (SCStreamConfiguration streamConfig);
	public virtual void UpdateContentFilter (SCContentFilter contentFilter, System.Action<Foundation.NSError> completionHandler);
	public virtual System.Threading.Tasks.Task UpdateContentFilterAsync (SCContentFilter contentFilter);
}

New Type: ScreenCaptureKit.SCStreamConfiguration

public class SCStreamConfiguration : Foundation.NSObject {
	// constructors
	public SCStreamConfiguration ();
	protected SCStreamConfiguration (Foundation.NSObjectFlag t);
	protected SCStreamConfiguration (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual CoreGraphics.CGColor BackgroundColor { get; set; }
	public virtual SCCaptureDynamicRange CaptureDynamicRange { get; set; }
	public virtual bool CaptureMicrophone { get; set; }
	public virtual SCCaptureResolutionType CaptureResolution { get; set; }
	public virtual bool CapturesAudio { get; set; }
	public virtual bool CapturesShadowsOnly { get; set; }
	public virtual IntPtr ChannelCount { get; set; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual CoreGraphics.CGRect DestinationRect { get; set; }
	public virtual bool ExcludesCurrentProcessAudio { get; set; }
	public virtual UIntPtr Height { get; set; }
	public virtual bool IgnoreGlobalClipDisplay { get; set; }
	public virtual bool IgnoreGlobalClipSingleWindow { get; set; }
	public virtual bool IgnoreShadowsDisplay { get; set; }
	public virtual bool IgnoreShadowsSingleWindow { get; set; }
	public virtual bool IncludeChildWindows { get; set; }
	public virtual CoreMedia.CMTime MinimumFrameInterval { get; set; }
	public virtual CoreVideo.CVPixelFormatType PixelFormat { get; set; }
	public virtual SCPresenterOverlayAlertSetting PresenterOverlayPrivacyAlertSetting { get; set; }
	public virtual bool PreservesAspectRatio { get; set; }
	public virtual IntPtr QueueDepth { get; set; }
	public virtual IntPtr SampleRate { get; set; }
	public virtual bool ScalesToFit { get; set; }
	public virtual bool ShouldBeOpaque { get; set; }
	public virtual bool ShowMouseClicks { get; set; }
	public virtual bool ShowsCursor { get; set; }
	public virtual CoreGraphics.CGRect SourceRect { get; set; }
	public virtual string StreamName { get; set; }
	public virtual Foundation.NSString WeakColorMatrix { get; set; }
	public virtual Foundation.NSString WeakColorSpaceName { get; set; }
	public virtual UIntPtr Width { get; set; }
	// methods
	public static SCStreamConfiguration Create (SCStreamConfigurationPreset preset);
	protected override void Dispose (bool disposing);
}

New Type: ScreenCaptureKit.SCStreamConfigurationPreset

[Serializable]
public enum SCStreamConfigurationPreset {
	CaptureHdrScreenshotCanonicalDisplay = 3,
	CaptureHdrScreenshotLocalDisplay = 2,
	CaptureHdrStreamCanonicalDisplay = 1,
	CaptureHdrStreamLocalDisplay = 0,
}

New Type: ScreenCaptureKit.SCStreamDelegate

public class SCStreamDelegate : Foundation.NSObject, ObjCRuntime.INativeObject, ISCStreamDelegate, System.IDisposable {
	// constructors
	public SCStreamDelegate ();
	protected SCStreamDelegate (Foundation.NSObjectFlag t);
	protected SCStreamDelegate (ObjCRuntime.NativeHandle handle);
	// methods
	public virtual void DidStop (SCStream stream, Foundation.NSError error);
	public virtual void OutputVideoEffectDidStart (SCStream stream);
	public virtual void OutputVideoEffectDidStop (SCStream stream);
	public virtual void StreamDidBecomeActive (SCStream stream);
	public virtual void StreamDidBecomeInactive (SCStream stream);
}

New Type: ScreenCaptureKit.SCStreamDelegate_Extensions

public static class SCStreamDelegate_Extensions {
	// methods
	public static void DidStop (this ISCStreamDelegate This, SCStream stream, Foundation.NSError error);
	public static void OutputVideoEffectDidStart (this ISCStreamDelegate This, SCStream stream);
	public static void OutputVideoEffectDidStop (this ISCStreamDelegate This, SCStream stream);
	public static void StreamDidBecomeActive (this ISCStreamDelegate This, SCStream stream);
	public static void StreamDidBecomeInactive (this ISCStreamDelegate This, SCStream stream);
}

New Type: ScreenCaptureKit.SCStreamErrorCode

[Serializable]
public enum SCStreamErrorCode {
	AttemptToConfigState = -3810,
	AttemptToStartStreamState = -3807,
	AttemptToStopStreamState = -3808,
	AttemptToUpdateFilterState = -3809,
	FailedApplicationConnectionInterrupted = -3805,
	FailedApplicationConnectionInvalid = -3804,
	FailedNoMatchingApplicationContext = -3806,
	FailedToStart = -3802,
	FailedToStartAudioCapture = -3818,
	FailedToStartMicrophoneCapture = -3820,
	FailedToStopAudioCapture = -3819,
	InternalError = -3811,
	InvalidParameter = -3812,
	MissingEntitlements = -3803,
	NoCaptureSource = -3815,
	NoDisplayList = -3814,
	NoWindowList = -3813,
	RemovingStream = -3816,
	SystemStoppedStream = -3821,
	UserDeclined = -3801,
	UserStopped = -3817,
}

New Type: ScreenCaptureKit.SCStreamErrorCodeExtensions

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

New Type: ScreenCaptureKit.SCStreamFrameInfoKeys

public static class SCStreamFrameInfoKeys {
	// properties
	public static Foundation.NSString BoundingRect { get; }
	public static Foundation.NSString ContentRect { get; }
	public static Foundation.NSString ContentScale { get; }
	public static Foundation.NSString DirtyRects { get; }
	public static Foundation.NSString DisplayTime { get; }
	public static Foundation.NSString InfoScaleFactor { get; }
	public static Foundation.NSString PresenterOverlayContentRect { get; }
	public static Foundation.NSString ScreenRect { get; }
	public static Foundation.NSString Status { get; }
}

New Type: ScreenCaptureKit.SCStreamOutputType

[Serializable]
public enum SCStreamOutputType {
	Audio = 1,
	Microphone = 2,
	Screen = 0,
}

New Type: ScreenCaptureKit.SCStreamOutput_Extensions

public static class SCStreamOutput_Extensions {
	// methods
	public static void DidOutputSampleBuffer (this ISCStreamOutput This, SCStream stream, CoreMedia.CMSampleBuffer sampleBuffer, SCStreamOutputType type);
}

New Type: ScreenCaptureKit.SCWindow

public class SCWindow : Foundation.NSObject {
	// constructors
	protected SCWindow (Foundation.NSObjectFlag t);
	protected SCWindow (ObjCRuntime.NativeHandle handle);
	// properties
	public virtual bool Active { get; }
	public override ObjCRuntime.NativeHandle ClassHandle { get; }
	public virtual CoreGraphics.CGRect Frame { get; }
	public virtual bool OnScreen { get; }
	public virtual SCRunningApplication OwningApplication { get; }
	public virtual string Title { get; }
	public virtual uint WindowId { get; }
	public virtual IntPtr WindowLayer { get; }
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment