@addapptables/microservice
Version:
addapptables microservice
23 lines (22 loc) • 1.4 kB
TypeScript
import { ModulesContainer } from '@nestjs/core/injector/modules-container';
import { Module } from '@nestjs/core/injector/module';
import { InstanceWrapper } from '@nestjs/core/injector/instance-wrapper';
import { ICommandHandler } from '../interfaces/commands/command-handler.interface';
import { ICommandDto } from '../interfaces/commands/command-dto-interface';
import { IEventHandler } from '../interfaces/events/event-handler.interface';
import { IEventDto } from '../interfaces/events/event-dto.interface';
import { ICommand, IEvent, IHandler, IQueryHandler, IQuery, IQueryDto } from '../interfaces';
import { Class } from '../types';
export declare class ExplorerService {
private readonly modulesContainer;
constructor(modulesContainer: ModulesContainer);
getCommandHandlers(): Class<ICommandHandler<ICommand<ICommandDto>>>[];
getEventHandlers(): Class<IEventHandler<IEvent<IEventDto>>>[];
getQueryHandlers(): Class<IQueryHandler<IQuery<IQueryDto>>>[];
getCommands(): Class<ICommand<ICommandDto>>[];
getEvents(): Class<IEvent<IEventDto>>[];
getQueries(): Class<IQuery<IQueryDto>>[];
flatMap<T>(modules: Module[], callback: (instance: InstanceWrapper) => Class<IHandler>): Class<IHandler>[];
filterProvider(wrapper: InstanceWrapper, metadataKey: string): Class<IHandler>;
extractMetadata(instance: Object, metadataKey: string): Class<IHandler>;
}