// Import Express
import express from 'express';

// Import types
import CanvasAPI from '../../shared/types/CanvasAPI';
import GetCourseEvent from '../../shared/types/GetCourseEvent';
import RecordAttendanceFunction from '../../shared/types/RecordAttendanceFunction';

// Import routes
import addAttendanceRoutes from './addAttendanceRoutes';

/**
 * Create a router with all of the student endpoints for the check-in API.
 * @author Benedikt Arnarsson
 * @returns an express Router with all of the endpoints.
 */
const addStudentRoutes = (
  recordAttendance: RecordAttendanceFunction,
  getCanvasAPI: () => CanvasAPI,
  getCourseEvent: GetCourseEvent,
): express.Router => {
  const router = express.Router();

  addAttendanceRoutes({
    router,
    recordAttendance,
    getCanvasAPI,
    getCourseEvent,
  });

  return router;
};

export default addStudentRoutes;
