UNPKG

@trycourier/courier-js

Version:

A browser-safe API wrapper

97 lines (96 loc) 3.12 kB
import { CourierInboxSocket } from '../socket/courier-inbox-socket'; import { CourierGetInboxMessagesResponse } from '../types/inbox'; import { Client } from './client'; import { CourierClientOptions } from './courier-client'; export declare class InboxClient extends Client { readonly socket: CourierInboxSocket; constructor(options: CourierClientOptions); /** * Get paginated messages * @param paginationLimit - Number of messages to return per page (default: 24) * @param startCursor - Cursor for pagination * @returns Promise resolving to paginated messages response */ getMessages(props?: { paginationLimit?: number; startCursor?: string; }): Promise<CourierGetInboxMessagesResponse>; /** * Get paginated archived messages * @param paginationLimit - Number of messages to return per page (default: 24) * @param startCursor - Cursor for pagination * @returns Promise resolving to paginated archived messages response */ getArchivedMessages(props?: { paginationLimit?: number; startCursor?: string; }): Promise<CourierGetInboxMessagesResponse>; /** * Get unread message count * @returns Promise resolving to number of unread messages */ getUnreadMessageCount(): Promise<number>; /** * Track a click event * @param messageId - ID of the message * @param trackingId - ID for tracking the click * @returns Promise resolving when click is tracked */ click(props: { messageId: string; trackingId: string; }): Promise<void>; /** * Mark a message as read * @param messageId - ID of the message to mark as read * @returns Promise resolving when message is marked as read */ read(props: { messageId: string; }): Promise<void>; /** * Mark a message as unread * @param messageId - ID of the message to mark as unread * @returns Promise resolving when message is marked as unread */ unread(props: { messageId: string; }): Promise<void>; /** * Mark a message as opened * @param messageId - ID of the message to mark as opened * @returns Promise resolving when message is marked as opened */ open(props: { messageId: string; }): Promise<void>; /** * Archive a message * @param messageId - ID of the message to archive * @returns Promise resolving when message is archived */ archive(props: { messageId: string; }): Promise<void>; /** * Unarchive a message * @param messageId - ID of the message to unarchive * @returns Promise resolving when message is unarchived */ unarchive(props: { messageId: string; }): Promise<void>; /** * Mark all messages as read * @returns Promise resolving when all messages are marked as read */ readAll(): Promise<void>; /** * Archive all read messages. */ archiveRead(): Promise<void>; /** * Archive all read messages. */ archiveAll(): Promise<void>; }