import { SmrtCollection } from '@happyvertical/smrt-core'; import { Message } from '../models/Message'; import { MessageSearchFilters } from '../types'; export declare class MessageCollection extends SmrtCollection { static readonly _itemClass: typeof Message; /** * Search messages with filters */ search(query: string, filters?: MessageSearchFilters): Promise; /** * Get messages by multiple accounts */ getByAccounts(accountIds: string[]): Promise; /** * Get messages by STI type. * * Accepts either the full discriminator (e.g. "@happyvertical/smrt-messages:Email") * or the short type name (e.g. "Email"). */ getByType(messageType: string): Promise; /** * Get unread messages */ getUnread(accountId?: string): Promise; /** * Get flagged messages */ getFlagged(accountId?: string): Promise; /** * Get recent messages */ getRecent(limit?: number, accountId?: string): Promise; /** * Get messages by thread */ getByThread(threadId: string): Promise; /** * Mark multiple messages as read */ markAllRead(messageIds: string[]): Promise; /** * Get message statistics for an account */ getAccountStats(accountId: string): Promise<{ total: number; unread: number; flagged: number; byType: Record; }>; /** * Get draft messages */ getDrafts(accountId?: string): Promise; /** * Get sent messages */ getSent(accountId?: string): Promise; /** * Get scheduled messages */ getScheduled(accountId?: string): Promise; /** * Get messages that failed to send */ getFailedSends(accountId?: string): Promise; /** * Get outbox (pending + sending + scheduled) */ getOutbox(accountId?: string): Promise; findByTenant(tenantId: string): Promise; findGlobal(): Promise; findWithGlobals(tenantId: string): Promise; } //# sourceMappingURL=MessageCollection.d.ts.map