36 lines
833 B
TypeScript
36 lines
833 B
TypeScript
import { Moment } from "moment";
|
|
import { Identifiable, Multilingual } from "./common";
|
|
import { Student } from "@/data/student";
|
|
import { Company, Office } from "@/data/company";
|
|
|
|
export interface InternshipType extends Identifiable {
|
|
label: Multilingual<string>,
|
|
description?: Multilingual<string>,
|
|
}
|
|
|
|
export interface InternshipProgramEntry extends Identifiable {
|
|
description: string;
|
|
}
|
|
|
|
export interface Internship extends Identifiable {
|
|
intern: Student,
|
|
type: InternshipType;
|
|
program: InternshipProgramEntry[];
|
|
startDate: Moment;
|
|
endDate: Moment;
|
|
isAccepted: boolean;
|
|
lengthInWeeks: number;
|
|
hours: number;
|
|
mentor: Mentor;
|
|
company: Company;
|
|
office: Office;
|
|
}
|
|
|
|
export interface Mentor {
|
|
name: string;
|
|
surname: string;
|
|
email: string;
|
|
phone: string | null;
|
|
}
|
|
|