@ntegral/nestjs-sendgrid
Version:
Provides an injectable lulu api client to provide features to the Lulu API
20 lines (19 loc) • 740 B
TypeScript
import { ModuleMetadata, Type } from '@nestjs/common/interfaces';
import { MailDataRequired } from '@sendgrid/helpers/classes/mail';
export interface SendGridModuleOptions {
apiKey: string;
defaultMailData?: MailDataRequired;
substitutionWrappers?: {
left: string;
right: string;
};
}
export interface SendGridOptionsFactory {
createSendGridOptions(): Promise<SendGridModuleOptions> | SendGridModuleOptions;
}
export interface SendGridModuleAsyncOptions extends Pick<ModuleMetadata, 'imports'> {
inject?: any[];
useClass?: Type<SendGridOptionsFactory>;
useExisting?: Type<SendGridOptionsFactory>;
useFactory?: (...args: any[]) => Promise<SendGridModuleOptions> | SendGridModuleOptions;
}