import api from '..'; const ENROLLMENT_API = '/enrollment'; export const enrollmentApi = api.injectEndpoints({ endpoints: (build) => ({ getAssignedTeachersByCourseAndSchool: build.query< ResponseI< { enrollment_id: number; teacher: TeacherI; }[] >, { courseId: number; schoolId: number; } >({ query: ({ courseId, schoolId }) => ({ url: `${ENROLLMENT_API}/teachers/${courseId}/${schoolId}`, method: 'GET', }), providesTags: ['enrollments', 'orders', 'users', 'teachers'], }), assignTeacher: build.mutation< ResponseI, { courseId: number; schoolId: number; teacherId: number; } >({ query: ({ courseId, schoolId, teacherId }) => ({ url: `${ENROLLMENT_API}/assign`, method: 'POST', body: { course_id: courseId, school_id: schoolId, teacher_id: teacherId, }, }), invalidatesTags: ['enrollments', 'orders', 'users', 'teachers'], }), deleteEnrollment: build.mutation< ResponseI, { enrollmentId: number; } >({ query: ({ enrollmentId }) => ({ url: `${ENROLLMENT_API}/delete/${enrollmentId}`, method: 'DELETE', }), invalidatesTags: ['enrollments', 'orders', 'users', 'teachers'], }), }), }); export const { useGetAssignedTeachersByCourseAndSchoolQuery, useAssignTeacherMutation, useDeleteEnrollmentMutation, } = enrollmentApi;