29 lines
762 B
TypeScript
29 lines
762 B
TypeScript
import { Moment } from "moment";
|
|
import { Identifiable } from "./common";
|
|
import { countWorkingWeeksInRange } from "@/utils/date";
|
|
|
|
export enum InternshipType {
|
|
FreeInternship = "FreeInternship",
|
|
GraduateInternship = "GraduateInternship",
|
|
FreeApprenticeship = "FreeApprenticeship",
|
|
PaidApprenticeship = "PaidApprenticeship",
|
|
ForeignInternship = "ForeignInternship",
|
|
UOP = "UOP",
|
|
UD = "UD",
|
|
UZ = "UZ",
|
|
Other = "Other",
|
|
}
|
|
|
|
export interface InternshipProgramEntry extends Identifiable {
|
|
description: string;
|
|
}
|
|
|
|
export interface Internship extends Identifiable {
|
|
type: InternshipType;
|
|
program: InternshipProgramEntry[];
|
|
startDate: Moment;
|
|
endDate: Moment;
|
|
isAccepted: boolean;
|
|
lengthInWeeks: number;
|
|
}
|