Skip to content

AuthenticationServices tvOS xcode16.0 b1

Rolf Bjarne Kvinge edited this page Jun 27, 2024 · 2 revisions

#AuthenticationServices.framework

Rolf

diff -ruN /Applications/Xcode_15.4.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/AuthenticationServices.framework/Headers/ASAuthorizationError.h /Applications/Xcode_16.0.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/AuthenticationServices.framework/Headers/ASAuthorizationError.h
--- /Applications/Xcode_15.4.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/AuthenticationServices.framework/Headers/ASAuthorizationError.h	2024-04-23 05:59:52
+++ /Applications/Xcode_16.0.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/AuthenticationServices.framework/Headers/ASAuthorizationError.h	2024-05-30 04:30:05
@@ -19,6 +19,9 @@
     ASAuthorizationErrorNotHandled = 1003,
     ASAuthorizationErrorFailed = 1004,
     ASAuthorizationErrorNotInteractive API_AVAILABLE(ios(15.0), macos(12.0)) API_UNAVAILABLE(tvos, watchos) = 1005,
+
+    /// This error should only be returned when specifying @c excludedCredentials on a public key credential registration request.
+    ASAuthorizationErrorMatchedExcludedCredential AS_API_AVAILABLE(ios(18.0), macos(15.0), visionos(2.0)) = 1006,
 } API_AVAILABLE(ios(13.0), macos(10.15), tvos(13.0), watchos(6.0));
 
 NS_HEADER_AUDIT_END(nullability, sendability)
diff -ruN /Applications/Xcode_15.4.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/AuthenticationServices.framework/Headers/ASAuthorizationPlatformPublicKeyCredentialProvider.h /Applications/Xcode_16.0.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/AuthenticationServices.framework/Headers/ASAuthorizationPlatformPublicKeyCredentialProvider.h
--- /Applications/Xcode_15.4.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/AuthenticationServices.framework/Headers/ASAuthorizationPlatformPublicKeyCredentialProvider.h	2024-04-23 05:59:53
+++ /Applications/Xcode_16.0.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/AuthenticationServices.framework/Headers/ASAuthorizationPlatformPublicKeyCredentialProvider.h	2024-05-30 04:30:06
@@ -21,6 +23,14 @@
     @param userID An identifier to be stored alongside the credential, which will be returned with the credential when it is used to authenticate.
  */
 - (ASAuthorizationPlatformPublicKeyCredentialRegistrationRequest *)createCredentialRegistrationRequestWithChallenge:(NSData *)challenge name:(NSString *)name userID:(NSData *)userID NS_SWIFT_NAME(createCredentialRegistrationRequest(challenge:name:userID:));
+
+/*! @abstract Create a request to register a new platform credential.
+    @param challenge The challenge to sign.
+    @param name The user name for the new credential.
+    @param userID An identifier to be stored alongside the credential, which will be returned with the credential when it is used to authenticate.
+    @param requestStyle The style for this request.
+ */
+- (ASAuthorizationPlatformPublicKeyCredentialRegistrationRequest *)createCredentialRegistrationRequestWithChallenge:(NSData *)challenge name:(NSString *)name userID:(NSData *)userID requestStyle:(ASAuthorizationPlatformPublicKeyCredentialRegistrationRequestStyle)requestStyle NS_SWIFT_NAME(createCredentialRegistrationRequest(challenge:name:userID:requestStyle:)) API_AVAILABLE(macos(15.0), ios(18.0), visionos(2.0)) API_UNAVAILABLE(tvos, watchos);
 
 /*! @abstract Create a request to authenticate using an existing credential.
     @param challenge The challenge to sign.
diff -ruN /Applications/Xcode_15.4.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/AuthenticationServices.framework/Headers/ASAuthorizationPlatformPublicKeyCredentialRegistrationRequest.h /Applications/Xcode_16.0.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/AuthenticationServices.framework/Headers/ASAuthorizationPlatformPublicKeyCredentialRegistrationRequest.h
--- /Applications/Xcode_15.4.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/AuthenticationServices.framework/Headers/ASAuthorizationPlatformPublicKeyCredentialRegistrationRequest.h	2024-04-23 05:59:52
+++ /Applications/Xcode_16.0.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/AuthenticationServices.framework/Headers/ASAuthorizationPlatformPublicKeyCredentialRegistrationRequest.h	2024-05-30 04:30:05
@@ -7,6 +7,22 @@
 
 #import <AuthenticationServices/ASAuthorizationWebBrowserPlatformPublicKeyCredentialRegistrationRequest.h>
 
+
+typedef NS_ENUM(NSInteger, ASAuthorizationPlatformPublicKeyCredentialRegistrationRequestStyle) {
+    /// Perform a request using the standard presentation style. This is the default style.
+    ASAuthorizationPlatformPublicKeyCredentialRegistrationRequestStyleStandard,
+
+    /// Perform a conditional request. This style of request is meant to opportunistically add passkeys to existing
+    /// password-based accounts, at the discretion of the user's credential manager. It should be performed
+    /// shortly after a user has signed in with a password. If the user is using a password and passkey manager,
+    /// and certain internal conditions of that credential manager are met (e.g. the user signed in recently with a
+    /// matching password-based account and does not yet have a passkey for this account), then this request
+    /// may proceed automatically, without further user interaction. If any of the internal conditions are not met,
+    /// this request will return an error without showing any UI to the user, and may be retried the next time they
+    /// sign in.
+    ASAuthorizationPlatformPublicKeyCredentialRegistrationRequestStyleConditional,
+} NS_SWIFT_NAME(ASAuthorizationPlatformPublicKeyCredentialRegistrationRequest.RequestStyle) API_AVAILABLE(macos(15.0), ios(18.0), visionos(2.0)) API_UNAVAILABLE(tvos) API_UNAVAILABLE(watchos);
+
 AS_HEADER_AUDIT_BEGIN(nullability, sendability)
 
 API_AVAILABLE(macos(12.0), ios(15.0), tvos(16.0)) API_UNAVAILABLE(watchos)
@@ -16,6 +32,9 @@
 - (instancetype)init NS_UNAVAILABLE;
 
 @property (nonatomic, nullable) ASAuthorizationPublicKeyCredentialLargeBlobRegistrationInput *largeBlob NS_REFINED_FOR_SWIFT API_AVAILABLE(macos(14.0), ios(17.0)) API_UNAVAILABLE(tvos, watchos);
+
+
+@property (nonatomic) ASAuthorizationPlatformPublicKeyCredentialRegistrationRequestStyle requestStyle API_AVAILABLE(macos(15.0), ios(18.0), visionos(2.0)) API_UNAVAILABLE(tvos, watchos);
 
 @end
 
diff -ruN /Applications/Xcode_15.4.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/AuthenticationServices.framework/Headers/ASAuthorizationProviderExtensionAuthorizationResult.h /Applications/Xcode_16.0.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/AuthenticationServices.framework/Headers/ASAuthorizationProviderExtensionAuthorizationResult.h
--- /Applications/Xcode_15.4.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/AuthenticationServices.framework/Headers/ASAuthorizationProviderExtensionAuthorizationResult.h	2024-04-23 05:59:52
+++ /Applications/Xcode_16.0.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/AuthenticationServices.framework/Headers/ASAuthorizationProviderExtensionAuthorizationResult.h	2024-05-30 04:30:04
@@ -15,11 +15,11 @@
 
 /*! @abstract Authorization succeeded with an authorization tokens stored in HTTP headers.
  */
-- (instancetype)initWithHTTPAuthorizationHeaders:(NSDictionary<NSString *, NSString *> *)httpAuthorizationHeaders  NS_SWIFT_NAME(init(httpAuthorizationHeaders:));
+- (instancetype)initWithHTTPAuthorizationHeaders:(NSDictionary<NSString *, NSString *> *)httpAuthorizationHeaders  NS_SWIFT_NAME(init(httpAuthorizationHeaders:)) API_UNAVAILABLE(watchos, tvos);
 
 /*! @abstract Authorization succeeded with a HTTP response.
  */
-- (instancetype)initWithHTTPResponse:(NSHTTPURLResponse *)httpResponse httpBody:(nullable NSData *)httpBody NS_SWIFT_NAME(init(httpResponse:httpBody:));
+- (instancetype)initWithHTTPResponse:(NSHTTPURLResponse *)httpResponse httpBody:(nullable NSData *)httpBody NS_SWIFT_NAME(init(httpResponse:httpBody:)) API_UNAVAILABLE(watchos, tvos);
 
 /*! @abstract HTTP extra headers for addition with credentials.
  */
diff -ruN /Applications/Xcode_15.4.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/AuthenticationServices.framework/Headers/ASAuthorizationPublicKeyCredentialLargeBlobRegistrationOutput.h /Applications/Xcode_16.0.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/AuthenticationServices.framework/Headers/ASAuthorizationPublicKeyCredentialLargeBlobRegistrationOutput.h
--- /Applications/Xcode_15.4.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/AuthenticationServices.framework/Headers/ASAuthorizationPublicKeyCredentialLargeBlobRegistrationOutput.h	2024-04-23 05:59:52
+++ /Applications/Xcode_16.0.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/AuthenticationServices.framework/Headers/ASAuthorizationPublicKeyCredentialLargeBlobRegistrationOutput.h	2024-05-30 04:30:04
@@ -6,7 +6,7 @@
 
 NS_REFINED_FOR_SWIFT
 API_AVAILABLE(macos(14.0), ios(17.0)) API_UNAVAILABLE(tvos, watchos)
-@interface ASAuthorizationPublicKeyCredentialLargeBlobRegistrationOutput : NSObject
+@interface ASAuthorizationPublicKeyCredentialLargeBlobRegistrationOutput : NSObject <NSCopying, NSSecureCoding>
 
 @property (nonatomic, readonly) BOOL isSupported;
 
diff -ruN /Applications/Xcode_15.4.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/AuthenticationServices.framework/Headers/ASAuthorizationWebBrowserPlatformPublicKeyCredentialProvider.h /Applications/Xcode_16.0.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/AuthenticationServices.framework/Headers/ASAuthorizationWebBrowserPlatformPublicKeyCredentialProvider.h
--- /Applications/Xcode_15.4.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/AuthenticationServices.framework/Headers/ASAuthorizationWebBrowserPlatformPublicKeyCredentialProvider.h	2024-04-23 05:59:53
+++ /Applications/Xcode_16.0.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/AuthenticationServices.framework/Headers/ASAuthorizationWebBrowserPlatformPublicKeyCredentialProvider.h	2024-05-30 04:30:05
@@ -17,6 +19,8 @@
 @protocol ASAuthorizationWebBrowserPlatformPublicKeyCredentialProvider
 
 - (ASAuthorizationPlatformPublicKeyCredentialRegistrationRequest *)createCredentialRegistrationRequestWithClientData:(ASPublicKeyCredentialClientData *)clientData name:(NSString *)name userID:(NSData *)userID;
+
+- (ASAuthorizationPlatformPublicKeyCredentialRegistrationRequest *)createCredentialRegistrationRequestWithClientData:(ASPublicKeyCredentialClientData *)clientData name:(NSString *)name userID:(NSData *)userID requestStyle:(ASAuthorizationPlatformPublicKeyCredentialRegistrationRequestStyle)requestStyle API_AVAILABLE(macos(15.0), ios(18.0)) API_UNAVAILABLE(tvos, watchos, visionos);
 
 - (ASAuthorizationPlatformPublicKeyCredentialAssertionRequest *)createCredentialAssertionRequestWithClientData:(ASPublicKeyCredentialClientData *)clientData;
 
diff -ruN /Applications/Xcode_15.4.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/AuthenticationServices.framework/Headers/ASExtensionErrors.h /Applications/Xcode_16.0.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/AuthenticationServices.framework/Headers/ASExtensionErrors.h
--- /Applications/Xcode_15.4.0.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/AuthenticationServices.framework/Headers/ASExtensionErrors.h	2024-04-23 05:59:52
+++ /Applications/Xcode_16.0.0-beta.app/Contents/Developer/Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS.sdk/System/Library/Frameworks/AuthenticationServices.framework/Headers/ASExtensionErrors.h	2024-05-30 04:30:05
@@ -16,6 +16,9 @@
     ASExtensionErrorCodeUserCanceled = 1,
     ASExtensionErrorCodeUserInteractionRequired = 100,
     ASExtensionErrorCodeCredentialIdentityNotFound = 101,
+
+    /// This error should only be used for a passkey registration request, if the @c excludedCredentials property matches a known passkey.
+    ASExtensionErrorCodeMatchedExcludedCredential API_AVAILABLE(ios(18.0), macos(15.0), visionos(2.0)) = 102,
 } API_AVAILABLE(ios(12.0), macCatalyst(14.0), macos(11.0)) API_UNAVAILABLE(tvos, watchos);
 
 /*! @abstract A key that specifies an error string to be shown to the user when an extension request fails.
Clone this wiki locally