react-native-zohosalesiq-mobilisten
Version:
A React Native module for the ZohoSalesIQ Mobilisten SDK
179 lines (176 loc) • 8.1 kB
text/typescript
import type { TurboModule } from 'react-native';
import { TurboModuleRegistry } from 'react-native';
export interface Spec extends TurboModule {
getConstants(): {
TYPE_CONNECTED: string;
EVENT_OPEN_URL: string;
ARTICLE_LIKED: string;
TYPE_ENDED: string;
SUPPORT_CLOSED: string;
CHATVIEW_OPENED: string;
PERFORM_CHATACTION: string;
CHAT_ATTENDED: string;
LAUNCHER_HORIZONTAL_RIGHT: string;
EVENT_RESOURCE_CLOSED: string;
CHAT_MISSED: string;
OPERATORS_OFFLINE: string;
ACTION_SOURCE_SDK: string;
TYPE_CLOSED: string;
ACTION_SOURCE_APP: string;
FEEDBACK_RECEIVED: string;
CHAT_REOPENED: string;
ARTICLE_OPENED: string;
CHAT_OPENED: string;
KNOWLEDGEBASE_EVENT_LISTENER: string;
TYPE_WAITING: string;
LAUNCHER_VISIBILITY_MODE_WHEN_ACTIVE_CHAT: string;
BOT_TRIGGER: string;
EVENT_NOTIFICATION_CLICKED: string;
ZSIQ_EVENT_LISTENER: string;
NOTIFICATION_EVENT_LISTENER: string;
LAUNCHER_EVENT_LISTENER: string;
EVENT_HANDLE_URL: string;
LAUNCHER_VISIBILITY_MODE_ALWAYS: string;
EVENT_COMPLETE_CHAT_ACTION: string;
LAUNCHER_VISIBILITY_MODE_NEVER: string;
VISITOR_IPBLOCKED: string;
LAUNCHER_VERTICAL_BOTTOM: string;
SUPPORT_OPENED: string;
ARTICLE_DISLIKED: string;
LAUNCHER_MODE_STATIC: string;
CHAT_UNREAD_COUNT_CHANGED: string;
CHATVIEW_CLOSED: string;
OPERATORS_ONLINE: string;
EVENT_RESOURCE_DISLIKED: string;
RATING_RECEIVED: string;
TYPE_OPEN: string;
TAB_KNOWLEDGE_BASE: string;
RESOURCE_ARTICLES: string;
CHAT_EVENT_LISTENER: string;
TYPE_MISSED: string;
TAB_CONVERSATIONS: string;
TAB_FAQ: string;
LAUNCHER_HORIZONTAL_LEFT: string;
ARTICLE_CLOSED: string;
CHAT_CLOSED: string;
LAUNCHER_MODE_FLOATING: string;
LAUNCHER_VERTICAL_TOP: string;
CHAT_QUEUE_POSITION_CHANGED: string;
EVENT_RESOURCE_LIKED: string;
CUSTOMTRIGGER: string;
EVENT_HANDLE_CUSTOM_LAUNCHER_VISIBILITY: string;
EVENT_RESOURCE_OPENED: string;
EVENT_VISITOR_REGISTRATION_FAILURE: string;
RE_REGISTER_PUSH: string;
};
fetchAttenderImage(attenderId: string, defaultImage: boolean, imageCallback: () => void): void;
getChats(listCallback: () => void): void;
getChatsWithFilter(filter: string, listCallback: () => void): void;
getDepartments(departmentCallback: () => void): void;
isMultipleOpenChatRestricted(callback: () => void): void;
getArticles(articlesCallback: () => void): void;
getArticlesWithCategoryID(categoryId: string, articlesCallback: () => void): void;
getCategories(categoryCallback: () => void): void;
openArticle(id: string, articlesCallback: () => void): void;
init(appKey: string, accessKey: string): void;
initWithCallback(appKey: string, accessKey: string, initCallback: () => void): void;
showLauncher(mode: string): void;
updateListener(listener: string): void;
setVisibilityModeToCustomLauncher(mode: string): void;
enableDragToDismiss(enabled: boolean): void;
setMinimumPressDuration(duration: number): void;
setChatTitle(title: string): void;
hideQueueTime(hide: boolean): void;
setLanguage(code: string): void;
setDepartment(department: string): void;
setDepartments(department: Array<any>): void;
setOperatorEmail(email: string): void;
showOperatorImageInChat(visible: boolean): void;
setFeedbackVisibility(visible: boolean): void;
setRatingVisibility(visible: boolean): void;
showOperatorImageInLauncher(show: boolean): void;
openChat(): void;
openChatWithID(chatId: string): void;
showPayloadChat(result: Object): void;
showOfflineMessage(show: boolean): void;
endChat(chatId: string): void;
setLauncherVisibility(visible: boolean): void;
setVisitorName(name: string): void;
setVisitorEmail(email: string): void;
setVisitorContactNumber(number: string): void;
setVisitorAddInfo(key: string, value: string): void;
setQuestion(question: string): void;
startChat(question: string): void;
setConversationVisibility(visible: boolean): void;
setConversationListTitle(title: string): void;
setFAQVisibility(visible: boolean): void;
registerVisitor(uniqueId: string, callback: () => void): void;
unregisterVisitor(callback: () => void): void;
setPageTitle(title: string): void;
setCustomAction(actionName: string): void;
performCustomAction(actionName: string, shouldOpenChatWindow: boolean): void;
enableInAppNotification(): void;
disableInAppNotification(): void;
setThemeColorforiOS(colorCode: string): void;
setThemeColor(theme: Object | null): void;
setChatComponentVisibility(chatComponentName: string, visibility: boolean): void;
setVisitorNameVisibility(visibility: boolean): void;
enablePreChatForms(): void;
disablePreChatForms(): void;
enableScreenshotOption(): void;
disableScreenshotOption(): void;
registerChatAction(actionName: string): void;
unregisterChatAction(actionName: string): void;
unregisterAllChatActions(): void;
setChatActionTimeout(timeout: number): void;
completeChatAction(uuid: string): void;
completeChatActionWithMessage(uuid: string, success: boolean, message: string): void;
setVisitorLocation(visitorLocation: Object): void;
syncThemeWithOsForAndroid(sync: boolean): void;
isChatEnabled(callback: () => void): void;
getChatUnreadCount(callback: () => void): void;
setLauncherPropertiesForAndroid(launcherPropertiesMap: Object): void;
refreshLauncherPropertiesForAndroid(): void;
refreshLauncher(): void;
addListener(eventName: string): void;
removeListeners(count: number): void;
processNotificationMessage(extras: Object): void;
isSDKMessage(map: Object, callback: () => void): void;
registerPush(fcmToken: string, isTestDevice: boolean): void;
getNotificationPayload(readableMap: Object, callback: () => void): void;
setNotificationActionSource(actionSource: string): void;
present(tabString?: string, id?: string, callback?: () => void): void;
setCustomFont(map: Object): void;
sendEvent(event: string, objects: Array<any>): void;
shouldOpenUrl(value: boolean): void;
setTabOrder(tabNames: Array<any>): void;
printDebugLogsForAndroid(value: boolean): void;
setNotificationIconForAndroid(drawableName: string): void;
setThemeForAndroid(name: string): void;
setLoggerEnabled(value: boolean): void;
isLoggerEnabled(callback: () => void): void;
clearLogsForiOS(): void;
setLoggerPathForiOS(value: string): void;
writeLogForiOS(message: string, logLevel: string, callback?: () => void): void;
dismissUI(): void;
showFeedbackAfterSkip(enable: boolean): void;
showFeedbackUpToDuration(duration: number): void;
startNewChat(question: string, customChatId: string | null, departmentName: string | null, callback: () => void): void;
startNewChatWithTrigger(customChatId: string | null, departmentName: string | null, callback: () => void): void;
getChat(chatId: string, callback: () => void): void;
setChatWaitingTime(seconds: number): void;
isKnowledgeBaseEnabled(type: string, callback: () => void): void;
setKnowledgeBaseRecentlyViewedCount(limit: number): void;
setKnowledgeBaseVisibility(type: string, shouldShow: boolean): void;
categorizeKnowledgeBase(type: string, shouldCategorize: boolean): void;
combineKnowledgeBaseDepartments(type: string, merge: boolean): void;
getKnowledgeBaseResourceDepartments(callback: () => void): void;
openKnowledgeBase(type: string, id: string, callback: () => void): void;
getKnowledgeBaseSingleResource(type: string, id: string, callback: () => void): void;
getKnowledgeBaseResources(type: string, departmentID: string, parentCategoryID: string, page: number, limit: number, searchKey: string, callback: () => void): void;
getKnowledgeBaseCategories(type: string, departmentID: string | null, parentCategoryID: string | null, callback: () => void): void;
updateConfiguration(key: string, value: boolean): void;
registerLocalizationFile(fileName: string): void;
reRegisterPush(): void;
}
export default TurboModuleRegistry.getEnforcing<Spec>('RNZohoSalesIQMobilisten');