import type { FastifyInstance } from 'fastify';
import {
  listHandler,
  unreadCountHandler,
  markReadHandler,
  markAllReadHandler,
  dismissHandler,
  dismissAllHandler,
} from '../controllers/notification.controller.js';

export default async function notificationRoutes(fastify: FastifyInstance) {
  fastify.get('/api/notifications', listHandler);
  fastify.get('/api/notifications/unread-count', unreadCountHandler);
  fastify.patch('/api/notifications/:id/read', markReadHandler);
  fastify.post('/api/notifications/read-all', markAllReadHandler);
  fastify.delete('/api/notifications/:id', dismissHandler);
  fastify.delete('/api/notifications', dismissAllHandler);
}
