UNPKG

react-use-zendesk

Version:

React Zendesk Web Widget integration written in typescript

37 lines (32 loc) 1.38 kB
import React, { PropsWithChildren } from 'react'; type ZendeskProviderProps = { apiKey: string; onOpen?: () => void; onClose?: () => void; onUnreadMessages?: (count: number) => void; onResetWidget?: () => void; }; type ZendeskConversationField = { id: string; value: string | number | boolean; }; type ZendeskContextValues = { show: () => void; hide: () => void; open: () => void; close: () => void; setLocale: (newLocale: string) => void; setZIndex: (newZIndex: number) => void; setCookies: (isEnabled: boolean) => void; setConversationFields: (conversationFields: Array<ZendeskConversationField>) => void; setConversationTags: (conversationTags: Array<string>) => void; loginUser: (jwtToken: string) => void; logoutUser: () => void; resetWidget: () => void; isOpen: boolean; unreadMessages: number | undefined; }; type ZendeskMethod = "show" | "hide" | "open" | "close" | "unreadMessages" | "locale" | "zIndex" | "cookies" | "conversationFields" | "conversationTags" | "loginUser" | "logoutUser" | "resetWidget"; declare const ZendeskProvider: React.FC<PropsWithChildren<ZendeskProviderProps>>; declare function useZendesk(): ZendeskContextValues; export { type ZendeskContextValues, type ZendeskConversationField, type ZendeskMethod, ZendeskProvider, type ZendeskProviderProps, useZendesk };