Resume model

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;
}