book.d.ts 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. /** https://github.com/gedoor/legado/tree/master/app/src/main/java/io/legado/app/data/entities */
  2. export type BaseBook = {
  3. name: string
  4. author: string
  5. bookUrl: string
  6. kind?: string
  7. wordCount?: string
  8. variable?: string
  9. /** 忽略序列化
  10. infoHtml?: string
  11. tocHtml?: string
  12. */
  13. }
  14. export type Book = BaseBook & {
  15. // 目录页Url (toc=table of Contents)
  16. tocUrl: string
  17. // 书源URL(默认BookType.local)
  18. origin: string
  19. //书源名称 or 本地书籍文件名
  20. originName: string
  21. // 分类信息(用户修改)
  22. customTag?: string
  23. // 封面Url(书源获取)
  24. coverUrl?: string
  25. // 封面Url(用户修改)
  26. customCoverUrl?: string
  27. // 简介内容(书源获取)
  28. intro?: string
  29. // 简介内容(用户修改)
  30. customnumberro?: string
  31. // 自定义字符集名称(仅适用于本地书籍)
  32. charset?: string
  33. // 类型详见BookType
  34. type: number
  35. // 自定义分组索引号
  36. group: number
  37. // 最新章节标题
  38. latestChapterTitle?: string
  39. // 最新章节标题更新时间
  40. latestChapterTime: number
  41. // 最近一次更新书籍信息的时间
  42. lastCheckTime: number
  43. // 最近一次发现新章节的数量
  44. lastCheckCount: number
  45. // 书籍目录总数
  46. totalChapterNum: number
  47. // 当前章节名称
  48. durChapterTitle?: string
  49. // 当前章节索引
  50. durChapterIndex: number
  51. // 当前阅读的进度(首行字符的索引位置)
  52. durChapterPos: number
  53. // 最近一次阅读书籍的时间(打开正文的时间)
  54. durChapterTime: number
  55. // 刷新书架时更新书籍信息
  56. canUpdate: boolean
  57. // 手动排序
  58. order: number
  59. //书源排序
  60. originOrder: number
  61. //阅读设置
  62. readConfig?: ReadConfig
  63. //同步时间
  64. syncTime: number
  65. }
  66. export type SeachBook = BaseBook & {
  67. /** 书源 */
  68. origin: string
  69. originName: string
  70. /** BookType */
  71. type: number
  72. coverUrl?: string
  73. intro?: string
  74. latestChapterTitle?: string
  75. /** 目录页Url (toc=table of Contents) */
  76. tocUrl: string
  77. time: number
  78. originOrder: number
  79. chapterWordCountText?: string
  80. chapterWordCount: number0
  81. respondTime: number
  82. }
  83. export type BookProgress = Pick<
  84. Book,
  85. | 'name'
  86. | 'author'
  87. | 'durChapterIndex'
  88. | 'durChapterPos'
  89. | 'durChapterTime'
  90. | 'durChapterTitle'
  91. >
  92. export type BookChapter = {
  93. url: string // 章节地址
  94. title: string // 章节标题
  95. isVolume: boolean // 是否是卷名
  96. baseUrl: string // 用来拼接相对url
  97. bookUrl: string // 书籍地址
  98. index: number // 章节序号
  99. isVip: boolean // 是否VIP
  100. isPay: boolean // 是否已购买
  101. resourceUrl?: string // 音频真实URL
  102. tag?: string // 更新时间或其他章节附加信息
  103. start?: number // 章节起始位置
  104. end?: number // 章节终止位置
  105. startFragmentId?: string //EPUB书籍当前章节的fragmentId
  106. endFragmentId?: string //EPUB书籍下一章节的fragmentId
  107. variable?: string //变量
  108. }