import { Module } from '@nestjs/common';
import { LicenseeModule } from '../licensee/licensee.module';
import { SharedModule } from '../shared/shared.module';
import { SlackModule } from '../slack/slack.module';
import { TicketController } from './ticket.controller';
import { TicketGateway } from './ticket.gateway';
import { CheckLicenseeForUnreadTicketsWorkflow } from './workflows/check-licensee-for-unread-tickets/check-licensee-for-unread-tickets.workflow';
import { CreateTicketWorkflow } from './workflows/create-ticket/create-ticket.workflow';
import { GetTicketDetailsWorkflow } from './workflows/get-ticket-details/get-ticket-details.workflow';
import { PostTicketClientMessageWorkflow } from './workflows/post-ticket-client-message/post-ticket-client-message.workflow';

@Module({
  imports: [SlackModule, SharedModule, LicenseeModule],
  controllers: [TicketController],
  providers: [
    TicketGateway,
    CreateTicketWorkflow,
    CheckLicenseeForUnreadTicketsWorkflow,
    GetTicketDetailsWorkflow,
    PostTicketClientMessageWorkflow,
  ],
})
export class TicketModule {}
