Skip to content

MailKit macOS xcode13.0 beta2

TJ Lambert edited this page Aug 12, 2021 · 3 revisions

#MailKit.framework https://github.com/xamarin/xamarin-macios/pull/12405

diff -ruN /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEAddressAnnotation.h /Applications/Xcode_13.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEAddressAnnotation.h
--- /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEAddressAnnotation.h	2021-06-01 23:23:05.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEAddressAnnotation.h	2021-06-17 14:34:10.000000000 -0400
@@ -10,6 +10,7 @@
 NS_ASSUME_NONNULL_BEGIN
 
 /// @brief An instance of this class can be used to change the visual style of recipeint email address token when user in composing a mail message.
+API_AVAILABLE(macos(12.0)) API_UNAVAILABLE(ios, watchos, tvos, macCatalyst)
 @interface MEAddressAnnotation : NSObject <NSSecureCoding>
 
 - (instancetype)init NS_UNAVAILABLE;
diff -ruN /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEComposeSession.h /Applications/Xcode_13.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEComposeSession.h
--- /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEComposeSession.h	2021-06-02 11:07:39.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEComposeSession.h	2021-06-17 14:34:10.000000000 -0400
@@ -11,6 +11,7 @@
 NS_ASSUME_NONNULL_BEGIN
 
 @class MEAddressAnnotation;
+@class MEEmailAddress;
 @class MEExtensionViewController;
 @class MEMessage;
 
@@ -64,7 +65,7 @@
 
 /// @brief Delegate method to annotate mail addresses.
 /// @discussion Mail will call this method based on user's input in To, Cc or Bcc fields.
-- (void)session:(MEComposeSession *)session annotateAddressesWithCompletionHandler:(void (^)(NSDictionary<NSString *, MEAddressAnnotation *> *emailAddressAnnotationMap))completionHandler NS_SWIFT_NAME(annotateAddressesForSession(_:completion:));
+- (void)session:(MEComposeSession *)session annotateAddressesWithCompletionHandler:(void (^)(NSDictionary<MEEmailAddress *, MEAddressAnnotation *> *emailAddressAnnotationMap))completionHandler NS_SWIFT_NAME(annotateAddressesForSession(_:completion:));
 
 /// @brief Validate if the message is ready to be delivered to recipients.
 /// @discussion Mail will call this method when user clicks on the send message button. Extensions can provide an error from the @c MEComposeSessionErrorDomain  error domain to indicate why message validation has failed.
diff -ruN /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEDecodedMessage.h /Applications/Xcode_13.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEDecodedMessage.h
--- /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEDecodedMessage.h	2021-06-01 23:23:05.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEDecodedMessage.h	2021-06-17 14:34:10.000000000 -0400
@@ -12,6 +12,7 @@
 NS_ASSUME_NONNULL_BEGIN
 
 /// @brief Contains information about a decoded message
+API_AVAILABLE(macos(12.0)) API_UNAVAILABLE(ios, watchos, tvos, macCatalyst)
 @interface MEDecodedMessage : NSObject <NSSecureCoding>
 
 /// @brief The decoded MIME data for the message
diff -ruN /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEEmailAddress.h /Applications/Xcode_13.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEEmailAddress.h
--- /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEEmailAddress.h	1969-12-31 19:00:00.000000000 -0500
+++ /Applications/Xcode_13.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEEmailAddress.h	2021-06-17 14:34:10.000000000 -0400
@@ -0,0 +1,28 @@
+//
+//  MEEmailAddress.h
+//  MailKit
+//
+//  Copyright © 2021 Apple Inc. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+
+
+NS_ASSUME_NONNULL_BEGIN
+
+API_AVAILABLE(macos(12.0)) API_UNAVAILABLE(ios, watchos, tvos)
+/// @brief Contain information about an email address. This can include both valid and invalid email addresses.
+@interface MEEmailAddress : NSObject <NSSecureCoding, NSCopying>
+/// @brief The raw string for the email address.
+@property (nonatomic, readonly, copy) NSString *rawString;
+/// @brief The simple address string portion of the raw string if it is valid. For example, the  @c addressString
+/// of "John Appleseed <j.appleseed@example.com>" will be "j.appleseed@example.com".
+@property (nonatomic, nullable, readonly, copy) NSString *addressString;
+
++ (instancetype)new NS_UNAVAILABLE;
+- (instancetype)init NS_UNAVAILABLE;
+- (instancetype)initWithRawString:(NSString *)rawString;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEEncodedOutgoingMessage.h /Applications/Xcode_13.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEEncodedOutgoingMessage.h
--- /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEEncodedOutgoingMessage.h	2021-06-01 23:23:05.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEEncodedOutgoingMessage.h	2021-06-17 14:34:10.000000000 -0400
@@ -9,6 +9,7 @@
 
 NS_ASSUME_NONNULL_BEGIN
 
+API_AVAILABLE(macos(12.0)) API_UNAVAILABLE(ios, watchos, tvos, macCatalyst)
 @interface MEEncodedOutgoingMessage : NSObject <NSSecureCoding>
 
 - (instancetype)initWithRawData:(NSData *)rawData isSigned:(BOOL)isSigned isEncrypted:(BOOL)isEncrypted;
diff -ruN /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEExtensionViewController.h /Applications/Xcode_13.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEExtensionViewController.h
--- /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEExtensionViewController.h	2021-06-01 23:23:05.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEExtensionViewController.h	2021-06-17 14:34:11.000000000 -0400
@@ -15,6 +15,7 @@
 @class NSViewController;
 
 #if TARGET_OS_OSX && !TARGET_OS_WATCH
+API_AVAILABLE(macos(12.0)) API_UNAVAILABLE(ios, watchos, tvos, macCatalyst)
 @interface MEExtensionViewController : NSViewController
 
 @end
diff -ruN /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEMessage.h /Applications/Xcode_13.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEMessage.h
--- /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEMessage.h	2021-06-01 23:23:05.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEMessage.h	2021-06-17 14:34:11.000000000 -0400
@@ -5,7 +5,7 @@
 //  Copyright © 2020 Apple Inc. All rights reserved.
 //
 
-#import <Foundation/Foundation.h>
+#import <MailKit/MEEmailAddress.h>
 
 NS_ASSUME_NONNULL_BEGIN
 
@@ -13,9 +13,10 @@
     MEMessageStateReceived = 0,
     MEMessageStateDraft = 1,
     MEMessageStateSending = 2,
-};
+} API_AVAILABLE(macos(12.0)) API_UNAVAILABLE(ios, watchos, tvos, macCatalyst);
 
 /// @brief Contains information about a mail message on which actions can be performed.
+API_AVAILABLE(macos(12.0)) API_UNAVAILABLE(ios, watchos, tvos, macCatalyst)
 @interface MEMessage : NSObject <NSSecureCoding>
 
 /// @brief The state of the mail message.
@@ -25,22 +26,22 @@
 @property (nonatomic, readonly, copy) NSString *subject;
 
 /// @brief Message sender's email address.
-@property (nonatomic, readonly, copy) NSString *fromAddress;
+@property (nonatomic, readonly, copy) MEEmailAddress *fromAddress;
 
 /// @brief Recipient email addresses in the "To" address field of the message.
-@property (nonatomic, readonly, copy) NSArray<NSString *> *toAddresses;
+@property (nonatomic, readonly, copy) NSArray<MEEmailAddress *> *toAddresses;
 
 /// @brief Recipient email addresses in the "Cc" address field of the message.
-@property (nonatomic, readonly, copy) NSArray<NSString *> *ccAddresses;
+@property (nonatomic, readonly, copy) NSArray<MEEmailAddress *> *ccAddresses;
 
 /// @brief Recipient email addresses in the "Bcc" address field of the message.
-@property (nonatomic, readonly, copy) NSArray<NSString *> *bccAddresses;
+@property (nonatomic, readonly, copy) NSArray<MEEmailAddress *> *bccAddresses;
 
 /// @brief Recipient email addresses in the "Reply-To" field of the message.
-@property (nonatomic, readonly, copy) NSArray<NSString *> *replyToAddresses;
+@property (nonatomic, readonly, copy) NSArray<MEEmailAddress *> *replyToAddresses;
 
-/// @brief Recipient email addresses in the "To" field of the mail message.
-@property (nonatomic, readonly, copy) NSArray<NSString *> *allRecipientAddresses;
+/// @brief An array containing all recipients of the message.
+@property (nonatomic, readonly, copy) NSArray<MEEmailAddress *> *allRecipientAddresses;
 
 /// @brief The date the mail message was sent. Optionally set by the by the sender.
 @property (nonatomic, nullable, readonly, copy) NSDate *dateSent NS_REFINED_FOR_SWIFT;
diff -ruN /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEMessageAction.h /Applications/Xcode_13.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEMessageAction.h
--- /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEMessageAction.h	2021-06-02 11:07:40.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEMessageAction.h	2021-06-17 14:34:11.000000000 -0400
@@ -18,7 +18,7 @@
     MEMessageActionMessageColorPurple,
     MEMessageActionMessageColorBlue,
     MEMessageActionMessageColorGray,
-};
+} API_AVAILABLE(macos(12.0)) API_UNAVAILABLE(ios, watchos, tvos, macCatalyst);
 
 /// @brief An action that can be performed on a mail message.
 API_AVAILABLE(macos(12.0)) API_UNAVAILABLE(ios, watchos, tvos, macCatalyst)
@@ -46,7 +46,7 @@
 @property (class, readonly) MEMessageAction *unflagAction;
 
 /// @brief Adds a color to the message when shown in the message list.
-+ (MEMessageAction *)setColorActionWithColor:(MEMessageActionMessageColor)color;
++ (MEMessageAction *)setColorActionWithColor:(MEMessageActionMessageColor)color NS_SWIFT_NAME(setColor(_:));
 
 - (instancetype)init NS_UNAVAILABLE;
 + (instancetype)new NS_UNAVAILABLE;
diff -ruN /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEMessageActionHandler.h /Applications/Xcode_13.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEMessageActionHandler.h
--- /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEMessageActionHandler.h	2021-06-02 11:07:40.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEMessageActionHandler.h	2021-06-17 14:34:11.000000000 -0400
@@ -19,7 +19,15 @@
 /// message has been downloaded the @c MEMessage provided might have the full body data. If the full body is not present the @c decision property can be set to
 /// @c MEMessageActionDecision.invokeAgainWithBody and this method will be invoked again once the full body is available.
 /// @param message - The message for which the action will be performed. Might or might not contain the full message body data.
-- (void)decideActionForMessage:(MEMessage *)message completionHandler:(void (^)(MEMessageActionDecision * _Nullable decision))completionHandler NS_SWIFT_NAME(decideActionForMessage(for:completionHandler:));
+- (void)decideActionForMessage:(MEMessage *)message completionHandler:(void (^)(MEMessageActionDecision * _Nullable decision))completionHandler NS_SWIFT_NAME(decideAction(for:completionHandler:));
+
+
+@optional
+
+/// @brief Provide additional headers that the extension requires to perform an action. Mail will fetch these additional headers before invoking @c -[MEMessageActionHandler @c decideActionForMessage:completionHandler:].
+/// For example, extensions can return the headers that were set in @c -[MEComposeSessionHandler @c additionalHeadersForSession:]
+/// @return An array of header keys. Mail will normalize the headers to lower case before fetching them from the mail server.
+@property (readonly, copy) NSArray<NSString *> *requiredHeaders;
 
 @end
 
diff -ruN /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEMessageEncodingResult.h /Applications/Xcode_13.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEMessageEncodingResult.h
--- /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEMessageEncodingResult.h	2021-06-01 23:23:04.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEMessageEncodingResult.h	2021-06-17 14:34:10.000000000 -0400
@@ -10,6 +10,7 @@
 NS_ASSUME_NONNULL_BEGIN
 
 /// @brief Contains information about an outging mail message after any security measures have been applied.
+API_AVAILABLE(macos(12.0)) API_UNAVAILABLE(ios, watchos, tvos, macCatalyst)
 @interface MEMessageEncodingResult : NSObject <NSSecureCoding>
 
 /// @brief The encoded message. Nil if no need to encode or an error occured while encoding
diff -ruN /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEMessageSecurityHandler.h /Applications/Xcode_13.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEMessageSecurityHandler.h
--- /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEMessageSecurityHandler.h	2021-06-02 11:07:39.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEMessageSecurityHandler.h	2021-06-17 14:34:10.000000000 -0400
@@ -14,7 +14,7 @@
 @protocol MEMessageSecurityHandler <MEMessageEncoder, MEMessageDecoder>
 
 #if !TARGET_OS_WATCH
-/// @brief Invoked by Mail to request a subclass of @c EMMessageComposeExtensionViewController. Extensions can maintain any additional state in their subclasses and associate it with  @c messsageComposeSession instance.
+/// @brief Invoked by Mail to request a subclass of @c MEExtensionViewController. Extensions can maintain any additional state in their subclasses and associate it with  @c messsageComposeSession instance.
 - (nullable MEExtensionViewController *)extensionViewControllerForMessageSigners:(NSArray<MEMessageSigner *> *)messageSigners NS_SWIFT_NAME(extensionViewController(signers:));
 #endif
 
diff -ruN /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEMessageSecurityInformation.h /Applications/Xcode_13.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEMessageSecurityInformation.h
--- /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEMessageSecurityInformation.h	2021-06-01 23:23:05.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEMessageSecurityInformation.h	2021-06-17 14:34:10.000000000 -0400
@@ -12,6 +12,7 @@
 NS_ASSUME_NONNULL_BEGIN
 
 /// @brief Contains security information about a decoded message
+API_AVAILABLE(macos(12.0)) API_UNAVAILABLE(ios, watchos, tvos, macCatalyst)
 @interface MEMessageSecurityInformation : NSObject <NSSecureCoding>
 
 /// @brief The signers of the message
diff -ruN /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEMessageSigner.h /Applications/Xcode_13.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEMessageSigner.h
--- /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEMessageSigner.h	2021-06-01 23:23:05.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEMessageSigner.h	2021-06-17 14:34:10.000000000 -0400
@@ -7,13 +7,16 @@
 
 #import <Foundation/Foundation.h>
 
+@class MEEmailAddress;
+
 NS_ASSUME_NONNULL_BEGIN
 
 /// @brief Contains information about a message signer
+API_AVAILABLE(macos(12.0)) API_UNAVAILABLE(ios, watchos, tvos, macCatalyst)
 @interface MEMessageSigner : NSObject <NSSecureCoding>
 
 /// @brief Email addresses associated with the signature.
-@property (nonatomic, readonly, copy) NSArray<NSString *> *emailAddresses;
+@property (nonatomic, readonly, copy) NSArray<MEEmailAddress *> *emailAddresses;
 
 /// @brief The message signers label. Shown in the message header view. For instance, "John Smith".
 @property (nonatomic, readonly, copy) NSString *label;
@@ -24,7 +27,7 @@
 
 + (instancetype)new NS_UNAVAILABLE;
 - (instancetype)init NS_UNAVAILABLE;
-- (instancetype)initWithEmailAddresses:(NSArray<NSString *> *)emailAddresses signatureLabel:(NSString *)label context:(nullable NSData *)context;
+- (instancetype)initWithEmailAddresses:(NSArray<MEEmailAddress *> *)emailAddresses signatureLabel:(NSString *)label context:(nullable NSData *)context;
 @end
 
 NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEOutgoingMessageEncodingStatus.h /Applications/Xcode_13.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEOutgoingMessageEncodingStatus.h
--- /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEOutgoingMessageEncodingStatus.h	2021-06-02 11:07:39.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MEOutgoingMessageEncodingStatus.h	2021-06-17 14:34:10.000000000 -0400
@@ -5,6 +5,8 @@
 //  Copyright © 2021 Apple Inc. All rights reserved.
 //
 
+#import <MailKit/MEEmailAddress.h>
+
 NS_ASSUME_NONNULL_BEGIN
 
 /// @brief Contains information about any security measures that will be applied to a mail message when it is sent or any errrors that occurred while verifying security status.
@@ -21,11 +23,11 @@
 @property (nonatomic, nullable, readonly, copy) NSError *securityError;
 
 /// @brief A list of any recipients for which the message should be encrypted but an error occurred. This could include missing the public key for the recipient.
-@property (nonatomic, readonly, copy) NSArray<NSString *> *addressesFailingEncryption;
+@property (nonatomic, readonly, copy) NSArray<MEEmailAddress *> *addressesFailingEncryption;
 
 + (instancetype)new NS_UNAVAILABLE;
 - (instancetype)init NS_UNAVAILABLE;
-- (instancetype)initWithCanSign:(BOOL)canSign canEncrypt:(BOOL)canEncrypt securityError:(nullable NSError *)securityError addressesFailingEncryption:(NSArray<NSString *> *)addressesFailingEncryption;
+- (instancetype)initWithCanSign:(BOOL)canSign canEncrypt:(BOOL)canEncrypt securityError:(nullable NSError *)securityError addressesFailingEncryption:(NSArray<MEEmailAddress *> *)addressesFailingEncryption;
 
 @end
 
diff -ruN /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MailKit.h /Applications/Xcode_13.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MailKit.h
--- /Applications/Xcode_13.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MailKit.h	2021-06-01 23:23:05.000000000 -0400
+++ /Applications/Xcode_13.0.0-beta2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/MailKit.framework/Headers/MailKit.h	2021-06-15 03:38:19.000000000 -0400
@@ -5,6 +5,7 @@
 //  Copyright © 2020 Apple Inc. All rights reserved.
 //
 
+#import <MailKit/MEEmailAddress.h>
 #import <MailKit/MEExtension.h>
 #import <MailKit/MEExtensionViewController.h>
 
Clone this wiki locally