The Resume model is very simple
export interface Resume {
name: string;
versions: ResumeVersion[];
}
export interface ResumeVersion {
readonly version: number;
readonly createdAt: Date;
readonly filename: string;
archived: boolean;
}
The user will be able to link a resume to a job and later update the resume. The versioning permits to recover the correct document for each job application.
We will also use some view models
export interface ResumeForList {
name: string;
createdAt: Date;
storagePath: string;
}
export interface ResumeUpload {
name: string;
file: File;
}