export interface IntegrationStrategy { sendMessage(to: string, message: string, config: any): Promise; validateConfig(config: any): boolean; createUserSpecificConfig?(baseConfig: any, userIntegrationData?: any): any; } export interface IntegrationResult { success: boolean; messageId?: string; provider: string; service: string; error?: string; timestamp: Date; refreshedToken?: string; message?: string; } export interface EmailAttachment { filename: string; content: string; contentType: string; disposition?: 'attachment' | 'inline'; contentId?: string; } export interface MessageTemplate { subject?: string; body: string; attachments?: EmailAttachment[]; } export declare class EmailAttachmentValidator { static validate(attachments: EmailAttachment[], maxSizeBytes: number, providerName: string): void; private static isValidBase64; }