import FetchChatTokenResponse from "../Model/FetchChatTokenResponse"; import IDataMaskingInfo from "../Interfaces/IDataMaskingInfo"; import IGetPersistentChatHistoryOptionalParams from "./IGetPersistentChatHistoryOptionalParams"; import IGetQueueAvailabilityOptionalParams from "./IGetQueueAvailabilityOptionalParams"; import IReconnectableChatsParams from "../Interfaces/IReconnectableChatsParams"; import IReconnectAvailabilityOptionalParams from "./IReconnectAvailabilityOptionalParams"; export default interface ISDK { getLcwFcsDetails(): Promise; getChatConfig(requestId: string, bypassCache?: boolean): Promise; getLWIDetails(requestId: string): Promise; getChatToken(requestId: string): Promise; sessionInit(requestId: string): Promise; createConversation(requestId: string): Promise; sessionClose(requestId: string): Promise; getReconnectableChats(reconnectableChatsParams: IReconnectableChatsParams): Promise; getReconnectAvailability(reconnectId: string, optionalParams: IReconnectAvailabilityOptionalParams): Promise; submitPostChatResponse(requestId: string, postChatResponse: object): Promise; getSurveyInviteLink(surveyOwnerId: string, surveyInviteAPIRequestBody: object): Promise; getChatTranscripts(requestId: string, chatId: string, token: string): Promise; getPersistentChatHistory(requestId?: string, getPersistentChatHistoryOptionalParams?: IGetPersistentChatHistoryOptionalParams): Promise; emailTranscript(requestId: string, token: string, emailRequestBody: object): Promise; fetchDataMaskingInfo(requestId: string): Promise; makeSecondaryChannelEventRequest(requestId: string, secondaryChannelEventRequestBody: object): Promise; getAgentAvailability(requestId: string, queueAvailabilityOptionalParams: IGetQueueAvailabilityOptionalParams): Promise; sendTypingIndicator(requestId: string, currentLiveChatVersion: number): Promise; midConversationAuthenticateChat(requestId: string, authenticateChatParams: { chatId: string; authenticatedUserToken: string; }): Promise; getUnreadMessageCount(authenticatedUserToken: string): Promise; sendReadReceipt(requestId: string, messageId: string, authenticatedUserToken: string): Promise; }