import { EmailAccount } from '../models/EmailAccount'; import { EmailAccountSearchFilters, ProviderType, SyncOptions } from '../types'; import { AccountCollection } from './AccountCollection'; export declare class EmailAccountCollection extends AccountCollection { static readonly _itemClass: typeof EmailAccount; /** * Get account by email address */ getByEmail(email: string): Promise; /** * Get accounts by email provider type */ getByEmailProviderType(providerType: ProviderType): Promise; /** * Get active email accounts */ getActive(): Promise; /** * Get inactive email accounts */ getInactive(): Promise; /** * Get accounts that need syncing */ getNeedingSync(maxAgeMinutes?: number): Promise; /** * Search email accounts with filters. * Alias: `search()` for backward compatibility. */ search(query: string, filters?: EmailAccountSearchFilters): Promise; /** * Get accounts by email provider type. * Alias: `getByProviderType()` for backward compatibility. */ getByProviderType(providerType: string): Promise; /** * Get email account statistics. * Alias: `getStats()` for backward compatibility. */ getStats(): Promise<{ total: number; active: number; inactive: number; byType: Record; }>; /** * Search email accounts with filters */ searchEmailAccounts(query: string, filters?: EmailAccountSearchFilters): Promise; /** * Sync all active email accounts */ syncAll(options?: SyncOptions): Promise>; /** * Get total unread count across all email accounts */ getTotalUnreadCount(): Promise; /** * Get email account statistics */ getEmailStats(): Promise<{ total: number; active: number; inactive: number; byProvider: Record; }>; findByTenant(tenantId: string): Promise; findGlobal(): Promise; findWithGlobals(tenantId: string): Promise; } //# sourceMappingURL=EmailAccountCollection.d.ts.map