diff --git a/src/fsrs/models.ts b/src/fsrs/models.ts index c70a739..c0516e2 100644 --- a/src/fsrs/models.ts +++ b/src/fsrs/models.ts @@ -2,18 +2,18 @@ export type StateType = "New" | "Learning" | "Review" | "Relearning"; export enum State { New = 0, - Learning, - Review, - Relearning, + Learning = 1, + Review = 2, + Relearning = 3, } export type RatingType = "Again" | "Hard" | "Good" | "Easy"; export enum Rating { Again = 1, - Hard, - Good, - Easy, + Hard = 2, + Good = 3, + Easy = 4, } export interface ReviewLog { @@ -23,21 +23,23 @@ export interface ReviewLog { scheduled_days: number; review: Date; } - +export type RecordLogItem = { + card: Card; log: ReviewLog +} export type RecordLog = { - [key in Rating]: { card: Card; log: ReviewLog }; + [key in Rating]: RecordLogItem; }; export interface Card { - due: Date; - stability: number; // 稳定性 - difficulty: number; //难度 - elapsed_days: number; - scheduled_days: number; - reps: number; - lapses: number; - state: State; - last_review?: Date; + due: Date; // Due date + stability: number; // Stability + difficulty: number; // Difficulty level + elapsed_days: number; // Number of days elapsed + scheduled_days: number; // Number of days scheduled + reps: number; // Repetition count + lapses: number; // Number of lapses or mistakes + state: State; // Card's state (New, Learning, Review, Relearning) + last_review?: Date; // Date of the last review (optional) } export type CardInput = Card & { state: StateType | State };