/ types / manga.ts
manga.ts
 1  // Contains all manga-related types
 2  
 3  export interface MangaItem {
 4    id: string;
 5    title: string;
 6    banner: string;
 7    imageUrl: string;
 8    link: string;
 9    type: string;
10    rank?: number;
11  }
12  
13  export interface MangaDetails {
14    id: string;
15    title: string;
16    alternativeTitle: string;
17    status: string;
18    description: string;
19    author: string[];
20    published: string;
21    genres: string[];
22    rating: string;
23    reviewCount: string;
24    bannerImage: string;
25    chapters: Chapter[];
26    totalChapters?: number;
27  }
28  
29  export interface Chapter {
30    number: string;
31    title: string;
32    date: string;
33    url: string;
34  }
35  
36  export interface BookmarkItem {
37    id: string;
38    title: string;
39    status: string;
40    lastReadChapter: string;
41    imageUrl: string;
42    lastUpdated?: number;
43  }
44  
45  export type BookmarkStatus = 'To Read' | 'Reading' | 'Read' | 'On Hold';
46  
47  export interface RecentMangaItem {
48    id: string;
49    title: string;
50    bannerImage: string;
51    lastReadChapter?: string;
52  }
53  
54  export interface MangaData {
55    id: string;
56    title: string;
57    bannerImage: string;
58    bookmarkStatus: BookmarkStatus | null;
59    readChapters: string[];
60    lastReadChapter?: string;
61    lastNotifiedChapter?: string;
62    lastUpdated: number;
63    totalChapters?: number;
64  }