UNPKG

@checkfirst/nestjs-outlook

Version:

An opinionated NestJS module for Microsoft Outlook integration that provides easy access to Microsoft Graph API for emails, calendars, and more.

28 lines (27 loc) 1.64 kB
import { EventEmitter2 } from '@nestjs/event-emitter'; import { MicrosoftAuthService } from '../auth/microsoft-auth.service'; import { MicrosoftOutlookConfig } from '../../interfaces/config/outlook-config.interface'; import { Message, ChangeNotification, Subscription } from '@microsoft/microsoft-graph-types'; import { OutlookWebhookSubscriptionRepository } from '../../repositories/outlook-webhook-subscription.repository'; import { MicrosoftUser } from '../../entities/microsoft-user.entity'; import { Repository } from 'typeorm'; import { UserIdConverterService } from '../shared/user-id-converter.service'; export declare class EmailService { private readonly microsoftAuthService; private readonly webhookSubscriptionRepository; private readonly eventEmitter; private readonly microsoftConfig; private readonly microsoftUserRepository; private readonly userIdConverter; private readonly logger; constructor(microsoftAuthService: MicrosoftAuthService, webhookSubscriptionRepository: OutlookWebhookSubscriptionRepository, eventEmitter: EventEmitter2, microsoftConfig: MicrosoftOutlookConfig, microsoftUserRepository: Repository<MicrosoftUser>, userIdConverter: UserIdConverterService); sendEmail(message: Partial<Message>, externalUserId: string): Promise<{ message: Message; }>; createWebhookSubscription(externalUserId: string): Promise<Subscription>; deleteWebhookSubscription(subscriptionId: string, userId: string | number): Promise<boolean>; handleEmailWebhook(notificationItem: ChangeNotification): Promise<{ success: boolean; message: string; }>; }