Express TS project
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

34 lignes
762 B

  1. import { viewPermissionType } from "./variables";
  2. import { Word } from "./word";
  3. interface RevisionHistoryRecord {
  4. day: Date,
  5. wasRecallSuccessful: boolean
  6. }
  7. interface AddedWord {
  8. word: Word,
  9. notes: Array<string>,
  10. isFavourite: boolean,
  11. nextRevisionDateTime: Date,
  12. spaceBetweenRecall: number, // in Days
  13. revisionHistory : Array<RevisionHistoryRecord>,
  14. isArchived: boolean,
  15. }
  16. export interface Shelf {
  17. name: string,
  18. description?: string,
  19. viewType: viewPermissionType,
  20. isArchived: boolean,
  21. addedWords?: Array<AddedWord>
  22. }
  23. interface MongoAddedWord extends Omit<AddedWord, "word"> {
  24. word: string,
  25. }
  26. export interface MongoShelf extends Omit<Shelf, "addedWords"> {
  27. addedWords?: Array<MongoAddedWord>
  28. }