import { BaseController } from "@/controllers/base-controller.ts"; import type { TeacherInvitationData, TeacherInvitationDTO } from "@dwengo-1/common/interfaces/teacher-invitation"; export interface TeacherInvitationsResponse { invitations: TeacherInvitationDTO[]; } export interface TeacherInvitationResponse { invitation: TeacherInvitationDTO; } export class TeacherInvitationController extends BaseController { constructor() { super("teacher/invitations"); } async getAll(username: string, s: boolean): Promise { const sent = s.toString(); return this.get(`/${username}`, { sent }); } async getBy(data: TeacherInvitationData): Promise { return this.get(`/${data.sender}/${data.receiver}/${data.class}`); } async create(data: TeacherInvitationData): Promise { return this.post("/", data); } async remove(data: TeacherInvitationData): Promise { return this.delete(`/${data.sender}/${data.receiver}/${data.class}`); } async respond(data: TeacherInvitationData): Promise { return this.put("/", data); } }