@dugongjs/nestjs
Version:
15 lines (14 loc) • 1.42 kB
TypeScript
import { AggregateMessageConsumer, IConsumedMessageRepository, IDomainEventRepository, IInboundMessageMapper, IMessageConsumer, ITransactionManager, type EventSourcedAggregateRoot, type HandleMessage, type HandleMessageOptions } from "@dugongjs/core";
import type { ILoggerFactory } from "../logger/i-logger-factory.js";
export declare class AggregateMessageConsumerService {
private readonly transactionManager;
private readonly domainEventRepository;
private readonly consumedMessageRepository;
private readonly messageConsumer;
private readonly inboundMessageMapper;
private readonly currentOrigin;
private readonly logger?;
constructor(transactionManager: ITransactionManager, domainEventRepository: IDomainEventRepository, consumedMessageRepository: IConsumedMessageRepository, messageConsumer: IMessageConsumer<any>, inboundMessageMapper: IInboundMessageMapper<any>, currentOrigin: string, loggerFactory?: ILoggerFactory);
getAggregateMessageConsumer<TAggregateRootClass extends EventSourcedAggregateRoot>(aggregateClass: TAggregateRootClass): AggregateMessageConsumer<TAggregateRootClass, any>;
registerMessageConsumerForAggregate<TAggregateRootClass extends EventSourcedAggregateRoot>(aggregateClass: TAggregateRootClass, consumerName: string, handleMessage?: HandleMessage, options?: HandleMessageOptions): Promise<AggregateMessageConsumer<TAggregateRootClass, any>>;
}