import { Module } from '@nestjs/common';
import { EventPublisherService } from './event-publisher.service';
import { MpcEventConsumerService } from './mpc-event-consumer.service';
import { BlockchainEventConsumerService } from './blockchain-event-consumer.service';
import { OutboxPublisherService } from './outbox-publisher.service';
import { OutboxRepository } from '../persistence/repositories/outbox.repository';
import { PrismaService } from '../persistence/prisma/prisma.service';

@Module({
  providers: [
    PrismaService,
    EventPublisherService,
    MpcEventConsumerService,
    BlockchainEventConsumerService,
    OutboxRepository,
    OutboxPublisherService,
  ],
  exports: [
    EventPublisherService,
    MpcEventConsumerService,
    BlockchainEventConsumerService,
    OutboxRepository,
    OutboxPublisherService,
  ],
})
export class KafkaModule {}
