import { DynamicModule, Module } from '@nestjs/common'; import { EsLibService } from './es-lib.service'; import { EsLibController } from './es-lib.controller'; import { ElasticsearchModule, ElasticsearchModuleOptions } from '@nestjs/elasticsearch'; @Module({ providers: [], }) export class EsLibModule { static esConfig:ElasticsearchModuleOptions = null static register(options: { esConfig: ElasticsearchModuleOptions; }): DynamicModule { if (options.esConfig) { this.esConfig = options.esConfig; } return { module: EsLibModule, imports: [ ElasticsearchModule.register(options.esConfig), ], providers: [EsLibService], exports: [EsLibService], controllers: [EsLibController], } } };