#import <JavaScriptCore/JavaScriptCore.h>
#import "allheaders.h"
#import "allprotos.h"
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wdeprecated-declarations"
#pragma clang diagnostic ignored "-Wobjc-property-no-attribute"
#pragma clang diagnostic ignored "-Wnullability-completeness"
void load_libkonywrapper_AppICEKonyPlugin_symbols(JSContext*);
@protocol AppICEKonyPluginInstanceExports<JSExport>
@end
@protocol AppICEKonyPluginClassExports<JSExport>
+(id) sharedInstance;
+(void) startContext;
+(void) setupKeysWithDid: (NSString *) appKey : (NSString *) apiKey : (NSString *) appId : (NSString *) deviceId ;
+(void) setupKeysWithRegion: (NSString *) appKey : (NSString *) apiKey : (NSString *) appId : (NSString *) deviceId : (NSString *) region : (NSString *) baseUrl : (NSArray *) certficates ;
+(void) setupKeys: (NSString *) appKey : (NSString *) apiKey : (NSString *) appId ;
+(BOOL) validateIntegration;
+(void) recordEvent: (NSString *) key ;
+(void) recordEvent: (NSString *) key segmentation: (NSDictionary *) segmentation ;
+(void) setCustomVariableString: (NSString *) key : (NSString *) value ;
+(void) setCustomVariable: (NSString *) key : (id) value ;
+(NSString *) getSdkVersion;
+(NSString *) getInternalId;
+(void) setUserId: (NSArray *) userIdArray ;
+(void) setUserDetail: (appICEUserDetails *) userdetail ;
+(appICEUserDetails *) getUserDetail;
+(void) pushNotificationClickedEvent: (NSString *) notificationData ;
+(BOOL) isSilentPush: (NSString *) payload ;
+(void) handleAppICENotification: (NSString *) notificationData ;
+(BOOL) isAppICENotification: (NSString *) userInfo ;
+(void) setTokenInPushNotification: (NSString *) appPushToken ;
+(void) handleClickOnPush: (NSString *) data : (BOOL) openDeepLink ;
+(NSString *) getInboxMessages: (int) status : (NSArray *) userId : (NSString *) key : (NSString *) value ;
+(BOOL) updateInboxMessage: (int) status : (NSString *) messageId : (NSString *) userId ;
+(int) getMessageCount: (int) status : (NSArray *) userId : (NSString *) key : (NSString *) value ;
+(NSString *) getInboxMessageForId: (NSString *) messageId : (NSArray *) userId ;
JSExportAs(synchronizeInbox,
+(void) jssynchronizeInbox: (JSValue *) successCallback : (int) timeoutinSec );
JSExportAs(synchronizeAppInbox,
+(void) jssynchronizeAppInbox: (JSValue *) CallBack : (int) timeoutinSec );
JSExportAs(sendClickCallback,
+(void) jssendClickCallback: (JSValue *) callbackValue );
JSExportAs(setClickCallback,
+(void) jssetClickCallback: (JSValue *) CallBack );
+(void) resumeInApp;
+(void) suspendInApp;
+(void) discardInApp;
+(void) dismissInApp;
@end
#pragma clang diagnostic pop