generated from tpl/obsidian-sample-plugin
32 lines
680 B
TypeScript
32 lines
680 B
TypeScript
import type { IN_PROGRESS_STATE, READ_STATE, TO_BE_READ_STATE } from "./const";
|
|
|
|
export interface Author {
|
|
name: string;
|
|
description: string;
|
|
}
|
|
|
|
export interface Series {
|
|
title: string;
|
|
position: number;
|
|
}
|
|
|
|
export interface Book {
|
|
title: string;
|
|
description: string;
|
|
authors: Author[];
|
|
series: Series | null;
|
|
publisher: string;
|
|
publishedAt: Date;
|
|
genres: string[];
|
|
coverImageUrl: string;
|
|
pageCount: number;
|
|
isbn: string;
|
|
isbn13: string;
|
|
}
|
|
|
|
export type ToBeReadState = typeof TO_BE_READ_STATE;
|
|
export type InProgressState = typeof IN_PROGRESS_STATE;
|
|
export type ReadState = typeof READ_STATE;
|
|
|
|
export type ReadingState = ToBeReadState | InProgressState | ReadState;
|