diff --git a/CHANGELOG.md b/CHANGELOG.md
index 854fb44c..2a1fbf7e 100755
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,40 @@
+## 12.0.0
+###### Release Date: 23-03-2022
+
+### 🚀 Enhancements
+
+**In v12.0.0 of the Intercom mobile SDK, we’re introducing Intercom Surveys — beautiful native in-product surveys to bring all your customer communication to one platform!!**
+
+![Intercom Surveys Introduction](https://user-images.githubusercontent.com/6392766/159682454-25995724-68f7-4201-a6c2-5b1bffe11ed1.png)
+
+**📱 New feature: Intercom Surveys**
+
+👋🏼 Meet Intercom Surveys - Don’t just ask their opinion, act on it. Now, you can seamlessly capture and act on customer feedback and needs, all within Intercom. Intercom Surveys makes it quick and easy to create and send highly targeted, easily customisable in-product native survey - across web and mobile.
+
+* Choose the relevant question type from multitude of question types available like rating scales (NPS, emoji, star), multiple-choice, dropdown and more
+* Customise the color of your survey’s background and buttons
+* Target the right survey to the right audience at the right time
+* Save survey responses as user attributes to drive follow up actions
+* Add a customisable intro and thank you message
+* Decide whether or not users should be able to dismiss the survey
+* Encourage further user actions by inserting a call-to-action button in the thank you message with a link (external URL or deep link)
+* Leverage email and mobile push as fallback channels if in-product doesn’t get you a response
+* Many more ways to customise your survey — show or hide avatar of survey sender, format survey text and insert user or company attributes in text
+* Use the power of Intercom platform — A/B testing and control groups, goal tracking, orchestrating surveys as a part of series, analysing and exporting results as CSV
+
+| | |
+| ------------- | ------------- |
+| ![surveys gif 1](https://user-images.githubusercontent.com/6392766/159681904-bc615b34-68c5-40e3-a8a0-4e358cdc3ccd.gif) | ![surveys gif 2](https://user-images.githubusercontent.com/6392766/159681933-19ee9e09-a957-481e-99cd-a0df1a5b811d.gif) |
+
+👉 You will need to start a 14 day free trial or purchase the Surveys Add-On starting from $49 per month in order to set a survey live
+👉 Upgrade to the latest version of the mobile SDK today to use the feature on mobile. No additional integration work required.
+
+[Learn more about Intercom Surveys](https://www.intercom.com/surveys)
+
+https://user-images.githubusercontent.com/3718984/159649798-a255ab7a-df79-4015-875c-399872e6186c.mp4
+
+https://user-images.githubusercontent.com/6392766/159682983-e13d3080-8025-4f90-9a75-14f41b81a5bc.mp4
+
## 11.2.0
###### Release Date: 04-03-2022
diff --git a/Intercom.podspec b/Intercom.podspec
index 31766244..75929cbd 100755
--- a/Intercom.podspec
+++ b/Intercom.podspec
@@ -1,6 +1,6 @@
Pod::Spec.new do |s|
s.name = 'Intercom'
- s.version = '11.2.0'
+ s.version = '12.0.0'
s.summary = 'The Intercom iOS SDK, for integrating Intercom into your iOS application.'
s.license = { :type => "Apache 2.0", :file => "LICENSE" }
s.authors = {"Brian Boyle"=>"brian.boyle@intercom.io", "Mike McNamara"=>"mike.mcnamara@intercom.io", "Katherine Brennan"=>"katherine.brennan@intercom.io", "Himanshi Goyal"=>"himanshi.goyal@intercom.io", "Niamh Coleman"=>"niamh.coleman@intercom.io"}
diff --git a/Intercom.xcframework/Info.plist b/Intercom.xcframework/Info.plist
index ddc03ee9..47b63d75 100644
--- a/Intercom.xcframework/Info.plist
+++ b/Intercom.xcframework/Info.plist
@@ -6,30 +6,30 @@
LibraryIdentifier
- ios-arm64
+ ios-arm64_x86_64-simulator
LibraryPath
Intercom.framework
SupportedArchitectures
arm64
+ x86_64
SupportedPlatform
ios
+ SupportedPlatformVariant
+ simulator
LibraryIdentifier
- ios-arm64_x86_64-simulator
+ ios-arm64
LibraryPath
Intercom.framework
SupportedArchitectures
arm64
- x86_64
SupportedPlatform
ios
- SupportedPlatformVariant
- simulator
CFBundlePackageType
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMActiveAdminsAvatarView.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMActiveAdminsAvatarView.h
new file mode 100644
index 00000000..b793f183
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMActiveAdminsAvatarView.h
@@ -0,0 +1,19 @@
+//
+// ICMActiveAdminsAvatarView.h
+// IntercomSDK-Dynamic
+//
+// Created by Michael Isaakidis on 17/05/2018.
+// Copyright © 2018 Intercom. All rights reserved.
+//
+
+#import
+
+@interface ICMActiveAdminsAvatarView : UIView
+
+- (instancetype)initWithHeight:(CGFloat)avatarHeight
+ overlap:(CGFloat) avatarOverlap
+ maxCount:(NSInteger) maxAvatarCount;
+- (NSUInteger)numberOfAvatarsDisplayed;
+- (void)updateVisibleAvatars;
+
+@end
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMAdminBlockAppearance.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMAdminBlockAppearance.h
new file mode 100644
index 00000000..bb4a435b
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMAdminBlockAppearance.h
@@ -0,0 +1,13 @@
+//
+// ICMSDKBlocksRenderer.h
+// IntercomSDK
+//
+// Created by James Treanor on 09/09/2014.
+// Copyright (c) 2014 Intercom. All rights reserved.
+//
+
+#import
+
+@interface ICMAdminBlockAppearance : ICMBlockAppearance
+
+@end
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMArticleWebViewController.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMArticleWebViewController.h
new file mode 100644
index 00000000..f403b383
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMArticleWebViewController.h
@@ -0,0 +1,20 @@
+//
+// ICMArticleWebViewController.m
+// IntercomSDK-Dynamic
+//
+// Created by Katherine Brennan on 02/10/2020.
+// Copyright © 2020 Intercom. All rights reserved.
+//
+
+#import
+#import "ICMContentViewController.h"
+@class HelpCenterMetricService;
+
+@protocol ICMContentViewControllerDelegate;
+
+@interface ICMArticleWebViewController : UIViewController
+
+@property (nonatomic, weak) id contentDelegate;
+- (instancetype)initWithId:(NSString *)articleId metricService:(id)metricService;
+
+@end
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMAssets.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMAssets.h
new file mode 100644
index 00000000..0763b7f7
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMAssets.h
@@ -0,0 +1,107 @@
+//
+// Created by Ignacio Delgado on 17/04/2014.
+// Copyright (c) 2014 Intercom. All rights reserved.
+//
+
+#import
+#import
+
+@interface ICMAssets : NSObject
+
++ (UIImage *)intercomLogoImage;
+
++ (UIImage *)openPostFromCardImage;
+
++ (UIImage *)spinnerImage;
+
++ (UIImage *)defaultAvatarImageWithInitials:(NSString *)userInitials diameter:(CGFloat)diameter; // if there are initials, show them; if not, fall back to image
++ (UIImage *)warningImage;
++ (UIImage *)infoIcon;
+
++ (UIImage *)backButtonImage;
++ (UIImage *)submitButtonBackgroundImage;
++ (UIImage *)submitButtonBackgroundImageClear;
++ (UIImage *)submitImage;
++ (UIImage *)pickerSelector;
++ (UIImage *)dateSelector;
++ (UIImage *)greenCheckImage;
++ (UIImage *)buttonLoadingImage;
++ (UIImage *)textFieldBackgroundImage;
++ (UIImage *)textFieldErrorBackgroundImage;
++ (UIImage *)booleanButtonLeftImage;
++ (UIImage *)booleanButtonLeftImageSelected;
++ (UIImage *)booleanButtonRightImage;
++ (UIImage *)booleanButtonRightImageSelected;
+
++ (UIImage *)closeImage;
+
++ (UIImage *)startConversationImage;
++ (UIImage *)askAQuestion;
+
++ (UIImage *)messageFailedImage;
+
++ (UIImage *)uploadButtonImage;
++ (UIImage *)chatBubbleImage;
+
++ (UIImage *)launcherImage;
+
++ (UIImage *)twitterIcon;
++ (UIImage *)linkedinIcon;
+
++ (UIImage *)snoozeIcon;
+
++ (UIImage *)sendIcon;
++ (UIImage *)undoIcon;
+
++ (UIImage *)homescreenFailedImage;
++ (UIImage *)searchIcon;
+
++ (UIImage *)replyTimeIcon;
+
+// Help Center
++ (UIImage *)helpCenterLoadingImage;
++ (UIImage *)helpCenterChevron;
+
+// Carousel
++ (UIImage *)screenActionCheckmark;
++ (UIImage *)carouselLoadingImage;
+
+// Articles
++ (UIImage *)articleLoadingImage;
+
+// Teammate Profile
++ (UIImage *)teammateTimeIcon;
++ (UIImage *)teammateRoleIcon;
++ (UIImage *)teammateIntroIcon;
+
+//Text Input
++ (UIImage *)textInputIcon;
++ (UIImage *)textInputSelectedIcon;
+
+//Photo Input
++ (UIImage *)photoInputIcon;
++ (UIImage *)photoInputSelectedIcon;
++ (UIImage *)expandPhotosIcon;
+
+//GIF Input
++ (UIImage *)gifInputIcon;
++ (UIImage *)gifInputSelectedIcon;
+
++ (UIImage *)footerLinkIcon;
+
+// Sounds
++ (NSURL *)soundForMessageSending;
++ (NSURL *)soundForMessageSendingFailure;
++ (NSURL *)soundForIncomingAdminMessage;
++ (NSURL *)soundForIncomingOperatorMessage;
+
+// Surveys
++ (UIImage *)starFillImage;
++ (UIImage *)starUnselectedImage;
++ (UIImage *)starSelectedImage;
++ (UIImage *)externalLinkIcon;
++ (UIImage *)surveyLoadingImage;
+
++ (UIImage *)playIcon;
+
+@end
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMAutoLayout.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMAutoLayout.h
new file mode 100644
index 00000000..9e5669cf
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMAutoLayout.h
@@ -0,0 +1,193 @@
+//
+// ICMAutoLayout.h
+// Pods
+//
+// Created by James Treanor on 16/04/2015.
+//
+//
+
+#import
+
+typedef NS_OPTIONS(NSUInteger, ICM_JRTViewPinEdges)
+{
+ /// Pins the top edge of an item.
+ ICM_JRTViewPinTopEdge = 1 << 0,
+
+ /// Pins the right edge of an item.
+ ICM_JRTViewPinRightEdge = 1 << 1,
+
+ /// Pins the bottom edge of an item.
+ ICM_JRTViewPinBottomEdge = 1 << 2,
+
+ /// Pins the left edge of an item.
+ ICM_JRTViewPinLeftEdge = 1 << 3,
+
+ /// Pins all edges of an item.
+ ICM_JRTViewPinAllEdges = ~0UL
+};
+
+@interface ICMAutoLayout : NSObject
+
+/**
+ * @name Centering Views
+ */
+
+/**
+ * Centers the receiver in the superview on a specified axis.
+ *
+ * @param axis The axis of the superview you wish to center the receiver in. This parameter accepts `NSLayoutAttributeCenterX` or `NSLayoutAttributeCenterY`.
+ *
+ * @return The `NSLayoutConstraint` generated by this method.
+ */
++(NSLayoutConstraint *)centerView:(UIView *)primaryView inContainerOnAxis:(NSLayoutAttribute)axis;
+
+/**
+ * Centers the receiver in the superview on a specified axis.
+ *
+ * @param axis The axis of the superview you wish to center the receiver in. This parameter accepts `NSLayoutAttributeCenterX` or `NSLayoutAttributeCenterY`.
+ * @param constant Constraint constant value.
+ *
+ * @return The `NSLayoutConstraint` generated by this method.
+*/
+
++ (NSLayoutConstraint *)centerView:(UIView *)primaryView inContainerOnAxis:(NSLayoutAttribute)axis withConstant:(CGFloat)constant;
+
+/**
+ * Centers the receiver in the superview on a specified axis.
+ *
+ * @param axis The axis of the superview you wish to center the receiver in. This parameter accepts `NSLayoutAttributeCenterX` or `NSLayoutAttributeCenterY`.
+ * @param constant Constraint constant value.
+ * @param priority Constraint priority value.
+ *
+ * @return The `NSLayoutConstraint` generated by this method.
+*/
+
++ (NSLayoutConstraint *)centerView:(UIView *)primaryView inContainerOnAxis:(NSLayoutAttribute)axis withConstant:(CGFloat)constant withPriority:(UILayoutPriority)priority;
+
+/**
+ * @name Constraining to a fixed size
+ */
+
+/**
+ * Constrains the receiver to a fixed size.
+ * @warning Setting an axis to 0.0 will result in no constraint being applied to that axis.
+ *
+ * @param size The size to constrain the receiver to.
+ *
+ * @return An array of `NSLayoutConstraint` objects generated by this method.
+ */
++(NSArray *)constrainView:(UIView *)primaryView toSize:(CGSize)size;
+
+/**
+ * Constrains the receiver to a fixed width.
+ *
+ * @param width The width to constrain the receiver to
+ *
+ * @return The `NSLayoutConstraint` generated by this method.
+ */
++(NSLayoutConstraint *)constrainView:(UIView *)primaryView toWidth:(CGFloat)width;
+
+/**
+ * Constrains the receiver to a fixed width.
+ *
+ * @param width The width to constrain the receiver to
+ * @param priority The UILayoutPriority of the constraint
+ *
+ * @return The `NSLayoutConstraint` generated by this method.
+*/
+
++(NSLayoutConstraint *)constrainView:(UIView *)primaryView toWidth:(CGFloat)width withPriority:(UILayoutPriority)priority;
+
+/**
+ * Constrains the receiver to a fixed height.
+ *
+ * @param height The height to constrain the receiver to
+ *
+ * @return The `NSLayoutConstraint` generated by this method.
+ */
++(NSLayoutConstraint *)constrainView:(UIView *)primaryView toHeight:(CGFloat)height;
+
+/**
+ * Constrains the receiver to a fixed height.
+ *
+ * @param height The height to constrain the receiver to
+ * @param priority The UILayoutPriority of the constraint
+ *
+ * @return The `NSLayoutConstraint` generated by this method.
+*/
++ (NSLayoutConstraint *)constrainView:(UIView *)primaryView toHeight:(CGFloat)height withPriority:(UILayoutPriority)priority;
+
+/**
+ * @name Pinning to other items
+ */
+
+/**
+ * Pins an attribute to any valid attribute of the peer item. The item may be the layout guide of a view controller.
+ *
+ * @param attribute The attribute of the receiver that you want to pin.
+ * @param toAttribute The attribute of the `peerView` that you want to pin.
+ * @param peerItem The item that you want to pin the receiver to. (either `UIView` or `UILayoutSupport`).
+ *
+ * @return The `NSLayoutConstraint` generated by this method.
+ */
++(NSLayoutConstraint *)pinView:(UIView *)primaryView attribute:(NSLayoutAttribute)attribute toAttribute:(NSLayoutAttribute)toAttribute ofItem:(id)peerItem;
+
+/**
+ * Pins an attribute to any valid attribute of the peer item. The item may be the layout guide of a view controller. Provide a constant for offset/inset.
+ *
+ * @param attribute The attribute of the receiver that you want to pin.
+ * @param toAttribute The attribute of the `peerView` that you want to pin.
+ * @param peerItem The item that you want to pin the receiver to. (either `UIView` or `UILayoutSupport`).
+ * @param constant The constant that you want to apply to the constraint.
+ *
+ * @return The `NSLayoutConstraint` generated by this method.
+ */
++(NSLayoutConstraint *)pinView:(UIView *)primaryView attribute:(NSLayoutAttribute)attribute toAttribute:(NSLayoutAttribute)toAttribute ofItem:(id)peerItem withConstant:(CGFloat)constant;
+
+/**
+ * Pins an attribute to any valid attribute of the peer item. The item may be the layout guide of a view controller. Provide a constant for offset/inset along with a relation.
+ *
+ * @param attribute The attribute of the receiver that you want to pin.
+ * @param toAttribute The attribute of the `peerView` that you want to pin.
+ * @param peerItem The item that you want to pin the receiver to. (either `UIView` or `UILayoutSupport`).
+ * @param constant The constant that you want to apply to the constraint.
+ * @param relation The relation that you wish to apply to the constraint.
+ *
+ * @return The `NSLayoutConstraint` generated by this method.
+ */
++(NSLayoutConstraint *)pinView:(UIView *)primaryView attribute:(NSLayoutAttribute)attribute toAttribute:(NSLayoutAttribute)toAttribute ofItem:(id)peerItem withConstant:(CGFloat)constant relation:(NSLayoutRelation)relation;
+
+/**
+ * Pins the receivers edge(s) to another views edge(s). Both views must be in the same view hierarchy.
+ *
+ * @param edges The edges that should be pinned to the peerView's edges.
+ * @param peerView The view that the receiver is being pinned to.
+ *
+ * @return An array of `NSLayoutConstraint` objects generated by this method.
+ */
++(NSArray *)pinView:(UIView *)primaryView edges:(ICM_JRTViewPinEdges)edges toSameEdgesOfView:(UIView *)peerView;
+
+/**
+ * Pins the receivers edge(s) to another views edge(s). Both views must be in the same view hierarchy.
+ *
+ * @param edges The edges that should be pinned to the peerView's edges.
+ * @param peerView The view that the receiver is being pinned to.
+ * @param inset The inset that is applied to the attributes.
+ *
+ * @return An array of `NSLayoutConstraint` objects generated by this method.
+ */
++(NSArray *)pinView:(UIView *)primaryView edges:(ICM_JRTViewPinEdges)edges toSameEdgesOfView:(UIView *)peerView inset:(CGFloat)inset;
+
+/**
+ * Pins the receivers edge(s) to another views edge(s). Both views must be in the same view hierarchy.
+ *
+ * @param edges The edges that should be pinned to the peerView's edges.
+ * @param peerView The view that the receiver is being pinned to.
+ * @param inset The inset that is applied to the attributes.
+ * @param priority The resulting constraints' priorities.
+ *
+ * @return An array of `NSLayoutConstraint` objects generated by this method.
+*/
++ (NSArray *)pinView:(UIView *)primaryView edges:(ICM_JRTViewPinEdges)edges toSameEdgesOfView:(UIView *)peerView inset:(CGFloat)inset withPriority:(UILayoutPriority)priority;
+
+@end
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMAvatar.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMAvatar.h
new file mode 100644
index 00000000..380e9f48
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMAvatar.h
@@ -0,0 +1,11 @@
+#import
+#import "ICMSafeNetworkModel.h"
+
+@interface ICMAvatar : ICMSafeNetworkModel
+
+@property (nonatomic, copy, readonly) NSString *imageUrl;
+
++ (instancetype)instanceFromDictionary:(NSDictionary *)aDictionary;
+- (BOOL)isEqualToAvatar:(ICMAvatar *)other;
+- (NSString *)chatHeadURL;
+@end
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMAvatarView.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMAvatarView.h
new file mode 100644
index 00000000..8aab0c43
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMAvatarView.h
@@ -0,0 +1,25 @@
+//
+// Created by Roland Gropmair on 25/04/2014.
+// Copyright (c) 2014 Intercom. All rights reserved.
+//
+
+#import
+#import
+#import "ICMTeammatePresenceView.h"
+
+@interface ICMAvatarView : UIView
+
+- (instancetype)initWithDiameter:(CGFloat)diameter showTeammatePresence:(BOOL)showTeammatePresence;
+
+@property (nonatomic, assign, readonly) CGFloat diameter;
+@property (nonatomic, strong) UIColor *borderColor;
+@property (nonatomic, assign) CGFloat borderWidth;
+@property (nonatomic, strong) ICMTeammatePresenceView *teammatePresenceView;
+
+- (void)loadAvatarWithURLString:(NSString *)urlString userName:(NSString *)userName;
+- (void)cancelImageLoad;
+- (NSString *)firstInitialOfName:(NSString *)fullName;
+- (void)hideUserPresenceView;
+- (void)setTeamPresenceBorderColor:(UIColor *)color;
+
+@end
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMBlockAppearance.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMBlockAppearance.h
new file mode 100644
index 00000000..285a07a4
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMBlockAppearance.h
@@ -0,0 +1,16 @@
+//
+// ICMBlockAppearance.h
+// Pods
+//
+// Created by Brian Boyle on 22/06/2016.
+//
+//
+
+#import
+#import "ITBBlockAppearance.h"
+
+@interface ICMBlockAppearance : NSObject
+
++ (instancetype)sharedInstance;
+
+@end
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMBlockLoader.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMBlockLoader.h
new file mode 100644
index 00000000..da109e14
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMBlockLoader.h
@@ -0,0 +1,17 @@
+//
+// ICMBlockLoader.h
+// IntercomSDK
+//
+// Created by Brian Boyle on 18/09/2018.
+// Copyright © 2018 Intercom. All rights reserved.
+//
+
+#import
+@protocol ITBBlockAppearance;
+@class ITBBlock;
+
+@interface ICMBlockLoader : NSObject
+
++ (ITBBlock *)blockFromDictionary:(NSDictionary *)dictionary appearance:(id)appearance;
+
+@end
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMButton.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMButton.h
new file mode 100644
index 00000000..2097a5cd
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMButton.h
@@ -0,0 +1,47 @@
+//
+// ICMButton.h
+// IntercomSDK
+//
+// Created by Brian Boyle on 03/07/2019.
+// Copyright © 2019 Intercom. All rights reserved.
+//
+
+#import
+
+NS_ASSUME_NONNULL_BEGIN
+
+typedef NS_ENUM(NSInteger, ICMButtonStyle) {
+ ICMButtonStyleFilled,
+ ICMButtonStyleColorFade,
+};
+
+@interface ICMButton : UIButton
+
+@property (nonatomic, assign) CGFloat cornerRadius;
+
+/**
+ * Create a standard Intercom button. This button will adopt the apps primary colour.
+ *
+ * @param title The button title.
+ * @param style The button style.
+ * @return A new Intercom button instance.
+*/
+- (instancetype)initWithTitle:(NSString *)title style:(ICMButtonStyle)style;
+
+/**
+ * Create a standard Intercom button. This button will adopt colors derived from `backgroundColor`.
+ *
+ * @param title The button title.
+ * @param style The button style.
+ * @param backgroundColor Set the main color of the button.
+ * @return A new Intercom button instance.
+*/
+- (instancetype)initWithTitle:(NSString *)title style:(ICMButtonStyle)style backgroundColor:(UIColor *)backgroundColor;
+
+/// Computes `text` and `border` color from the backgroundColor and applies all 3 colors to the button.
+/// @param backgroundColor Set the main color of the button.
+- (void)configureForFilledStyleBackgroundColor:(UIColor *)backgroundColor;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMCarouselBlockAppearance.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMCarouselBlockAppearance.h
new file mode 100644
index 00000000..4aa51709
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMCarouselBlockAppearance.h
@@ -0,0 +1,18 @@
+//
+// ICMCarouselBlockAppearance.h
+// IntercomSDK
+//
+// Created by Brian Boyle on 24/02/2020.
+// Copyright © 2020 Intercom. All rights reserved.
+//
+
+#import
+#import
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface ICMCarouselBlockAppearance : ICMAdminBlockAppearance
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMColor.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMColor.h
new file mode 100644
index 00000000..d5dd3ddf
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMColor.h
@@ -0,0 +1,103 @@
+#import
+#import
+
+@interface ICMColor : NSObject
+
++ (UIColor *)primaryColor;
+
++ (UIColor *)darkPrimaryColor;
++ (UIColor *)primaryTextColor;
++ (UIColor *)primaryColorVariant;
++ (UIColor *)primaryOrDarkColor;
++ (UIColor *)whiteOrDarkForPrimaryColor;
++ (UIColor *)secondaryColor;
++ (UIColor *)darkSecondaryColor;
++ (UIColor *)lightSecondaryColor;
++ (UIColor *)secondaryTextColor;
++ (UIColor *)secondaryColorVariant;
++ (UIColor *)helpCenterThemeColor;
++ (UIColor *)helpCenterTextColor;
++ (UIColor *)helpCenterSearchPlaceholderColor;
++ (UIColor *)helpCenterSearchBarBackgroundColor;
++ (UIColor *)bubbleTextColorUser;
++ (UIColor *)bubbleFillColorUser;
++ (UIColor *)launcherImageColor;
++ (UIColor *)intercomLinkColor;
++ (UIColor *)composerSeparatorColor;
+
+
+#pragma mark - Colour Palette
+
++ (UIColor *)ghostWhite;
++ (UIColor *)dark;
++ (UIColor *)charcoalGrey;
++ (UIColor *)silver;
++ (UIColor *)intercomBlue;
++ (UIColor *)errorColor;
++ (UIColor *)closeButtonDarkColorWithAlpha:(CGFloat)alpha;
++ (UIColor *)closeButtonLightColor;
++ (UIColor *)closeButtonLightColorWithAlpha:(CGFloat)alpha;
+
+
+#pragma mark - Active/Away States
+
++ (UIColor *)activeColour;
++ (UIColor *)awayColour;
+
+
+#pragma mark - Button colors
+
+/**
+ * Calculates and returns a darker version of the passed in color. This should be used as the text color of an ICMButton.
+ *
+ * @param color The original color.
+ * @return The darker color to be used as the text color of an ICMButton.
+*/
++ (UIColor *)buttonTextColorVarient:(UIColor *)color;
+
+/**
+ * Calculates and returns a lighter version of the passed in color. This should be used as the background of an ICMButton.
+ *
+ * @param color The original color.
+ * @return The lighter color to be used as the background of an ICMButton.
+*/
++ (UIColor *)buttonBackgroundColorVarient:(UIColor *)color;
+
+/**
+ * Calculates and returns a darker version of the passed in colour. This should be used as the background color of an ICMButton while it is being tapped.
+ *
+ * @param color The original color.
+ * @return The darker color to be used as the background of am ICMButton while it is being tapped.
+*/
++ (UIColor *)buttonHighlightColor:(UIColor *)color;
+
+/// Calculates and returns either white or black color based on the lightness of the passed in color so that the text is visible.
+/// @param backgroundColor The background color.
+/// @return White if the background color is dark, black if the background color is light.
++ (UIColor *)textColorForBackgroundColor:(UIColor *)backgroundColor;
+
+/// Calculates and returns a color based on the lightness of the passed in color such that the resulting color, when used on a border of a view, could essentially differentiate the view from it's background, even in the case where both the view and it's background have the exact same color.
+/// @param backgroundColor The background color.
++ (UIColor *)borderColorForBackgroundColor:(UIColor *)backgroundColor;
+
+
+#pragma mark - Colour Utils
+
++ (UIColor *)colorWithR:(int)r g:(int)g b:(int)b;
++ (UIColor *)colorWithR:(int)r g:(int)g b:(int)b alpha:(CGFloat)alpha;
++ (UIColor *)colorWithHexString:(NSString *)hexString;
+
+/**
+ * Fades between firstColor and secondColor at the specified ratio:
+ *
+ * @ ratio 0.0 - fully firstColor
+ * @ ratio 0.5 - halfway between firstColor and secondColor
+ * @ ratio 1.0 - fully secondColor
+ *
+ */
+
++ (UIColor *)colorForFadeBetweenFirstColor:(UIColor *)firstColor
+ secondColor:(UIColor *)secondColor
+ atRatio:(CGFloat)ratio;
+
+@end
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMConfig.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMConfig.h
new file mode 100644
index 00000000..64a69f59
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMConfig.h
@@ -0,0 +1,83 @@
+#import
+#import "ICMSafeNetworkModel.h"
+
+static NSString *const kICMIntercomConfigChangedNotification = @"kICMIntercomConfigChangedNotification";
+static NSString *const kICMMessengerBackgroundImageLoadedNotification = @"kICMMessengerBackgroundImageLoadedNotification";
+static NSString *const kICMMessengerLogoImageLoadedNotification = @"kICMMessengerLogoImageLoadedNotification";
+static NSString *const kICMLauncherCustomLogoImageLoadedNotification = @"kICMLauncherCustomLogoImageLoadedNotification";
+
+@protocol ICMConfigProtocol
+@property (readonly) BOOL inboundMessages;
+@property (readonly) BOOL accessToTeammateEnabled;
+@property (readonly) BOOL helpCenterRequireSearch;
+@property (nonatomic, copy) NSString *appName;
+@end
+
+@interface ICMConfig : ICMSafeNetworkModel
+
+@property (nonatomic, copy) NSString *primaryColorString;
+@property (nonatomic, copy) NSString *secondaryColorString;
+@property (nonatomic, copy) NSString *appName;
+@property (nonatomic, copy) NSString *teamIntro;
+@property (nonatomic, copy) NSString *messengerBackgroundImageUrlString;
+@property (nonatomic, copy) NSString *messengerLogoUrlString;
+@property (nonatomic, copy) NSString *teamGreeting;
+@property (nonatomic, copy) NSString *launcherAlignment;
+@property (nonatomic, copy) NSString *temporaryExpectationsMessage;
+@property (nonatomic, assign) NSInteger launcherBottomPadding;
+@property (nonatomic, copy) NSString *launcherCustomLogoURLString;
+@property (nonatomic, assign) NSInteger uploadSizeLimit;
+
+@property (nonatomic, assign) BOOL inboundMessages;
+@property (nonatomic, assign) BOOL attachmentsEnabled;
+@property (nonatomic, assign) BOOL gifsEnabled;
+@property (nonatomic, assign) BOOL showIntercomLink;
+@property (nonatomic, assign) BOOL audioEnabled;
+@property (nonatomic, assign) BOOL metricsEnabled;
+@property (nonatomic, assign) BOOL backgroundRequestsEnabled;
+@property (nonatomic, assign) BOOL shouldDisplayDarkPrimaryColor;
+@property (nonatomic, assign) BOOL shouldDisplayDarkSecondaryColor;
+@property (nonatomic, assign) BOOL shouldDisplayDarkHelpCenterColor;
+@property (nonatomic, assign) BOOL identityVerificationEnabled;
+@property (nonatomic, assign) BOOL accessToTeammateEnabled;
+@property (nonatomic, assign) BOOL helpCenterRequireSearch;
+@property (nonatomic, assign) BOOL preventMultipleInboundConversations;
+
+@property (nonatomic, assign) NSTimeInterval userUpdateDupCacheMaxAge;
+@property (nonatomic, assign) NSTimeInterval newSessionThreshold;
+@property (nonatomic, assign) NSTimeInterval batchUserUpdatePeriod;
+@property (nonatomic, assign) NSTimeInterval softResetTimeout;
+@property (nonatomic, assign) NSTimeInterval pingDelay;
+
+@property (nonatomic, assign) NSTimeInterval rateLimitPeriod;
+@property (nonatomic, assign) NSUInteger rateLimit;
+
+@property (nonatomic, copy) NSString *helpCenterUrlString;
+@property (nonatomic, copy) NSArray *helpCenterUrlStrings;
+@property (nonatomic, copy) NSString *helpCenterBaseColorString;
+
+@property (nonatomic, strong) NSLocale *intercomLocale;
+@property (nonatomic, strong) NSLocale *helpCenterLocale;
+@property (nonatomic, strong) NSSet *features;
+
++ (instancetype)instanceFromDictionary:(NSDictionary *)aDictionary;
+
++ (void)updateSharedInstanceFromDictionary:(NSDictionary *)aDictionary;
+
++ (instancetype)sharedConfig;
++ (void)deleteSharedConfig;
+
+- (BOOL)isEqualToConfig:(ICMConfig *)other;
+- (void)saveIfNeeded;
+- (void)save;
+- (UIImage *)messengerBackgroundImage;
+- (UIImage *)messengerLogoImage;
+- (UIImage *)customLauncherImage;
+- (UIColor *)primaryColor;
+- (UIColor *)secondaryColor;
+- (UIColor *)helpCenterBaseColor;
+- (BOOL)hasFeature:(NSString *)feature;
+- (BOOL)receivedFromServer;
+- (BOOL)useDefaultLauncherAlignment;
+
+@end
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMContentStackView.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMContentStackView.h
new file mode 100644
index 00000000..12b48c08
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMContentStackView.h
@@ -0,0 +1,29 @@
+//
+// ICMContentStackView.h
+// IntercomSDK
+//
+// Created by Brian Boyle on 16/01/2020.
+// Copyright © 2020 Intercom. All rights reserved.
+//
+
+#import
+
+@class ITBBlock;
+@class ICMBlockAppearance;
+
+NS_ASSUME_NONNULL_BEGIN
+
+typedef NS_ENUM(NSInteger, ICMContentStackViewContext) {
+ ICMContentStackViewContextCarousel,
+ ICMContentStackViewContextSurvey
+};
+
+@interface ICMContentStackView : UIStackView
+
+- (instancetype)initWithBlocks:(NSArray *)blocks context:(ICMContentStackViewContext)context;
+- (void)renderContent;
+- (void)updateFirstBlockWithAppearance:(ICMBlockAppearance *)appearance;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMContentViewController.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMContentViewController.h
new file mode 100644
index 00000000..7ea8b0b1
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMContentViewController.h
@@ -0,0 +1,25 @@
+//
+// ICMContentViewController.h
+// IntercomSDK
+//
+// Created by Michael McNamara on 05/10/2020.
+// Copyright © 2020 Intercom. All rights reserved.
+//
+
+#import
+#import "ICMContentViewControllerDelegate.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@protocol ICMContentViewController
+
+@property (nonatomic, weak) id contentDelegate;
+
+@required
+- (void)reload;
+- (void)closeButtonTapped;
+- (void)viewDidDismissBySwipe;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMContentViewControllerDelegate.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMContentViewControllerDelegate.h
new file mode 100644
index 00000000..18e2e201
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMContentViewControllerDelegate.h
@@ -0,0 +1,33 @@
+//
+// ICMContentViewControllerDelegate.h
+// IntercomSDK
+//
+// Created by Michael McNamara on 30/03/2021.
+// Copyright © 2021 Intercom. All rights reserved.
+//
+
+#import
+
+NS_ASSUME_NONNULL_BEGIN
+
+@protocol ICMContentViewControllerDelegate
+
+@required
+- (void)contentDidLoadWithDismissEnabled:(BOOL)dismissEnabled;
+- (void)contentDidLoadWithDismissEnabled:(BOOL)dismissEnabled
+ swipeDismissalRequiresConfirmation:(BOOL)requiresConfirmation
+ didAttemptDismiss:(void (^_Nullable)(void))didAttemptDismissBlock;
+- (void)showLoadingViewWithImage:(UIImage *)image;
+- (void)contentLoadingDidFail:(NSString *)errorMessage
+ showActionButton:(BOOL)showActionButton
+ actionButtonTitle:(NSString * _Nullable)actionButtonTitle;
+- (void)configureCloseButtonForBackgroundColor:(UIColor *)backgroundColor;
+- (void)closeContentModal;
+- (void)configureDismissEnabled:(BOOL)dismissEnabled;
+- (void)configureDismissEnabled:(BOOL)dismissEnabled
+swipeDismissalRequiresConfirmation:(BOOL)requiresConfirmation
+ didAttemptDismiss:(void (^_Nullable)(void))didAttemptDismissBlock;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMCountLimitInputValidator.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMCountLimitInputValidator.h
new file mode 100644
index 00000000..cdee1906
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMCountLimitInputValidator.h
@@ -0,0 +1,20 @@
+//
+// ICMCountLimitInputValidator.h
+// IntercomSDK-Dynamic
+//
+// Created by Michael McNamara on 18/11/2021.
+// Copyright © 2021 Intercom. All rights reserved.
+//
+
+#import
+#import "ICMValidatorProtocol.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface ICMCountLimitInputValidator : NSObject
+
+- (instancetype)initWithMinimumCount:(NSInteger)minimumCount maximumCount:(NSInteger)maximumCount;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMDataManager.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMDataManager.h
new file mode 100644
index 00000000..c0e56f58
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMDataManager.h
@@ -0,0 +1,38 @@
+//
+// ICMDataManager.h
+// IntercomSDK
+//
+// Created by Dale Cantwell on 28/04/2014.
+// Copyright (c) 2014 Intercom. All rights reserved.
+//
+
+#import
+#import
+#import "ICMUnreadManager.h"
+#import "ICMDataManagerProtocol.h"
+
+@class ICMConversation;
+
+@interface ICMDataManager : NSObject
+@property (nonatomic, readonly) NSMutableArray *conversations;
+@property (nonatomic, strong) NSString *conversationToMark;
+@property (nonatomic, strong) ICMUnreadManager *unreadManager;
+@property (nonatomic, strong) ICMConversation *lastViewedConversation;
+@property (nonatomic, assign) BOOL morePagesAvailable;
+@property (nonatomic, assign) BOOL hasReceivedConversationsResponse;
+
++ (instancetype)sharedManager;
+- (void)updateConversationsBefore:(NSDate *)before success:(void (^)(NSArray *conversations, BOOL newElementsAdded))success failure:(void (^)(NSError *error))failure;
+- (void)updateConversationsWithSuccess:(void (^)(NSArray *conversations))success failure:(void (^)(NSError *error))failure;
+- (void)updateWithConversation:(ICMConversation *)conversation;
+- (void)getUnreadConversationsIfNeeded;
+- (NSArray *)getRecentConversations;
+- (NSArray *)getPreviousConversations;
+- (void)clearConversations;
+- (BOOL)hasRecentConversations;
+- (BOOL)hasPreviousConversations;
+- (NSInteger)recentConversationCount;
+- (BOOL)hasConversations;
+- (BOOL)hasOpenInboundConversation;
+
+@end
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMDataManagerProtocol.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMDataManagerProtocol.h
new file mode 100644
index 00000000..98b4d60b
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMDataManagerProtocol.h
@@ -0,0 +1,24 @@
+//
+// ICMDataManagerProtocol.h
+// IntercomSDK
+//
+// Created by Michael McNamara on 14/09/2021.
+// Copyright © 2021 Intercom. All rights reserved.
+//
+
+#ifndef ICMDataManagerProtocol_h
+#define ICMDataManagerProtocol_h
+
+NS_ASSUME_NONNULL_BEGIN
+
+@protocol ICMDataManagerProtocol
+
+- (BOOL)hasRecentConversations;
+- (BOOL)hasPreviousConversations;
+- (int)recentConversationCount;
+
+@end
+
+NS_ASSUME_NONNULL_END
+
+#endif /* ICMDataManagerProtocol_h */
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMEmailTextField.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMEmailTextField.h
new file mode 100644
index 00000000..ba89b656
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMEmailTextField.h
@@ -0,0 +1,17 @@
+//
+// ICMEmailTextField.h
+// IntercomSDK
+//
+// Created by Brian Boyle on 03/03/2019.
+// Copyright © 2019 Intercom. All rights reserved.
+//
+
+#import "ICMTextField.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface ICMEmailTextField : ICMTextField
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMEmptyInputValidator.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMEmptyInputValidator.h
new file mode 100644
index 00000000..b13cae09
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMEmptyInputValidator.h
@@ -0,0 +1,18 @@
+//
+// ICMEmptyInputValidator.h
+// IntercomSDK
+//
+// Created by Brian Boyle on 07/03/2019.
+// Copyright © 2019 Intercom. All rights reserved.
+//
+
+#import
+#import "ICMValidatorProtocol.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface ICMEmptyInputValidator : NSObject
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMEngine.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMEngine.h
new file mode 100644
index 00000000..ff013fe4
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMEngine.h
@@ -0,0 +1,20 @@
+//
+// ICMEngine.h
+// Intercom
+//
+// Created by Brian Boyle on 16/08/2016.
+//
+//
+
+@protocol ICMFileUploadConfig;
+
+typedef void (^ICMHTTPEmptySuccess)(void);
+typedef void (^ICMHTTPClientError) (NSError *error);
+typedef void (^ICMHTTPClientProgress) (double progress);
+
+@interface ICMEngine : NSObject
+
+- (void)requestWithoutRedirects:(NSURLRequest *)request success:(ICMHTTPEmptySuccess)success failure:(ICMHTTPClientError)failure;
+- (NSURLSessionUploadTask *)uploadFileWithFileName:(NSString *)filename data:(NSData *)data uploadConfig:(id)uploadConfig success:(ICMHTTPEmptySuccess)success progress:(ICMHTTPClientProgress)progress failure:(ICMHTTPClientError)failure;
+
+@end
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMErrorViewController.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMErrorViewController.h
new file mode 100644
index 00000000..a4cc1b5b
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMErrorViewController.h
@@ -0,0 +1,25 @@
+//
+// ICMErrorViewController.h
+// IntercomSDK
+//
+// Created by Roland Gropmair on 12/11/2014.
+// Copyright (c) 2014 Intercom. All rights reserved.
+//
+
+#import
+#import
+
+NS_ASSUME_NONNULL_BEGIN
+
+@protocol ICMErrorViewDelegate;
+
+@interface ICMErrorViewController : UIViewController
+
+@property (nonatomic, weak) id errorDelegate;
+
+- (instancetype)initWithTitle:(NSString *)title showActionButton:(BOOL)showRetryButton actionButtonTitle:(NSString * _Nullable)retryButtonTitle;
+- (void)configureForBackgroundColor:(UIColor *)backgroundColor buttonColor:(UIColor *)buttonColor;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMErrorViewDelegate.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMErrorViewDelegate.h
new file mode 100644
index 00000000..ec703d62
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMErrorViewDelegate.h
@@ -0,0 +1,20 @@
+//
+// ICMErrorViewDelegate.h
+// IntercomSDK-Dynamic
+//
+// Created by Brian Boyle on 29/03/2021.
+// Copyright © 2021 Intercom. All rights reserved.
+//
+
+#import
+
+NS_ASSUME_NONNULL_BEGIN
+
+@protocol ICMErrorViewDelegate
+
+@optional
+- (void) didSelectErrorAction;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMFeedbackGenerator.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMFeedbackGenerator.h
new file mode 100644
index 00000000..3548df4a
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMFeedbackGenerator.h
@@ -0,0 +1,22 @@
+//
+// ICMFeedbackGenerator.h
+// IntercomSDK
+//
+// Created by Michael Isaakidis on 31/08/2018.
+// Copyright © 2018 Intercom. All rights reserved.
+//
+
+#import
+
+typedef NS_ENUM(NSUInteger, ICMFeedbackGeneratorType) {
+ ICMFeedbackGeneratorTypeSelection,
+ ICMFeedbackGeneratorTypeError,
+ ICMFeedbackGeneratorTypeSuccess,
+ ICMFeedbackGeneratorTypeWarning,
+};
+
+@interface ICMFeedbackGenerator : NSObject
+
++ (void)feedbackWithType:(ICMFeedbackGeneratorType)type;
+
+@end
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMHTTPClient.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMHTTPClient.h
new file mode 100644
index 00000000..123de0d9
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMHTTPClient.h
@@ -0,0 +1,195 @@
+//
+// Created by Ignacio Delgado on 15/04/2014.
+// Copyright (c) 2014 Intercom. All rights reserved.
+//
+
+#import
+#import "ICMHTTPClientProtocol.h"
+
+@class ArticleMetaData;
+
+@interface ICMHTTPClient : NSObject
+
+#pragma mark - User Updates
+
++ (void)updateUserWithUserAttributes:(NSDictionary *)attributes
+ newSession:(BOOL)newSession
+ sentFromBackground:(BOOL)sentFromBackground
+ carouselVisible:(BOOL)carouselCurrentlyPresented
+ success:(ICMHTTPBaseSuccess)success
+ error:(ICMHTTPClientError)failure;
+
+
+#pragma mark - Push Notification Tokens
+
++ (void)submitDeviceToken;
++ (void)deleteDeviceToken:(NSString *)deviceTokenString
+ forUserIdentity:(ICMUserIdentity *)userIdentity
+ completion:(ICMHTTPEmptyBlock)completion;
+
+
+#pragma mark - Events
+
++ (void)logEventWithName:(NSString *)name
+ metadata:(NSDictionary *)metadata
+ sentFromBackground:(BOOL)sentFromBackground
+ carouselVisible:(BOOL)carouselCurrentlyPresented
+ success:(ICMHTTPBaseSuccess)success
+ error:(ICMHTTPClientError)failure;
+
+
+#pragma mark - Conversations
+
++ (void)markConversationAsRead:(NSString *)conversationId success:(ICMHTTPBaseSuccess)success error:(ICMHTTPClientError)failure;
++ (void)markConversationAsDismissed:(NSString *)conversationId success:(ICMHTTPEmptySuccess)success error:(ICMHTTPClientError)failure;
++ (void)recordInteractions:(NSString *)conversationId
+ interactions:(NSArray *)interactions;
++ (void)unreadConversations:(NSInteger)pageSize success:(ICMHTTPBaseSuccess)success error:(ICMHTTPClientError)failure;
++ (void)conversationsBefore:(NSDate *)beforeTimestamp pageSize:(NSInteger)pageSize success:(ICMHTTPConversationsSuccess)success error:(ICMHTTPClientError)failure;
+
+/// Create a new conversation.
+/// @param blocks The blocks.
+/// @param articleMetaData If a conversation is started from an article, the articleId should be passed through. This allows teammates know what article a conversation was started from. The articleSource will also be included when Help Center when opened from the Search/Browse card
+/// @param success Success completion block.
+/// @param failure Failure completion block.
++ (void)createConversationWithBlocks:(NSArray *)blocks
+ articleMetaData:(ArticleMetaData *)articleMetaData
+ success:(ICMHTTPConversationSuccess)success
+ error:(ICMHTTPClientError)failure;
++ (void)replyToConversation:(NSString *)conversationId
+ withBlocks:(NSArray *)blocks
+ success:(ICMHTTPReplyConversationSuccess)success
+ error:(ICMHTTPClientError)failure;
+
++ (void)reactToConversation:(NSString *)conversationId withReactionIndex:(NSUInteger)index;
++ (void)conversationDetail:(NSString *)conversationId success:(ICMHTTPConversationSuccess)success error:(ICMHTTPClientError)failure;
+
+
+#pragma mark - Conversation Ratings
+
++ (void)rateConversation:(NSString *)conversationId withRatingIndex:(NSUInteger)ratingIndex;
++ (void)addConversationRatingRemarkForConversation:(NSString *)conversationId remark:(NSString *)remark;
+
+
+#pragma mark - Articles
+
++ (void)article:(NSString *)articleId success:(ICMHTTPArticleSuccess)success error:(ICMHTTPClientError)failure;
++ (void)reactToArticle:(NSString *)articleId articleContentId:(NSString *)articleContentId withReactionIndex:(NSUInteger)index allowAutoResponses:(BOOL)allowAutoResponses articleSource:(NSString *)articleSource;
+
+
+#pragma mark - GIFs
+
++ (void)loadGIFs:(NSString *)searchQuery
+ success:(ICMHTTPGIFSuccess)success
+ error:(ICMHTTPClientError)failure;
+
+
+#pragma mark - Metrics
+
++ (void)submitMetrics:(NSArray *> *)metrics
+ opsMetrics:(NSArray *> *)opsMetrics
+ success:(ICMHTTPEmptySuccess)success
+ error:(ICMHTTPClientError)failure;
+
+
+#pragma mark - Uploads
+
++ (void)createUploadWithUpload:(ITBUpload *)upload success:(ICMHTTPUploadCreateSuccess)success progress:(ICMHTTPClientProgress)progress error:(ICMHTTPClientError)failure;
+
+
+#pragma mark - URL Tracker
+
++ (void)trackURL:(NSString *)url;
+
+
+#pragma mark - Operator
+
++ (void)operatorConditionSatisfied:(NSString *)transitionId
+ converstionId:(NSString *)conversationId
+ error:(ICMHTTPClientError)failure;
+
+
+#pragma mark - Sheets
+
++ (void)fetchMessengerSheetData:(NSDictionary *)sheetParams success:(ICMHTTPSheetSuccess)success failure:(ICMHTTPClientError)failure;
++ (void)submitMessengerSheet:(NSDictionary *)sheetPayload uri:(NSString *)uri success:(ICMHTTPEmptyBlock)success failure:(ICMHTTPClientError)failure;
+
+
+#pragma mark - Homescreen
+
++ (void)fetchHomescreenWithSuccess:(ICMHTTPHomescreenSuccess)success failure:(ICMHTTPClientError)failure;
+
+
+#pragma mark - Quick Reply
+
++ (void)quickReplyToConversation:(NSString *)conversationId
+ withPartId:(NSString *)quickReplyPartId
+ withOptionUUID:(NSString *)uuid
+ success:(ICMHTTPReplyConversationSuccess)success
+ error:(ICMHTTPClientError)failure;
+
+
+#pragma mark - Attribute Collector
+
++ (void)submitFormParams:(NSDictionary *)formParams
+ forConversation:(NSString *)conversationId
+ success:(ICMHTTPSubmitFormSuccess)success
+ error:(ICMHTTPClientError)failure;
+
+
+#pragma mark - Inbound Custom Bots
+
++ (void)triggerInboundBotWithOptionUUID:(NSString *)uuid
+ success:(ICMHTTPConversationSuccess)success
+ error:(ICMHTTPClientError)failure;
+
+
+#pragma mark - Stats System
+
++ (void)recordStatistic:(NSString *)statToRecord withInstanceId:(NSString *)instanceId statsMetadata:(NSDictionary *)statsMetadata success:(ICMHTTPBaseSuccess)success error:(ICMHTTPClientError)failure;
+
+
+#pragma mark - Carousels
+
++ (void)getCarouselWithId:(NSString*)carouselId
+ success:(ICMHTTPCarouselSuccess)success
+ error:(ICMHTTPClientError)failure;
+
++ (void)getCarouselWithInstanceId:(NSString*)carouselInstanceId
+ success:(ICMHTTPCarouselSuccess)success
+ error:(ICMHTTPClientError)failure;
+
+#pragma mark - Help Center
+
++ (void)getHelpCenterCollections:(ICMHTTPArraySuccess)success
+ error:(ICMHTTPClientError)failure;
+
++ (void)getHelpCenterCollection:(NSString*)collectionId
+ success:(ICMHTTPDictionarySuccess)success
+ error:(ICMHTTPClientError)failure;
+
++ (void)getHelpCenterSearchResults:(NSString*)searchText
+ source:(NSString*)source
+ success:(ICMHTTPArraySuccess)success
+ error:(ICMHTTPClientError)failure;
+
+#pragma mark - Surveys
+
++ (void)submitSurvey:(Survey *)survey
+ success:(ICMHTTPDictionarySuccess)success
+ error:(ICMHTTPClientError)failure;
+
+
++ (void)dismissSurvey:(Survey *)survey
+ success:(ICMHTTPEmptyBlock)success
+ error:(ICMHTTPClientError)failure;
+
+
+#pragma mark - Composer suggestions
+
+
++ (void)openMessenger:(ICMHTTPBaseSuccess)success
+ error:(ICMHTTPClientError)failure;
+
+@end
+
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMHTTPClientProtocol.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMHTTPClientProtocol.h
new file mode 100644
index 00000000..8ba9627d
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMHTTPClientProtocol.h
@@ -0,0 +1,93 @@
+//
+// ICMHTTPClientProtocol.h
+// IntercomSDK
+//
+// Created by Michael McNamara on 14/04/2021.
+// Copyright © 2021 Intercom. All rights reserved.
+//
+
+#ifndef ICMHTTPClientProtocol_h
+#define ICMHTTPClientProtocol_h
+
+#import "ICMEngine.h"
+
+@class ITBUpload;
+@class ICMConversationsResponse;
+@class ICMConversation;
+@class ICMConversationPart;
+@class ICMArticle;
+@class ICMGIFResponse;
+@class ICMSheet;
+@class ICMHomescreen;
+@class ICMBaseResponse;
+@class ICMCarousel;
+@class ICMUserIdentity;
+@class Survey;
+@class ICMComposerSuggestions;
+
+static const NSInteger kICMHTTPClientDefaultPageSize = 10;
+static const NSInteger kNewContentEventTypeCarousel = 44;
+
+NS_ASSUME_NONNULL_BEGIN
+
+typedef void (^ICMHTTPBaseSuccess)(ICMBaseResponse *response);
+typedef void (^ICMHTTPConversationsSuccess)(ICMConversationsResponse *response);
+typedef void (^ICMHTTPConversationSuccess)(ICMConversation *response);
+typedef void (^ICMHTTPReplyConversationSuccess)(ICMConversationPart *response);
+typedef void (^ICMHTTPUploadCreateSuccess)(NSString * _Nullable publicUrl);
+typedef void (^ICMHTTPArticleSuccess)(ICMArticle *article);
+typedef void (^ICMHTTPGIFSuccess)(ICMGIFResponse *gifResponse);
+typedef void (^ICMHTTPSheetSuccess)(ICMSheet *sheet);
+typedef void (^ICMHTTPHomescreenSuccess)(ICMHomescreen *sheet);
+typedef void (^ICMHTTPEmptyBlock) (void);
+typedef void (^ICMHTTPSubmitFormSuccess)(ICMConversation *response);
+typedef void (^ICMHTTPCarouselSuccess)(ICMCarousel *carousel);
+typedef void (^ICMHTTPArraySuccess)(NSArray *array);
+typedef void (^ICMHTTPDictionarySuccess)(NSDictionary *object);
+typedef void (^ICMHTTPComposerSuggestionsSuccess)(ICMComposerSuggestions *composerSuggestions);
+
+@protocol ICMHTTPClientProtocol
+
+#pragma mark - Help Center
+
++ (void)getHelpCenterCollections:(nullable ICMHTTPArraySuccess)success
+ error:(nullable ICMHTTPClientError)failure;
+
++ (void)getHelpCenterCollection:(nullable NSString*)collectionId
+ success:(nullable ICMHTTPDictionarySuccess)success
+ error:(nullable ICMHTTPClientError)failure;
+
++ (void)getHelpCenterSearchResults:(NSString*)searchText
+ source:(nullable NSString*)source
+ success:(nullable ICMHTTPArraySuccess)success
+ error:(nullable ICMHTTPClientError)failure;
+
+#pragma mark - Surveys
+
++ (void)submitSurvey:(Survey *)survey
+ success:(nullable ICMHTTPDictionarySuccess)success
+ error:(nullable ICMHTTPClientError)failure;
+
++ (void)dismissSurvey:(Survey *)survey
+ success:(nullable ICMHTTPEmptyBlock)success
+ error:(nullable ICMHTTPClientError)failure;
+
++ (void)failSurvey:(NSString *)surveyId
+ progressId:(NSInteger)progressId
+ success:(nullable ICMHTTPEmptyBlock)success
+ error:(nullable ICMHTTPClientError)failure;
+
++ (void)actionButtonClicked:(Survey *)survey
+ stepId:(NSString *)stepId
+ success:(nullable ICMHTTPEmptyBlock)success
+ error:(nullable ICMHTTPClientError)failure;
+
+
+
+
+@end
+
+NS_ASSUME_NONNULL_END
+
+
+#endif /* ICMHTTPClientProtocol_h */
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMHelpCenterTranslationManager.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMHelpCenterTranslationManager.h
new file mode 100644
index 00000000..1d4e5c16
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMHelpCenterTranslationManager.h
@@ -0,0 +1,19 @@
+//
+// ICMHelpCenterTranslationManager.h
+// IntercomSDK-Dynamic
+//
+// Created by Michael McNamara on 16/06/2021.
+// Copyright © 2021 Intercom. All rights reserved.
+//
+
+#import
+
+NS_ASSUME_NONNULL_BEGIN
+
+/// A `ICMTranslationManager` subclass that uses our `help_center_locale` instead of the standard Intercom locale.
+/// This should be used to translate any strings in our native Help Center.
+@interface ICMHelpCenterTranslationManager : ICMTranslationManager
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMInAppsViewController.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMInAppsViewController.h
new file mode 100644
index 00000000..d85336d2
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMInAppsViewController.h
@@ -0,0 +1,68 @@
+//
+// ICMInAppsViewController.h
+// Pods
+//
+// Created by James Treanor on 07/12/2015.
+//
+//
+
+#import
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class ICMConversation;
+@class ICMHostAppState;
+
+typedef NS_ENUM(NSUInteger, ICMInAppsViewControllerState){
+ ICMInAppsViewControllerStateEmpty = 0,
+ ICMInAppsViewControllerStateSnippet = 1,
+ ICMInAppsViewControllerStateMultipleSnippets = 2,
+ ICMInAppsViewControllerStateFull = 3,
+};
+
+@protocol ICMInAppsDelegate
+- (void)presentConversation:(ICMConversation *)conversation fromFull:(BOOL)fromFull;
+- (void)dismissConversation:(ICMConversation *)conversation fromFull:(BOOL)fromFull;
+- (void)hideInApp:(UIViewController *)inApp;
+- (void)showInbox;
+@optional
+- (void)conversationShown:(ICMConversation *)conversation asFull:(BOOL)asFull;
+- (BOOL)isMessengerPresented;
+- (BOOL)shouldShowLauncher;
+- (void)launcherTapped;
+- (void)didShowFullScreenInApp;
+- (void)didHideFullScreenInApp;
+- (void)didHideInApps;
+@end
+
+@protocol ICMInAppUpdateProtocol
+- (void)conversationMarkedAsRead:(NSString *)conversationId;
+@end
+
+@protocol ICMInAppsAnimationProtocol
+- (void)animateOutWithCompletion:(void (^ __nullable)(void))completion;
+@end
+
+@protocol ICMFullScreenInAppProtocol
+- (ICMConversation *)conversation;
+@end
+
+@interface ICMInAppsViewController : UIViewController
+
+- (instancetype)initWithConversations:(NSArray *)conversations delegate:(id )delegate hostAppState:(ICMHostAppState *)state;
+- (BOOL)shouldHandleTouchOnView:(UIView *)view;
+- (BOOL)isShowingLauncherOrInApp;
+- (void)tearDownInApps;
+- (void)tearDown;
+- (void)updateLauncherVisibility;
+- (void)setConversations:(NSArray *)conversations completion:(void (^ __nullable)(void))completion;
+- (void)hideLauncherWithAnimation;
+- (void)bottomPaddingUpdated;
+- (ICMInAppsViewControllerState)state;
+
+@property (nonatomic, strong) NSArray *conversations;
+@property (nonatomic, strong) ICMHostAppState *hostAppState;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMInputViewProtocol.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMInputViewProtocol.h
new file mode 100644
index 00000000..9ffbef39
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMInputViewProtocol.h
@@ -0,0 +1,33 @@
+//
+// ICMInputViewProtocol.h
+// IntercomSDK
+//
+// Created by Brian Boyle on 09/04/2019.
+// Copyright © 2019 Intercom. All rights reserved.
+//
+
+#import
+
+NS_ASSUME_NONNULL_BEGIN
+
+@protocol ICMInputViewProtocol
+
+@property (nonatomic) BOOL isRequired;
+- (BOOL)isUserInputValid:(NSError * __autoreleasing *)error;
+- (nullable id)inputValue;
+- (void)configureErrorState;
+- (void)configureDefaultState;
+@end
+
+@protocol ICMSubmittableInputViewProtocol
+- (void)configureSuccessState;
+- (void)configureLoadingState;
+@end
+
+@protocol ICMInputViewDelegate
+- (void)entryCompleteButtonTapped;
+- (void)cancelButtonTapped;
+- (void)valueUpdated:(nullable id)value;
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMIntegerTextField.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMIntegerTextField.h
new file mode 100644
index 00000000..df629165
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMIntegerTextField.h
@@ -0,0 +1,17 @@
+//
+// ICMIntegerTextField.h
+// IntercomSDK
+//
+// Created by Brian Boyle on 03/03/2019.
+// Copyright © 2019 Intercom. All rights reserved.
+//
+
+#import
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface ICMIntegerTextField : ICMTextField
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMLinkOpener.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMLinkOpener.h
new file mode 100644
index 00000000..96a7b29e
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMLinkOpener.h
@@ -0,0 +1,20 @@
+//
+// Created by Ignacio Delgado on 18/11/2014.
+// Copyright (c) 2014 Intercom. All rights reserved.
+//
+
+#import
+
+@protocol ICMLinkOpenerProtocol
++ (BOOL)isExternalLink:(NSURL *)url;
+@end
+
+@interface ICMLinkOpener : NSObject
+
++ (void)openLink:(NSURL *)url;
++ (BOOL)isCustomSchemeURL:(NSURL *)urlToCheck;
++ (BOOL)isUniversalLink:(NSURL *)urlToCheck;
++ (BOOL)isHelpCenterLink:(NSURL *)url;
++ (BOOL)isExternalLink:(NSURL *)url;
+
+@end
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMLoadingViewController.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMLoadingViewController.h
new file mode 100644
index 00000000..002c2730
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMLoadingViewController.h
@@ -0,0 +1,10 @@
+
+#import
+#import
+
+@interface ICMLoadingViewController : UIViewController
+
+- (instancetype)initWithImage:(UIImage *)loadingImage accessibilityText:(NSString *)accessibilityText;
+- (void)hideLoadingSpinner;
+
+@end
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMMetric.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMMetric.h
new file mode 100644
index 00000000..71edd4b9
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMMetric.h
@@ -0,0 +1,28 @@
+//
+// ICMMetric.h
+// Pods
+//
+// Created by James Treanor on 07/08/2015.
+//
+//
+
+#import
+#import "ICMMetricEvent.h"
+@class ICMOpsMetricEvent;
+
+@protocol ICMMetricProtocol
+- (void)addEvent:(ICMMetricEvent *)event NS_SWIFT_NAME(addEvent(_:));
+@end
+
+@interface ICMMetric : NSObject
+
++ (instancetype)sharedInstance;
+
+- (void)addEvent:(ICMMetricEvent *)event NS_SWIFT_NAME(addEvent(_:));
+- (void)addOpsEvent:(ICMOpsMetricEvent *)opsEvent;
+- (NSSet *)events;
+- (NSSet *)opsEvents;
+- (void)clearAllEvents;
+- (void)clearEvents:(NSSet *)events opsEvents:(NSSet *)opsEvents;
+
+@end
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMMetricEvent.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMMetricEvent.h
new file mode 100644
index 00000000..a1543ee9
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMMetricEvent.h
@@ -0,0 +1,226 @@
+//
+// ICMMetricEvent.h
+// Pods
+//
+// Created by James Treanor on 15/03/2016.
+//
+//
+
+#import
+
+typedef NS_ENUM(NSUInteger, ICMMetricEventType) {
+ ICMMetricEventTypeMessenger = 0,
+ ICMMetricEventTypeEducate = 1,
+ ICMMetricEventTypeCarousel = 2,
+ ICMMetricEventTypeSearchBrowse = 3,
+ ICMMetricEventTypeSurvey = 4
+};
+
+NS_ASSUME_NONNULL_BEGIN
+
+#pragma mark - Actions
+static NSString *const ICMMetricEventActionOpened = @"opened";
+static NSString *const ICMMetricEventActionClosed = @"closed";
+static NSString *const ICMMetricEventActionReceived = @"received";
+static NSString *const ICMMetricEventActionDismissed = @"dismissed";
+static NSString *const ICMMetricEventActionViewed = @"viewed";
+static NSString *const ICMMetricEventActionSent = @"sent";
+static NSString *const ICMMetricEventActionTyped = @"typed";
+static NSString *const ICMMetricEventActionClicked = @"clicked";
+static NSString *const ICMMetricEventActionSearched = @"searched";
+static NSString *const ICMMetricEventActionCompleted = @"completed";
+static NSString *const ICMMetricEventActionStarted = @"started";
+static NSString *const ICMMetricEventActionFailed = @"failed";
+static NSString *const ICMMetricEventActionRequested = @"requested";
+
+#pragma mark - Objects
+static NSString *const ICMMetricEventObjectConversation = @"conversation";
+static NSString *const ICMMetricEventObjectNewConversation = @"new_conversation";
+static NSString *const ICMMetricEventObjectMessenger = @"messenger";
+static NSString *const ICMMetricEventObjectMessage = @"message";
+static NSString *const ICMMetricEventObjectReply = @"reply";
+static NSString *const ICMMetricEventObjectQuickReplies = @"quick_replies";
+static NSString *const ICMMetricEventObjectQuickReply = @"quick_reply";
+static NSString *const ICMMetricEventObjectReaction = @"reaction";
+static NSString *const ICMMetricEventObjectBadge = @"badge";
+static NSString *const ICMMetricEventObjectTeamProfile = @"team_profile";
+static NSString *const ICMMetricEventObjectTeammateProfile = @"teammate_profile";
+static NSString *const ICMMetricEventObjectArticle = @"article";
+static NSString *const ICMMetricEventObjectArticlePreload = @"article_preload";
+static NSString *const ICMMetricEventObjectHelpCenter = @"help_center";
+static NSString *const ICMMetricEventObjectGIFInput = @"gif_input";
+static NSString *const ICMMetricEventObjectTextInput = @"text_input";
+static NSString *const ICMMetricEventObjectImageInput = @"image_input";
+static NSString *const ICMMetricEventObjectExpandedImageInput = @"expanded_image_input";
+static NSString *const ICMMetricEventObjectExpandedGIFInput = @"expanded_gif_input";
+static NSString *const ICMMetricEventObjectMessengerSheet = @"messenger_sheet";
+static NSString *const ICMMetricEventObjectHomescreen = @"home_screen";
+static NSString *const ICMMetricEventObjectHelpCenterData = @"help_center_data";
+static NSString *const ICMMetricEventObjectArticleReaction = @"article_reaction";
+static NSString *const ICMMetricEventObjectSearchBrowse = @"search_browse_card";
+static NSString *const ICMMetricEventObjectSearchBrowseInput = @"search_browse_card_input";
+static NSString *const ICMMetricEventObjectSurvey = @"survey";
+static NSString *const ICMMetricEventObjectSurveyPreload = @"survey_preload";
+static NSString *const ICMMetricEventObjectStepLoad = @"step_load";
+static NSString *const ICMMetricEventObjectStepError = @"step_error";
+
+
+#pragma mark Carousel
+static NSString *const ICMMetricEventObjectCarouselMessage = @"carousel_message";
+static NSString *const ICMMetricEventObjectCarouselMessagePreload = @"carousel_message_preload";
+static NSString *const ICMMetricEventObjectCarouselPermissionSkipped = @"carousel_permission_skipped";
+static NSString *const ICMMetricEventObjectCarouselPermissionDialog = @"carousel_permission_dialog";
+static NSString *const ICMMetricEventObjectCarouselPermissionSettings = @"carousel_permission_settings";
+
+
+#pragma mark - Place
+static NSString *const ICMMetricEventPlaceMessenger = @"messenger";
+static NSString *const ICMMetricEventPlaceMessengerHomeApp = @"messenger_home_app";
+static NSString *const ICMMetricEventPlaceConversation = @"conversation";
+static NSString *const ICMMetricEventPlaceInApp = @"in_app";
+static NSString *const ICMMetricEventPlaceCarouselMessage = @"carousel_message";
+static NSString *const ICMMetricEventPlaceWebview = @"webview";
+static NSString *const ICMMetricEventPlaceHelpCenterCollectionList = @"collection_list";
+static NSString *const ICMMetricEventPlaceHelpCenterArticleList = @"article_list";
+static NSString *const ICMMetricEventPlaceHelpCenterSearchResults = @"search_results";
+static NSString *const ICMMetricEventPlaceHelpCenterArticle = @"article";
+static NSString *const ICMMetricEventPlaceAPI = @"api";
+static NSString *const ICMMetricEventPlaceLegacyArticleSearchApp = @"legacy_article_search_app";
+static NSString *const ICMMetricEventPlacePushNotification = @"push";
+static NSString *const ICMMetricEventPlaceHomeScreen = @"home-screen";
+static NSString *const ICMMetricEventPlaceSearchBrowse = @"search_browse";
+static NSString *const ICMMetricEventPlaceSurvey = @"survey";
+
+
+#pragma mark - Context
+static NSString *const ICMMetricEventContextNoContext = @"no_context";
+static NSString *const ICMMetricEventContextFromDefaultLauncher = @"from_launcher";
+static NSString *const ICMMetricEventContextFromCustomLauncher = @"from_custom_launcher";
+static NSString *const ICMMetricEventContextFromCloseButton = @"from_close_button";
+static NSString *const ICMMetricEventContextFromBadge = @"from_badge";
+static NSString *const ICMMetricEventContextFromSnippet = @"from_snippet";
+static NSString *const ICMMetricEventContextFromFull = @"from_full";
+static NSString *const ICMMetricEventContextFromConversationList = @"from_conversation_list";
+static NSString *const ICMMetricEventContextInConversation = @"in_conversation";
+static NSString *const ICMMetricEventContextInNewConversation = @"in_new_conversation";
+static NSString *const ICMMetricEventContextFromConversation = @"from_conversation";
+static NSString *const ICMMetricEventContextFromNewConversation = @"from_new_conversation";
+static NSString *const ICMMetricEventContextFromClosedConversation = @"from_closed_conversation";
+static NSString *const ICMMetricEventContextInFollowUpConversation = @"in_followup_conversation";
+static NSString *const ICMMetricEventContextFromClicking = @"from_clicking";
+static NSString *const ICMMetricEventContextFromScrolling = @"from_scrolling";
+static NSString *const ICMMetricEventContextFromAuto = @"from_auto";
+static NSString *const ICMMetricEventContextFromPush = @"from_push";
+static NSString *const ICMMetricEventContextOnArticle = @"on_article";
+static NSString *const ICMMetricEventContextFromHelpCenterWebView = @"from_help_center_webview";
+static NSString *const ICMMetricEventContextFromArticleOnButton = @"from_article_on_button";
+static NSString *const ICMMetricEventContextHomescreen = @"home_screen";
+static NSString *const ICMMetricEventContextConversation = @"conversation";
+static NSString *const ICMMetricEventContextFromCarousel = @"from_carousel";
+static NSString *const ICMMetricEventContextFromRetry = @"from_retry";
+static NSString *const ICMMetricEventContextFromSwipe = @"from_swipe";
+static NSString *const ICMMetricEventContextFromCTA = @"from_cta";
+static NSString *const ICMMetricEventContextFromPermission = @"from_permission";
+static NSString *const ICMMetricEventContextFromPermissionSkipped = @"from_permission_skipped";
+static NSString *const ICMMetricEventContextReactionHappy = @"reaction_happy";
+static NSString *const ICMMetricEventContextReactionNeutral = @"reaction_neutral";
+static NSString *const ICMMetricEventContextReactionSad = @"reaction_sad";
+static NSString *const ICMMetricEventContextHumanStyle = @"style_human";
+static NSString *const ICMMetricEventContextBotStyle = @"style_bot";
+static NSString *const ICMMetricEventContextArticle = @"article";
+static NSString *const ICMMetricEventContextMessenger = @"messenger";
+static NSString *const ICMMetricEventContextProgrammatic = @"from_programmatic";
+static NSString *const ICMMetricEventContextAutomatic = @"from_automatic";
+static NSString *const ICMMetricEventContextFromExternalLink = @"from_onward_external_link";
+static NSString *const ICMMetricEventContextFromDeepLink = @"from_onward_deep_link";
+
+#pragma mark Carousel Permissions
+static NSString *const ICMMetricEventContextPushNotification = @"push_notifications_permission";
+static NSString *const ICMMetricEventContextLocation = @"location_permission";
+static NSString *const ICMMetricEventContextCamera = @"camera_permission";
+static NSString *const ICMMetricEventContextPhotoGallery = @"photos_permission";
+static NSString *const ICMMetricEventContextMicrophone = @"microphone_permission";
+
+#pragma mark - Info Keys
+static NSString *const kICMMetricEventInfoConversationId = @"conversation_id";
+static NSString *const kICMMetricEventInfoClosedConversationId = @"closed_conversation_id";
+static NSString *const kICMMetricEventInfoConversation = @"conversation";
+static NSString *const kICMMetricEventInfoPushInstanceId = @"instance_id";
+static NSString *const kICMMetricEventInfoConversationPart = @"conversation_part";
+static NSString *const kICMMetricEventInfoMessageText = @"message_text";
+static NSString *const kICMMetricEventInfoIsAttachment = @"is_attachment";
+static NSString *const kICMMetricEventInfoIsAnnotated = @"is_annotated";
+static NSString *const kICMMetricEventInfoIsSticker = @"is_sticker";
+static NSString *const kICMMetricEventInfoHasArticleCard = @"has_article_card";
+static NSString *const kICMMetricEventInfoLauncherState = @"state";
+static NSString *const kICMMetricEventInfoPushType = @"push_type";
+static NSString *const kICMMetricEventInfoMessageType = @"message_type";
+static NSString *const kICMMetricEventInfoBadgeValue = @"badge_value";
+static NSString *const kICMMetricEventInfoArticleId = @"article_id";
+static NSString *const kICMMetricEventInfoIsGIF = @"is_gif";
+static NSString *const kICMMetricEventInfoGIFSearchQuery = @"search_query";
+static NSString *const kICMMetricEventInfoTeamMateStatus = @"teammate_status";
+static NSString *const kICMMetricEventInfoTimeSinceLastActive = @"time_since_last_active";
+static NSString *const kICMMetricEventInfoWithinOfficeHours = @"within_office_hours";
+static NSString *const kICMMetricEventInfoURL = @"url";
+static NSString *const kICMMetricEventInfoQuickReplyId = @"quick_reply_id";
+static NSString *const kICMMetricEventInfoScreensInMessage = @"screens_in_message";
+static NSString *const kICMMetricEventInfoScreensShown = @"screens_shown";
+static NSString *const kICMMetricEventInfoScreensSeen = @"screens_seen";
+static NSString *const kICMMetricEventInfoPermissionGranted = @"permission_granted";
+static NSString *const kICMMetricEventInfoCarouselInstanceId = @"instance_id";
+static NSString *const kICMMetricEventInfoRequestedInstanceId = @"requested_instance_id";
+static NSString *const kICMMetricEventInfoRequestedContentId = @"requested_content_id";
+static NSString *const kICMMetricEventInfoSource = @"source";
+static NSString *const kICMMetricEventInfoErrorCode = @"error_code";
+static NSString *const kICMMetricEventInfoSuggestedArticlesShown = @"articles_shown";
+static NSString *const kICMMetricEventInfoSuggestedArticlesCount = @"articles_count";
+static NSString *const kICMMetricEventInfoConversationShown = @"conversation_shown";
+static NSString *const kICMMetricEventInfoFiltered = @"filtered";
+static NSString *const kICMMetricEventInfoHomeScreenIndex = @"home_screen_index";
+static NSString *const kICMMetricEventInfoSurveyId = @"survey_id";
+static NSString *const kICMMetricEventInfoStepsComplete = @"steps_complete";
+static NSString *const kICMMetricEventInfoQuestionsSeen = @"questions_seen";
+static NSString *const kICMMetricEventInfoFormat = @"format";
+static NSString *const kICMMetricEventInfoMaxSteps = @"max_steps";
+
+
+#pragma mark - Info Values
+static NSString *const kICMMetricEventInfoLauncherStateEmpty = @"empty";
+static NSString *const kICMMetricEventInfoLauncherStateBadge = @"badge";
+static NSString *const kICMMetricEventInfoLauncherStateSnippet = @"snippet";
+static NSString *const kICMMetricEventInfoLauncherStateFull = @"full";
+static NSString *const kICMMetricEventInfoLauncherStateMultipleSnippets = @"multiple snippets";
+static NSString *const kICMMetricEventInfoPushTypeMessage = @"message";
+static NSString *const kICMMetricEventInfoPushTypeNotification = @"notification";
+static NSString *const kICMMetricEventInfoMessageTypeNote = @"note";
+static NSString *const kICMMetricEventInfoMessageTypePost = @"post";
+static NSString *const kICMMetricEventInfoMessageTypeChat = @"chat";
+static NSString *const kICMMetricEventInfoTeamMateActive = @"active";
+static NSString *const kICMMetricEventInfoTeamMateAway = @"away";
+static NSString *const kICMMetricEventInfoProgrammatic = @"programmatic";
+static NSString *const kICMMetricEventInfoAutomatic = @"automatic";
+static NSString *const kICMMetricEventInfoSmallFullScreen = @"small_full_screen";
+static NSString *const kICMMetricEventInfoLargeFullScreen = @"large_full_screen";
+
+
+@interface ICMMetricEvent : NSObject
+
++ (instancetype)eventWithAction:(NSString *)action
+ object:(NSString *)object
+ place:(nullable NSString *)place
+ context:(nullable NSString *)context;
+
++ (instancetype)eventWithAction:(NSString *)action
+ object:(NSString *)object
+ place:(nullable NSString *)place
+ context:(nullable NSString *)context
+ additionalInfo:(nullable NSDictionary *)info;
+
+- (NSDictionary *)eventDictionary;
+
+@property (nonatomic, assign) ICMMetricEventType eventType;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMMultipleAvatarView.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMMultipleAvatarView.h
new file mode 100644
index 00000000..2a39cf79
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMMultipleAvatarView.h
@@ -0,0 +1,15 @@
+#import
+
+@class ICMParticipant;
+
+@interface ICMMultipleAvatarView : UIView
+
+@property (nonatomic, strong) UIColor *avatarBorderColor;
+
+- (id)initWithWidth:(CGFloat)width;
+
+- (void)bindAdmins:(NSArray *)admins;
+
+- (void)cancelImageLoad;
+- (void)keepUserPresenceViewBackgroundColor;
+@end
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMNavigationBarCloseButton.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMNavigationBarCloseButton.h
new file mode 100644
index 00000000..12506407
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMNavigationBarCloseButton.h
@@ -0,0 +1,25 @@
+//
+// ICMCloseBarButtonItem.h
+// IntercomSDK
+//
+// Created by Michael Isaakidis on 28/06/2018.
+// Copyright © 2018 Intercom. All rights reserved.
+//
+
+#import
+
+typedef NS_ENUM(NSInteger, ICMNavigationBarCloseButtonStyle) {
+ ICMNavigationBarCloseButtonStyleLight,
+ ICMNavigationBarCloseButtonStyleDark,
+ ICMNavigationBarCloseButtonStyleText
+};
+
+extern const CGFloat kICMContentHolderDismissButtonBackgroundAlpha;
+
+@interface ICMNavigationBarCloseButton : UIButton
+
+@property (nonatomic, assign) CGFloat backgroundViewAlpha;
+@property (nonatomic) ICMNavigationBarCloseButtonStyle style;
+- (instancetype)initWithFrame:(CGRect)frame style:(ICMNavigationBarCloseButtonStyle)style;
+
+@end
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMNavigationController.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMNavigationController.h
new file mode 100644
index 00000000..73b3d04b
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMNavigationController.h
@@ -0,0 +1,33 @@
+#import
+#import
+
+typedef enum : NSUInteger {
+ Messenger,
+ HelpCenter,
+ ContentModal,
+ Sheet
+} IntercomPresentationContext;
+
+@class ICMHostAppState;
+@class ICMNavigationBarCloseButton;
+
+@protocol ICMCloseIntercomModalDelegate
+- (void)closeIntercomModal;
+@end
+
+@interface ICMNavigationController : UINavigationController
+
+- (instancetype)initWithHostAppState:(ICMHostAppState *)hostAppState
+ closeIntercomModalDelegate:(id)closeIntercomModalDelegate
+ presentationContext:(IntercomPresentationContext)presentationContext;
+
+- (void)setWallpaperHeight:(CGFloat)height;
+- (void)displayCloseButton;
+- (void)removeCloseButton;
+- (void)addBackButton;
+- (void)closeIntercomModal;
+
+@property (nonatomic, strong) ICMNavigationBarCloseButton *closeButton;
+@property (nonatomic, assign) IntercomPresentationContext presentationContext;
+
+@end
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMParticipant.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMParticipant.h
new file mode 100644
index 00000000..c1522543
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMParticipant.h
@@ -0,0 +1,21 @@
+#import
+#import "ICMSafeNetworkModel.h"
+#import "ICMAvatar.h"
+
+@interface ICMParticipant : ICMSafeNetworkModel
+
+@property (nonatomic, strong) ICMAvatar *avatar;
+@property (nonatomic, copy) NSString *email;
+@property (nonatomic, copy) NSString *participantId;
+@property (nonatomic, copy) NSString *name;
+@property (nonatomic, copy) NSString *firstName;
+@property (nonatomic, copy) NSString *type;
+@property (nonatomic, assign) BOOL isBot;
+
++ (instancetype)instanceFromDictionary:(NSDictionary *)aDictionary;
+- (BOOL)isEqualToParticipant:(ICMParticipant *)other;
+- (NSString *)firstName;
+- (BOOL)isAdmin;
+- (NSAttributedString *)adminAppNameTitle:(NSDictionary *)styleAttributes;
+
+@end
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMParticipatingAdmin.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMParticipatingAdmin.h
new file mode 100644
index 00000000..1f5986b9
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMParticipatingAdmin.h
@@ -0,0 +1,22 @@
+//
+// ICMParticipatingAdmin.h
+// Pods
+//
+// Created by James Treanor on 10/03/2016.
+//
+//
+
+#import "ICMParticipant.h"
+@class ICMSocialAccount;
+
+@interface ICMParticipatingAdmin : ICMParticipant
+
+@property (nonatomic, copy) NSDate *lastActive;
+@property (nonatomic, assign) BOOL isActive;
+@property (nonatomic, copy) NSString *intro;
+@property (nonatomic, copy) NSString *jobTitle;
+@property (nonatomic, copy) NSString *locationString;
+@property (nonatomic, copy) NSNumber *timezoneOffset;
+@property (nonatomic, strong) NSArray *socialAccounts;
+
+@end
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMPhoneTextField.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMPhoneTextField.h
new file mode 100644
index 00000000..18e62ae1
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMPhoneTextField.h
@@ -0,0 +1,17 @@
+//
+// ICMPhoneTextField.h
+// IntercomSDK
+//
+// Created by Dale Cantwell on 25/03/2019.
+// Copyright © 2019 Intercom. All rights reserved.
+//
+
+#import "ICMTextField.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface ICMPhoneTextField : ICMTextField
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMPickerTextField.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMPickerTextField.h
new file mode 100644
index 00000000..6bbdaba6
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMPickerTextField.h
@@ -0,0 +1,18 @@
+//
+// ICMListTextField.h
+// IntercomSDK
+//
+// Created by Dale Cantwell on 05/04/2019.
+// Copyright © 2019 Intercom. All rights reserved.
+//
+
+#import "ICMTextField.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface ICMPickerTextField : ICMTextField
+- (instancetype)initWithValue:(nullable id)value options:(NSArray *)options allowSubmission:(BOOL)allowSubmission delegate:(id)delegate;
+- (void)configureForEditingStateBackgroundColor:(UIColor *)backgroundColor;
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMPresentationManager.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMPresentationManager.h
new file mode 100644
index 00000000..93feac5a
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMPresentationManager.h
@@ -0,0 +1,55 @@
+//
+// Created by Ignacio Delgado on 17/04/2014.
+// Copyright (c) 2014 Intercom. All rights reserved.
+//
+
+#import
+#import
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class ICMConversation;
+@class ICMCarousel;
+@class ICMMessengerSheetViewController;
+@class Survey;
+
+@interface ICMPresentationManager : NSObject
+
+@property (nonatomic, assign) CGFloat inAppBottomPadding;
+@property (nonatomic, assign) BOOL launcherVisible;
+@property (nonatomic, assign) BOOL inAppMessagesVisible;
+@property (nonatomic, assign) BOOL manualInAppBottomPaddingSet;
+
++ (instancetype) sharedInstance;
++ (void)observeSceneWillEnterForeground;
+
+- (void)setUnreadConversations:(NSArray *)conversations completion:(void (^ __nullable)(void))completion;
+- (void)presentCarousel:(ICMCarousel *)carousel;
+- (void)presentSurvey:(Survey *)survey;
+- (void)presentMessenger;
+- (void)presentMessageComposerWithInitialMessage:(nullable NSString *)message;
+- (void)presentHomescreen;
+- (void)presentSheet:(ICMMessengerSheetViewController *)sheetVC;
+
+#pragma mark - Help Center Presentation
+- (void)presentHelpCenter;
+- (void)presentHelpCenterFromSearchBrowse;
+- (void)presentHelpCenterCollections:(NSArray *)collectionIds;
+- (void)presentHelpCenterCollection:(NSString *)collectionId;
+- (void)presentArticle:(NSString *)articleId;
+
+- (void)showLauncherOrInAppsIfNeeded;
+- (void)hideIntercomUI;
+- (void)userChanged;
+
+- (void)presentConversation:(ICMConversation *)conversation;
+
+- (void)setNeedsHostAppStatusBarAppearanceUpdate;
+- (BOOL)isMessengerPresented;
+- (void)dismissAllIntercomViews;
+- (void)sceneWillEnterForeground:(NSNotification *)notification;
+- (BOOL)isContentCurrentlyPresented;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMRecentConversationsViewController.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMRecentConversationsViewController.h
new file mode 100644
index 00000000..80d29fce
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMRecentConversationsViewController.h
@@ -0,0 +1,23 @@
+//
+// ICMRecentConversationsViewController.h
+// IntercomSDK-Dynamic
+//
+// Created by Brian Boyle on 11/09/2021.
+// Copyright © 2021 Intercom. All rights reserved.
+//
+
+#import
+
+NS_ASSUME_NONNULL_BEGIN
+
+@protocol ICMRecentConversationsViewControllerDelegate
+- (void)reloadConversationHistoryCard;
+- (void)navigateToViewController:(UIViewController *)viewController NS_SWIFT_NAME(navigate(toViewController:));
+@end
+
+@interface ICMRecentConversationsViewController : UIViewController
+@property (nonatomic, weak) id delegate;
+- (void)reloadTableView;
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMRootViewController.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMRootViewController.h
new file mode 100644
index 00000000..e4353dcc
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMRootViewController.h
@@ -0,0 +1,70 @@
+#import
+#import
+@class ICMBaseViewController;
+#import "ICMInAppsViewController.h"
+#import "ICMWindowProvider.h"
+#import "ICMNavigationController.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+@class ICMHostAppState;
+@class ICMCarousel;
+@class ICMMessengerSheetViewController;
+@class Survey;
+
+@protocol ICMRootViewControllerDelegate
+- (void)hideIntercomWindow;
+- (void)setWindowIsFullScreen:(BOOL)fullscreen;
+- (BOOL)shouldShowInApps;
+- (BOOL)shouldShowLauncher;
+@end
+
+static NSString *const kICMRootViewControllerDidDismissPresentedController = @"IntercomRootViewControllerDidDismissPresentedController";
+
+@interface ICMRootViewController : UIViewController
+
+@property(nonatomic, weak, nullable) id delegate;
+@property (nonatomic) BOOL contentModalPresented;
+
+// This gives a snapshot of the state of the host app when Intercom was presented
+// Useful for rotation, status bar styles etc.
+@property (nonatomic, strong) ICMHostAppState *hostAppState;
+
+- (instancetype)initWithWindowScene:(UIWindowScene *)windowScene;
+- (void)tearDown;
+- (void)presentCarousel:(ICMCarousel *)carousel;
+- (void)presentSurvey:(Survey *)survey;
+- (void)presentMessenger;
+- (void)presentMessageComposerWithInitialMessage:(NSString *)message;
+- (void)presentHomescreen;
+- (void)presentConversation:(ICMConversation *)conversation;
+- (void)dismissAllIntercomViews;
+- (void)presentSheet:(ICMMessengerSheetViewController *)sheetVC;
+
+#pragma mark - Help Center Presentation
+
+- (void)presentHelpCenter;
+- (void)presentHelpCenterFromSearchBrowse;
+- (void)presentHelpCenterCollections:(NSArray *)collectionIds;
+- (void)presentHelpCenterCollection:(NSString *)collectionId;
+- (void)presentArticle:(NSString *)articleId;
+- (BOOL)isHelpCenterPresented;
+
+- (void)updateUnreadConversations:(NSArray *)conversations completion:(void (^ __nullable)(void))completion;
+
+- (void)tearDownInApps;
+- (void)updateLauncherVisibility;
+
+- (BOOL)isShowingMessenger;
+
+- (BOOL)shouldHandleTouchOnView:(UIView *)view;
+
+- (void)updateHostAppState;
+
+- (void)addLauncherOpenedMetricForObject:(NSString *)metricObject isCustomLauncher:(BOOL)isCustomLauncher;
+
+- (void) bottomPaddingUpdated;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMSafeNetworkModel.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMSafeNetworkModel.h
new file mode 100644
index 00000000..eeaa4e01
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMSafeNetworkModel.h
@@ -0,0 +1,13 @@
+//
+// ICMSafeNetworkModel.h
+// Pods
+//
+// Created by James Treanor on 23/02/2015.
+//
+//
+
+#import
+
+@interface ICMSafeNetworkModel : NSObject
+
+@end
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMStartConversationButton.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMStartConversationButton.h
new file mode 100644
index 00000000..d7a8f064
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMStartConversationButton.h
@@ -0,0 +1,20 @@
+//
+// ICMStartConversationButton.h
+// IntercomSDK
+//
+// Created by Michael Isaakidis on 29/05/2018.
+// Copyright © 2018 Intercom. All rights reserved.
+//
+
+typedef NS_ENUM(NSUInteger, ICMStartConversationButtonStyle) {
+ ICMStartConversationButtonStyleFilled,
+ ICMStartConversationButtonStyleBordered,
+};
+
+static const CGFloat kStartConversationButtonHeight = 40.f;
+
+@interface ICMStartConversationButton : UIButton
+
+- (void)configureWithStyle:(ICMStartConversationButtonStyle)style;
+
+@end
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMSurveyQuestionBlockAppearance.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMSurveyQuestionBlockAppearance.h
new file mode 100644
index 00000000..f6aca02c
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMSurveyQuestionBlockAppearance.h
@@ -0,0 +1,19 @@
+//
+// ICMSurveyQuestionBlockAppearance.h
+// IntercomSDK-Dynamic
+//
+// Created by Michael McNamara on 22/10/2021.
+// Copyright © 2021 Intercom. All rights reserved.
+//
+
+#import
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface ICMSurveyQuestionBlockAppearance : ICMAdminBlockAppearance
+
+- (instancetype)initWithRequiredIndicatorColor:(UIColor *)color;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMSurveyStepBlockAppearance.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMSurveyStepBlockAppearance.h
new file mode 100644
index 00000000..80dce8c0
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMSurveyStepBlockAppearance.h
@@ -0,0 +1,19 @@
+//
+// ICMSurveyStepBlockAppearance.h
+// IntercomSDK-Dynamic
+//
+// Created by Michael McNamara on 05/10/2021.
+// Copyright © 2021 Intercom. All rights reserved.
+//
+
+#import
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface ICMSurveyStepBlockAppearance : ICMAdminBlockAppearance
+
+- (instancetype)initForBackgroundColor:(nullable UIColor *)backgroundColor;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMTeamPresence.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMTeamPresence.h
new file mode 100644
index 00000000..996ba66c
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMTeamPresence.h
@@ -0,0 +1,31 @@
+//
+// ICMTeamPresence.h
+//
+//
+// Created by Adam McCarthy on 19/01/2016.
+// Copyright (c) 2016 Intercom. All rights reserved.
+//
+
+#import
+#import "ICMSafeNetworkModel.h"
+
+@class ICMParticipant;
+
+static NSString *const kICMTeamPresenceUpdated = @"ICMTeamPresenceUpdated";
+
+@interface ICMTeamPresence : ICMSafeNetworkModel
+
+@property (nonatomic, copy) NSArray *activeAdmins;
+@property (nonatomic, strong) NSDate *lastActive;
+@property (nonatomic, copy) NSString *officeHours;
+@property (nonatomic, copy) NSString *responseDelayFull;
+@property (nonatomic, copy) NSString *responseDelayDescription;
+@property (nonatomic, copy) NSString *responseDelayTimePeriod;
+
++ (void)updateSharedInstanceWithDictionary:(NSDictionary *)aDictionary;
+
+- (void)setAttributesFromDictionary:(NSDictionary *)aDictionary;
+
++ (instancetype)sharedInstance;
+
+@end
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMTeammatePresenceView.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMTeammatePresenceView.h
new file mode 100644
index 00000000..6530529a
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMTeammatePresenceView.h
@@ -0,0 +1,17 @@
+//
+// Created by Karim Frenn on 08/03/2017.
+// Copyright (c) 2017 Intercom. All rights reserved.
+//
+
+#import
+#import
+
+@interface ICMTeammatePresenceView : UIView
+
+@property (nonatomic, assign, getter=isActive) BOOL active;
+@property (nonatomic, copy) UIColor *borderColor;
+
+- (instancetype)initWithDiameter:(CGFloat)diameter;
+- (void)setActive:(BOOL)active;
+
+@end
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMTextField.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMTextField.h
new file mode 100644
index 00000000..06d14d1a
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMTextField.h
@@ -0,0 +1,36 @@
+//
+// ICMTextField.h
+// IntercomSDK
+//
+// Created by Brian Boyle on 28/02/2019.
+// Copyright © 2019 Intercom. All rights reserved.
+//
+
+#import
+#import
+@protocol ICMValidatorProtocol;
+@class ICMSubmitButton;
+
+NS_ASSUME_NONNULL_BEGIN
+
+static const NSUInteger kDefaultCursorInset = 10;
+
+@interface ICMTextField : UITextField
+@property (nonatomic) BOOL isRequired;
+@property (nonatomic) NSInteger characterLimit;
+@property (nonatomic, assign) NSUInteger cursorInset;
+@property (nonatomic, strong) ICMSubmitButton *submitButton;
+@property (nonatomic, readonly) BOOL allowSubmission;
+@property (nonatomic, weak) id inputViewDelegate;
+
+- (instancetype)initWithValue:(nullable id)value
+ allowSubmission:(BOOL)allowSubmission
+ delegate:(nullable id)delegate;
+- (BOOL)isUserInputValid:(NSError * __autoreleasing *)error;
+- (BOOL)notRequiredAndEmpty;
+- (void)configureDefaults;
+- (NSArray> *)validators;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMTimestampCalculator.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMTimestampCalculator.h
new file mode 100644
index 00000000..ce32dfcb
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMTimestampCalculator.h
@@ -0,0 +1,39 @@
+#import
+
+@class ICMConversationPart;
+
+typedef NS_ENUM(NSUInteger, ICMTimestampCalculatorRecentTimeMessage) {
+ ICMTimestampCalculatorRecentTimeMessageJustNow,
+ ICMTimestampCalculatorRecentTimeMessageDelivered
+};
+
+typedef NS_ENUM(NSUInteger, ICMTimestampCalculatorTimeAgoFormat) {
+ ICMTimestampCalculatorTimeAgoFormatShort,
+ ICMTimestampCalculatorTimeAgoFormatLong
+};
+
+@interface ICMTimestampCalculator : NSObject
+
++ (instancetype)sharedInstance;
+
+- (NSString *)timestampTextForDate:(NSDate *)date format:(enum ICMTimestampCalculatorTimeAgoFormat)format recentTimeMessage:(enum ICMTimestampCalculatorRecentTimeMessage)recentTimeMessage;
+
+- (NSString *)textForLastActiveDate:(NSDate *)date;
+
+- (NSString *)lastActiveMinutesAgo:(NSDate *)date;
+
+- (NSTimeInterval)secondsUntilTimestampExpiresForDate:(NSDate *)date;
+
+- (BOOL)part:(ICMConversationPart *)firstPart isFromDifferentDayAsPart:(ICMConversationPart *)secondPart;
+
+- (NSString *)appendSeenStateToTimestampText:(NSString *)timestampText forPart:(ICMConversationPart *)part;
+
+- (NSString *)dayTextForPart:(ICMConversationPart *)part;
+
+- (NSString *)absoluteTimeTextForPart:(ICMConversationPart *)part;
+
+- (NSString *)timestampTextForUpdatedDate:(NSDate *)date;
+
+- (NSString *)timestampTextForDate:(NSDate *)date timeZone:(NSTimeZone *)timeZone;
+
+@end
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMTranslationKeys.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMTranslationKeys.h
new file mode 100644
index 00000000..ada396f7
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMTranslationKeys.h
@@ -0,0 +1,184 @@
+//
+// ICMTranslationKeys.h
+// IntercomSDK
+//
+// Created by Ignacio Delgado on 21/08/2014.
+// Copyright (c) 2014 Intercom. All rights reserved.
+//
+
+#ifndef IntercomSDK_ICMTranslationKeys_h
+#define IntercomSDK_ICMTranslationKeys_h
+
+#pragma mark - Strings
+static NSString *const kICMTKNavBarTitleConversations = @"conversations_with_app_two_lines";
+static NSString *const kICMTKNavBarTitleConversationsNoAppName = @"conversations";
+static NSString *const kICMTKActionSheetMessageFailDelivery = @"failed_delivery";
+static NSString *const kICMTKActionSheetCancel = @"cancel";
+static NSString *const kICMTKActionSheetDelete = @"delete";
+static NSString *const kICMTKMessageStateSending = @"message_state_sending";
+static NSString *const kICMTKFacebookLikeUs = @"facebook_like";
+static NSString *const kICMTKTwitterFollowUs = @"twitter_follow";
+static NSString *const kICMTKSendUsAMessage = @"send_us_a_message";
+static NSString *const kICMTKNavBarTitleNewConversation = @"new_conversation";
+static NSString *const kICMTKConversationHasEnded = @"conversation_has_ended";
+static NSString *const kICMTKErrorLoadingConversation = @"error_loading_conversation";
+static NSString *const kICMTKErrorNoConversationsTitle = @"no_conversations";
+static NSString *const kICMTKErrorNoConversationsMessage = @"empty_conversations";
+static NSString *const kICMTKErrorNoConversationsMessageNoAppName = @"error_no_conversations_message_no_app_name";
+static NSString *const kICMTKErrorTitle = @"inbox_error_state_title";
+static NSString *const kICMTKErrorLoadingConversationsFallback = @"failed_to_load_conversation_with_admin";
+static NSString *const kICMTKErrorLoadingConversationsFallbackNoAppName = @"failed_to_load_conversation";
+static NSString *const kICMTKErrorStartingConversationFallback = @"start_conversation_error";
+static NSString *const kICMTKErrorTapToRetry = @"retry";
+static NSString *const kICMTKMessageViewPlaceholderWriteAReply = @"reply_to_conversation";
+static NSString *const kICMTKMessageViewPlaceholderStartAConversation = @"start_conversation";
+static NSString *const kICMTKMessageViewSend = @"send";
+static NSString *const kICMTKWeRunOnIntercom = @"we_run_on_intercom";
+static NSString *const kICMTKTimeDifferenceJustNow = @"time_just_now";
+static NSString *const kICMTKAlertNewSDKUserTitle = @"congratulations";
+static NSString *const kICMTKAlertNewSDKUserMessage = @"alert_new_sdk_user_message";
+static NSString *const kICMTKThankYou = @"thank_you";
+static NSString *const kICMTKLastActiveLast15Minutes = @"active_15m_ago";
+static NSString *const kICMTKLastActiveLastXMinutes = @"active_minute_ago";
+static NSString *const kICMTKLastActiveOver1WeekAgo = @"active_week_ago";
+static NSString *const kICMTKAdminActive = @"active_state";
+static NSString *const kICMTKAdminAway = @"away_state";
+static NSString *const kICMTKBack = @"navigation_back";
+static NSString *const kICMTKClose = @"close";
+static NSString *const kICMTKTryAgain = @"try_again";
+static NSString *const kICMTKTimeLocationFormat = @"profile_location";
+static NSString *const kICMTKDelivered = @"delivered";
+static NSString *const kICMTKMessageSeen = @"message_seen";
+static NSString *const kICMTKMessageNotSeen = @"message_unseen";
+static NSString *const kICMTKInboxYou = @"you";
+static NSString *const kICMTKCameraRoll = @"camera_roll";
+static NSString *const kICMTKPlustMore = @"plus_x_more";
+static NSString *const kICMTKNameAnd1Other = @"name_and_1_other";
+static NSString *const kICMTKNameAndXOthers = @"name_and_x_others";
+static NSString *const kICMTKAlsoInThisConversation = @"also_in_this_conversation";
+static NSString *const kICMTKRateYourConversation = @"rate_your_conversation";
+static NSString *const kICMTKTellUsMore = @"tell_us_more";
+static NSString *const kICMTKYouRatedTheConversation = @"you_rated_the_conversation";
+static NSString *const kICMTKThanksForLettingUsKnow = @"thanks_for_letting_us_know";
+static NSString *const kICMTKOkay = @"ok_description";
+static NSString *const kICMTKCouldntLoadContent = @"couldnt_load_content";
+static NSString *const kICMTKGiveItAnotherTry = @"give_it_another_try";
+static NSString *const kICMTKReload = @"reload";
+static NSString *const lICMCouldntCompleteAction = @"couldnt_complete_action";
+static NSString *const kICMYourConversations = @"your_conversations";
+static NSString *const kICMStartAConversation = @"start_a_conversation";
+static NSString *const kICMStartAnotherConversation = @"start_another_conversation";
+static NSString *const kICMSeePastConversations = @"see_past_conversations";
+static NSString *const kICMSeeAll = @"see_all";
+static NSString *const kICMTKAskAQuestion = @"ask_a_question";
+static NSString *const kICMTKHowCanWeHelp = @"how_can_we_help";
+static NSString *const kICMTKTellUsWhatYouNeed = @"tell_us_what_you_need";
+static NSString *const kICMSeeAllYourConversations = @"see_all_conversations";
+
+
+#pragma mark - Formats
+static NSString *const kICMTKParticipantFromAppFormat = @"teammate_from_company";
+static NSString *const kICMTKReplyFromParticipantFormat = @"reply_from_admin";
+static NSString *const kICMTKTimeDifferenceFormatWeeksAgo = @"time_week_ago";
+static NSString *const kICMTKTimeDifferenceFormatDaysAgo = @"time_day_ago";
+static NSString *const kICMTKTimeDifferenceFormatHoursAgo = @"time_hour_ago";
+static NSString *const kICMTKTimeDifferenceFormatMinutesAgo = @"time_minute_ago";
+static NSString *const kICMTKLastActiveFormatHoursAgo = @"active_hour_ago";
+static NSString *const kICMTKLastActiveFormatDaysAgo = @"active_day_ago";
+
+static NSString *const kICMTKArticleQuestion = @"article_question";
+static NSString *const kICMTKArticleReaction = @"article_response";
+static NSString *const kICMTKAskedAbout = @"asked_about";
+static NSString *const kICMTKErrorLoadingArticle = @"article_load_error";
+
+static NSString *const kICMTKHelpCenter = @"help_center";
+static NSString *const kICMTTeamCanHelp = @"the_team_can_help_if_needed";
+static NSString *const kICMTKBotExpectation = @"bot_expectation_text";
+static NSString *const kICMTKLoading = @"loading";
+static NSString *const kICMTKSearchHelpArticles = @"search_help_articles";
+static NSString *const kICMTKArticleSearchHint = @"article_search_hint_text";
+static NSString *const kICMTKSearchBrowseEmptyState = @"search_browse_empty_state_text";
+static NSString *const kICMTKGetHelp = @"get_help";
+static NSString *const kICMTKGrinningFaceBigEyesEmoji = @"grinning_face_with_big_eyes_emoji";
+static NSString *const kICMTKNeutralFaceEmoji = @"neutral_face_emoji";
+static NSString *const kICMTKDisappointedFaceEmoji = @"disappointed_face_emoji";
+static NSString *const kICMTKBrowseAllHelpTopics = @"browse_all_help_topics";
+static NSString *const kICMTKSearchForHelp = @"search_for_help";
+
+#pragma mark - Photos
+static NSString *const kICMTKNoPhotos = @"no_photos";
+static NSString *const kICMTKNoPhotosOnDevice = @"no_photos_on_device";
+static NSString *const kICMTKAccessPhotos = @"access_photos";
+static NSString *const kICMTKPermissionSettings = @"access_device_settings";
+static NSString *const kICMTKEnablePermissions = @"go_to_settings";
+
+#pragma mark - GIFs
+static NSString *const kICMTKSearchGIFs = @"search_gif";
+static NSString *const kICMTKNoGIFsFoundTitle = @"no_gifs_found";
+static NSString *const kICMTKNoGIFsFoundMessage = @"no_gifs_matching_query";
+static NSString *const kICMTKImageAttribution = @"gif_attribution";
+static NSString *const kICMTKGIFErrorTitle = @"gifs_load_error";
+static NSString *const kICMTKGIFErrorDescription = @"try_again_minute";
+
+#pragma mark - Attribute Collector Picker submit
+static NSString *const kICMAttributeColelctorSubmitButton = @"submit";
+
+#pragma mark - Input placeholders
+static NSString *const kICMTKListPlaceholder = @"choose_one";
+static NSString *const kICMTKDatePlaceholder = @"choose_the_date";
+
+#pragma mark - Input Validation
+static NSString *const kICMTKInvalidEmail = @"that_email_address_doesnt_look_quite_right";
+static NSString *const kICMTKInvalidNumber = @"that_number_doesnt_look_quite_right";
+static NSString *const kICMTKInvalidString = @"string_is_incorrect";
+static NSString *const kICMTKSomethingWentWrongTryAgain = @"something_went_wrong_try_again";
+
+static NSString *const kICMTKInvalidCountryCode = @"that_country_code_doesnt_look_quite_right";
+static NSString *const kICMTKInvalidNumberTooManyDigits = @"that_number_has_too_many_digits";
+static NSString *const kICMTKInvalidNumberMissingDigits = @"that_number_is_missing_a_few_digits";
+static NSString *const kICMTKInvalidMissingPrefix = @"that_number_needs_a_prefix";
+
+#pragma mark - Attribute Collector
+static NSString *const kICMTKYes = @"attribute_collector_positive";
+static NSString *const kICMTKNo = @"attribute_collector_negative";
+
+#pragma mark - In Apps Quick Replies
+static NSString *const kICMTKReply = @"reply";
+
+#pragma mark - Carousels/Articles On Buttons
+static NSString *const kICMTKPageNotFound = @"page_not_found";
+
+
+#pragma mark - Homescreen
+static NSString *const kICMTKContinueConversation = @"continue_the_conversation";
+static NSString *const kICMTKNothingToSeeHereYet = @"nothing_to_see_here_yet";
+static NSString *const kICMTKNoMessagesFromTeam = @"no_messages_from_the_team";
+static NSString *const kSuggestedArticles = @"suggested_articles";
+
+#pragma mark - Surveys
+static NSString *const kICMTKNext = @"surveys_next_button";
+static NSString *const kICMTKDone = @"surveys_done_button";
+static NSString *const kICMTKMultiSelectOtherOptionPleaseSpecify = @"surveys_multiselect_other_option";
+static NSString *const kICMTKMultiSelectPleaseSpecifyOther = @"surveys_multiselect_other_option_input_label";
+static NSString *const kICMTKStartTypingPlaceholder = @"surveys_multiselect_other_option_input_placeholder";
+static NSString *const kICMTKOther = @"surveys_multiselect_other_option_value";
+static NSString *const kICMTKSurveysTextInputQuestionPlaceholder = @"surveys_text_input_question_placeholder";
+static NSString *const kICMTKSurveysRequiredResponse = @"surveys_required_response";
+static NSString *const kICMTKSurveysResponseTooLong = @"surveys_response_too_long";
+static NSString *const kICMTKSurveysResponseTooShort = @"surveys_response_too_short";
+static NSString *const kICMTKSurveysMultiSelectTooManyResponses = @"surveys_multi_select_too_many_responses";
+static NSString *const kICMTKSurveysMultiSelectTooFewResponses = @"surveys_multi_select_too_few_responses";
+static NSString *const kICMTKSurveysDismissConfirmation = @"dismiss_survey_confirmation";
+static NSString *const kICMTKSurveysContinue = @"surveys_continue";
+static NSString *const kICMTKSurveysDismiss = @"surveys_dismiss";
+
+// Accessibility
+static NSString *const kICMTKSurveysFromTeammate = @"surveys_from_teammate";
+static NSString *const kICMTKSurveysFromCompany = @"surveys_from_company";
+static NSString *const kICMTKSurveysQuestions = @"surveys_questions";
+static NSString *const kICMTKSurveysRequiredQuestion = @"surveys_required_question";
+static NSString *const kICMTKSurveysQuestioniOfn = @"surveys_question_question_number_of_question_count";
+static NSString *const kICMTKStarRatingQuestionOneStar = @"surveys_one_star_rating";
+static NSString *const kICMTKStarRatingQuestionManyStars = @"surveys_multi_star_rating";
+
+#endif
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMTranslationManager.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMTranslationManager.h
new file mode 100644
index 00000000..4e48db14
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMTranslationManager.h
@@ -0,0 +1,16 @@
+//
+// Created by Ignacio Delgado on 22/08/2014.
+// Copyright (c) 2014 Intercom. All rights reserved.
+//
+
+#import
+#import
+
+@interface ICMTranslationManager : NSObject
+
++ (NSLocale *)translationLocale;
++ (NSString *)translationForKey:(NSString *)key;
++ (NSString *)translationForKey:(NSString *)key params:(NSDictionary *)params;
++ (NSArray *)supportedLocales;
+
+@end
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMUnreadManager.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMUnreadManager.h
new file mode 100644
index 00000000..d54cd01a
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMUnreadManager.h
@@ -0,0 +1,23 @@
+//
+// ICMUnreadManager.h
+// IntercomSDK
+//
+// Created by Gavin Rooney on 31/07/2014.
+// Copyright (c) 2014 Intercom. All rights reserved.
+//
+
+#import
+
+NS_ASSUME_NONNULL_BEGIN
+
+static NSString *const kICMConversationMarkedAsReadNotification = @"ICMConversationMarkedAsReadNotification";
+
+@interface ICMUnreadManager : NSObject
+
+@property (nonatomic, strong) NSOrderedSet *unreadConversationIds;
+
+- (void)conversationIdRead:(NSString *)conversationId;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMUtils.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMUtils.h
new file mode 100644
index 00000000..f6a59b1d
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMUtils.h
@@ -0,0 +1,115 @@
+//
+// ICMUtils.h
+// IntercomSDK
+//
+// Created by Gavin Rooney on 24/04/2014.
+// Copyright (c) 2014 Intercom. All rights reserved.
+//
+
+#import
+#import
+
+@class ICMConversationPart;
+
+#ifdef DEBUG
+# define InterLog(fmt, ...) NSLog((@"[Intercom] " fmt), ##__VA_ARGS__);
+# define InterLogDebug(fmt, ...) ([ICMUtils debugLoggingEnabled] ? NSLog((@"[Intercom] " fmt), ##__VA_ARGS__) : YES);
+# define InterLogPrivate(fmt, ...) NSLog((@"[Intercom] %s [Line %d] " fmt), __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__);
+#else
+# define InterLog(fmt, ...) NSLog((@"[Intercom] " fmt), ##__VA_ARGS__);
+# define InterLogDebug(fmt, ...) ([ICMUtils debugLoggingEnabled] ? NSLog((@"[Intercom] " fmt), ##__VA_ARGS__) : YES);
+# define InterLogPrivate(...)
+#endif
+
+#define run_or_dispatch_main(block) if ([NSThread isMainThread]) { block(); } else { dispatch_async(dispatch_get_main_queue(), block); }
+
+#define WEAK_TYPE(x) __weak __typeof(x)
+#define STRONG_TYPE(x) __strong __typeof(x)
+
+UIKIT_EXTERN NSString *const IntercomSDKErrorDomain;
+
+//------------------------------------------------------------------------------------------------------------------------------
+// result: X-INTERCOM-AGENT: intercom-ios-sdk/x.x.x
+#define ICMSDKHeaderValue @"intercom-ios-sdk"
+#define ICMSDKDefaultHeader @"X-INTERCOM-AGENT"
+#define ICMSDKWrapperHeader @"X-INTERCOM-AGENT-WRAPPER"
+#define ICMSDKCordovaHeaderValue @"intercom-sdk-cordova"
+#define ICMSDKReactNativeHeaderValue @"intercom-sdk-react-native"
+
+static const NSInteger kICMConversationAvatarWidth = 28;
+
+static NSString *const kIntercomSDKVersionIdentifier = @"intercom-sdk-version";
+static NSString *const kIntercomSDKComposerPersistedString = @"intercom-sdk-composer-persisted-string";
+static NSString *const kIntercomSDKComposerPersistedNewKey = @"NewConversation"; // when we want to persist the string in the message composer but don't have a conversationId (i.e. user composes new message)
+
+static NSString *const kIntercomSDKInboxUpdated = @"intercom-sdk-inbox-updated";
+static NSString *const kICMIntercomDeepLinkNotification = @"kICMIntercomDeepLinkNotification";
+static NSString *const kICMIntercomDidTypeInComposer = @"kICMIntercomDidTypeInComposer";
+static NSString *const kICMIntercomDidChangeComposerInput = @"kICMIntercomDidChangeComposerInput";
+static NSString *const kICMIntercomHelpCenterArticleViewed = @"kICMIntercomHelpCenterArticleViewed";
+
+typedef NS_ENUM(NSUInteger, ICMFontWeight){
+ ICMFontWeightRegular = 0,
+ ICMFontWeightBold = 1,
+ ICMFontWeightMedium = 2,
+ ICMFontWeightLight = 3,
+ ICMFontWeightThin = 4,
+ ICMFontWeightSemibold = 5
+};
+
+typedef NS_ENUM(NSInteger, ICMUserIdentityType) {
+ ICMUserIdentityEmail,
+ ICMUserIdentityUserId,
+ ICMUserIdentityIntercomId
+};
+
+@interface ICMUtils : NSObject
+
++ (NSString *)intercomAgent;
+
++ (NSString *)intercomVersion;
+
++ (NSString *)appVersion;
+
++ (NSString *)applicationName;
+
++ (NSString *)bundleIdentifier;
+
++ (NSString *)minimumOSVersion;
+
++ (BOOL)debugLoggingEnabled;
+
++ (void)setDebugLoggingEnabled:(BOOL)loggingEnabled;
+
++ (void)checkIntegration;
+
++ (BOOL)photoUsageDescriptionPresent;
+
++ (BOOL)autoIntegratePushNotifications;
+
++ (NSBundle *)intercomBundle;
++ (NSBundle *)translationsBundle;
+
++ (NSBundle *)loadIntercomAssetsBundle;
+
++ (NSString *)intercomDocumentsDirectory;
+
++ (NSString *)intercomCachesDirectory;
+
++ (UIFont *)fontOfSize:(CGFloat)fontSize weight:(ICMFontWeight)weight;
+
++ (NSArray *)jsonArrayFromLocalFile:(NSString *)path error:(NSError * __autoreleasing *)error;
+
++ (BOOL)sceneManifestPresent;
+
++ (BOOL)shouldShowPhotoUsagePListError;
+
++ (NSString *)extractArticleIdFromSheetParams:(NSDictionary *)params;
+
++ (BOOL)contentSizeCategoryIsAccessibilityCategory;
+
++ (void)enableRTLSupportForContainerClass:(Class )containerClass;
+
++ (CGFloat)scaleToAccessibilitySizing:(CGFloat)pointSize;
+
+@end
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMValidator.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMValidator.h
new file mode 100644
index 00000000..1c8f7597
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMValidator.h
@@ -0,0 +1,22 @@
+//
+// ICMValidator.h
+// IntercomSDK
+//
+// Created by Brian Boyle on 05/03/2019.
+// Copyright © 2019 Intercom. All rights reserved.
+//
+
+#import
+@protocol ICMValidatorProtocol;
+
+NS_ASSUME_NONNULL_BEGIN
+
+@interface ICMValidator : NSObject
+
++ (BOOL)validateText:(nullable NSString *)text validators:(NSArray> *)validators error:(NSError * __autoreleasing *)error;
++ (BOOL)validateArray:(nullable NSArray *)array validators:(NSArray> *)validators error:(NSError * __autoreleasing *)error;
++ (BOOL)validateNumber:(nullable NSNumber *)number validators:(NSArray> *)validators error:(NSError * __autoreleasing *)error;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMValidatorProtocol.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMValidatorProtocol.h
new file mode 100644
index 00000000..520a572a
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMValidatorProtocol.h
@@ -0,0 +1,21 @@
+//
+// ICMValidatorProtocol.h
+// IntercomSDK
+//
+// Created by Brian Boyle on 04/03/2019.
+// Copyright © 2019 Intercom. All rights reserved.
+//
+
+#import
+
+NS_ASSUME_NONNULL_BEGIN
+
+@protocol ICMValidatorProtocol
+
+- (BOOL)validateText:(nullable NSString *)text error:(NSError * __autoreleasing *)error;
+- (BOOL)validateArray:(nullable NSArray *)array error:(NSError * __autoreleasing *)error;
+- (BOOL)validateNumber:(nullable NSNumber *)number error:(NSError * __autoreleasing *)error;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMWindow.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMWindow.h
new file mode 100644
index 00000000..118b608c
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMWindow.h
@@ -0,0 +1,11 @@
+#import
+#import "ICMRootViewController.h"
+
+@interface ICMWindow : UIWindow
+
+- (void)tearDown;
+
+@property (nonatomic, assign) BOOL fullscreen;
+@property (nonatomic, strong) ICMRootViewController *rootViewController;
+
+@end
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMWindowProvider.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMWindowProvider.h
new file mode 100644
index 00000000..2f1f1871
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ICMWindowProvider.h
@@ -0,0 +1,10 @@
+#import
+#import
+
+@protocol ICMWindowProvider
+
+- (UIWindow *)hostAppWindow;
+
+- (UIWindow *)intercomWindow;
+
+@end
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ITBBlock.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ITBBlock.h
new file mode 100644
index 00000000..32ee09f6
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ITBBlock.h
@@ -0,0 +1,117 @@
+//
+// ITBBaseBlock.h
+// Pods
+//
+// Created by James Treanor on 19/11/2015.
+//
+//
+
+#import
+#import "ITBBlockAppearance.h"
+
+NS_ASSUME_NONNULL_BEGIN
+
+typedef NS_ENUM(NSInteger, ITBBlockDisplayMode){
+ ITBBlockDisplayModeInline = 0,
+ ITBBlockDisplayModeSingle = 1
+};
+
+typedef NS_ENUM(NSInteger, ITBBlockType){
+ ITBBlockTypeUnknown = -1,
+ ITBBlockTypeParagraph = 0,
+ ITBBlockTypeHeading = 1,
+ ITBBlockTypeSubheading = 2,
+ ITBBlockTypeUnorderedList = 3,
+ ITBBlockTypeOrderedList = 4,
+ ITBBlockTypeImage = 5,
+ ITBBlockTypeButton = 6,
+ ITBBlockTypeTwitter = 7,
+ ITBBlockTypeFacebook = 8,
+ ITBBlockTypeCode = 9,
+ ITBBlockTypeVideo = 10,
+ ITBBlockTypeAttachmentList = 11,
+ ITBBlockTypeLink = 12,
+ ITBBlockTypeNotificationCard = 13,
+ ITBBlockTypeAttachment = 14,
+ ITBBlockTypeConversationRating = 15,
+ ITBBlockTypeTyping = 16,
+ ITBBlockTypeLinkList = 17,
+ ITBBlockTypeMessengerCardFallback = 18,
+ ITBBlockTypeVideoFile = 19,
+ ITBBlockTypeImageText = 20,
+ ITBBlockTypeTagList = 21
+};
+
+static NSString *const kITBBlockType = @"type";
+static NSString *const kITBHeadingBlockType = @"heading";
+static NSString *const kITBParagraphBlockType = @"paragraph";
+static NSString *const kITBSubheadingBlockType = @"subheading";
+static NSString *const kITBUnorderedListBlockType = @"unorderedList";
+static NSString *const kITBOrderedListBlockType = @"orderedList";
+static NSString *const kITBImageBlockType = @"image";
+static NSString *const kITBButtonBlockType = @"button";
+static NSString *const kITBTwitterBlockType = @"twitterFollowButton";
+static NSString *const kITBFacebookBlockType = @"facebookLikeButton";
+static NSString *const kITBCodeBlockType = @"code";
+static NSString *const kITBVideoBlockType = @"video";
+static NSString *const kITBAttachmentListBlockType = @"attachmentList";
+static NSString *const kITBTypingBlockType = @"internal_typing";
+static NSString *const kITBAttachmentBlockType = @"internal_attachment";
+static NSString *const kITBLinkBlockType = @"link";
+static NSString *const kITBNotificationCardBlockType = @"notificationChannelsCard";
+static NSString *const kITBLinkListType = @"linkList";
+static NSString *const kITBMessengerCardType = @"messengerCard";
+static NSString *const kITBVideoFileType = @"videoFile";
+
+static NSString *const kITBVideoViewInvalidateVideoBoundsNotification = @"kITBVideoViewInvalidateVideoBoundsNotification";
+
+@protocol ITBBlockViewProtocol;
+
+@interface ITBBlock : NSObject
+
+#pragma mark - Network
+
+@property (nonatomic, copy, nonnull) NSString *text;
+@property (nonatomic, copy, nonnull) NSString *align;
+
+- (instancetype)init __attribute__((unavailable("init is not the designated initializer")));
++ (instancetype)new __attribute__((unavailable("new is not the designated initializer")));
+
+/**
+ This is the designated initializer for blocks.
+
+ Note: nil will be returned if the dictionary does not have all valid keys or appearance is nil
+ **/
+- (instancetype)initWithDictionary:(NSDictionary *)aDictionary appearance:(id)appearance NS_DESIGNATED_INITIALIZER;
+
+/**
+ Preload any nessesary content for use.
+ */
+- (void)prepare:(void (^)(void))completion;
+
+- (void)updateAppearance:(id )appearance;
+
+#pragma mark - UI
+
+@property (nonatomic, assign) CGSize estimatedSize;
+@property (nonatomic, assign) ITBBlockDisplayMode displayMode; //defaults to ITBBlockDisplayModeInline
+@property (nonatomic) BOOL isRequired;
+
+- (ITBBlockType)type;
+
+- (Class)viewClass;
+
+// This is used in for view reuse. It can safely be nil
+- (NSString *)blockUniqueIdentifier;
+
+// Returns the plain text contents of a block where available.
+- (nullable NSString *)plainTextRepresentation;
+
+#pragma mark - Block Validation
+
++ (BOOL)validateBlockDictionary:(NSDictionary *)dictionary;
++ (BOOL)isNonEmptyString:(NSString *)string;
+
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ITBBlockAppearance.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ITBBlockAppearance.h
new file mode 100644
index 00000000..7cb96cac
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ITBBlockAppearance.h
@@ -0,0 +1,86 @@
+//
+// ITBBlockAppearance.h
+// Pods
+//
+// Created by James Treanor on 13/12/2015.
+//
+//
+
+#import
+#import
+#import "ITBLoadingView.h"
+
+@protocol ITBBlockAppearance
+
+#pragma mark - Colors
+
+@property (nonatomic, strong) UIColor *linkTextColor;
+@property (nonatomic, strong) UIColor *textColor;
+@property (nonatomic, strong) UIColor *headingTextColor;
+@property (nonatomic, strong) UIColor *subHeadingTextColor;
+@property (nonatomic, strong) UIColor *buttonBackgroundColor;
+@property (nonatomic, strong) UIColor *buttonTextColor;
+@property (nonatomic, strong) UIColor *codeBackgroundColor;
+@property (nonatomic, strong) UIColor *codeTextColor;
+@property (nonatomic, strong) UIColor *typingDotColor;
+@property (nonatomic, strong) UIColor *separatorColor;
+@property (nonatomic, strong) UIColor *appPrimaryColor;
+@property (nonatomic, strong) UIColor *requiredIndicatorColor;
+
+#pragma mark - Fonts
+
+@property (nonatomic, strong) UIFont *paragraphFont;
+@property (nonatomic, strong) UIFont *codeFont;
+@property (nonatomic, strong) UIFont *headingFont;
+@property (nonatomic, strong) UIFont *subheadingFont;
+@property (nonatomic, strong) UIFont *buttonFont;
+
+#pragma mark - Sizing
+
+@property (nonatomic, assign) UIEdgeInsets textInsets;
+@property (nonatomic, assign) UIEdgeInsets codeInsets;
+@property (nonatomic, assign) UIEdgeInsets linkInsets;
+
+#pragma mark - Images
+@property (nonatomic, assign) ITBLoadingViewColorType loadingViewColorType;
+@property (nonatomic, assign) CGFloat inlineImagePadding;
+@property (nonatomic, assign) CGFloat singleImagePadding;
+
+@property (nonatomic, assign) CGFloat inlineImageCornerRadius;
+@property (nonatomic, assign) CGFloat singleImageCornerRadius;
+
+#pragma mark - Strings
+
+@property (nonatomic, strong) NSString *twitterFollowString;
+@property (nonatomic, strong) NSString *facebookFollowString;
+
+#pragma mark - Text
+
+@property (nonatomic, assign) BOOL isTextSelectable;
+
+@optional
+@property (nonatomic, assign) CGFloat avatarRadius;
+
+
+#pragma mark - Link List
+@property (nonatomic, strong) UIImage *linkFooterImage;
+@property (nonatomic, assign) CGSize linkFooterImageSize;
+@property (nonatomic, assign) UIEdgeInsets linkFooterInsets;
+@property (nonatomic, assign) CGFloat maxLinkHeight;
+@property (nonatomic, assign) CGFloat defaultLinkHeight;
+
+- (UIImage *)linkAuthorInitialsImageForName:(NSString *)name diameter:(CGFloat)diameter;
+- (NSAttributedString *)linkUpdatedAtAttributedStringForDate:(NSDate *)date;
+- (NSAttributedString *)linkWrittenByAttributedStringForName:(NSString *)name;
+
+
+#pragma mark - Loading Indicator
+@property (nonatomic, strong) UIColor *activityIndicatorColor;
+@property (nonatomic, strong) UIImage *activityIndicatorImage;
+
+
+#pragma mark - Messenger App Cards
+@property (nonatomic, assign) UIEdgeInsets messengerCardInsets;
+@property (nonatomic, assign) BOOL showMessengerAppBorder;
+
+@end
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ITBImageLoader.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ITBImageLoader.h
new file mode 100644
index 00000000..abb83d52
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ITBImageLoader.h
@@ -0,0 +1,23 @@
+//
+// ITBImageLoader.h
+// Pods
+//
+// Created by Brian Boyle on 30/03/2017.
+//
+//
+
+#import
+
+@interface ITBImageLoader : NSObject
+
++ (instancetype)defaultLoader;
++ (instancetype)longTermLoader;
++ (void)clearCache;
+
+- (NSUUID *)loadImageWithURLString:(NSString *)urlString completion:(void (^)(id image))completion;
+- (id)cachedImageForURL:(NSURL *)url;
+- (id)cachedImageForKey:(NSString *)cacheKey;
+- (void)cacheImage:(UIImage *)image ForKey:(NSString *)key;
+- (UIImage *)imageForKey:(NSString *)key withGenerationBlock:(UIImage *(^)(void))block;
+
+@end
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ITBLoadingView.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ITBLoadingView.h
new file mode 100644
index 00000000..ab533df5
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/ITBLoadingView.h
@@ -0,0 +1,26 @@
+//
+// ITBLoadingView.h
+// IntercomBlocks
+//
+// Created by Brian Boyle on 23/04/2020.
+//
+
+#import
+
+NS_ASSUME_NONNULL_BEGIN
+
+typedef enum : NSUInteger {
+ ITBLoadingViewDarkColor,
+ ITBLoadingViewLightColor,
+} ITBLoadingViewColorType;
+
+@interface ITBLoadingView : UIView
+@property (nonatomic, assign, setter=isLoading:) BOOL loading;
+
+- (void)setShimmerSpeedForImageWidth:(CGFloat)imageWidth;
+- (void)handleLoadingFailure;
+- (void)setLoadingViewColorType:(ITBLoadingViewColorType)colorType;
+- (void)cleanup;
+@end
+
+NS_ASSUME_NONNULL_END
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/Intercom-Swift.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/Intercom-Swift.h
new file mode 100644
index 00000000..6b3f11d8
--- /dev/null
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/Intercom-Swift.h
@@ -0,0 +1,608 @@
+// Generated by Apple Swift version 5.6 (swiftlang-5.6.0.323.62 clang-1316.0.20.8)
+#ifndef INTERCOM_SWIFT_H
+#define INTERCOM_SWIFT_H
+#pragma clang diagnostic push
+#pragma clang diagnostic ignored "-Wgcc-compat"
+
+#if !defined(__has_include)
+# define __has_include(x) 0
+#endif
+#if !defined(__has_attribute)
+# define __has_attribute(x) 0
+#endif
+#if !defined(__has_feature)
+# define __has_feature(x) 0
+#endif
+#if !defined(__has_warning)
+# define __has_warning(x) 0
+#endif
+
+#if __has_include()
+# include
+#endif
+
+#pragma clang diagnostic ignored "-Wauto-import"
+#include
+#include
+#include
+#include
+
+#if !defined(SWIFT_TYPEDEFS)
+# define SWIFT_TYPEDEFS 1
+# if __has_include()
+# include
+# elif !defined(__cplusplus)
+typedef uint_least16_t char16_t;
+typedef uint_least32_t char32_t;
+# endif
+typedef float swift_float2 __attribute__((__ext_vector_type__(2)));
+typedef float swift_float3 __attribute__((__ext_vector_type__(3)));
+typedef float swift_float4 __attribute__((__ext_vector_type__(4)));
+typedef double swift_double2 __attribute__((__ext_vector_type__(2)));
+typedef double swift_double3 __attribute__((__ext_vector_type__(3)));
+typedef double swift_double4 __attribute__((__ext_vector_type__(4)));
+typedef int swift_int2 __attribute__((__ext_vector_type__(2)));
+typedef int swift_int3 __attribute__((__ext_vector_type__(3)));
+typedef int swift_int4 __attribute__((__ext_vector_type__(4)));
+typedef unsigned int swift_uint2 __attribute__((__ext_vector_type__(2)));
+typedef unsigned int swift_uint3 __attribute__((__ext_vector_type__(3)));
+typedef unsigned int swift_uint4 __attribute__((__ext_vector_type__(4)));
+#endif
+
+#if !defined(SWIFT_PASTE)
+# define SWIFT_PASTE_HELPER(x, y) x##y
+# define SWIFT_PASTE(x, y) SWIFT_PASTE_HELPER(x, y)
+#endif
+#if !defined(SWIFT_METATYPE)
+# define SWIFT_METATYPE(X) Class
+#endif
+#if !defined(SWIFT_CLASS_PROPERTY)
+# if __has_feature(objc_class_property)
+# define SWIFT_CLASS_PROPERTY(...) __VA_ARGS__
+# else
+# define SWIFT_CLASS_PROPERTY(...)
+# endif
+#endif
+
+#if __has_attribute(objc_runtime_name)
+# define SWIFT_RUNTIME_NAME(X) __attribute__((objc_runtime_name(X)))
+#else
+# define SWIFT_RUNTIME_NAME(X)
+#endif
+#if __has_attribute(swift_name)
+# define SWIFT_COMPILE_NAME(X) __attribute__((swift_name(X)))
+#else
+# define SWIFT_COMPILE_NAME(X)
+#endif
+#if __has_attribute(objc_method_family)
+# define SWIFT_METHOD_FAMILY(X) __attribute__((objc_method_family(X)))
+#else
+# define SWIFT_METHOD_FAMILY(X)
+#endif
+#if __has_attribute(noescape)
+# define SWIFT_NOESCAPE __attribute__((noescape))
+#else
+# define SWIFT_NOESCAPE
+#endif
+#if __has_attribute(ns_consumed)
+# define SWIFT_RELEASES_ARGUMENT __attribute__((ns_consumed))
+#else
+# define SWIFT_RELEASES_ARGUMENT
+#endif
+#if __has_attribute(warn_unused_result)
+# define SWIFT_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
+#else
+# define SWIFT_WARN_UNUSED_RESULT
+#endif
+#if __has_attribute(noreturn)
+# define SWIFT_NORETURN __attribute__((noreturn))
+#else
+# define SWIFT_NORETURN
+#endif
+#if !defined(SWIFT_CLASS_EXTRA)
+# define SWIFT_CLASS_EXTRA
+#endif
+#if !defined(SWIFT_PROTOCOL_EXTRA)
+# define SWIFT_PROTOCOL_EXTRA
+#endif
+#if !defined(SWIFT_ENUM_EXTRA)
+# define SWIFT_ENUM_EXTRA
+#endif
+#if !defined(SWIFT_CLASS)
+# if __has_attribute(objc_subclassing_restricted)
+# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_CLASS_EXTRA
+# define SWIFT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
+# else
+# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
+# define SWIFT_CLASS_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA
+# endif
+#endif
+#if !defined(SWIFT_RESILIENT_CLASS)
+# if __has_attribute(objc_class_stub)
+# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME) __attribute__((objc_class_stub))
+# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_class_stub)) SWIFT_CLASS_NAMED(SWIFT_NAME)
+# else
+# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME)
+# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) SWIFT_CLASS_NAMED(SWIFT_NAME)
+# endif
+#endif
+
+#if !defined(SWIFT_PROTOCOL)
+# define SWIFT_PROTOCOL(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA
+# define SWIFT_PROTOCOL_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA
+#endif
+
+#if !defined(SWIFT_EXTENSION)
+# define SWIFT_EXTENSION(M) SWIFT_PASTE(M##_Swift_, __LINE__)
+#endif
+
+#if !defined(OBJC_DESIGNATED_INITIALIZER)
+# if __has_attribute(objc_designated_initializer)
+# define OBJC_DESIGNATED_INITIALIZER __attribute__((objc_designated_initializer))
+# else
+# define OBJC_DESIGNATED_INITIALIZER
+# endif
+#endif
+#if !defined(SWIFT_ENUM_ATTR)
+# if defined(__has_attribute) && __has_attribute(enum_extensibility)
+# define SWIFT_ENUM_ATTR(_extensibility) __attribute__((enum_extensibility(_extensibility)))
+# else
+# define SWIFT_ENUM_ATTR(_extensibility)
+# endif
+#endif
+#if !defined(SWIFT_ENUM)
+# define SWIFT_ENUM(_type, _name, _extensibility) enum _name : _type _name; enum SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type
+# if __has_feature(generalized_swift_name)
+# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) enum _name : _type _name SWIFT_COMPILE_NAME(SWIFT_NAME); enum SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type
+# else
+# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) SWIFT_ENUM(_type, _name, _extensibility)
+# endif
+#endif
+#if !defined(SWIFT_UNAVAILABLE)
+# define SWIFT_UNAVAILABLE __attribute__((unavailable))
+#endif
+#if !defined(SWIFT_UNAVAILABLE_MSG)
+# define SWIFT_UNAVAILABLE_MSG(msg) __attribute__((unavailable(msg)))
+#endif
+#if !defined(SWIFT_AVAILABILITY)
+# define SWIFT_AVAILABILITY(plat, ...) __attribute__((availability(plat, __VA_ARGS__)))
+#endif
+#if !defined(SWIFT_WEAK_IMPORT)
+# define SWIFT_WEAK_IMPORT __attribute__((weak_import))
+#endif
+#if !defined(SWIFT_DEPRECATED)
+# define SWIFT_DEPRECATED __attribute__((deprecated))
+#endif
+#if !defined(SWIFT_DEPRECATED_MSG)
+# define SWIFT_DEPRECATED_MSG(...) __attribute__((deprecated(__VA_ARGS__)))
+#endif
+#if __has_feature(attribute_diagnose_if_objc)
+# define SWIFT_DEPRECATED_OBJC(Msg) __attribute__((diagnose_if(1, Msg, "warning")))
+#else
+# define SWIFT_DEPRECATED_OBJC(Msg) SWIFT_DEPRECATED_MSG(Msg)
+#endif
+#if !defined(IBSegueAction)
+# define IBSegueAction
+#endif
+#if !defined(SWIFT_EXTERN)
+# if defined(__cplusplus)
+# define SWIFT_EXTERN extern "C"
+# else
+# define SWIFT_EXTERN extern
+# endif
+#endif
+#if __has_feature(modules)
+#if __has_warning("-Watimport-in-framework-header")
+#pragma clang diagnostic ignored "-Watimport-in-framework-header"
+#endif
+@import CoreGraphics;
+@import Foundation;
+@import ObjectiveC;
+@import UIKit;
+#endif
+
+#import
+
+#pragma clang diagnostic ignored "-Wproperty-attribute-mismatch"
+#pragma clang diagnostic ignored "-Wduplicate-method-arg"
+#if __has_warning("-Wpragma-clang-attribute")
+# pragma clang diagnostic ignored "-Wpragma-clang-attribute"
+#endif
+#pragma clang diagnostic ignored "-Wunknown-pragmas"
+#pragma clang diagnostic ignored "-Wnullability"
+
+#if __has_attribute(external_source_symbol)
+# pragma push_macro("any")
+# undef any
+# pragma clang attribute push(__attribute__((external_source_symbol(language="Swift", defined_in="Intercom",generated_declaration))), apply_to=any(function,enum,objc_interface,objc_category,objc_protocol))
+# pragma pop_macro("any")
+#endif
+
+@class NSString;
+
+SWIFT_CLASS("_TtC8Intercom15ArticleMetaData")
+@interface ArticleMetaData : NSObject
+SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, copy) NSString * _Nonnull searchBrowseSource;)
++ (NSString * _Nonnull)searchBrowseSource SWIFT_WARN_UNUSED_RESULT;
+@property (nonatomic, copy) NSString * _Nullable articleId;
+@property (nonatomic, copy) NSString * _Nullable articleSource;
+- (nonnull instancetype)initWithId:(NSString * _Nullable)id source:(NSString * _Nullable)source OBJC_DESIGNATED_INITIALIZER;
+- (nonnull instancetype)init SWIFT_UNAVAILABLE;
++ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
+@end
+
+@class NSCoder;
+
+SWIFT_CLASS("_TtC8Intercom22AvailableTeammatesView")
+@interface AvailableTeammatesView : UIStackView
+- (nonnull instancetype)init SWIFT_UNAVAILABLE;
++ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
+- (nonnull instancetype)initWithCoder:(NSCoder * _Nonnull)coder SWIFT_UNAVAILABLE;
+- (nonnull instancetype)initWithFrame:(CGRect)frame SWIFT_UNAVAILABLE;
+@end
+
+@protocol ConversationCardInfoProtocol;
+@protocol ConversationCardDelegate;
+@class UITraitCollection;
+
+SWIFT_CLASS("_TtC8Intercom16ConversationCard")
+@interface ConversationCard : UIView
+SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly) NSInteger maxRecentConversationsCount;)
++ (NSInteger)maxRecentConversationsCount SWIFT_WARN_UNUSED_RESULT;
+SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly) CGFloat viewPadding;)
++ (CGFloat)viewPadding SWIFT_WARN_UNUSED_RESULT;
+- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder SWIFT_UNAVAILABLE;
+- (nonnull instancetype)initWithCardInfo:(id _Nonnull)cardInfo delegate:(id _Nonnull)delegate OBJC_DESIGNATED_INITIALIZER;
+- (CGFloat)heightForCardWithWidth:(CGFloat)width SWIFT_WARN_UNUSED_RESULT;
+- (void)traitCollectionDidChange:(UITraitCollection * _Nullable)previousTraitCollection;
+- (nonnull instancetype)initWithFrame:(CGRect)frame SWIFT_UNAVAILABLE;
+@end
+
+
+SWIFT_PROTOCOL("_TtP8Intercom31SeeAllConversationsViewDelegate_")
+@protocol SeeAllConversationsViewDelegate
+- (void)viewPreviousConversations;
+@end
+
+
+@interface ConversationCard (SWIFT_EXTENSION(Intercom))
+- (void)viewPreviousConversations;
+@end
+
+@class UIViewController;
+
+SWIFT_PROTOCOL("_TtP8Intercom24ConversationCardDelegate_")
+@protocol ConversationCardDelegate
+- (void)startNewConversation;
+- (void)viewPreviousConversations;
+- (void)reloadConversationHistoryCard;
+- (void)navigateToViewController:(UIViewController * _Nonnull)viewController;
+@end
+
+
+SWIFT_PROTOCOL("_TtP8Intercom28ConversationCardInfoProtocol_")
+@protocol ConversationCardInfoProtocol
+@property (nonatomic, readonly) BOOL prominantStyling;
+@property (nonatomic, readonly) BOOL accessToTeammateEnabled;
+@property (nonatomic, readonly) BOOL hasRecentConversations;
+@property (nonatomic, readonly) BOOL hasOtherConversations;
+@property (nonatomic, readonly) BOOL startConversationCardDisplayed;
+@end
+
+@protocol ICMConfigProtocol;
+@protocol ICMDataManagerProtocol;
+
+SWIFT_CLASS("_TtC8Intercom20ConversationCardInfo")
+@interface ConversationCardInfo : NSObject
+@property (nonatomic, readonly) BOOL prominantStyling;
+@property (nonatomic) BOOL startConversationCardDisplayed;
+@property (nonatomic, readonly) BOOL accessToTeammateEnabled;
+@property (nonatomic, readonly) BOOL hasRecentConversations;
+@property (nonatomic, readonly) BOOL hasOtherConversations;
+- (nonnull instancetype)initWithProminantStyling:(BOOL)prominantStyling config:(id _Nonnull)config dataManager:(id _Nonnull)dataManager OBJC_DESIGNATED_INITIALIZER;
+- (nonnull instancetype)init SWIFT_UNAVAILABLE;
++ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
+@end
+
+
+@class ICMRecentConversationsViewController;
+
+SWIFT_CLASS("_TtC8Intercom23ConversationHistoryCard")
+@interface ConversationHistoryCard : ConversationCard
+@property (nonatomic, strong) ICMRecentConversationsViewController * _Nonnull recentConversationsVC;
+- (void)reloadConversationHistoryCard;
+- (void)navigateToViewController:(UIViewController * _Nonnull)viewController;
+- (nonnull instancetype)initWithCardInfo:(id _Nonnull)cardInfo delegate:(id _Nonnull)delegate OBJC_DESIGNATED_INITIALIZER;
+@end
+
+
+SWIFT_CLASS("_TtC8Intercom11EmojiButton")
+@interface EmojiButton : UIButton
+- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder SWIFT_UNAVAILABLE;
+- (nonnull instancetype)initWithFrame:(CGRect)frame SWIFT_UNAVAILABLE;
+@end
+
+
+SWIFT_CLASS("_TtC8Intercom16EmojiImageButton")
+@interface EmojiImageButton : UIButton
+- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder SWIFT_UNAVAILABLE;
+- (nonnull instancetype)initWithFrame:(CGRect)frame SWIFT_UNAVAILABLE;
+@end
+
+
+SWIFT_CLASS("_TtC8Intercom26HelpCenterArticle_Internal")
+@interface HelpCenterArticle_Internal : NSObject
+@property (nonatomic, copy) NSString * _Nonnull id;
+@property (nonatomic, copy) NSString * _Nonnull title;
+- (nullable instancetype)initWithDictionary:(NSDictionary * _Nonnull)dictionary OBJC_DESIGNATED_INITIALIZER;
+- (nonnull instancetype)initWithId:(NSString * _Nonnull)id title:(NSString * _Nonnull)title OBJC_DESIGNATED_INITIALIZER;
+@property (nonatomic, readonly, copy) NSString * _Nonnull description;
+- (BOOL)isEqual:(id _Nullable)object SWIFT_WARN_UNUSED_RESULT;
+- (nonnull instancetype)init SWIFT_UNAVAILABLE;
++ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
+@end
+
+@class NSBundle;
+
+SWIFT_CLASS("_TtC8Intercom33HelpCenterContainerViewController")
+@interface HelpCenterContainerViewController : UIViewController
+- (nonnull instancetype)initWithCollections:(NSArray * _Nonnull)collectionIds;
+- (nonnull instancetype)initWithCollection:(NSString * _Nonnull)collectionId;
+- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
+- (nonnull instancetype)initFromSearchBrowse:(BOOL)fromSearchBrowse;
+- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder SWIFT_UNAVAILABLE;
+- (void)viewDidLoad;
+- (void)viewDidLayoutSubviews;
+- (nonnull instancetype)initWithNibName:(NSString * _Nullable)nibNameOrNil bundle:(NSBundle * _Nullable)nibBundleOrNil SWIFT_UNAVAILABLE;
+@end
+
+
+@interface HelpCenterContainerViewController (SWIFT_EXTENSION(Intercom))
+- (void)didSelectErrorAction;
+@end
+
+
+@class ICMHelpCenterCollection;
+@class ICMHelpCenterCollectionContent;
+@class ICMHelpCenterArticleSearchResult;
+
+SWIFT_CLASS("_TtC8Intercom21HelpCenterDataService")
+@interface HelpCenterDataService : NSObject
+- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
+- (void)fetchCollectionsWithCompletion:(void (^ _Nonnull)(NSArray * _Nullable, NSError * _Nullable))completion;
+- (void)fetchCollectionWithCollectionId:(NSString * _Nonnull)collectionId completion:(void (^ _Nonnull)(ICMHelpCenterCollectionContent * _Nullable, NSError * _Nullable))completion;
+- (void)searchResultsFor:(NSString * _Nonnull)searchTerm completion:(void (^ _Nonnull)(NSArray * _Nullable, NSError * _Nullable))completion;
+@end
+
+@class NSNumber;
+
+SWIFT_CLASS("_TtC8Intercom23HelpCenterMetricService")
+@interface HelpCenterMetricService : NSObject
+@property (nonatomic) BOOL contextIsSearchBrowse;
++ (void)addSearchBrowseViewedEventWithHomeScreenIndex:(NSInteger)homeScreenIndex;
++ (void)addOpenedFromAPIEvent;
++ (void)addOpenedArticleFromAPIEvent;
++ (void)addOpenedFromConversationEvent;
++ (void)addOpenedFromInAppEvent;
++ (void)addOpenedFromLegacySearchAppEvent;
++ (void)addOpenedFromMessengerHomeAppEvent;
++ (void)addOpenedFromCarousel;
++ (void)addOpenedFromPushNotification;
++ (void)addOpenedFromSurvey;
+- (void)addArticleViewedEvent;
+- (void)addArticleFailedEventWithErrorCode:(NSNumber * _Nonnull)errorCode;
+- (void)addHappyReactionEvent;
+- (void)addNeutralReactionEvent;
+- (void)addSadReactionEventWithConversationOptionShown:(BOOL)conversationOptionShown;
+- (void)addNewConversationFromArticleEventWithAccessToTeammate:(BOOL)accessToTeammate;
+- (nonnull instancetype)init OBJC_DESIGNATED_INITIALIZER;
+@end
+
+@protocol HelpCenterStartConversationViewDelegate;
+
+SWIFT_CLASS("_TtC8Intercom31HelpCenterStartConversationView")
+@interface HelpCenterStartConversationView : UIView
+@property (nonatomic, weak) id _Nullable startConversationDelegate;
+- (nonnull instancetype)initWithFrame:(CGRect)frame SWIFT_UNAVAILABLE;
+- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder SWIFT_UNAVAILABLE;
+@end
+
+
+SWIFT_PROTOCOL("_TtP8Intercom39HelpCenterStartConversationViewDelegate_")
+@protocol HelpCenterStartConversationViewDelegate
+- (void)didSelectStartConversation;
+@end
+
+@class UIColor;
+
+@interface ICMColor (SWIFT_EXTENSION(Intercom))
++ (BOOL)isLightColor:(UIColor * _Nullable)color SWIFT_WARN_UNUSED_RESULT;
+@end
+
+@class NSDate;
+@class ICMParticipant;
+
+SWIFT_CLASS("_TtC8Intercom9InboxCell")
+@interface InboxCell : UITableViewCell
+- (nonnull instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString * _Nullable)reuseIdentifier SWIFT_UNAVAILABLE;
+- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder SWIFT_UNAVAILABLE;
+- (void)configureWithName:(NSString * _Nonnull)name sentTime:(NSDate * _Nonnull)sentTime summary:(NSString * _Nonnull)summary adminsToShow:(NSArray * _Nonnull)adminsToShow unread:(BOOL)unread showDividerLine:(BOOL)showDividerLine;
+- (void)traitCollectionDidChange:(UITraitCollection * _Nullable)previousTraitCollection;
+@end
+
+
+@protocol NativeArticleReactionsViewDelegate;
+
+SWIFT_CLASS("_TtC8Intercom26NativeArticleReactionsView")
+@interface NativeArticleReactionsView : UIView
+SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly) NSInteger sadReactionIndex;)
++ (NSInteger)sadReactionIndex SWIFT_WARN_UNUSED_RESULT;
+SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly) NSInteger neutralReactionIndex;)
++ (NSInteger)neutralReactionIndex SWIFT_WARN_UNUSED_RESULT;
+SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly) NSInteger happyReactionIndex;)
++ (NSInteger)happyReactionIndex SWIFT_WARN_UNUSED_RESULT;
+@property (nonatomic, weak) id _Nullable articleDelegate;
+- (nonnull instancetype)initWithFrame:(CGRect)frame SWIFT_UNAVAILABLE;
+- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder SWIFT_UNAVAILABLE;
+@end
+
+
+SWIFT_PROTOCOL("_TtP8Intercom34NativeArticleReactionsViewDelegate_")
+@protocol NativeArticleReactionsViewDelegate
+- (void)selectedReactionIndex:(NSInteger)reactionIdex;
+@end
+
+
+SWIFT_CLASS_NAMED("SearchBrowseView")
+@interface ICMSearchBrowseView : UIView
+- (nonnull instancetype)initWithSuggestedArticles:(NSArray * _Nonnull)suggestedArticles;
+- (nonnull instancetype)initWithCoder:(NSCoder * _Nonnull)aDecoder SWIFT_UNAVAILABLE;
+- (void)traitCollectionDidChange:(UITraitCollection * _Nullable)previousTraitCollection;
+- (void)searchHelpArticlesAction;
+- (CGFloat)heightForCardWithWidth:(CGFloat)width SWIFT_WARN_UNUSED_RESULT;
+- (nonnull instancetype)initWithFrame:(CGRect)frame SWIFT_UNAVAILABLE;
+@end
+
+
+
+SWIFT_CLASS("_TtC8Intercom21StartConversationCard")
+@interface StartConversationCard : ConversationCard
+- (nonnull instancetype)initWithCardInfo:(id _Nonnull)cardInfo delegate:(id _Nonnull)delegate OBJC_DESIGNATED_INITIALIZER;
+@end
+
+enum SurveyFormat : NSInteger;
+@class SurveyStep;
+@class SurveyCustomizationOptions;
+
+SWIFT_CLASS("_TtC8Intercom6Survey")
+@interface Survey : NSObject
+@property (nonatomic, readonly, copy) NSString * _Nonnull surveyId;
+@property (nonatomic, readonly) NSInteger progressId;
+@property (nonatomic, readonly, copy) NSString * _Nullable lastStepId;
+- (nonnull instancetype)initWithId:(NSString * _Nonnull)id format:(enum SurveyFormat)format steps:(NSArray * _Nonnull)steps progressId:(NSInteger)progressId customizationOptions:(SurveyCustomizationOptions * _Nullable)customizationOptions stepCount:(NSInteger)stepCount OBJC_DESIGNATED_INITIALIZER;
+- (nullable instancetype)initWithDictionary:(NSDictionary * _Nonnull)dictionary OBJC_DESIGNATED_INITIALIZER;
+- (nonnull instancetype)init SWIFT_UNAVAILABLE;
++ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
+@end
+
+
+@interface Survey (SWIFT_EXTENSION(Intercom))
+- (NSArray *> * _Nonnull)allResponses SWIFT_WARN_UNUSED_RESULT;
+@end
+
+
+SWIFT_CLASS("_TtC8Intercom26SurveyCustomizationOptions")
+@interface SurveyCustomizationOptions : NSObject
+@property (nonatomic, readonly, strong) UIColor * _Nonnull backgroundColor;
+@property (nonatomic, readonly, strong) UIColor * _Nonnull buttonColor;
+- (nonnull instancetype)initWithBackgroundColor:(UIColor * _Nonnull)backgroundColor buttonColor:(UIColor * _Nonnull)buttonColor OBJC_DESIGNATED_INITIALIZER;
+- (nonnull instancetype)init SWIFT_UNAVAILABLE;
++ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
+@end
+
+
+typedef SWIFT_ENUM(NSInteger, SurveyFormat, open) {
+ SurveyFormatSmall = 0,
+ SurveyFormatLarge = 1,
+};
+
+
+SWIFT_CLASS("_TtC8Intercom13SurveyService")
+@interface SurveyService : NSObject
+SWIFT_CLASS_PROPERTY(@property (nonatomic, class) BOOL currentlyDisplayingSurvey;)
++ (BOOL)currentlyDisplayingSurvey SWIFT_WARN_UNUSED_RESULT;
++ (void)setCurrentlyDisplayingSurvey:(BOOL)value;
++ (void)presentSurvey:(Survey * _Nonnull)survey;
+- (nonnull instancetype)init SWIFT_UNAVAILABLE;
++ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
+@end
+
+
+SWIFT_CLASS("_TtC8Intercom10SurveyStep")
+@interface SurveyStep : NSObject
+- (nonnull instancetype)initWithId:(NSString * _Nonnull)id OBJC_DESIGNATED_INITIALIZER;
+- (nonnull instancetype)init SWIFT_UNAVAILABLE;
++ (nonnull instancetype)new SWIFT_UNAVAILABLE_MSG("-init is unavailable");
+@end
+
+
+@protocol ICMContentViewControllerDelegate;
+
+SWIFT_CLASS("_TtC8Intercom20SurveyViewController")
+@interface SurveyViewController : UIViewController
+@property (nonatomic, weak) id _Nullable contentDelegate;
+- (nonnull instancetype)initWith:(Survey * _Nonnull)survey OBJC_DESIGNATED_INITIALIZER;
+- (void)viewDidLoad;
+- (void)viewDidLayoutSubviews;
+- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder SWIFT_UNAVAILABLE;
+- (nonnull instancetype)initWithNibName:(NSString * _Nullable)nibNameOrNil bundle:(NSBundle * _Nullable)nibBundleOrNil SWIFT_UNAVAILABLE;
+@end
+
+
+
+@interface SurveyViewController (SWIFT_EXTENSION(Intercom))
+- (void)didSelectErrorAction;
+@end
+
+
+
+@interface SurveyViewController (SWIFT_EXTENSION(Intercom))
+- (void)reload;
+- (void)closeButtonTapped;
+- (void)viewDidDismissBySwipe;
+@end
+
+@class UIEvent;
+@class UICollectionViewLayout;
+
+SWIFT_CLASS("_TtC8Intercom30TouchTransparentCollectionView")
+@interface TouchTransparentCollectionView : UICollectionView
+- (BOOL)pointInside:(CGPoint)point withEvent:(UIEvent * _Nullable)event SWIFT_WARN_UNUSED_RESULT;
+- (nonnull instancetype)initWithFrame:(CGRect)frame collectionViewLayout:(UICollectionViewLayout * _Nonnull)layout OBJC_DESIGNATED_INITIALIZER;
+- (nullable instancetype)initWithCoder:(NSCoder * _Nonnull)coder OBJC_DESIGNATED_INITIALIZER;
+@end
+
+
+
+
+@interface UIColor (SWIFT_EXTENSION(Intercom))
+/// Returns true if the color is white, or almost white.
+@property (nonatomic, readonly) BOOL isWhite;
+/// Returns true if the color is black, or almost black.
+@property (nonatomic, readonly) BOOL isBlack;
+@end
+
+
+@interface UIColor (SWIFT_EXTENSION(Intercom))
+SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) UIColor * _Nullable intercomGrey;)
++ (UIColor * _Nullable)intercomGrey SWIFT_WARN_UNUSED_RESULT;
+SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) UIColor * _Nullable intercomBlack;)
++ (UIColor * _Nullable)intercomBlack SWIFT_WARN_UNUSED_RESULT;
+SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) UIColor * _Nullable intercomBlack5;)
++ (UIColor * _Nullable)intercomBlack5 SWIFT_WARN_UNUSED_RESULT;
+SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) UIColor * _Nullable intercomBlack20;)
++ (UIColor * _Nullable)intercomBlack20 SWIFT_WARN_UNUSED_RESULT;
+SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) UIColor * _Nullable intercomLightGrey;)
++ (UIColor * _Nullable)intercomLightGrey SWIFT_WARN_UNUSED_RESULT;
+SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) UIColor * _Nullable backButtonBackgroundLight;)
++ (UIColor * _Nullable)backButtonBackgroundLight SWIFT_WARN_UNUSED_RESULT;
+SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) UIColor * _Nullable backButtonBackgroundDark;)
++ (UIColor * _Nullable)backButtonBackgroundDark SWIFT_WARN_UNUSED_RESULT;
+SWIFT_CLASS_PROPERTY(@property (nonatomic, class, readonly, strong) UIColor * _Nullable coolGray1;)
++ (UIColor * _Nullable)coolGray1 SWIFT_WARN_UNUSED_RESULT;
+@end
+
+
+@interface UIFont (SWIFT_EXTENSION(Intercom))
++ (UIFont * _Nonnull)preferredFontForTextStyle:(UIFontTextStyle _Nonnull)style weight:(UIFontWeight)weight SWIFT_WARN_UNUSED_RESULT;
+@end
+
+
+
+
+
+#if __has_attribute(external_source_symbol)
+# pragma clang attribute pop
+#endif
+#pragma clang diagnostic pop
+#endif
diff --git a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/Intercom.h b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/Intercom.h
index fba61d94..f71e6158 100644
--- a/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/Intercom.h
+++ b/Intercom.xcframework/ios-arm64/Intercom.framework/Headers/Intercom.h
@@ -15,6 +15,72 @@
#import
#import
#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import
+#import