UNPKG

@trycourier/courier-ui-inbox

Version:

Inbox components for the Courier web UI

43 lines (42 loc) 1.76 kB
import { InboxMessage } from '../../@trycourier/courier-js/src'; import { InboxDataSet } from '../types/inbox-data-set'; import { CourierInboxDataStoreListener } from './datastore-listener'; import { CourierInboxFeedType } from '../types/feed-type'; export declare class CourierInboxDatastore { private static instance; private _inboxDataSet?; private _archiveDataSet?; private _dataStoreListeners; private _unreadCount?; private isPaginatingInbox; private isPaginatingArchive; static get shared(): CourierInboxDatastore; get unreadCount(): number; get inboxDataSet(): InboxDataSet; get archiveDataSet(): InboxDataSet; addDataStoreListener(listener: CourierInboxDataStoreListener): void; removeDataStoreListener(listener: CourierInboxDataStoreListener): void; private fetchDataSet; private fetchUnreadCount; load(props?: { feedType: CourierInboxFeedType; canUseCache: boolean; }): Promise<void>; private connectSocket; private getMessage; fetchNextPageOfMessages(props: { feedType: CourierInboxFeedType; }): Promise<InboxDataSet | null>; private applyLocalMessageChange; readMessage(message: InboxMessage, canCallApi?: boolean): Promise<void>; unreadMessage(message: InboxMessage, canCallApi?: boolean): Promise<void>; openMessage(message: InboxMessage, canCallApi?: boolean): Promise<void>; clickMessage(message: InboxMessage, canCallApi?: boolean): Promise<void>; archiveMessage(message: InboxMessage, canCallApi?: boolean): Promise<void>; readAllMessages(canCallApi?: boolean): Promise<void>; private findInsertIndex; private addPage; private addMessage; private removeMessage; private updateMessage; }