@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
TypeScript
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;
}>;
}