import api from '..'; const AUTH_API = 'auth'; export const authApi = api.injectEndpoints({ endpoints: (build) => ({ login: build.mutation, UserAuthI>({ query: (userAuth) => ({ url: `${AUTH_API}/login`, method: 'POST', body: userAuth, }), }), register: build.mutation, UserI>({ query: (userRegister) => ({ url: `${AUTH_API}/register`, method: 'POST', body: userRegister, }), invalidatesTags: ['users'], }), registerTeacher: build.mutation, UserI>({ query: (userRegister) => ({ url: `${AUTH_API}/register/teacher`, method: 'POST', body: userRegister, }), invalidatesTags: ['users', 'teachers'], }), logout: build.mutation, void>({ query: () => ({ url: `${AUTH_API}/logout`, method: 'POST', }), invalidatesTags: ['users'], }), getUser: build.mutation, void>({ query: () => ({ url: `${AUTH_API}`, method: 'GET', }), invalidatesTags: ['users'], }), resetPassword: build.mutation< ResponseI, { userId: string; newPassword: string } >({ query: (body) => ({ url: `${AUTH_API}/reset`, method: 'PUT', body, }), }), resetTeacherPassword: build.mutation< ResponseI, { teacherId: string; newPassword: string } >({ query: (body) => ({ url: `${AUTH_API}/reset/teacher`, method: 'PUT', body, }), }), // updateProfile: build.mutation, UserUpdateI>({ // query: (body) => ({ // url: `${USERS_API}/profile`, // method: 'PUT', // body, // }), // invalidatesTags: ['users'], // }) }), }); export const { useLoginMutation, useRegisterMutation, useLogoutMutation, useGetUserMutation, useRegisterTeacherMutation, useResetTeacherPasswordMutation, useResetPasswordMutation, // useResetPasswordMutation, // useUpdateProfileMutation, } = authApi;