<commit_before>//
//  ATConnect.h
//  ApptentiveConnect
//
//  Created by <NAME> on 3/12/11.
//  Copyright 2011 Apptentive, Inc.. All rights reserved.
//


#if TARGET_OS_IPHONE
#import <UIKit/UIKit.h>
#elif TARGET_OS_MAC
#import <Cocoa/Cocoa.h>
#endif

#define kATConnectVersionString @"2.0.3"

#if TARGET_OS_IPHONE
#	define kATConnectPlatformString @"iOS"
#elif TARGET_OS_MAC
#	define kATConnectPlatformString @"Mac OS X"
@class ATFeedbackWindowController;
#endif

@protocol ATConnectDelegate;

/** Notification sent when Message Center unread messages count changes. */
extern NSString *const ATMessageCenterUnreadCountChangedNotification;

/** Notification sent when the user has agreed to rate the application. */
extern NSString *const ATAppRatingFlowUserAgreedToRateAppNotification;

/** Notification sent when a survey is shown. */
extern NSString *const ATSurveyShownNotification;

/** Notification sent when a survey is submitted by the user. */
extern NSString *const ATSurveySentNotification;

/**
 When a survey is shown or sent, notification's userInfo dictionary will contain the ATSurveyIDKey key.
 Value is the ID of the survey that was shown or sent.
 */
extern NSString *const ATSurveyIDKey;

/** Supported Push Providers for use in `setPushNotificationIntegration:withDeviceToken:` */
typedef NS_ENUM(NSInteger, ATPushProvider){
	ATPushProviderApptentive,
	ATPushProviderUrbanAirship,
	ATPushProviderAmazonSNS,
	ATPushProviderParse,
};

/**
 `ATConnect` is a singleton which is used as the main point of entry for the Apptentive service.
 
 ## Configuration
 
Before calling any other methods on the shared `ATConnect` instance, set the API key:
 
     [[ATConnect sharedConnection].apiKey = @"your API key here";
 
 ## Engagement Events
 
 The Ratings Prompt and other Apptentive interactions are targeted to certain Apptentive events. For example,
 you could decide to show the Ratings Prompt after an event named "user_completed_level" has been engaged.
 You can later reconfigure the Ratings Prompt interaction to instead show after engaging "user_logged_in".
 
 You would add calls at these points to optionally engage with the user:
 
     [[ATConnect sharedConnection] engage:@"completed_level" fromViewController:viewController];
 
 See the readme for more information.
 
 ## Notifications
 
 `ATMessageCenterUnreadCountChangedNotification`
 
 Sent when the number of unread messages changes.
 The notification object is undefined. The `userInfo` dictionary contains a `count` key, the value of which<commit_msg>Update ATConnect.h<commit_after>//
//  ATConnect.h
//  ApptentiveConnect
//
//  Created by <NAME> on 3/12/11.
//  Copyright 2011 Apptentive, Inc.. All rights reserved.
//


#if TARGET_OS_IPHONE
#import <UIKit/UIKit.h>
#elif TARGET_OS_MAC
#import <Cocoa/Cocoa.h>
#endif

#define kATConnectVersionString @"2.0.3"

#if TARGET_OS_IPHONE
#	define kATConnectPlatformString @"iOS"
#elif TARGET_OS_MAC
#	define kATConnectPlatformString @"Mac OS X"
@class ATFeedbackWindowController;
#endif

@protocol ATConnectDelegate;

/** Notification sent when Message Center unread messages count changes. */
extern NSString *const ATMessageCenterUnreadCountChangedNotification;

/** Notification sent when the user has agreed to rate the application. */
extern NSString *const ATAppRatingFlowUserAgreedToRateAppNotification;

/** Notification sent when a survey is shown. */
extern NSString *const ATSurveyShownNotification;

/** Notification sent when a survey is submitted by the user. */
extern NSString *const ATSurveySentNotification;

/**
 When a survey is shown or sent, notification's userInfo dictionary will contain the ATSurveyIDKey key.
 Value is the ID of the survey that was shown or sent.
 */
extern NSString *const ATSurveyIDKey;

/** Supported Push Providers for use in `setPushNotificationIntegration:withDeviceToken:` */
typedef NS_ENUM(NSInteger, ATPushProvider){
	/** Specifies the Apptentive push provider. */
	ATPushProviderApptentive,
	/** Specifies the Urban Airship push provider. */
	ATPushProviderUrbanAirship,
	/** Specifies the Amazon Simple Notification Service push provider. */
	ATPushProviderAmazonSNS,
	/** Specifies the Parse push provider. */
	ATPushProviderParse,
};

/**
 `ATConnect` is a singleton which is used as the main point of entry for the Apptentive service.
 
 ## Configuration
 
Before calling any other methods on the shared `ATConnect` instance, set the API key:
 
     [[ATConnect sharedConnection].apiKey = @"your API key here";
 
 ## Engagement Events
 
 The Ratings Prompt and other Apptentive interactions are targeted to certain Apptentive events. For example,
 you could decide to show the Ratings Prompt after an event named "user_completed_level" has been engaged.
 You can later reconfigure the Ratings Prompt interaction to instead show after engaging "user_logged_in".
 
 You would add calls at these points to optionally engage with the user:
 
     [[ATConnect sharedConnection] engage:@"completed_level" fromViewController:viewController];
 
 See the readme for more information.
 
 ## Notifications
 
 `ATMessageCenterUnreadCountChangedNotification`
 
 Sent when the number of unread messages changes.
 The notification object is undefined. The `userInfo` dictionary contains a `count` key, the value of which
{'fraction_non_alphanumeric': 0.07154993392486313, 'fraction_numerical': 0.004530866528223523, 'mean_word_length': 4.919553072625698, 'pattern_counts': {'":': 0, '<': 9, '<?xml version=': 0, '>': 9, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3729182', 'n_tokens_mistral': 1548, 'n_tokens_neox': 1412, 'n_words': 576}