import { Module, Global } from '@nestjs/common'; import { DiscoveryModule } from '@nestjs/core'; import { DomainSdkManager } from './domain-sdk.manager'; import { DomainSdkService } from './domain-sdk.service'; import { BaseDomainSdk } from './base-domain-sdk'; import { CrossDomainAccessGuard } from './cross-domain-access.guard'; import { IDomainSdkManager } from '../interfaces/domain-sdk.interface'; /** * 域SDK模块 * 提供跨域访问规范和SDK管理功能 */ @Global() @Module({ imports: [ DiscoveryModule, ], providers: [ DomainSdkManager, DomainSdkService, CrossDomainAccessGuard, { provide: 'DOMAIN_SDK_MANAGER', useExisting: DomainSdkManager, }, { provide: 'IDomainSdkManager', useExisting: DomainSdkManager, }, ], exports: [ DomainSdkManager, DomainSdkService, CrossDomainAccessGuard, 'DOMAIN_SDK_MANAGER', 'IDomainSdkManager', ], }) export class DomainSdkModule {}