import { Router } from 'express';
import { authenticate, requireAuthenticated, authorize } from '../middlewares/auth';
import {
  getUserMonthlyQuota,
  setUserMonthlyQuota,
  getTimerInfo,
  canUserUseBot,
} from '../controllers/usageController';

const router = Router();

// All routes require authentication
router.use(authenticate);
router.use(requireAuthenticated);

// Legacy per-bot usage routes removed - now using monthly quota system

// Monthly quota management routes (Admin/Teacher only)
router.get('/quota/:userId', authorize('ADMIN', 'TEACHER'), getUserMonthlyQuota);
router.post('/quota/:userId', authorize('ADMIN', 'TEACHER'), setUserMonthlyQuota);

// Timer integration routes (Student access for own timer info)
router.get('/timer/info', getTimerInfo);
router.get('/timer/can-use-bot', canUserUseBot);

export default router;

