UNPKG

@kustomer/chat-react-native

Version:

Kustomer Chat SDK wrapper for React Native

62 lines 1.98 kB
import type { KustomerUser } from './KustomerUser'; export interface KusConversation { id?: string; createdAt?: Date; lastMessageAt?: Date; status?: ConversationStatus; brandId?: string; /** Date the conversation was closed. */ lockedAt?: Date; /** Was this conversation closed by the customer? */ lockedByCustomer?: boolean; lockReason?: ConversationLockReason; preview?: string; previewDetails?: PreviewDetails; /** IDs of `KustomerUser`s who have responded to this conversation. */ respondingUserIds?: (string | undefined)[]; /** Count of unread messages */ unreadMessageCount?: number; lastReadMessageId?: string; isDeleted: boolean; /** `KustomerUser`s who have sent at least one message in this conversation. */ users: KustomerUser[]; localUuid?: string; channelGroup?: string; channels?: KusChannel[]; } export interface KusChannel { name: string; type: KusChannelType; /** `active` if the channel is active */ status: string; } export declare enum KusChannelType { conversation = "conversation", sharedConversation = "shared-conversation", sharedCustomer = "shared-customer", sharedCustomerPresence = "shared-customer-presence", metaConversation = "meta-conversation", metaCustomer = "meta-customer", pushNotification = "push-notification" } export declare enum ConversationStatus { open = "open", ended = "ended", new = "new" } export declare enum ConversationLockReason { customerEnded = "customerEnded", userEnded = "userEnded" } export interface PreviewDetails { /** The last responder of the conversation */ lastResponder?: LastResponder; /** The timestamp that the message this preview corresponds with was created */ messageCreatedAt?: Date; } export interface LastResponder { type?: string; displayName?: string; avatarUrl?: string; } //# sourceMappingURL=KusConversation.d.ts.map