import { IInbox } from '../../types/data/Inbox'; import { IInboxInitialResponse } from '../../types/raw/dm/InboxInitial'; import { IInboxTimelineResponse } from '../../types/raw/dm/InboxTimeline'; import { Conversation } from './Conversation'; /** * The details of a DM inbox containing conversations and metadata. * * @public */ export declare class Inbox implements IInbox { /** The raw inbox details. */ private readonly _raw; conversations: Conversation[]; cursor: string; lastSeenEventId: string; trustedLastSeenEventId: string; untrustedLastSeenEventId: string; /** * @param response - The raw inbox response from the API. */ constructor(response: IInboxInitialResponse | IInboxTimelineResponse); /** The raw inbox details. */ get raw(): IInboxInitialResponse | IInboxTimelineResponse; /** * Get the raw inbox initial state if this inbox was created from one */ getInitialState(): IInboxInitialResponse | undefined; /** * Get the raw inbox timeline if this inbox was created from one */ getTimeline(): IInboxTimelineResponse | undefined; /** * Check if this inbox was created from an initial state response */ isInitialState(): boolean; /** * Check if this inbox was created from a timeline response */ isTimeline(): boolean; /** * @returns A serializable JSON representation of `this` object. */ toJSON(): IInbox; }