export const realtimeChannels = {
  user: (userId: string) => `user.${userId}`,
  ticket: (ticketId: string) => `ticket.${ticketId}`,
  ticketNotes: (ticketId: string) => `ticket.${ticketId}.notes`,
  ticketPresence: (ticketId: string) => `ticket.${ticketId}.presence`,
  departmentTickets: (departmentId: string) => `department.${departmentId}.tickets`,
  project: (projectId: string) => `project.${projectId}`,
  departmentProjects: (departmentId: string) => `department.${departmentId}.projects`,
} as const;

export const realtimeEvents = {
  notificationReceived: '.notification.received',
  ticketStatusChanged: '.ticket.status_changed',
  ticketAssigned: '.ticket.assigned',
  ticketCollaboratorAdded: '.ticket.collaborator_added',
  ticketCollaboratorRemoved: '.ticket.collaborator_removed',
  replyAdded: '.reply.added',
  noteAdded: '.note.added',
  dashboardRefresh: '.dashboard.refresh',
  projectKanbanUpdated: '.project.kanban.updated',
  projectTicketMoved: '.project.ticket.moved',
  projectSprintCapacityChanged: '.project.sprint.capacity_changed',
  projectVelocityUpdated: '.project.velocity.updated',
  projectHealthUpdated: '.project.health.updated',
  projectRiskCreated: '.project.risk.created',
  projectReleaseUpdated: '.project.release.updated',
} as const;
