import { Server } from 'socket.io' import { TSocket } from '#application/types' import characterHairRepository from '#repositories/characterHairRepository' import { CharacterHair } from '#entities/characterHair' interface IPayload {} export default class characterHairListEvent { constructor( private readonly io: Server, private readonly socket: TSocket ) {} public listen(): void { this.socket.on('character:hair:list', this.handleEvent.bind(this)) } private async handleEvent(data: IPayload, callback: (response: CharacterHair[] | null) => void): Promise { const items = await characterHairRepository.getAllSelectable() callback(items) } }