sa2kit 1.6.43 → 1.6.45

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (273) hide show
  1. package/dist/AliyunOSSProvider-2FARPAQD.js +15 -0
  2. package/dist/{AliyunOSSProvider-HCNGDJL7.js.map → AliyunOSSProvider-2FARPAQD.js.map} +1 -1
  3. package/dist/AliyunOSSProvider-UMVGVBDJ.mjs +9 -0
  4. package/dist/{AliyunOSSProvider-4W47OFEK.mjs.map → AliyunOSSProvider-UMVGVBDJ.mjs.map} +1 -1
  5. package/dist/CollisionBalls-BpHufX3H.d.mts +41 -0
  6. package/dist/CollisionBalls-BpHufX3H.d.ts +41 -0
  7. package/dist/ConfigService-QR67WYNK.mjs +4 -0
  8. package/dist/{ConfigService-V6ZK273Z.mjs.map → ConfigService-QR67WYNK.mjs.map} +1 -1
  9. package/dist/{ConfigService-3DIC6C3Q.js → ConfigService-UYC6ZTCM.js} +3 -3
  10. package/dist/{ConfigService-3DIC6C3Q.js.map → ConfigService-UYC6ZTCM.js.map} +1 -1
  11. package/dist/GenericOrderManager-e4WizpNf.d.mts +28 -0
  12. package/dist/GenericOrderManager-e4WizpNf.d.ts +28 -0
  13. package/dist/LocalStorageProvider-JQF5WK5H.js +15 -0
  14. package/dist/{LocalStorageProvider-PP7MA5OT.js.map → LocalStorageProvider-JQF5WK5H.js.map} +1 -1
  15. package/dist/LocalStorageProvider-PYOHETJV.mjs +9 -0
  16. package/dist/{LocalStorageProvider-3RVPCQB3.mjs.map → LocalStorageProvider-PYOHETJV.mjs.map} +1 -1
  17. package/dist/PMXParser-RLBDO7YK.mjs +4 -0
  18. package/dist/{PMXParser-RNVQL76A.mjs.map → PMXParser-RLBDO7YK.mjs.map} +1 -1
  19. package/dist/{PMXParser-2VTA737I.js → PMXParser-XHNO2KNI.js} +3 -3
  20. package/dist/{PMXParser-2VTA737I.js.map → PMXParser-XHNO2KNI.js.map} +1 -1
  21. package/dist/UniversalFileService-RBV6EN5J.js +15 -0
  22. package/dist/UniversalFileService-RBV6EN5J.js.map +1 -0
  23. package/dist/UniversalFileService-TNYKO6JN.mjs +9 -0
  24. package/dist/UniversalFileService-TNYKO6JN.mjs.map +1 -0
  25. package/dist/analytics/index.js +1 -1
  26. package/dist/analytics/index.mjs +1 -1
  27. package/dist/analytics/server/index.js +1 -1
  28. package/dist/analytics/server/index.mjs +1 -1
  29. package/dist/api/index.js +1 -1
  30. package/dist/api/index.mjs +1 -1
  31. package/dist/audioDetection/index.js +1 -1
  32. package/dist/audioDetection/index.mjs +1 -1
  33. package/dist/auth/client/index.js +1 -1
  34. package/dist/auth/client/index.mjs +1 -1
  35. package/dist/auth/components/index.js +1 -1
  36. package/dist/auth/components/index.mjs +1 -1
  37. package/dist/auth/hooks/index.js +1 -1
  38. package/dist/auth/hooks/index.mjs +1 -1
  39. package/dist/auth/index.js +1 -1
  40. package/dist/auth/index.mjs +1 -1
  41. package/dist/auth/middleware/index.js +1 -1
  42. package/dist/auth/middleware/index.mjs +1 -1
  43. package/dist/auth/routes/index.js +1 -1
  44. package/dist/auth/routes/index.mjs +1 -1
  45. package/dist/auth/schema/index.js +1 -1
  46. package/dist/auth/schema/index.mjs +1 -1
  47. package/dist/auth/services/index.js +1 -1
  48. package/dist/auth/services/index.mjs +1 -1
  49. package/dist/calendar/index.js +12 -12
  50. package/dist/calendar/index.mjs +5 -5
  51. package/dist/calendar/routes/index.js +1 -1
  52. package/dist/calendar/routes/index.mjs +1 -1
  53. package/dist/calendar/server.js +1 -1
  54. package/dist/calendar/server.mjs +1 -1
  55. package/dist/chunk-2PS5PIXV.mjs +443 -0
  56. package/dist/chunk-2PS5PIXV.mjs.map +1 -0
  57. package/dist/chunk-35CXIK5Y.js +277 -0
  58. package/dist/chunk-35CXIK5Y.js.map +1 -0
  59. package/dist/{chunk-GMIUSZXC.mjs → chunk-3JW4X3AC.mjs} +3 -3
  60. package/dist/{chunk-GMIUSZXC.mjs.map → chunk-3JW4X3AC.mjs.map} +1 -1
  61. package/dist/chunk-3M6T5KVD.js +453 -0
  62. package/dist/chunk-3M6T5KVD.js.map +1 -0
  63. package/dist/chunk-3TNR6IMC.js +168 -0
  64. package/dist/chunk-3TNR6IMC.js.map +1 -0
  65. package/dist/chunk-4NFOSCM6.js +34 -0
  66. package/dist/chunk-4NFOSCM6.js.map +1 -0
  67. package/dist/{chunk-3NHAT7D4.mjs → chunk-4VJQZSPU.mjs} +4 -3
  68. package/dist/chunk-4VJQZSPU.mjs.map +1 -0
  69. package/dist/{chunk-SCDDMIF6.js → chunk-4XXIBWCO.js} +66 -66
  70. package/dist/{chunk-SCDDMIF6.js.map → chunk-4XXIBWCO.js.map} +1 -1
  71. package/dist/chunk-6AHYPPUP.js +344 -0
  72. package/dist/chunk-6AHYPPUP.js.map +1 -0
  73. package/dist/{chunk-EGJPS7OL.mjs → chunk-6BJ76BYC.mjs} +3 -3
  74. package/dist/{chunk-EGJPS7OL.mjs.map → chunk-6BJ76BYC.mjs.map} +1 -1
  75. package/dist/chunk-76V7EKBX.mjs +796 -0
  76. package/dist/chunk-76V7EKBX.mjs.map +1 -0
  77. package/dist/chunk-ACLOJXXE.js +195 -0
  78. package/dist/chunk-ACLOJXXE.js.map +1 -0
  79. package/dist/chunk-AEXPAH7Z.mjs +32 -0
  80. package/dist/chunk-AEXPAH7Z.mjs.map +1 -0
  81. package/dist/chunk-CFGX3EKK.js +560 -0
  82. package/dist/chunk-CFGX3EKK.js.map +1 -0
  83. package/dist/{chunk-435LATLS.mjs → chunk-CX5GPCCO.mjs} +3 -4
  84. package/dist/chunk-CX5GPCCO.mjs.map +1 -0
  85. package/dist/chunk-D2HXMGXS.js +46 -0
  86. package/dist/chunk-D2HXMGXS.js.map +1 -0
  87. package/dist/chunk-DM2GUVUH.js +1201 -0
  88. package/dist/chunk-DM2GUVUH.js.map +1 -0
  89. package/dist/{chunk-ZWQJSZEY.js → chunk-DVENFCQY.js} +5 -4
  90. package/dist/chunk-DVENFCQY.js.map +1 -0
  91. package/dist/chunk-EONPKLEJ.mjs +163 -0
  92. package/dist/chunk-EONPKLEJ.mjs.map +1 -0
  93. package/dist/{chunk-L47ZOYHL.js → chunk-EUIXQPPU.js} +4 -4
  94. package/dist/{chunk-L47ZOYHL.js.map → chunk-EUIXQPPU.js.map} +1 -1
  95. package/dist/{chunk-33YOJBQB.js → chunk-JOSNXSA6.js} +3 -4
  96. package/dist/chunk-JOSNXSA6.js.map +1 -0
  97. package/dist/chunk-K7WNCB4V.mjs +554 -0
  98. package/dist/chunk-K7WNCB4V.mjs.map +1 -0
  99. package/dist/chunk-L4ZYBFB2.mjs +44 -0
  100. package/dist/chunk-L4ZYBFB2.mjs.map +1 -0
  101. package/dist/chunk-M4HGHTIC.js +820 -0
  102. package/dist/chunk-M4HGHTIC.js.map +1 -0
  103. package/dist/{chunk-HHVDOIPV.js → chunk-MZKATHB7.js} +4 -4
  104. package/dist/{chunk-HHVDOIPV.js.map → chunk-MZKATHB7.js.map} +1 -1
  105. package/dist/{chunk-UKT3PLON.mjs → chunk-NXQVTAOP.mjs} +3 -3
  106. package/dist/{chunk-UKT3PLON.mjs.map → chunk-NXQVTAOP.mjs.map} +1 -1
  107. package/dist/chunk-OBIPI4GU.mjs +266 -0
  108. package/dist/chunk-OBIPI4GU.mjs.map +1 -0
  109. package/dist/chunk-PAX4S7QM.mjs +94 -0
  110. package/dist/chunk-PAX4S7QM.mjs.map +1 -0
  111. package/dist/chunk-PXWDQFWV.mjs +192 -0
  112. package/dist/chunk-PXWDQFWV.mjs.map +1 -0
  113. package/dist/chunk-QROLPPXP.mjs +5797 -0
  114. package/dist/chunk-QROLPPXP.mjs.map +1 -0
  115. package/dist/chunk-TGNUEULF.mjs +1158 -0
  116. package/dist/chunk-TGNUEULF.mjs.map +1 -0
  117. package/dist/chunk-VBQFVXOW.mjs +2772 -0
  118. package/dist/chunk-VBQFVXOW.mjs.map +1 -0
  119. package/dist/chunk-VLZ5N6XZ.js +5888 -0
  120. package/dist/chunk-VLZ5N6XZ.js.map +1 -0
  121. package/dist/chunk-VTGPHE4Z.mjs +322 -0
  122. package/dist/chunk-VTGPHE4Z.mjs.map +1 -0
  123. package/dist/chunk-WMJKH4XE.mjs +30 -0
  124. package/dist/{chunk-BJTO5JO5.mjs.map → chunk-WMJKH4XE.mjs.map} +1 -1
  125. package/dist/chunk-XYQMAF7H.js +96 -0
  126. package/dist/chunk-XYQMAF7H.js.map +1 -0
  127. package/dist/chunk-Z3G3IXEF.js +2814 -0
  128. package/dist/chunk-Z3G3IXEF.js.map +1 -0
  129. package/dist/chunk-Z6ZWNWWR.js +35 -0
  130. package/dist/{chunk-DGUM43GV.js.map → chunk-Z6ZWNWWR.js.map} +1 -1
  131. package/dist/components/index.d.mts +378 -0
  132. package/dist/components/index.d.ts +378 -0
  133. package/dist/components/index.js +414 -0
  134. package/dist/components/index.js.map +1 -0
  135. package/dist/components/index.mjs +9 -0
  136. package/dist/components/index.mjs.map +1 -0
  137. package/dist/config/index.js +1 -1
  138. package/dist/config/index.mjs +1 -1
  139. package/dist/config/server/index.js +1 -1
  140. package/dist/config/server/index.mjs +1 -1
  141. package/dist/fileService-O3W6YXCI.mjs +4 -0
  142. package/dist/fileService-O3W6YXCI.mjs.map +1 -0
  143. package/dist/fileService-YUDIYOAS.js +13 -0
  144. package/dist/fileService-YUDIYOAS.js.map +1 -0
  145. package/dist/i18n/index.js +7 -7
  146. package/dist/i18n/index.mjs +1 -1
  147. package/dist/imageCrop/index.js +1 -1
  148. package/dist/imageCrop/index.mjs +1 -1
  149. package/dist/index.d.mts +9 -580
  150. package/dist/index.d.ts +9 -580
  151. package/dist/index.js +313 -972
  152. package/dist/index.js.map +1 -1
  153. package/dist/index.mjs +104 -790
  154. package/dist/index.mjs.map +1 -1
  155. package/dist/logger/index.js +8 -8
  156. package/dist/logger/index.mjs +5 -2
  157. package/dist/mikuFireworks3D/index.js +17 -17
  158. package/dist/mikuFireworks3D/index.mjs +2 -2
  159. package/dist/mikuFireworks3D/server/index.js +1 -1
  160. package/dist/mikuFireworks3D/server/index.mjs +1 -1
  161. package/dist/mikuFusionGame/index.js +5 -5
  162. package/dist/mikuFusionGame/index.mjs +4 -4
  163. package/dist/mmd/admin/index.js +1 -1
  164. package/dist/mmd/admin/index.mjs +1 -1
  165. package/dist/mmd/index.js +2 -2
  166. package/dist/mmd/index.mjs +2 -2
  167. package/dist/mmd/server/index.js +1 -1
  168. package/dist/mmd/server/index.mjs +1 -1
  169. package/dist/music/index.js +1 -1
  170. package/dist/music/index.mjs +1 -1
  171. package/dist/music/server/index.js +1 -1
  172. package/dist/music/server/index.mjs +1 -1
  173. package/dist/navigation/index.d.mts +93 -0
  174. package/dist/navigation/index.d.ts +93 -0
  175. package/dist/navigation/index.js +29 -0
  176. package/dist/navigation/index.js.map +1 -0
  177. package/dist/navigation/index.mjs +4 -0
  178. package/dist/navigation/index.mjs.map +1 -0
  179. package/dist/popupConfig-BznThU1O.d.mts +330 -0
  180. package/dist/popupConfig-BznThU1O.d.ts +330 -0
  181. package/dist/portfolio/index.d.mts +57 -0
  182. package/dist/portfolio/index.d.ts +57 -0
  183. package/dist/portfolio/index.js +35 -0
  184. package/dist/portfolio/index.js.map +1 -0
  185. package/dist/portfolio/index.mjs +10 -0
  186. package/dist/portfolio/index.mjs.map +1 -0
  187. package/dist/request/index.js +1 -1
  188. package/dist/request/index.mjs +1 -1
  189. package/dist/showmasterpiece/index.d.mts +2524 -0
  190. package/dist/showmasterpiece/index.d.ts +2524 -0
  191. package/dist/showmasterpiece/index.js +9681 -0
  192. package/dist/showmasterpiece/index.js.map +1 -0
  193. package/dist/showmasterpiece/index.mjs +9631 -0
  194. package/dist/showmasterpiece/index.mjs.map +1 -0
  195. package/dist/showmasterpiece/migration/index.d.mts +120 -0
  196. package/dist/showmasterpiece/migration/index.d.ts +120 -0
  197. package/dist/showmasterpiece/migration/index.js +595 -0
  198. package/dist/showmasterpiece/migration/index.js.map +1 -0
  199. package/dist/showmasterpiece/migration/index.mjs +589 -0
  200. package/dist/showmasterpiece/migration/index.mjs.map +1 -0
  201. package/dist/showmasterpiece/scripts/index.d.mts +28 -0
  202. package/dist/showmasterpiece/scripts/index.d.ts +28 -0
  203. package/dist/showmasterpiece/scripts/index.js +327 -0
  204. package/dist/showmasterpiece/scripts/index.js.map +1 -0
  205. package/dist/showmasterpiece/scripts/index.mjs +325 -0
  206. package/dist/showmasterpiece/scripts/index.mjs.map +1 -0
  207. package/dist/showmasterpiece/server/index.d.mts +2698 -0
  208. package/dist/showmasterpiece/server/index.d.ts +2698 -0
  209. package/dist/showmasterpiece/server/index.js +179 -0
  210. package/dist/showmasterpiece/server/index.js.map +1 -0
  211. package/dist/showmasterpiece/server/index.mjs +6 -0
  212. package/dist/showmasterpiece/server/index.mjs.map +1 -0
  213. package/dist/storage/index.js +8 -8
  214. package/dist/storage/index.mjs +2 -2
  215. package/dist/testYourself/admin/index.js +1 -1
  216. package/dist/testYourself/admin/index.mjs +1 -1
  217. package/dist/testYourself/index.js +2 -2
  218. package/dist/testYourself/index.mjs +2 -2
  219. package/dist/testYourself/server/index.js +1 -1
  220. package/dist/testYourself/server/index.mjs +1 -1
  221. package/dist/universalExport/index.js +154 -1195
  222. package/dist/universalExport/index.js.map +1 -1
  223. package/dist/universalExport/index.mjs +2 -1157
  224. package/dist/universalExport/index.mjs.map +1 -1
  225. package/dist/universalExport/server/index.js +5 -3
  226. package/dist/universalExport/server/index.js.map +1 -1
  227. package/dist/universalExport/server/index.mjs +4 -2
  228. package/dist/universalExport/server/index.mjs.map +1 -1
  229. package/dist/universalFile/index.js +10 -7
  230. package/dist/universalFile/index.js.map +1 -1
  231. package/dist/universalFile/index.mjs +6 -2
  232. package/dist/universalFile/index.mjs.map +1 -1
  233. package/dist/universalFile/server/index.d.mts +592 -265
  234. package/dist/universalFile/server/index.d.ts +592 -265
  235. package/dist/universalFile/server/index.js +298 -5637
  236. package/dist/universalFile/server/index.js.map +1 -1
  237. package/dist/universalFile/server/index.mjs +8 -5559
  238. package/dist/universalFile/server/index.mjs.map +1 -1
  239. package/dist/utils/index.js +12 -12
  240. package/dist/utils/index.mjs +3 -3
  241. package/package.json +36 -1
  242. package/dist/AliyunOSSProvider-4W47OFEK.mjs +0 -6
  243. package/dist/AliyunOSSProvider-HCNGDJL7.js +0 -15
  244. package/dist/ConfigService-V6ZK273Z.mjs +0 -4
  245. package/dist/LocalStorageProvider-3RVPCQB3.mjs +0 -6
  246. package/dist/LocalStorageProvider-PP7MA5OT.js +0 -15
  247. package/dist/PMXParser-RNVQL76A.mjs +0 -4
  248. package/dist/chunk-25OFOKNF.js +0 -171
  249. package/dist/chunk-25OFOKNF.js.map +0 -1
  250. package/dist/chunk-33YOJBQB.js.map +0 -1
  251. package/dist/chunk-3DXPQ4YV.mjs +0 -165
  252. package/dist/chunk-3DXPQ4YV.mjs.map +0 -1
  253. package/dist/chunk-3NHAT7D4.mjs.map +0 -1
  254. package/dist/chunk-435LATLS.mjs.map +0 -1
  255. package/dist/chunk-BJTO5JO5.mjs +0 -10
  256. package/dist/chunk-CIVO4R6N.mjs +0 -37
  257. package/dist/chunk-CIVO4R6N.mjs.map +0 -1
  258. package/dist/chunk-DGUM43GV.js +0 -12
  259. package/dist/chunk-HDMIOOZY.mjs +0 -546
  260. package/dist/chunk-HDMIOOZY.mjs.map +0 -1
  261. package/dist/chunk-HJ6MH7J7.js +0 -552
  262. package/dist/chunk-HJ6MH7J7.js.map +0 -1
  263. package/dist/chunk-KH6RQ4J5.js +0 -28
  264. package/dist/chunk-KH6RQ4J5.js.map +0 -1
  265. package/dist/chunk-Q5EDCKQA.js +0 -336
  266. package/dist/chunk-Q5EDCKQA.js.map +0 -1
  267. package/dist/chunk-YOTQG4NP.mjs +0 -314
  268. package/dist/chunk-YOTQG4NP.mjs.map +0 -1
  269. package/dist/chunk-ZGVB35L2.mjs +0 -25
  270. package/dist/chunk-ZGVB35L2.mjs.map +0 -1
  271. package/dist/chunk-ZRAW3HXA.js +0 -43
  272. package/dist/chunk-ZRAW3HXA.js.map +0 -1
  273. package/dist/chunk-ZWQJSZEY.js.map +0 -1
@@ -0,0 +1,2698 @@
1
+ import * as drizzle_orm from 'drizzle-orm';
2
+ import * as drizzle_orm_pg_core from 'drizzle-orm/pg-core';
3
+ import { N as NewPopupConfig, P as PopupConfig } from '../../popupConfig-BznThU1O.js';
4
+ export { p as popupConfigs, a as popupConfigsRelations } from '../../popupConfig-BznThU1O.js';
5
+
6
+ /**
7
+ * ShowMasterpiece 模块 - 数据库表结构定义
8
+ *
9
+ * 这个文件定义了ShowMasterpiece模块的完整数据库表结构,使用Drizzle ORM框架。
10
+ * 包含了所有相关的表定义、索引优化和关系映射。
11
+ *
12
+ * 表结构概览:
13
+ * - comicUniverseConfigs: 系统配置表
14
+ * - comicUniverseCategories: 画集分类表
15
+ * - comicUniverseTags: 标签表
16
+ * - comicUniverseCollections: 画集主表
17
+ * - comicUniverseCollectionTags: 画集标签关联表(多对多)
18
+ * - comicUniverseArtworks: 作品页面表
19
+ *
20
+ * 设计特点:
21
+ * - 完整的外键约束和级联删除
22
+ * - 针对查询场景的索引优化
23
+ * - 支持软删除和发布状态控制
24
+ * - 灵活的分类和标签系统
25
+ *
26
+ * @fileoverview 数据库表结构 - ShowMasterpiece模块
27
+ */
28
+ /**
29
+ * 系统配置表 (comic_universe_configs)
30
+ *
31
+ * 存储ShowMasterpiece模块的全局配置信息,包括网站设置、显示选项等。
32
+ * 通常只有一条记录,用于控制整个模块的行为和外观。
33
+ *
34
+ * 主要功能:
35
+ * - 网站标题和描述配置
36
+ * - 显示选项和分页设置
37
+ * - 主题和语言设置
38
+ * - 功能开关控制
39
+ */
40
+ declare const comicUniverseConfigs: drizzle_orm_pg_core.PgTableWithColumns<{
41
+ name: "comic_universe_configs";
42
+ schema: undefined;
43
+ columns: {
44
+ id: drizzle_orm_pg_core.PgColumn<{
45
+ name: "id";
46
+ tableName: "comic_universe_configs";
47
+ dataType: "number";
48
+ columnType: "PgSerial";
49
+ data: number;
50
+ driverParam: number;
51
+ notNull: true;
52
+ hasDefault: true;
53
+ isPrimaryKey: true;
54
+ isAutoincrement: false;
55
+ hasRuntimeDefault: false;
56
+ enumValues: undefined;
57
+ baseColumn: never;
58
+ identity: undefined;
59
+ generated: undefined;
60
+ }, {}, {}>;
61
+ siteName: drizzle_orm_pg_core.PgColumn<{
62
+ name: "site_name";
63
+ tableName: "comic_universe_configs";
64
+ dataType: "string";
65
+ columnType: "PgVarchar";
66
+ data: string;
67
+ driverParam: string;
68
+ notNull: true;
69
+ hasDefault: true;
70
+ isPrimaryKey: false;
71
+ isAutoincrement: false;
72
+ hasRuntimeDefault: false;
73
+ enumValues: [string, ...string[]];
74
+ baseColumn: never;
75
+ identity: undefined;
76
+ generated: undefined;
77
+ }, {}, {
78
+ length: 255;
79
+ }>;
80
+ siteDescription: drizzle_orm_pg_core.PgColumn<{
81
+ name: "site_description";
82
+ tableName: "comic_universe_configs";
83
+ dataType: "string";
84
+ columnType: "PgText";
85
+ data: string;
86
+ driverParam: string;
87
+ notNull: false;
88
+ hasDefault: true;
89
+ isPrimaryKey: false;
90
+ isAutoincrement: false;
91
+ hasRuntimeDefault: false;
92
+ enumValues: [string, ...string[]];
93
+ baseColumn: never;
94
+ identity: undefined;
95
+ generated: undefined;
96
+ }, {}, {}>;
97
+ heroTitle: drizzle_orm_pg_core.PgColumn<{
98
+ name: "hero_title";
99
+ tableName: "comic_universe_configs";
100
+ dataType: "string";
101
+ columnType: "PgVarchar";
102
+ data: string;
103
+ driverParam: string;
104
+ notNull: true;
105
+ hasDefault: true;
106
+ isPrimaryKey: false;
107
+ isAutoincrement: false;
108
+ hasRuntimeDefault: false;
109
+ enumValues: [string, ...string[]];
110
+ baseColumn: never;
111
+ identity: undefined;
112
+ generated: undefined;
113
+ }, {}, {
114
+ length: 255;
115
+ }>;
116
+ heroSubtitle: drizzle_orm_pg_core.PgColumn<{
117
+ name: "hero_subtitle";
118
+ tableName: "comic_universe_configs";
119
+ dataType: "string";
120
+ columnType: "PgText";
121
+ data: string;
122
+ driverParam: string;
123
+ notNull: false;
124
+ hasDefault: true;
125
+ isPrimaryKey: false;
126
+ isAutoincrement: false;
127
+ hasRuntimeDefault: false;
128
+ enumValues: [string, ...string[]];
129
+ baseColumn: never;
130
+ identity: undefined;
131
+ generated: undefined;
132
+ }, {}, {}>;
133
+ maxCollectionsPerPage: drizzle_orm_pg_core.PgColumn<{
134
+ name: "max_collections_per_page";
135
+ tableName: "comic_universe_configs";
136
+ dataType: "number";
137
+ columnType: "PgInteger";
138
+ data: number;
139
+ driverParam: string | number;
140
+ notNull: true;
141
+ hasDefault: true;
142
+ isPrimaryKey: false;
143
+ isAutoincrement: false;
144
+ hasRuntimeDefault: false;
145
+ enumValues: undefined;
146
+ baseColumn: never;
147
+ identity: undefined;
148
+ generated: undefined;
149
+ }, {}, {}>;
150
+ enableSearch: drizzle_orm_pg_core.PgColumn<{
151
+ name: "enable_search";
152
+ tableName: "comic_universe_configs";
153
+ dataType: "boolean";
154
+ columnType: "PgBoolean";
155
+ data: boolean;
156
+ driverParam: boolean;
157
+ notNull: true;
158
+ hasDefault: true;
159
+ isPrimaryKey: false;
160
+ isAutoincrement: false;
161
+ hasRuntimeDefault: false;
162
+ enumValues: undefined;
163
+ baseColumn: never;
164
+ identity: undefined;
165
+ generated: undefined;
166
+ }, {}, {}>;
167
+ enableCategories: drizzle_orm_pg_core.PgColumn<{
168
+ name: "enable_categories";
169
+ tableName: "comic_universe_configs";
170
+ dataType: "boolean";
171
+ columnType: "PgBoolean";
172
+ data: boolean;
173
+ driverParam: boolean;
174
+ notNull: true;
175
+ hasDefault: true;
176
+ isPrimaryKey: false;
177
+ isAutoincrement: false;
178
+ hasRuntimeDefault: false;
179
+ enumValues: undefined;
180
+ baseColumn: never;
181
+ identity: undefined;
182
+ generated: undefined;
183
+ }, {}, {}>;
184
+ homeTabConfig: drizzle_orm_pg_core.PgColumn<{
185
+ name: "home_tab_config";
186
+ tableName: "comic_universe_configs";
187
+ dataType: "json";
188
+ columnType: "PgJson";
189
+ data: unknown;
190
+ driverParam: unknown;
191
+ notNull: false;
192
+ hasDefault: true;
193
+ isPrimaryKey: false;
194
+ isAutoincrement: false;
195
+ hasRuntimeDefault: false;
196
+ enumValues: undefined;
197
+ baseColumn: never;
198
+ identity: undefined;
199
+ generated: undefined;
200
+ }, {}, {}>;
201
+ defaultCategory: drizzle_orm_pg_core.PgColumn<{
202
+ name: "default_category";
203
+ tableName: "comic_universe_configs";
204
+ dataType: "string";
205
+ columnType: "PgVarchar";
206
+ data: string;
207
+ driverParam: string;
208
+ notNull: true;
209
+ hasDefault: true;
210
+ isPrimaryKey: false;
211
+ isAutoincrement: false;
212
+ hasRuntimeDefault: false;
213
+ enumValues: [string, ...string[]];
214
+ baseColumn: never;
215
+ identity: undefined;
216
+ generated: undefined;
217
+ }, {}, {
218
+ length: 100;
219
+ }>;
220
+ theme: drizzle_orm_pg_core.PgColumn<{
221
+ name: "theme";
222
+ tableName: "comic_universe_configs";
223
+ dataType: "string";
224
+ columnType: "PgVarchar";
225
+ data: string;
226
+ driverParam: string;
227
+ notNull: true;
228
+ hasDefault: true;
229
+ isPrimaryKey: false;
230
+ isAutoincrement: false;
231
+ hasRuntimeDefault: false;
232
+ enumValues: [string, ...string[]];
233
+ baseColumn: never;
234
+ identity: undefined;
235
+ generated: undefined;
236
+ }, {}, {
237
+ length: 20;
238
+ }>;
239
+ language: drizzle_orm_pg_core.PgColumn<{
240
+ name: "language";
241
+ tableName: "comic_universe_configs";
242
+ dataType: "string";
243
+ columnType: "PgVarchar";
244
+ data: string;
245
+ driverParam: string;
246
+ notNull: true;
247
+ hasDefault: true;
248
+ isPrimaryKey: false;
249
+ isAutoincrement: false;
250
+ hasRuntimeDefault: false;
251
+ enumValues: [string, ...string[]];
252
+ baseColumn: never;
253
+ identity: undefined;
254
+ generated: undefined;
255
+ }, {}, {
256
+ length: 10;
257
+ }>;
258
+ createdAt: drizzle_orm_pg_core.PgColumn<{
259
+ name: "created_at";
260
+ tableName: "comic_universe_configs";
261
+ dataType: "date";
262
+ columnType: "PgTimestamp";
263
+ data: Date;
264
+ driverParam: string;
265
+ notNull: true;
266
+ hasDefault: true;
267
+ isPrimaryKey: false;
268
+ isAutoincrement: false;
269
+ hasRuntimeDefault: false;
270
+ enumValues: undefined;
271
+ baseColumn: never;
272
+ identity: undefined;
273
+ generated: undefined;
274
+ }, {}, {}>;
275
+ updatedAt: drizzle_orm_pg_core.PgColumn<{
276
+ name: "updated_at";
277
+ tableName: "comic_universe_configs";
278
+ dataType: "date";
279
+ columnType: "PgTimestamp";
280
+ data: Date;
281
+ driverParam: string;
282
+ notNull: true;
283
+ hasDefault: true;
284
+ isPrimaryKey: false;
285
+ isAutoincrement: false;
286
+ hasRuntimeDefault: false;
287
+ enumValues: undefined;
288
+ baseColumn: never;
289
+ identity: undefined;
290
+ generated: undefined;
291
+ }, {}, {}>;
292
+ };
293
+ dialect: "pg";
294
+ }>;
295
+ /**
296
+ * 画集分类表 (comic_universe_categories)
297
+ *
298
+ * 管理画集的分类信息,支持层级结构和排序。
299
+ * 用于组织和筛选画集,提供更好的浏览体验。
300
+ *
301
+ * 主要功能:
302
+ * - 分类名称和描述管理
303
+ * - 显示顺序控制
304
+ * - 启用/禁用状态控制
305
+ * - 支持未来的层级分类扩展
306
+ */
307
+ declare const comicUniverseCategories: drizzle_orm_pg_core.PgTableWithColumns<{
308
+ name: "comic_universe_categories";
309
+ schema: undefined;
310
+ columns: {
311
+ id: drizzle_orm_pg_core.PgColumn<{
312
+ name: "id";
313
+ tableName: "comic_universe_categories";
314
+ dataType: "number";
315
+ columnType: "PgSerial";
316
+ data: number;
317
+ driverParam: number;
318
+ notNull: true;
319
+ hasDefault: true;
320
+ isPrimaryKey: true;
321
+ isAutoincrement: false;
322
+ hasRuntimeDefault: false;
323
+ enumValues: undefined;
324
+ baseColumn: never;
325
+ identity: undefined;
326
+ generated: undefined;
327
+ }, {}, {}>;
328
+ name: drizzle_orm_pg_core.PgColumn<{
329
+ name: "name";
330
+ tableName: "comic_universe_categories";
331
+ dataType: "string";
332
+ columnType: "PgVarchar";
333
+ data: string;
334
+ driverParam: string;
335
+ notNull: true;
336
+ hasDefault: false;
337
+ isPrimaryKey: false;
338
+ isAutoincrement: false;
339
+ hasRuntimeDefault: false;
340
+ enumValues: [string, ...string[]];
341
+ baseColumn: never;
342
+ identity: undefined;
343
+ generated: undefined;
344
+ }, {}, {
345
+ length: 100;
346
+ }>;
347
+ description: drizzle_orm_pg_core.PgColumn<{
348
+ name: "description";
349
+ tableName: "comic_universe_categories";
350
+ dataType: "string";
351
+ columnType: "PgText";
352
+ data: string;
353
+ driverParam: string;
354
+ notNull: false;
355
+ hasDefault: false;
356
+ isPrimaryKey: false;
357
+ isAutoincrement: false;
358
+ hasRuntimeDefault: false;
359
+ enumValues: [string, ...string[]];
360
+ baseColumn: never;
361
+ identity: undefined;
362
+ generated: undefined;
363
+ }, {}, {}>;
364
+ displayOrder: drizzle_orm_pg_core.PgColumn<{
365
+ name: "display_order";
366
+ tableName: "comic_universe_categories";
367
+ dataType: "number";
368
+ columnType: "PgInteger";
369
+ data: number;
370
+ driverParam: string | number;
371
+ notNull: false;
372
+ hasDefault: true;
373
+ isPrimaryKey: false;
374
+ isAutoincrement: false;
375
+ hasRuntimeDefault: false;
376
+ enumValues: undefined;
377
+ baseColumn: never;
378
+ identity: undefined;
379
+ generated: undefined;
380
+ }, {}, {}>;
381
+ isActive: drizzle_orm_pg_core.PgColumn<{
382
+ name: "is_active";
383
+ tableName: "comic_universe_categories";
384
+ dataType: "boolean";
385
+ columnType: "PgBoolean";
386
+ data: boolean;
387
+ driverParam: boolean;
388
+ notNull: true;
389
+ hasDefault: true;
390
+ isPrimaryKey: false;
391
+ isAutoincrement: false;
392
+ hasRuntimeDefault: false;
393
+ enumValues: undefined;
394
+ baseColumn: never;
395
+ identity: undefined;
396
+ generated: undefined;
397
+ }, {}, {}>;
398
+ createdAt: drizzle_orm_pg_core.PgColumn<{
399
+ name: "created_at";
400
+ tableName: "comic_universe_categories";
401
+ dataType: "date";
402
+ columnType: "PgTimestamp";
403
+ data: Date;
404
+ driverParam: string;
405
+ notNull: true;
406
+ hasDefault: true;
407
+ isPrimaryKey: false;
408
+ isAutoincrement: false;
409
+ hasRuntimeDefault: false;
410
+ enumValues: undefined;
411
+ baseColumn: never;
412
+ identity: undefined;
413
+ generated: undefined;
414
+ }, {}, {}>;
415
+ updatedAt: drizzle_orm_pg_core.PgColumn<{
416
+ name: "updated_at";
417
+ tableName: "comic_universe_categories";
418
+ dataType: "date";
419
+ columnType: "PgTimestamp";
420
+ data: Date;
421
+ driverParam: string;
422
+ notNull: true;
423
+ hasDefault: true;
424
+ isPrimaryKey: false;
425
+ isAutoincrement: false;
426
+ hasRuntimeDefault: false;
427
+ enumValues: undefined;
428
+ baseColumn: never;
429
+ identity: undefined;
430
+ generated: undefined;
431
+ }, {}, {}>;
432
+ };
433
+ dialect: "pg";
434
+ }>;
435
+ /**
436
+ * 标签表 (comic_universe_tags)
437
+ *
438
+ * 管理画集的标签信息,支持颜色标识和状态控制。
439
+ * 通过多对多关系与画集关联,实现灵活的标签系统。
440
+ *
441
+ * 主要功能:
442
+ * - 标签名称管理(唯一性约束)
443
+ * - 颜色标识(用于UI显示)
444
+ * - 启用/禁用状态控制
445
+ * - 支持标签的增删改查
446
+ */
447
+ declare const comicUniverseTags: drizzle_orm_pg_core.PgTableWithColumns<{
448
+ name: "comic_universe_tags";
449
+ schema: undefined;
450
+ columns: {
451
+ id: drizzle_orm_pg_core.PgColumn<{
452
+ name: "id";
453
+ tableName: "comic_universe_tags";
454
+ dataType: "number";
455
+ columnType: "PgSerial";
456
+ data: number;
457
+ driverParam: number;
458
+ notNull: true;
459
+ hasDefault: true;
460
+ isPrimaryKey: true;
461
+ isAutoincrement: false;
462
+ hasRuntimeDefault: false;
463
+ enumValues: undefined;
464
+ baseColumn: never;
465
+ identity: undefined;
466
+ generated: undefined;
467
+ }, {}, {}>;
468
+ name: drizzle_orm_pg_core.PgColumn<{
469
+ name: "name";
470
+ tableName: "comic_universe_tags";
471
+ dataType: "string";
472
+ columnType: "PgVarchar";
473
+ data: string;
474
+ driverParam: string;
475
+ notNull: true;
476
+ hasDefault: false;
477
+ isPrimaryKey: false;
478
+ isAutoincrement: false;
479
+ hasRuntimeDefault: false;
480
+ enumValues: [string, ...string[]];
481
+ baseColumn: never;
482
+ identity: undefined;
483
+ generated: undefined;
484
+ }, {}, {
485
+ length: 50;
486
+ }>;
487
+ color: drizzle_orm_pg_core.PgColumn<{
488
+ name: "color";
489
+ tableName: "comic_universe_tags";
490
+ dataType: "string";
491
+ columnType: "PgVarchar";
492
+ data: string;
493
+ driverParam: string;
494
+ notNull: false;
495
+ hasDefault: true;
496
+ isPrimaryKey: false;
497
+ isAutoincrement: false;
498
+ hasRuntimeDefault: false;
499
+ enumValues: [string, ...string[]];
500
+ baseColumn: never;
501
+ identity: undefined;
502
+ generated: undefined;
503
+ }, {}, {
504
+ length: 7;
505
+ }>;
506
+ isActive: drizzle_orm_pg_core.PgColumn<{
507
+ name: "is_active";
508
+ tableName: "comic_universe_tags";
509
+ dataType: "boolean";
510
+ columnType: "PgBoolean";
511
+ data: boolean;
512
+ driverParam: boolean;
513
+ notNull: true;
514
+ hasDefault: true;
515
+ isPrimaryKey: false;
516
+ isAutoincrement: false;
517
+ hasRuntimeDefault: false;
518
+ enumValues: undefined;
519
+ baseColumn: never;
520
+ identity: undefined;
521
+ generated: undefined;
522
+ }, {}, {}>;
523
+ createdAt: drizzle_orm_pg_core.PgColumn<{
524
+ name: "created_at";
525
+ tableName: "comic_universe_tags";
526
+ dataType: "date";
527
+ columnType: "PgTimestamp";
528
+ data: Date;
529
+ driverParam: string;
530
+ notNull: true;
531
+ hasDefault: true;
532
+ isPrimaryKey: false;
533
+ isAutoincrement: false;
534
+ hasRuntimeDefault: false;
535
+ enumValues: undefined;
536
+ baseColumn: never;
537
+ identity: undefined;
538
+ generated: undefined;
539
+ }, {}, {}>;
540
+ };
541
+ dialect: "pg";
542
+ }>;
543
+ /**
544
+ * 画集主表 (comic_universe_collections)
545
+ *
546
+ * 存储画集的基本信息和元数据,是系统的核心表之一。
547
+ * 每个画集包含多个作品页面,支持分类、发布状态和访问统计。
548
+ *
549
+ * 主要功能:
550
+ * - 画集基本信息(标题、作者、封面、描述)
551
+ * - 分类关联(外键引用)
552
+ * - 发布状态和时间控制
553
+ * - 显示顺序和访问统计
554
+ * - 支持软删除和草稿功能
555
+ */
556
+ declare const comicUniverseCollections: drizzle_orm_pg_core.PgTableWithColumns<{
557
+ name: "comic_universe_collections";
558
+ schema: undefined;
559
+ columns: {
560
+ id: drizzle_orm_pg_core.PgColumn<{
561
+ name: "id";
562
+ tableName: "comic_universe_collections";
563
+ dataType: "number";
564
+ columnType: "PgSerial";
565
+ data: number;
566
+ driverParam: number;
567
+ notNull: true;
568
+ hasDefault: true;
569
+ isPrimaryKey: true;
570
+ isAutoincrement: false;
571
+ hasRuntimeDefault: false;
572
+ enumValues: undefined;
573
+ baseColumn: never;
574
+ identity: undefined;
575
+ generated: undefined;
576
+ }, {}, {}>;
577
+ title: drizzle_orm_pg_core.PgColumn<{
578
+ name: "title";
579
+ tableName: "comic_universe_collections";
580
+ dataType: "string";
581
+ columnType: "PgVarchar";
582
+ data: string;
583
+ driverParam: string;
584
+ notNull: true;
585
+ hasDefault: false;
586
+ isPrimaryKey: false;
587
+ isAutoincrement: false;
588
+ hasRuntimeDefault: false;
589
+ enumValues: [string, ...string[]];
590
+ baseColumn: never;
591
+ identity: undefined;
592
+ generated: undefined;
593
+ }, {}, {
594
+ length: 255;
595
+ }>;
596
+ number: drizzle_orm_pg_core.PgColumn<{
597
+ name: "number";
598
+ tableName: "comic_universe_collections";
599
+ dataType: "string";
600
+ columnType: "PgVarchar";
601
+ data: string;
602
+ driverParam: string;
603
+ notNull: true;
604
+ hasDefault: false;
605
+ isPrimaryKey: false;
606
+ isAutoincrement: false;
607
+ hasRuntimeDefault: false;
608
+ enumValues: [string, ...string[]];
609
+ baseColumn: never;
610
+ identity: undefined;
611
+ generated: undefined;
612
+ }, {}, {
613
+ length: 255;
614
+ }>;
615
+ coverImage: drizzle_orm_pg_core.PgColumn<{
616
+ name: "cover_image";
617
+ tableName: "comic_universe_collections";
618
+ dataType: "string";
619
+ columnType: "PgText";
620
+ data: string;
621
+ driverParam: string;
622
+ notNull: true;
623
+ hasDefault: false;
624
+ isPrimaryKey: false;
625
+ isAutoincrement: false;
626
+ hasRuntimeDefault: false;
627
+ enumValues: [string, ...string[]];
628
+ baseColumn: never;
629
+ identity: undefined;
630
+ generated: undefined;
631
+ }, {}, {}>;
632
+ coverImageFileId: drizzle_orm_pg_core.PgColumn<{
633
+ name: "cover_image_file_id";
634
+ tableName: "comic_universe_collections";
635
+ dataType: "string";
636
+ columnType: "PgUUID";
637
+ data: string;
638
+ driverParam: string;
639
+ notNull: false;
640
+ hasDefault: false;
641
+ isPrimaryKey: false;
642
+ isAutoincrement: false;
643
+ hasRuntimeDefault: false;
644
+ enumValues: undefined;
645
+ baseColumn: never;
646
+ identity: undefined;
647
+ generated: undefined;
648
+ }, {}, {}>;
649
+ description: drizzle_orm_pg_core.PgColumn<{
650
+ name: "description";
651
+ tableName: "comic_universe_collections";
652
+ dataType: "string";
653
+ columnType: "PgText";
654
+ data: string;
655
+ driverParam: string;
656
+ notNull: false;
657
+ hasDefault: false;
658
+ isPrimaryKey: false;
659
+ isAutoincrement: false;
660
+ hasRuntimeDefault: false;
661
+ enumValues: [string, ...string[]];
662
+ baseColumn: never;
663
+ identity: undefined;
664
+ generated: undefined;
665
+ }, {}, {}>;
666
+ categoryId: drizzle_orm_pg_core.PgColumn<{
667
+ name: "category_id";
668
+ tableName: "comic_universe_collections";
669
+ dataType: "number";
670
+ columnType: "PgInteger";
671
+ data: number;
672
+ driverParam: string | number;
673
+ notNull: false;
674
+ hasDefault: false;
675
+ isPrimaryKey: false;
676
+ isAutoincrement: false;
677
+ hasRuntimeDefault: false;
678
+ enumValues: undefined;
679
+ baseColumn: never;
680
+ identity: undefined;
681
+ generated: undefined;
682
+ }, {}, {}>;
683
+ isPublished: drizzle_orm_pg_core.PgColumn<{
684
+ name: "is_published";
685
+ tableName: "comic_universe_collections";
686
+ dataType: "boolean";
687
+ columnType: "PgBoolean";
688
+ data: boolean;
689
+ driverParam: boolean;
690
+ notNull: true;
691
+ hasDefault: true;
692
+ isPrimaryKey: false;
693
+ isAutoincrement: false;
694
+ hasRuntimeDefault: false;
695
+ enumValues: undefined;
696
+ baseColumn: never;
697
+ identity: undefined;
698
+ generated: undefined;
699
+ }, {}, {}>;
700
+ publishedAt: drizzle_orm_pg_core.PgColumn<{
701
+ name: "published_at";
702
+ tableName: "comic_universe_collections";
703
+ dataType: "date";
704
+ columnType: "PgTimestamp";
705
+ data: Date;
706
+ driverParam: string;
707
+ notNull: false;
708
+ hasDefault: false;
709
+ isPrimaryKey: false;
710
+ isAutoincrement: false;
711
+ hasRuntimeDefault: false;
712
+ enumValues: undefined;
713
+ baseColumn: never;
714
+ identity: undefined;
715
+ generated: undefined;
716
+ }, {}, {}>;
717
+ displayOrder: drizzle_orm_pg_core.PgColumn<{
718
+ name: "display_order";
719
+ tableName: "comic_universe_collections";
720
+ dataType: "number";
721
+ columnType: "PgInteger";
722
+ data: number;
723
+ driverParam: string | number;
724
+ notNull: false;
725
+ hasDefault: true;
726
+ isPrimaryKey: false;
727
+ isAutoincrement: false;
728
+ hasRuntimeDefault: false;
729
+ enumValues: undefined;
730
+ baseColumn: never;
731
+ identity: undefined;
732
+ generated: undefined;
733
+ }, {}, {}>;
734
+ price: drizzle_orm_pg_core.PgColumn<{
735
+ name: "price";
736
+ tableName: "comic_universe_collections";
737
+ dataType: "number";
738
+ columnType: "PgInteger";
739
+ data: number;
740
+ driverParam: string | number;
741
+ notNull: false;
742
+ hasDefault: false;
743
+ isPrimaryKey: false;
744
+ isAutoincrement: false;
745
+ hasRuntimeDefault: false;
746
+ enumValues: undefined;
747
+ baseColumn: never;
748
+ identity: undefined;
749
+ generated: undefined;
750
+ }, {}, {}>;
751
+ viewCount: drizzle_orm_pg_core.PgColumn<{
752
+ name: "view_count";
753
+ tableName: "comic_universe_collections";
754
+ dataType: "number";
755
+ columnType: "PgInteger";
756
+ data: number;
757
+ driverParam: string | number;
758
+ notNull: true;
759
+ hasDefault: true;
760
+ isPrimaryKey: false;
761
+ isAutoincrement: false;
762
+ hasRuntimeDefault: false;
763
+ enumValues: undefined;
764
+ baseColumn: never;
765
+ identity: undefined;
766
+ generated: undefined;
767
+ }, {}, {}>;
768
+ createdAt: drizzle_orm_pg_core.PgColumn<{
769
+ name: "created_at";
770
+ tableName: "comic_universe_collections";
771
+ dataType: "date";
772
+ columnType: "PgTimestamp";
773
+ data: Date;
774
+ driverParam: string;
775
+ notNull: true;
776
+ hasDefault: true;
777
+ isPrimaryKey: false;
778
+ isAutoincrement: false;
779
+ hasRuntimeDefault: false;
780
+ enumValues: undefined;
781
+ baseColumn: never;
782
+ identity: undefined;
783
+ generated: undefined;
784
+ }, {}, {}>;
785
+ updatedAt: drizzle_orm_pg_core.PgColumn<{
786
+ name: "updated_at";
787
+ tableName: "comic_universe_collections";
788
+ dataType: "date";
789
+ columnType: "PgTimestamp";
790
+ data: Date;
791
+ driverParam: string;
792
+ notNull: true;
793
+ hasDefault: true;
794
+ isPrimaryKey: false;
795
+ isAutoincrement: false;
796
+ hasRuntimeDefault: false;
797
+ enumValues: undefined;
798
+ baseColumn: never;
799
+ identity: undefined;
800
+ generated: undefined;
801
+ }, {}, {}>;
802
+ };
803
+ dialect: "pg";
804
+ }>;
805
+ /**
806
+ * 画集标签关联表 (comic_universe_collection_tags)
807
+ *
808
+ * 实现画集和标签之间的多对多关系。
809
+ * 每个画集可以有多个标签,每个标签也可以关联多个画集。
810
+ *
811
+ * 主要功能:
812
+ * - 画集与标签的多对多关联
813
+ * - 支持级联删除(删除画集或标签时自动清理关联)
814
+ * - 复合主键确保关联的唯一性
815
+ * - 针对查询场景的索引优化
816
+ */
817
+ declare const comicUniverseCollectionTags: drizzle_orm_pg_core.PgTableWithColumns<{
818
+ name: "comic_universe_collection_tags";
819
+ schema: undefined;
820
+ columns: {
821
+ collectionId: drizzle_orm_pg_core.PgColumn<{
822
+ name: "collection_id";
823
+ tableName: "comic_universe_collection_tags";
824
+ dataType: "number";
825
+ columnType: "PgInteger";
826
+ data: number;
827
+ driverParam: string | number;
828
+ notNull: true;
829
+ hasDefault: false;
830
+ isPrimaryKey: false;
831
+ isAutoincrement: false;
832
+ hasRuntimeDefault: false;
833
+ enumValues: undefined;
834
+ baseColumn: never;
835
+ identity: undefined;
836
+ generated: undefined;
837
+ }, {}, {}>;
838
+ tagId: drizzle_orm_pg_core.PgColumn<{
839
+ name: "tag_id";
840
+ tableName: "comic_universe_collection_tags";
841
+ dataType: "number";
842
+ columnType: "PgInteger";
843
+ data: number;
844
+ driverParam: string | number;
845
+ notNull: true;
846
+ hasDefault: false;
847
+ isPrimaryKey: false;
848
+ isAutoincrement: false;
849
+ hasRuntimeDefault: false;
850
+ enumValues: undefined;
851
+ baseColumn: never;
852
+ identity: undefined;
853
+ generated: undefined;
854
+ }, {}, {}>;
855
+ };
856
+ dialect: "pg";
857
+ }>;
858
+ /**
859
+ * 作品页面表 (comic_universe_artworks)
860
+ *
861
+ * 存储画集中的具体作品信息,每个画集包含多个作品页面。
862
+ * 支持详细的作品元数据和页面排序功能。
863
+ *
864
+ * 主要功能:
865
+ * - 作品详细信息(标题、作者、图片、描述等)
866
+ * - 艺术作品元数据(创作时间、主题、尺寸等)
867
+ * - 在画集中的页面顺序控制
868
+ * - 启用/禁用状态(软删除)
869
+ * - 支持富文本描述和多媒体内容
870
+ */
871
+ declare const comicUniverseArtworks: drizzle_orm_pg_core.PgTableWithColumns<{
872
+ name: "comic_universe_artworks";
873
+ schema: undefined;
874
+ columns: {
875
+ id: drizzle_orm_pg_core.PgColumn<{
876
+ name: "id";
877
+ tableName: "comic_universe_artworks";
878
+ dataType: "number";
879
+ columnType: "PgSerial";
880
+ data: number;
881
+ driverParam: number;
882
+ notNull: true;
883
+ hasDefault: true;
884
+ isPrimaryKey: true;
885
+ isAutoincrement: false;
886
+ hasRuntimeDefault: false;
887
+ enumValues: undefined;
888
+ baseColumn: never;
889
+ identity: undefined;
890
+ generated: undefined;
891
+ }, {}, {}>;
892
+ collectionId: drizzle_orm_pg_core.PgColumn<{
893
+ name: "collection_id";
894
+ tableName: "comic_universe_artworks";
895
+ dataType: "number";
896
+ columnType: "PgInteger";
897
+ data: number;
898
+ driverParam: string | number;
899
+ notNull: true;
900
+ hasDefault: false;
901
+ isPrimaryKey: false;
902
+ isAutoincrement: false;
903
+ hasRuntimeDefault: false;
904
+ enumValues: undefined;
905
+ baseColumn: never;
906
+ identity: undefined;
907
+ generated: undefined;
908
+ }, {}, {}>;
909
+ title: drizzle_orm_pg_core.PgColumn<{
910
+ name: "title";
911
+ tableName: "comic_universe_artworks";
912
+ dataType: "string";
913
+ columnType: "PgVarchar";
914
+ data: string;
915
+ driverParam: string;
916
+ notNull: true;
917
+ hasDefault: false;
918
+ isPrimaryKey: false;
919
+ isAutoincrement: false;
920
+ hasRuntimeDefault: false;
921
+ enumValues: [string, ...string[]];
922
+ baseColumn: never;
923
+ identity: undefined;
924
+ generated: undefined;
925
+ }, {}, {
926
+ length: 255;
927
+ }>;
928
+ number: drizzle_orm_pg_core.PgColumn<{
929
+ name: "number";
930
+ tableName: "comic_universe_artworks";
931
+ dataType: "string";
932
+ columnType: "PgVarchar";
933
+ data: string;
934
+ driverParam: string;
935
+ notNull: true;
936
+ hasDefault: false;
937
+ isPrimaryKey: false;
938
+ isAutoincrement: false;
939
+ hasRuntimeDefault: false;
940
+ enumValues: [string, ...string[]];
941
+ baseColumn: never;
942
+ identity: undefined;
943
+ generated: undefined;
944
+ }, {}, {
945
+ length: 255;
946
+ }>;
947
+ image: drizzle_orm_pg_core.PgColumn<{
948
+ name: "image";
949
+ tableName: "comic_universe_artworks";
950
+ dataType: "string";
951
+ columnType: "PgText";
952
+ data: string;
953
+ driverParam: string;
954
+ notNull: false;
955
+ hasDefault: false;
956
+ isPrimaryKey: false;
957
+ isAutoincrement: false;
958
+ hasRuntimeDefault: false;
959
+ enumValues: [string, ...string[]];
960
+ baseColumn: never;
961
+ identity: undefined;
962
+ generated: undefined;
963
+ }, {}, {}>;
964
+ fileId: drizzle_orm_pg_core.PgColumn<{
965
+ name: "file_id";
966
+ tableName: "comic_universe_artworks";
967
+ dataType: "string";
968
+ columnType: "PgUUID";
969
+ data: string;
970
+ driverParam: string;
971
+ notNull: false;
972
+ hasDefault: false;
973
+ isPrimaryKey: false;
974
+ isAutoincrement: false;
975
+ hasRuntimeDefault: false;
976
+ enumValues: undefined;
977
+ baseColumn: never;
978
+ identity: undefined;
979
+ generated: undefined;
980
+ }, {}, {}>;
981
+ migrationStatus: drizzle_orm_pg_core.PgColumn<{
982
+ name: "migration_status";
983
+ tableName: "comic_universe_artworks";
984
+ dataType: "string";
985
+ columnType: "PgVarchar";
986
+ data: string;
987
+ driverParam: string;
988
+ notNull: false;
989
+ hasDefault: true;
990
+ isPrimaryKey: false;
991
+ isAutoincrement: false;
992
+ hasRuntimeDefault: false;
993
+ enumValues: [string, ...string[]];
994
+ baseColumn: never;
995
+ identity: undefined;
996
+ generated: undefined;
997
+ }, {}, {
998
+ length: 20;
999
+ }>;
1000
+ description: drizzle_orm_pg_core.PgColumn<{
1001
+ name: "description";
1002
+ tableName: "comic_universe_artworks";
1003
+ dataType: "string";
1004
+ columnType: "PgText";
1005
+ data: string;
1006
+ driverParam: string;
1007
+ notNull: false;
1008
+ hasDefault: false;
1009
+ isPrimaryKey: false;
1010
+ isAutoincrement: false;
1011
+ hasRuntimeDefault: false;
1012
+ enumValues: [string, ...string[]];
1013
+ baseColumn: never;
1014
+ identity: undefined;
1015
+ generated: undefined;
1016
+ }, {}, {}>;
1017
+ createdTime: drizzle_orm_pg_core.PgColumn<{
1018
+ name: "created_time";
1019
+ tableName: "comic_universe_artworks";
1020
+ dataType: "string";
1021
+ columnType: "PgVarchar";
1022
+ data: string;
1023
+ driverParam: string;
1024
+ notNull: false;
1025
+ hasDefault: false;
1026
+ isPrimaryKey: false;
1027
+ isAutoincrement: false;
1028
+ hasRuntimeDefault: false;
1029
+ enumValues: [string, ...string[]];
1030
+ baseColumn: never;
1031
+ identity: undefined;
1032
+ generated: undefined;
1033
+ }, {}, {
1034
+ length: 20;
1035
+ }>;
1036
+ theme: drizzle_orm_pg_core.PgColumn<{
1037
+ name: "theme";
1038
+ tableName: "comic_universe_artworks";
1039
+ dataType: "string";
1040
+ columnType: "PgVarchar";
1041
+ data: string;
1042
+ driverParam: string;
1043
+ notNull: false;
1044
+ hasDefault: false;
1045
+ isPrimaryKey: false;
1046
+ isAutoincrement: false;
1047
+ hasRuntimeDefault: false;
1048
+ enumValues: [string, ...string[]];
1049
+ baseColumn: never;
1050
+ identity: undefined;
1051
+ generated: undefined;
1052
+ }, {}, {
1053
+ length: 255;
1054
+ }>;
1055
+ dimensions: drizzle_orm_pg_core.PgColumn<{
1056
+ name: "dimensions";
1057
+ tableName: "comic_universe_artworks";
1058
+ dataType: "string";
1059
+ columnType: "PgVarchar";
1060
+ data: string;
1061
+ driverParam: string;
1062
+ notNull: false;
1063
+ hasDefault: false;
1064
+ isPrimaryKey: false;
1065
+ isAutoincrement: false;
1066
+ hasRuntimeDefault: false;
1067
+ enumValues: [string, ...string[]];
1068
+ baseColumn: never;
1069
+ identity: undefined;
1070
+ generated: undefined;
1071
+ }, {}, {
1072
+ length: 100;
1073
+ }>;
1074
+ pageOrder: drizzle_orm_pg_core.PgColumn<{
1075
+ name: "page_order";
1076
+ tableName: "comic_universe_artworks";
1077
+ dataType: "number";
1078
+ columnType: "PgInteger";
1079
+ data: number;
1080
+ driverParam: string | number;
1081
+ notNull: true;
1082
+ hasDefault: true;
1083
+ isPrimaryKey: false;
1084
+ isAutoincrement: false;
1085
+ hasRuntimeDefault: false;
1086
+ enumValues: undefined;
1087
+ baseColumn: never;
1088
+ identity: undefined;
1089
+ generated: undefined;
1090
+ }, {}, {}>;
1091
+ isActive: drizzle_orm_pg_core.PgColumn<{
1092
+ name: "is_active";
1093
+ tableName: "comic_universe_artworks";
1094
+ dataType: "boolean";
1095
+ columnType: "PgBoolean";
1096
+ data: boolean;
1097
+ driverParam: boolean;
1098
+ notNull: true;
1099
+ hasDefault: true;
1100
+ isPrimaryKey: false;
1101
+ isAutoincrement: false;
1102
+ hasRuntimeDefault: false;
1103
+ enumValues: undefined;
1104
+ baseColumn: never;
1105
+ identity: undefined;
1106
+ generated: undefined;
1107
+ }, {}, {}>;
1108
+ createdAt: drizzle_orm_pg_core.PgColumn<{
1109
+ name: "created_at";
1110
+ tableName: "comic_universe_artworks";
1111
+ dataType: "date";
1112
+ columnType: "PgTimestamp";
1113
+ data: Date;
1114
+ driverParam: string;
1115
+ notNull: true;
1116
+ hasDefault: true;
1117
+ isPrimaryKey: false;
1118
+ isAutoincrement: false;
1119
+ hasRuntimeDefault: false;
1120
+ enumValues: undefined;
1121
+ baseColumn: never;
1122
+ identity: undefined;
1123
+ generated: undefined;
1124
+ }, {}, {}>;
1125
+ updatedAt: drizzle_orm_pg_core.PgColumn<{
1126
+ name: "updated_at";
1127
+ tableName: "comic_universe_artworks";
1128
+ dataType: "date";
1129
+ columnType: "PgTimestamp";
1130
+ data: Date;
1131
+ driverParam: string;
1132
+ notNull: true;
1133
+ hasDefault: true;
1134
+ isPrimaryKey: false;
1135
+ isAutoincrement: false;
1136
+ hasRuntimeDefault: false;
1137
+ enumValues: undefined;
1138
+ baseColumn: never;
1139
+ identity: undefined;
1140
+ generated: undefined;
1141
+ }, {}, {}>;
1142
+ };
1143
+ dialect: "pg";
1144
+ }>;
1145
+ /**
1146
+ * 系统配置表关系
1147
+ * 配置表通常只有一条记录,不需要复杂的关系定义
1148
+ */
1149
+ declare const comicUniverseConfigsRelations: drizzle_orm.Relations<"comic_universe_configs", {}>;
1150
+ /**
1151
+ * 分类表关系
1152
+ * 一个分类可以包含多个画集,并属于一个活动
1153
+ */
1154
+ declare const comicUniverseCategoriesRelations: drizzle_orm.Relations<"comic_universe_categories", {
1155
+ /** 该分类下的所有画集 */
1156
+ collections: drizzle_orm.Many<"comic_universe_collections">;
1157
+ }>;
1158
+ /**
1159
+ * 标签表关系
1160
+ * 一个标签可以关联多个画集(通过关联表),并属于一个活动
1161
+ */
1162
+ declare const comicUniverseTagsRelations: drizzle_orm.Relations<"comic_universe_tags", {
1163
+ /** 该标签的所有关联记录 */
1164
+ collectionTags: drizzle_orm.Many<"comic_universe_collection_tags">;
1165
+ }>;
1166
+ /**
1167
+ * 画集表关系
1168
+ * 画集属于一个分类,包含多个作品,可以有多个标签,并属于一个活动
1169
+ */
1170
+ declare const comicUniverseCollectionsRelations: drizzle_orm.Relations<"comic_universe_collections", {
1171
+ /** 所属分类 */
1172
+ category: drizzle_orm.One<"comic_universe_categories", false>;
1173
+ /** 包含的所有作品页面 */
1174
+ artworks: drizzle_orm.Many<"comic_universe_artworks">;
1175
+ /** 关联的所有标签记录 */
1176
+ collectionTags: drizzle_orm.Many<"comic_universe_collection_tags">;
1177
+ }>;
1178
+ /**
1179
+ * 画集标签关联表关系
1180
+ * 连接画集和标签的中间表
1181
+ */
1182
+ declare const comicUniverseCollectionTagsRelations: drizzle_orm.Relations<"comic_universe_collection_tags", {
1183
+ /** 关联的画集 */
1184
+ collection: drizzle_orm.One<"comic_universe_collections", true>;
1185
+ /** 关联的标签 */
1186
+ tag: drizzle_orm.One<"comic_universe_tags", true>;
1187
+ }>;
1188
+ /**
1189
+ * 作品表关系
1190
+ * 作品属于一个画集
1191
+ */
1192
+ declare const comicUniverseArtworksRelations: drizzle_orm.Relations<"comic_universe_artworks", {
1193
+ /** 所属画集 */
1194
+ collection: drizzle_orm.One<"comic_universe_collections", true>;
1195
+ }>;
1196
+
1197
+ /**
1198
+ * ShowMasterpiece 模块 - 预订表结构定义
1199
+ *
1200
+ * 这个文件定义了画集预订功能的数据库表结构,使用Drizzle ORM框架。
1201
+ * 包含了预订表和相关的关系映射。
1202
+ *
1203
+ * 表结构概览:
1204
+ * - comicUniverseBookings: 画集预订表
1205
+ *
1206
+ * 设计特点:
1207
+ * - 完整的外键约束和级联删除
1208
+ * - 针对查询场景的索引优化
1209
+ * - 支持预订状态管理
1210
+ * - 记录用户联系信息和预订详情
1211
+ * - 支持用户对同一画集进行多次预订
1212
+ *
1213
+ * @fileoverview 数据库表结构 - 画集预订功能
1214
+ */
1215
+ /**
1216
+ * 画集预订表 (comic_universe_bookings)
1217
+ *
1218
+ * 存储用户对画集的预订信息,包括联系方式和预订详情。
1219
+ * 支持预订状态管理和历史记录查询。
1220
+ *
1221
+ * 主要功能:
1222
+ * - 记录用户预订的画集和数量
1223
+ * - 存储用户联系方式(QQ号+手机号)
1224
+ * - 预订状态管理(待确认、已确认、已完成、已取消)
1225
+ * - 预订时间记录和备注信息
1226
+ * - 支持管理员处理预订
1227
+ * - 支持对同一画集的多次预订
1228
+ */
1229
+ declare const comicUniverseBookings: drizzle_orm_pg_core.PgTableWithColumns<{
1230
+ name: "comic_universe_bookings";
1231
+ schema: undefined;
1232
+ columns: {
1233
+ id: drizzle_orm_pg_core.PgColumn<{
1234
+ name: "id";
1235
+ tableName: "comic_universe_bookings";
1236
+ dataType: "number";
1237
+ columnType: "PgSerial";
1238
+ data: number;
1239
+ driverParam: number;
1240
+ notNull: true;
1241
+ hasDefault: true;
1242
+ isPrimaryKey: false;
1243
+ isAutoincrement: false;
1244
+ hasRuntimeDefault: false;
1245
+ enumValues: undefined;
1246
+ baseColumn: never;
1247
+ identity: undefined;
1248
+ generated: undefined;
1249
+ }, {}, {}>;
1250
+ collectionId: drizzle_orm_pg_core.PgColumn<{
1251
+ name: "collection_id";
1252
+ tableName: "comic_universe_bookings";
1253
+ dataType: "number";
1254
+ columnType: "PgInteger";
1255
+ data: number;
1256
+ driverParam: string | number;
1257
+ notNull: true;
1258
+ hasDefault: false;
1259
+ isPrimaryKey: false;
1260
+ isAutoincrement: false;
1261
+ hasRuntimeDefault: false;
1262
+ enumValues: undefined;
1263
+ baseColumn: never;
1264
+ identity: undefined;
1265
+ generated: undefined;
1266
+ }, {}, {}>;
1267
+ qqNumber: drizzle_orm_pg_core.PgColumn<{
1268
+ name: "qq_number";
1269
+ tableName: "comic_universe_bookings";
1270
+ dataType: "string";
1271
+ columnType: "PgVarchar";
1272
+ data: string;
1273
+ driverParam: string;
1274
+ notNull: true;
1275
+ hasDefault: false;
1276
+ isPrimaryKey: false;
1277
+ isAutoincrement: false;
1278
+ hasRuntimeDefault: false;
1279
+ enumValues: [string, ...string[]];
1280
+ baseColumn: never;
1281
+ identity: undefined;
1282
+ generated: undefined;
1283
+ }, {}, {
1284
+ length: 20;
1285
+ }>;
1286
+ phoneNumber: drizzle_orm_pg_core.PgColumn<{
1287
+ name: "phone_number";
1288
+ tableName: "comic_universe_bookings";
1289
+ dataType: "string";
1290
+ columnType: "PgVarchar";
1291
+ data: string;
1292
+ driverParam: string;
1293
+ notNull: true;
1294
+ hasDefault: false;
1295
+ isPrimaryKey: false;
1296
+ isAutoincrement: false;
1297
+ hasRuntimeDefault: false;
1298
+ enumValues: [string, ...string[]];
1299
+ baseColumn: never;
1300
+ identity: undefined;
1301
+ generated: undefined;
1302
+ }, {}, {
1303
+ length: 20;
1304
+ }>;
1305
+ quantity: drizzle_orm_pg_core.PgColumn<{
1306
+ name: "quantity";
1307
+ tableName: "comic_universe_bookings";
1308
+ dataType: "number";
1309
+ columnType: "PgInteger";
1310
+ data: number;
1311
+ driverParam: string | number;
1312
+ notNull: true;
1313
+ hasDefault: true;
1314
+ isPrimaryKey: false;
1315
+ isAutoincrement: false;
1316
+ hasRuntimeDefault: false;
1317
+ enumValues: undefined;
1318
+ baseColumn: never;
1319
+ identity: undefined;
1320
+ generated: undefined;
1321
+ }, {}, {}>;
1322
+ status: drizzle_orm_pg_core.PgColumn<{
1323
+ name: "status";
1324
+ tableName: "comic_universe_bookings";
1325
+ dataType: "string";
1326
+ columnType: "PgVarchar";
1327
+ data: string;
1328
+ driverParam: string;
1329
+ notNull: true;
1330
+ hasDefault: true;
1331
+ isPrimaryKey: false;
1332
+ isAutoincrement: false;
1333
+ hasRuntimeDefault: false;
1334
+ enumValues: [string, ...string[]];
1335
+ baseColumn: never;
1336
+ identity: undefined;
1337
+ generated: undefined;
1338
+ }, {}, {
1339
+ length: 20;
1340
+ }>;
1341
+ notes: drizzle_orm_pg_core.PgColumn<{
1342
+ name: "notes";
1343
+ tableName: "comic_universe_bookings";
1344
+ dataType: "string";
1345
+ columnType: "PgText";
1346
+ data: string;
1347
+ driverParam: string;
1348
+ notNull: false;
1349
+ hasDefault: false;
1350
+ isPrimaryKey: false;
1351
+ isAutoincrement: false;
1352
+ hasRuntimeDefault: false;
1353
+ enumValues: [string, ...string[]];
1354
+ baseColumn: never;
1355
+ identity: undefined;
1356
+ generated: undefined;
1357
+ }, {}, {}>;
1358
+ pickupMethod: drizzle_orm_pg_core.PgColumn<{
1359
+ name: "pickup_method";
1360
+ tableName: "comic_universe_bookings";
1361
+ dataType: "string";
1362
+ columnType: "PgText";
1363
+ data: string;
1364
+ driverParam: string;
1365
+ notNull: false;
1366
+ hasDefault: false;
1367
+ isPrimaryKey: false;
1368
+ isAutoincrement: false;
1369
+ hasRuntimeDefault: false;
1370
+ enumValues: [string, ...string[]];
1371
+ baseColumn: never;
1372
+ identity: undefined;
1373
+ generated: undefined;
1374
+ }, {}, {}>;
1375
+ adminNotes: drizzle_orm_pg_core.PgColumn<{
1376
+ name: "admin_notes";
1377
+ tableName: "comic_universe_bookings";
1378
+ dataType: "string";
1379
+ columnType: "PgText";
1380
+ data: string;
1381
+ driverParam: string;
1382
+ notNull: false;
1383
+ hasDefault: false;
1384
+ isPrimaryKey: false;
1385
+ isAutoincrement: false;
1386
+ hasRuntimeDefault: false;
1387
+ enumValues: [string, ...string[]];
1388
+ baseColumn: never;
1389
+ identity: undefined;
1390
+ generated: undefined;
1391
+ }, {}, {}>;
1392
+ createdAt: drizzle_orm_pg_core.PgColumn<{
1393
+ name: "created_at";
1394
+ tableName: "comic_universe_bookings";
1395
+ dataType: "date";
1396
+ columnType: "PgTimestamp";
1397
+ data: Date;
1398
+ driverParam: string;
1399
+ notNull: true;
1400
+ hasDefault: true;
1401
+ isPrimaryKey: false;
1402
+ isAutoincrement: false;
1403
+ hasRuntimeDefault: false;
1404
+ enumValues: undefined;
1405
+ baseColumn: never;
1406
+ identity: undefined;
1407
+ generated: undefined;
1408
+ }, {}, {}>;
1409
+ updatedAt: drizzle_orm_pg_core.PgColumn<{
1410
+ name: "updated_at";
1411
+ tableName: "comic_universe_bookings";
1412
+ dataType: "date";
1413
+ columnType: "PgTimestamp";
1414
+ data: Date;
1415
+ driverParam: string;
1416
+ notNull: true;
1417
+ hasDefault: true;
1418
+ isPrimaryKey: false;
1419
+ isAutoincrement: false;
1420
+ hasRuntimeDefault: false;
1421
+ enumValues: undefined;
1422
+ baseColumn: never;
1423
+ identity: undefined;
1424
+ generated: undefined;
1425
+ }, {}, {}>;
1426
+ confirmedAt: drizzle_orm_pg_core.PgColumn<{
1427
+ name: "confirmed_at";
1428
+ tableName: "comic_universe_bookings";
1429
+ dataType: "date";
1430
+ columnType: "PgTimestamp";
1431
+ data: Date;
1432
+ driverParam: string;
1433
+ notNull: false;
1434
+ hasDefault: false;
1435
+ isPrimaryKey: false;
1436
+ isAutoincrement: false;
1437
+ hasRuntimeDefault: false;
1438
+ enumValues: undefined;
1439
+ baseColumn: never;
1440
+ identity: undefined;
1441
+ generated: undefined;
1442
+ }, {}, {}>;
1443
+ completedAt: drizzle_orm_pg_core.PgColumn<{
1444
+ name: "completed_at";
1445
+ tableName: "comic_universe_bookings";
1446
+ dataType: "date";
1447
+ columnType: "PgTimestamp";
1448
+ data: Date;
1449
+ driverParam: string;
1450
+ notNull: false;
1451
+ hasDefault: false;
1452
+ isPrimaryKey: false;
1453
+ isAutoincrement: false;
1454
+ hasRuntimeDefault: false;
1455
+ enumValues: undefined;
1456
+ baseColumn: never;
1457
+ identity: undefined;
1458
+ generated: undefined;
1459
+ }, {}, {}>;
1460
+ cancelledAt: drizzle_orm_pg_core.PgColumn<{
1461
+ name: "cancelled_at";
1462
+ tableName: "comic_universe_bookings";
1463
+ dataType: "date";
1464
+ columnType: "PgTimestamp";
1465
+ data: Date;
1466
+ driverParam: string;
1467
+ notNull: false;
1468
+ hasDefault: false;
1469
+ isPrimaryKey: false;
1470
+ isAutoincrement: false;
1471
+ hasRuntimeDefault: false;
1472
+ enumValues: undefined;
1473
+ baseColumn: never;
1474
+ identity: undefined;
1475
+ generated: undefined;
1476
+ }, {}, {}>;
1477
+ };
1478
+ dialect: "pg";
1479
+ }>;
1480
+ /**
1481
+ * 预订表关系
1482
+ * 预订属于一个画集
1483
+ */
1484
+ declare const comicUniverseBookingsRelations: drizzle_orm.Relations<"comic_universe_bookings", {
1485
+ /** 预订的画集 */
1486
+ collection: drizzle_orm.One<"comic_universe_collections", true>;
1487
+ }>;
1488
+
1489
+ /**
1490
+ * ShowMasterpiece模块 - 配置管理数据库表结构
1491
+ *
1492
+ * 独立的配置管理表,不依赖全局配置表
1493
+ * 用于模块独立化部署
1494
+ */
1495
+ /**
1496
+ * ShowMasterPieces配置分类表
1497
+ * 表名:showmaster_config_categories
1498
+ */
1499
+ declare const showmasterConfigCategories: drizzle_orm_pg_core.PgTableWithColumns<{
1500
+ name: "showmaster_config_categories";
1501
+ schema: undefined;
1502
+ columns: {
1503
+ id: drizzle_orm_pg_core.PgColumn<{
1504
+ name: "id";
1505
+ tableName: "showmaster_config_categories";
1506
+ dataType: "string";
1507
+ columnType: "PgText";
1508
+ data: string;
1509
+ driverParam: string;
1510
+ notNull: true;
1511
+ hasDefault: true;
1512
+ isPrimaryKey: true;
1513
+ isAutoincrement: false;
1514
+ hasRuntimeDefault: true;
1515
+ enumValues: [string, ...string[]];
1516
+ baseColumn: never;
1517
+ identity: undefined;
1518
+ generated: undefined;
1519
+ }, {}, {}>;
1520
+ name: drizzle_orm_pg_core.PgColumn<{
1521
+ name: "name";
1522
+ tableName: "showmaster_config_categories";
1523
+ dataType: "string";
1524
+ columnType: "PgText";
1525
+ data: string;
1526
+ driverParam: string;
1527
+ notNull: true;
1528
+ hasDefault: false;
1529
+ isPrimaryKey: false;
1530
+ isAutoincrement: false;
1531
+ hasRuntimeDefault: false;
1532
+ enumValues: [string, ...string[]];
1533
+ baseColumn: never;
1534
+ identity: undefined;
1535
+ generated: undefined;
1536
+ }, {}, {}>;
1537
+ displayName: drizzle_orm_pg_core.PgColumn<{
1538
+ name: "display_name";
1539
+ tableName: "showmaster_config_categories";
1540
+ dataType: "string";
1541
+ columnType: "PgText";
1542
+ data: string;
1543
+ driverParam: string;
1544
+ notNull: true;
1545
+ hasDefault: false;
1546
+ isPrimaryKey: false;
1547
+ isAutoincrement: false;
1548
+ hasRuntimeDefault: false;
1549
+ enumValues: [string, ...string[]];
1550
+ baseColumn: never;
1551
+ identity: undefined;
1552
+ generated: undefined;
1553
+ }, {}, {}>;
1554
+ description: drizzle_orm_pg_core.PgColumn<{
1555
+ name: "description";
1556
+ tableName: "showmaster_config_categories";
1557
+ dataType: "string";
1558
+ columnType: "PgText";
1559
+ data: string;
1560
+ driverParam: string;
1561
+ notNull: false;
1562
+ hasDefault: false;
1563
+ isPrimaryKey: false;
1564
+ isAutoincrement: false;
1565
+ hasRuntimeDefault: false;
1566
+ enumValues: [string, ...string[]];
1567
+ baseColumn: never;
1568
+ identity: undefined;
1569
+ generated: undefined;
1570
+ }, {}, {}>;
1571
+ icon: drizzle_orm_pg_core.PgColumn<{
1572
+ name: "icon";
1573
+ tableName: "showmaster_config_categories";
1574
+ dataType: "string";
1575
+ columnType: "PgText";
1576
+ data: string;
1577
+ driverParam: string;
1578
+ notNull: false;
1579
+ hasDefault: false;
1580
+ isPrimaryKey: false;
1581
+ isAutoincrement: false;
1582
+ hasRuntimeDefault: false;
1583
+ enumValues: [string, ...string[]];
1584
+ baseColumn: never;
1585
+ identity: undefined;
1586
+ generated: undefined;
1587
+ }, {}, {}>;
1588
+ sortOrder: drizzle_orm_pg_core.PgColumn<{
1589
+ name: "sort_order";
1590
+ tableName: "showmaster_config_categories";
1591
+ dataType: "number";
1592
+ columnType: "PgInteger";
1593
+ data: number;
1594
+ driverParam: string | number;
1595
+ notNull: false;
1596
+ hasDefault: true;
1597
+ isPrimaryKey: false;
1598
+ isAutoincrement: false;
1599
+ hasRuntimeDefault: false;
1600
+ enumValues: undefined;
1601
+ baseColumn: never;
1602
+ identity: undefined;
1603
+ generated: undefined;
1604
+ }, {}, {}>;
1605
+ isActive: drizzle_orm_pg_core.PgColumn<{
1606
+ name: "is_active";
1607
+ tableName: "showmaster_config_categories";
1608
+ dataType: "boolean";
1609
+ columnType: "PgBoolean";
1610
+ data: boolean;
1611
+ driverParam: boolean;
1612
+ notNull: false;
1613
+ hasDefault: true;
1614
+ isPrimaryKey: false;
1615
+ isAutoincrement: false;
1616
+ hasRuntimeDefault: false;
1617
+ enumValues: undefined;
1618
+ baseColumn: never;
1619
+ identity: undefined;
1620
+ generated: undefined;
1621
+ }, {}, {}>;
1622
+ createdAt: drizzle_orm_pg_core.PgColumn<{
1623
+ name: "created_at";
1624
+ tableName: "showmaster_config_categories";
1625
+ dataType: "date";
1626
+ columnType: "PgTimestamp";
1627
+ data: Date;
1628
+ driverParam: string;
1629
+ notNull: false;
1630
+ hasDefault: true;
1631
+ isPrimaryKey: false;
1632
+ isAutoincrement: false;
1633
+ hasRuntimeDefault: false;
1634
+ enumValues: undefined;
1635
+ baseColumn: never;
1636
+ identity: undefined;
1637
+ generated: undefined;
1638
+ }, {}, {}>;
1639
+ updatedAt: drizzle_orm_pg_core.PgColumn<{
1640
+ name: "updated_at";
1641
+ tableName: "showmaster_config_categories";
1642
+ dataType: "date";
1643
+ columnType: "PgTimestamp";
1644
+ data: Date;
1645
+ driverParam: string;
1646
+ notNull: false;
1647
+ hasDefault: true;
1648
+ isPrimaryKey: false;
1649
+ isAutoincrement: false;
1650
+ hasRuntimeDefault: false;
1651
+ enumValues: undefined;
1652
+ baseColumn: never;
1653
+ identity: undefined;
1654
+ generated: undefined;
1655
+ }, {}, {}>;
1656
+ };
1657
+ dialect: "pg";
1658
+ }>;
1659
+ /**
1660
+ * ShowMasterPieces配置项表
1661
+ * 表名:showmaster_config_items
1662
+ */
1663
+ declare const showmasterConfigItems: drizzle_orm_pg_core.PgTableWithColumns<{
1664
+ name: "showmaster_config_items";
1665
+ schema: undefined;
1666
+ columns: {
1667
+ id: drizzle_orm_pg_core.PgColumn<{
1668
+ name: "id";
1669
+ tableName: "showmaster_config_items";
1670
+ dataType: "string";
1671
+ columnType: "PgText";
1672
+ data: string;
1673
+ driverParam: string;
1674
+ notNull: true;
1675
+ hasDefault: true;
1676
+ isPrimaryKey: true;
1677
+ isAutoincrement: false;
1678
+ hasRuntimeDefault: true;
1679
+ enumValues: [string, ...string[]];
1680
+ baseColumn: never;
1681
+ identity: undefined;
1682
+ generated: undefined;
1683
+ }, {}, {}>;
1684
+ categoryId: drizzle_orm_pg_core.PgColumn<{
1685
+ name: "category_id";
1686
+ tableName: "showmaster_config_items";
1687
+ dataType: "string";
1688
+ columnType: "PgText";
1689
+ data: string;
1690
+ driverParam: string;
1691
+ notNull: false;
1692
+ hasDefault: false;
1693
+ isPrimaryKey: false;
1694
+ isAutoincrement: false;
1695
+ hasRuntimeDefault: false;
1696
+ enumValues: [string, ...string[]];
1697
+ baseColumn: never;
1698
+ identity: undefined;
1699
+ generated: undefined;
1700
+ }, {}, {}>;
1701
+ key: drizzle_orm_pg_core.PgColumn<{
1702
+ name: "key";
1703
+ tableName: "showmaster_config_items";
1704
+ dataType: "string";
1705
+ columnType: "PgText";
1706
+ data: string;
1707
+ driverParam: string;
1708
+ notNull: true;
1709
+ hasDefault: false;
1710
+ isPrimaryKey: false;
1711
+ isAutoincrement: false;
1712
+ hasRuntimeDefault: false;
1713
+ enumValues: [string, ...string[]];
1714
+ baseColumn: never;
1715
+ identity: undefined;
1716
+ generated: undefined;
1717
+ }, {}, {}>;
1718
+ displayName: drizzle_orm_pg_core.PgColumn<{
1719
+ name: "display_name";
1720
+ tableName: "showmaster_config_items";
1721
+ dataType: "string";
1722
+ columnType: "PgText";
1723
+ data: string;
1724
+ driverParam: string;
1725
+ notNull: true;
1726
+ hasDefault: false;
1727
+ isPrimaryKey: false;
1728
+ isAutoincrement: false;
1729
+ hasRuntimeDefault: false;
1730
+ enumValues: [string, ...string[]];
1731
+ baseColumn: never;
1732
+ identity: undefined;
1733
+ generated: undefined;
1734
+ }, {}, {}>;
1735
+ description: drizzle_orm_pg_core.PgColumn<{
1736
+ name: "description";
1737
+ tableName: "showmaster_config_items";
1738
+ dataType: "string";
1739
+ columnType: "PgText";
1740
+ data: string;
1741
+ driverParam: string;
1742
+ notNull: false;
1743
+ hasDefault: false;
1744
+ isPrimaryKey: false;
1745
+ isAutoincrement: false;
1746
+ hasRuntimeDefault: false;
1747
+ enumValues: [string, ...string[]];
1748
+ baseColumn: never;
1749
+ identity: undefined;
1750
+ generated: undefined;
1751
+ }, {}, {}>;
1752
+ value: drizzle_orm_pg_core.PgColumn<{
1753
+ name: "value";
1754
+ tableName: "showmaster_config_items";
1755
+ dataType: "string";
1756
+ columnType: "PgText";
1757
+ data: string;
1758
+ driverParam: string;
1759
+ notNull: false;
1760
+ hasDefault: false;
1761
+ isPrimaryKey: false;
1762
+ isAutoincrement: false;
1763
+ hasRuntimeDefault: false;
1764
+ enumValues: [string, ...string[]];
1765
+ baseColumn: never;
1766
+ identity: undefined;
1767
+ generated: undefined;
1768
+ }, {}, {}>;
1769
+ defaultValue: drizzle_orm_pg_core.PgColumn<{
1770
+ name: "default_value";
1771
+ tableName: "showmaster_config_items";
1772
+ dataType: "string";
1773
+ columnType: "PgText";
1774
+ data: string;
1775
+ driverParam: string;
1776
+ notNull: false;
1777
+ hasDefault: false;
1778
+ isPrimaryKey: false;
1779
+ isAutoincrement: false;
1780
+ hasRuntimeDefault: false;
1781
+ enumValues: [string, ...string[]];
1782
+ baseColumn: never;
1783
+ identity: undefined;
1784
+ generated: undefined;
1785
+ }, {}, {}>;
1786
+ type: drizzle_orm_pg_core.PgColumn<{
1787
+ name: "type";
1788
+ tableName: "showmaster_config_items";
1789
+ dataType: "string";
1790
+ columnType: "PgText";
1791
+ data: string;
1792
+ driverParam: string;
1793
+ notNull: true;
1794
+ hasDefault: false;
1795
+ isPrimaryKey: false;
1796
+ isAutoincrement: false;
1797
+ hasRuntimeDefault: false;
1798
+ enumValues: [string, ...string[]];
1799
+ baseColumn: never;
1800
+ identity: undefined;
1801
+ generated: undefined;
1802
+ }, {}, {}>;
1803
+ isRequired: drizzle_orm_pg_core.PgColumn<{
1804
+ name: "is_required";
1805
+ tableName: "showmaster_config_items";
1806
+ dataType: "boolean";
1807
+ columnType: "PgBoolean";
1808
+ data: boolean;
1809
+ driverParam: boolean;
1810
+ notNull: false;
1811
+ hasDefault: true;
1812
+ isPrimaryKey: false;
1813
+ isAutoincrement: false;
1814
+ hasRuntimeDefault: false;
1815
+ enumValues: undefined;
1816
+ baseColumn: never;
1817
+ identity: undefined;
1818
+ generated: undefined;
1819
+ }, {}, {}>;
1820
+ isSensitive: drizzle_orm_pg_core.PgColumn<{
1821
+ name: "is_sensitive";
1822
+ tableName: "showmaster_config_items";
1823
+ dataType: "boolean";
1824
+ columnType: "PgBoolean";
1825
+ data: boolean;
1826
+ driverParam: boolean;
1827
+ notNull: false;
1828
+ hasDefault: true;
1829
+ isPrimaryKey: false;
1830
+ isAutoincrement: false;
1831
+ hasRuntimeDefault: false;
1832
+ enumValues: undefined;
1833
+ baseColumn: never;
1834
+ identity: undefined;
1835
+ generated: undefined;
1836
+ }, {}, {}>;
1837
+ validation: drizzle_orm_pg_core.PgColumn<{
1838
+ name: "validation";
1839
+ tableName: "showmaster_config_items";
1840
+ dataType: "json";
1841
+ columnType: "PgJsonb";
1842
+ data: unknown;
1843
+ driverParam: unknown;
1844
+ notNull: false;
1845
+ hasDefault: false;
1846
+ isPrimaryKey: false;
1847
+ isAutoincrement: false;
1848
+ hasRuntimeDefault: false;
1849
+ enumValues: undefined;
1850
+ baseColumn: never;
1851
+ identity: undefined;
1852
+ generated: undefined;
1853
+ }, {}, {}>;
1854
+ sortOrder: drizzle_orm_pg_core.PgColumn<{
1855
+ name: "sort_order";
1856
+ tableName: "showmaster_config_items";
1857
+ dataType: "number";
1858
+ columnType: "PgInteger";
1859
+ data: number;
1860
+ driverParam: string | number;
1861
+ notNull: false;
1862
+ hasDefault: true;
1863
+ isPrimaryKey: false;
1864
+ isAutoincrement: false;
1865
+ hasRuntimeDefault: false;
1866
+ enumValues: undefined;
1867
+ baseColumn: never;
1868
+ identity: undefined;
1869
+ generated: undefined;
1870
+ }, {}, {}>;
1871
+ isActive: drizzle_orm_pg_core.PgColumn<{
1872
+ name: "is_active";
1873
+ tableName: "showmaster_config_items";
1874
+ dataType: "boolean";
1875
+ columnType: "PgBoolean";
1876
+ data: boolean;
1877
+ driverParam: boolean;
1878
+ notNull: false;
1879
+ hasDefault: true;
1880
+ isPrimaryKey: false;
1881
+ isAutoincrement: false;
1882
+ hasRuntimeDefault: false;
1883
+ enumValues: undefined;
1884
+ baseColumn: never;
1885
+ identity: undefined;
1886
+ generated: undefined;
1887
+ }, {}, {}>;
1888
+ environment: drizzle_orm_pg_core.PgColumn<{
1889
+ name: "environment";
1890
+ tableName: "showmaster_config_items";
1891
+ dataType: "string";
1892
+ columnType: "PgText";
1893
+ data: string;
1894
+ driverParam: string;
1895
+ notNull: false;
1896
+ hasDefault: true;
1897
+ isPrimaryKey: false;
1898
+ isAutoincrement: false;
1899
+ hasRuntimeDefault: false;
1900
+ enumValues: [string, ...string[]];
1901
+ baseColumn: never;
1902
+ identity: undefined;
1903
+ generated: undefined;
1904
+ }, {}, {}>;
1905
+ createdAt: drizzle_orm_pg_core.PgColumn<{
1906
+ name: "created_at";
1907
+ tableName: "showmaster_config_items";
1908
+ dataType: "date";
1909
+ columnType: "PgTimestamp";
1910
+ data: Date;
1911
+ driverParam: string;
1912
+ notNull: false;
1913
+ hasDefault: true;
1914
+ isPrimaryKey: false;
1915
+ isAutoincrement: false;
1916
+ hasRuntimeDefault: false;
1917
+ enumValues: undefined;
1918
+ baseColumn: never;
1919
+ identity: undefined;
1920
+ generated: undefined;
1921
+ }, {}, {}>;
1922
+ updatedAt: drizzle_orm_pg_core.PgColumn<{
1923
+ name: "updated_at";
1924
+ tableName: "showmaster_config_items";
1925
+ dataType: "date";
1926
+ columnType: "PgTimestamp";
1927
+ data: Date;
1928
+ driverParam: string;
1929
+ notNull: false;
1930
+ hasDefault: true;
1931
+ isPrimaryKey: false;
1932
+ isAutoincrement: false;
1933
+ hasRuntimeDefault: false;
1934
+ enumValues: undefined;
1935
+ baseColumn: never;
1936
+ identity: undefined;
1937
+ generated: undefined;
1938
+ }, {}, {}>;
1939
+ };
1940
+ dialect: "pg";
1941
+ }>;
1942
+ /**
1943
+ * ShowMasterPieces配置历史表
1944
+ * 表名:showmaster_config_history
1945
+ */
1946
+ declare const showmasterConfigHistory: drizzle_orm_pg_core.PgTableWithColumns<{
1947
+ name: "showmaster_config_history";
1948
+ schema: undefined;
1949
+ columns: {
1950
+ id: drizzle_orm_pg_core.PgColumn<{
1951
+ name: "id";
1952
+ tableName: "showmaster_config_history";
1953
+ dataType: "string";
1954
+ columnType: "PgText";
1955
+ data: string;
1956
+ driverParam: string;
1957
+ notNull: true;
1958
+ hasDefault: true;
1959
+ isPrimaryKey: true;
1960
+ isAutoincrement: false;
1961
+ hasRuntimeDefault: true;
1962
+ enumValues: [string, ...string[]];
1963
+ baseColumn: never;
1964
+ identity: undefined;
1965
+ generated: undefined;
1966
+ }, {}, {}>;
1967
+ configItemId: drizzle_orm_pg_core.PgColumn<{
1968
+ name: "config_item_id";
1969
+ tableName: "showmaster_config_history";
1970
+ dataType: "string";
1971
+ columnType: "PgText";
1972
+ data: string;
1973
+ driverParam: string;
1974
+ notNull: false;
1975
+ hasDefault: false;
1976
+ isPrimaryKey: false;
1977
+ isAutoincrement: false;
1978
+ hasRuntimeDefault: false;
1979
+ enumValues: [string, ...string[]];
1980
+ baseColumn: never;
1981
+ identity: undefined;
1982
+ generated: undefined;
1983
+ }, {}, {}>;
1984
+ oldValue: drizzle_orm_pg_core.PgColumn<{
1985
+ name: "old_value";
1986
+ tableName: "showmaster_config_history";
1987
+ dataType: "string";
1988
+ columnType: "PgText";
1989
+ data: string;
1990
+ driverParam: string;
1991
+ notNull: false;
1992
+ hasDefault: false;
1993
+ isPrimaryKey: false;
1994
+ isAutoincrement: false;
1995
+ hasRuntimeDefault: false;
1996
+ enumValues: [string, ...string[]];
1997
+ baseColumn: never;
1998
+ identity: undefined;
1999
+ generated: undefined;
2000
+ }, {}, {}>;
2001
+ newValue: drizzle_orm_pg_core.PgColumn<{
2002
+ name: "new_value";
2003
+ tableName: "showmaster_config_history";
2004
+ dataType: "string";
2005
+ columnType: "PgText";
2006
+ data: string;
2007
+ driverParam: string;
2008
+ notNull: false;
2009
+ hasDefault: false;
2010
+ isPrimaryKey: false;
2011
+ isAutoincrement: false;
2012
+ hasRuntimeDefault: false;
2013
+ enumValues: [string, ...string[]];
2014
+ baseColumn: never;
2015
+ identity: undefined;
2016
+ generated: undefined;
2017
+ }, {}, {}>;
2018
+ changedBy: drizzle_orm_pg_core.PgColumn<{
2019
+ name: "changed_by";
2020
+ tableName: "showmaster_config_history";
2021
+ dataType: "string";
2022
+ columnType: "PgText";
2023
+ data: string;
2024
+ driverParam: string;
2025
+ notNull: true;
2026
+ hasDefault: false;
2027
+ isPrimaryKey: false;
2028
+ isAutoincrement: false;
2029
+ hasRuntimeDefault: false;
2030
+ enumValues: [string, ...string[]];
2031
+ baseColumn: never;
2032
+ identity: undefined;
2033
+ generated: undefined;
2034
+ }, {}, {}>;
2035
+ changeReason: drizzle_orm_pg_core.PgColumn<{
2036
+ name: "change_reason";
2037
+ tableName: "showmaster_config_history";
2038
+ dataType: "string";
2039
+ columnType: "PgText";
2040
+ data: string;
2041
+ driverParam: string;
2042
+ notNull: false;
2043
+ hasDefault: false;
2044
+ isPrimaryKey: false;
2045
+ isAutoincrement: false;
2046
+ hasRuntimeDefault: false;
2047
+ enumValues: [string, ...string[]];
2048
+ baseColumn: never;
2049
+ identity: undefined;
2050
+ generated: undefined;
2051
+ }, {}, {}>;
2052
+ operationType: drizzle_orm_pg_core.PgColumn<{
2053
+ name: "operation_type";
2054
+ tableName: "showmaster_config_history";
2055
+ dataType: "string";
2056
+ columnType: "PgText";
2057
+ data: string;
2058
+ driverParam: string;
2059
+ notNull: true;
2060
+ hasDefault: false;
2061
+ isPrimaryKey: false;
2062
+ isAutoincrement: false;
2063
+ hasRuntimeDefault: false;
2064
+ enumValues: [string, ...string[]];
2065
+ baseColumn: never;
2066
+ identity: undefined;
2067
+ generated: undefined;
2068
+ }, {}, {}>;
2069
+ environment: drizzle_orm_pg_core.PgColumn<{
2070
+ name: "environment";
2071
+ tableName: "showmaster_config_history";
2072
+ dataType: "string";
2073
+ columnType: "PgText";
2074
+ data: string;
2075
+ driverParam: string;
2076
+ notNull: false;
2077
+ hasDefault: true;
2078
+ isPrimaryKey: false;
2079
+ isAutoincrement: false;
2080
+ hasRuntimeDefault: false;
2081
+ enumValues: [string, ...string[]];
2082
+ baseColumn: never;
2083
+ identity: undefined;
2084
+ generated: undefined;
2085
+ }, {}, {}>;
2086
+ createdAt: drizzle_orm_pg_core.PgColumn<{
2087
+ name: "created_at";
2088
+ tableName: "showmaster_config_history";
2089
+ dataType: "date";
2090
+ columnType: "PgTimestamp";
2091
+ data: Date;
2092
+ driverParam: string;
2093
+ notNull: false;
2094
+ hasDefault: true;
2095
+ isPrimaryKey: false;
2096
+ isAutoincrement: false;
2097
+ hasRuntimeDefault: false;
2098
+ enumValues: undefined;
2099
+ baseColumn: never;
2100
+ identity: undefined;
2101
+ generated: undefined;
2102
+ }, {}, {}>;
2103
+ };
2104
+ dialect: "pg";
2105
+ }>;
2106
+ /**
2107
+ * ShowMasterPieces配置权限表(可选,用于细粒度权限控制)
2108
+ * 表名:showmaster_config_permissions
2109
+ */
2110
+ declare const showmasterConfigPermissions: drizzle_orm_pg_core.PgTableWithColumns<{
2111
+ name: "showmaster_config_permissions";
2112
+ schema: undefined;
2113
+ columns: {
2114
+ id: drizzle_orm_pg_core.PgColumn<{
2115
+ name: "id";
2116
+ tableName: "showmaster_config_permissions";
2117
+ dataType: "string";
2118
+ columnType: "PgText";
2119
+ data: string;
2120
+ driverParam: string;
2121
+ notNull: true;
2122
+ hasDefault: true;
2123
+ isPrimaryKey: true;
2124
+ isAutoincrement: false;
2125
+ hasRuntimeDefault: true;
2126
+ enumValues: [string, ...string[]];
2127
+ baseColumn: never;
2128
+ identity: undefined;
2129
+ generated: undefined;
2130
+ }, {}, {}>;
2131
+ userId: drizzle_orm_pg_core.PgColumn<{
2132
+ name: "user_id";
2133
+ tableName: "showmaster_config_permissions";
2134
+ dataType: "string";
2135
+ columnType: "PgText";
2136
+ data: string;
2137
+ driverParam: string;
2138
+ notNull: true;
2139
+ hasDefault: false;
2140
+ isPrimaryKey: false;
2141
+ isAutoincrement: false;
2142
+ hasRuntimeDefault: false;
2143
+ enumValues: [string, ...string[]];
2144
+ baseColumn: never;
2145
+ identity: undefined;
2146
+ generated: undefined;
2147
+ }, {}, {}>;
2148
+ categoryId: drizzle_orm_pg_core.PgColumn<{
2149
+ name: "category_id";
2150
+ tableName: "showmaster_config_permissions";
2151
+ dataType: "string";
2152
+ columnType: "PgText";
2153
+ data: string;
2154
+ driverParam: string;
2155
+ notNull: false;
2156
+ hasDefault: false;
2157
+ isPrimaryKey: false;
2158
+ isAutoincrement: false;
2159
+ hasRuntimeDefault: false;
2160
+ enumValues: [string, ...string[]];
2161
+ baseColumn: never;
2162
+ identity: undefined;
2163
+ generated: undefined;
2164
+ }, {}, {}>;
2165
+ canRead: drizzle_orm_pg_core.PgColumn<{
2166
+ name: "can_read";
2167
+ tableName: "showmaster_config_permissions";
2168
+ dataType: "boolean";
2169
+ columnType: "PgBoolean";
2170
+ data: boolean;
2171
+ driverParam: boolean;
2172
+ notNull: false;
2173
+ hasDefault: true;
2174
+ isPrimaryKey: false;
2175
+ isAutoincrement: false;
2176
+ hasRuntimeDefault: false;
2177
+ enumValues: undefined;
2178
+ baseColumn: never;
2179
+ identity: undefined;
2180
+ generated: undefined;
2181
+ }, {}, {}>;
2182
+ canWrite: drizzle_orm_pg_core.PgColumn<{
2183
+ name: "can_write";
2184
+ tableName: "showmaster_config_permissions";
2185
+ dataType: "boolean";
2186
+ columnType: "PgBoolean";
2187
+ data: boolean;
2188
+ driverParam: boolean;
2189
+ notNull: false;
2190
+ hasDefault: true;
2191
+ isPrimaryKey: false;
2192
+ isAutoincrement: false;
2193
+ hasRuntimeDefault: false;
2194
+ enumValues: undefined;
2195
+ baseColumn: never;
2196
+ identity: undefined;
2197
+ generated: undefined;
2198
+ }, {}, {}>;
2199
+ canDelete: drizzle_orm_pg_core.PgColumn<{
2200
+ name: "can_delete";
2201
+ tableName: "showmaster_config_permissions";
2202
+ dataType: "boolean";
2203
+ columnType: "PgBoolean";
2204
+ data: boolean;
2205
+ driverParam: boolean;
2206
+ notNull: false;
2207
+ hasDefault: true;
2208
+ isPrimaryKey: false;
2209
+ isAutoincrement: false;
2210
+ hasRuntimeDefault: false;
2211
+ enumValues: undefined;
2212
+ baseColumn: never;
2213
+ identity: undefined;
2214
+ generated: undefined;
2215
+ }, {}, {}>;
2216
+ allowedEnvironments: drizzle_orm_pg_core.PgColumn<{
2217
+ name: "allowed_environments";
2218
+ tableName: "showmaster_config_permissions";
2219
+ dataType: "json";
2220
+ columnType: "PgJsonb";
2221
+ data: string[];
2222
+ driverParam: unknown;
2223
+ notNull: false;
2224
+ hasDefault: true;
2225
+ isPrimaryKey: false;
2226
+ isAutoincrement: false;
2227
+ hasRuntimeDefault: false;
2228
+ enumValues: undefined;
2229
+ baseColumn: never;
2230
+ identity: undefined;
2231
+ generated: undefined;
2232
+ }, {}, {
2233
+ $type: string[];
2234
+ }>;
2235
+ createdAt: drizzle_orm_pg_core.PgColumn<{
2236
+ name: "created_at";
2237
+ tableName: "showmaster_config_permissions";
2238
+ dataType: "date";
2239
+ columnType: "PgTimestamp";
2240
+ data: Date;
2241
+ driverParam: string;
2242
+ notNull: false;
2243
+ hasDefault: true;
2244
+ isPrimaryKey: false;
2245
+ isAutoincrement: false;
2246
+ hasRuntimeDefault: false;
2247
+ enumValues: undefined;
2248
+ baseColumn: never;
2249
+ identity: undefined;
2250
+ generated: undefined;
2251
+ }, {}, {}>;
2252
+ updatedAt: drizzle_orm_pg_core.PgColumn<{
2253
+ name: "updated_at";
2254
+ tableName: "showmaster_config_permissions";
2255
+ dataType: "date";
2256
+ columnType: "PgTimestamp";
2257
+ data: Date;
2258
+ driverParam: string;
2259
+ notNull: false;
2260
+ hasDefault: true;
2261
+ isPrimaryKey: false;
2262
+ isAutoincrement: false;
2263
+ hasRuntimeDefault: false;
2264
+ enumValues: undefined;
2265
+ baseColumn: never;
2266
+ identity: undefined;
2267
+ generated: undefined;
2268
+ }, {}, {}>;
2269
+ };
2270
+ dialect: "pg";
2271
+ }>;
2272
+ type ShowmasterConfigCategory = typeof showmasterConfigCategories.$inferSelect;
2273
+ type NewShowmasterConfigCategory = typeof showmasterConfigCategories.$inferInsert;
2274
+ type ShowmasterConfigItem = typeof showmasterConfigItems.$inferSelect;
2275
+ type NewShowmasterConfigItem = typeof showmasterConfigItems.$inferInsert;
2276
+ type ShowmasterConfigHistory = typeof showmasterConfigHistory.$inferSelect;
2277
+ type NewShowmasterConfigHistory = typeof showmasterConfigHistory.$inferInsert;
2278
+ type ShowmasterConfigPermission = typeof showmasterConfigPermissions.$inferSelect;
2279
+ type NewShowmasterConfigPermission = typeof showmasterConfigPermissions.$inferInsert;
2280
+
2281
+ /**
2282
+ * ShowMasterpiece模块 - 配置管理数据库服务
2283
+ *
2284
+ * 独立的配置管理服务,不依赖全局配置服务
2285
+ */
2286
+
2287
+ /**
2288
+ * 配置搜索参数
2289
+ */
2290
+ interface ConfigSearchParams {
2291
+ categoryId?: string;
2292
+ search?: string;
2293
+ type?: 'string' | 'number' | 'boolean' | 'json' | 'password';
2294
+ environment?: string;
2295
+ isActive?: boolean;
2296
+ page?: number;
2297
+ pageSize?: number;
2298
+ }
2299
+ /**
2300
+ * 分页响应
2301
+ */
2302
+ interface PaginatedResponse<T> {
2303
+ items: T[];
2304
+ total: number;
2305
+ page: number;
2306
+ pageSize: number;
2307
+ totalPages: number;
2308
+ }
2309
+ /**
2310
+ * ShowMasterPieces配置管理服务
2311
+ */
2312
+ declare class ShowmasterConfigService {
2313
+ private readonly db;
2314
+ constructor(db: any);
2315
+ /**
2316
+ * 获取所有配置分类
2317
+ */
2318
+ getAllCategories(): Promise<ShowmasterConfigCategory[]>;
2319
+ /**
2320
+ * 根据ID获取配置分类
2321
+ */
2322
+ getCategoryById(id: string): Promise<ShowmasterConfigCategory | null>;
2323
+ /**
2324
+ * 根据名称获取配置分类
2325
+ */
2326
+ getCategoryByName(name: string): Promise<ShowmasterConfigCategory | null>;
2327
+ /**
2328
+ * 创建配置分类
2329
+ */
2330
+ createCategory(data: Omit<NewShowmasterConfigCategory, 'id' | 'createdAt' | 'updatedAt'>): Promise<ShowmasterConfigCategory>;
2331
+ /**
2332
+ * 更新配置分类
2333
+ */
2334
+ updateCategory(id: string, data: Partial<Omit<ShowmasterConfigCategory, 'id' | 'createdAt'>>): Promise<ShowmasterConfigCategory>;
2335
+ /**
2336
+ * 删除配置分类
2337
+ */
2338
+ deleteCategory(id: string): Promise<void>;
2339
+ /**
2340
+ * 获取配置项列表(支持分页和搜索)
2341
+ */
2342
+ getConfigItems(params?: ConfigSearchParams): Promise<PaginatedResponse<ShowmasterConfigItem>>;
2343
+ /**
2344
+ * 根据ID获取配置项
2345
+ */
2346
+ getConfigItemById(id: string): Promise<ShowmasterConfigItem | null>;
2347
+ /**
2348
+ * 根据key获取配置项
2349
+ */
2350
+ getConfigItemByKey(key: string, environment?: string): Promise<ShowmasterConfigItem | null>;
2351
+ /**
2352
+ * 创建配置项
2353
+ */
2354
+ createConfigItem(data: Omit<NewShowmasterConfigItem, 'id' | 'createdAt' | 'updatedAt'>): Promise<ShowmasterConfigItem>;
2355
+ /**
2356
+ * 更新配置项
2357
+ */
2358
+ updateConfigItem(id: string, data: Partial<Omit<ShowmasterConfigItem, 'id' | 'createdAt'>>, changedBy?: string): Promise<ShowmasterConfigItem>;
2359
+ /**
2360
+ * 删除配置项
2361
+ */
2362
+ deleteConfigItem(id: string, changedBy?: string): Promise<void>;
2363
+ /**
2364
+ * 记录配置变更历史
2365
+ */
2366
+ private recordHistory;
2367
+ /**
2368
+ * 获取配置项历史记录
2369
+ */
2370
+ getConfigItemHistory(configItemId: string, limit?: number): Promise<ShowmasterConfigHistory[]>;
2371
+ /**
2372
+ * 获取配置值(带类型转换)
2373
+ */
2374
+ getConfigValue<T = string>(key: string, environment?: string): Promise<T | null>;
2375
+ /**
2376
+ * 设置配置值
2377
+ */
2378
+ setConfigValue(key: string, value: any, environment?: string, changedBy?: string): Promise<void>;
2379
+ /**
2380
+ * 初始化默认配置分类
2381
+ */
2382
+ initializeDefaultCategories(): Promise<void>;
2383
+ }
2384
+ declare function createShowmasterConfigService(db: any): ShowmasterConfigService;
2385
+
2386
+ /**
2387
+ * ShowMasterpiece 模块 - 弹窗配置数据库服务
2388
+ *
2389
+ * 提供弹窗配置的CRUD操作
2390
+ *
2391
+ * @fileoverview 弹窗配置数据库服务
2392
+ */
2393
+
2394
+ declare class PopupConfigService {
2395
+ private readonly db;
2396
+ constructor(db: any);
2397
+ /**
2398
+ * 创建弹窗配置
2399
+ */
2400
+ createPopupConfig(data: Omit<NewPopupConfig, 'id' | 'createdAt' | 'updatedAt'>): Promise<PopupConfig>;
2401
+ /**
2402
+ * 根据ID获取弹窗配置
2403
+ */
2404
+ getPopupConfigById(id: string): Promise<PopupConfig | null>;
2405
+ /**
2406
+ * 获取指定业务场景的启用弹窗配置
2407
+ */
2408
+ getEnabledPopupConfigs(businessModule?: string, businessScene?: string): Promise<PopupConfig[]>;
2409
+ /**
2410
+ * 获取所有弹窗配置
2411
+ */
2412
+ getAllPopupConfigs(): Promise<PopupConfig[]>;
2413
+ /**
2414
+ * 更新弹窗配置
2415
+ */
2416
+ updatePopupConfig(id: string, data: Partial<Omit<PopupConfig, 'id' | 'createdAt'>>): Promise<PopupConfig>;
2417
+ /**
2418
+ * 删除弹窗配置
2419
+ */
2420
+ deletePopupConfig(id: string): Promise<boolean>;
2421
+ /**
2422
+ * 切换弹窗配置启用状态
2423
+ */
2424
+ togglePopupConfig(id: string, enabled: boolean): Promise<PopupConfig>;
2425
+ /**
2426
+ * 检查是否需要显示弹窗
2427
+ */
2428
+ shouldShowPopup(businessModule?: string, businessScene?: string, currentTime?: Date): Promise<PopupConfig[]>;
2429
+ }
2430
+ declare function createPopupConfigService(db: any): PopupConfigService;
2431
+
2432
+ interface MasterpiecesConfig$1 {
2433
+ siteName: string;
2434
+ siteDescription?: string;
2435
+ heroTitle: string;
2436
+ heroSubtitle?: string;
2437
+ maxCollectionsPerPage: number;
2438
+ enableSearch: boolean;
2439
+ enableCategories: boolean;
2440
+ homeTabConfig: any[];
2441
+ defaultCategory: string;
2442
+ theme: 'light' | 'dark' | 'auto';
2443
+ language: 'zh' | 'en';
2444
+ }
2445
+ declare class MasterpiecesConfigDbService$1 {
2446
+ private readonly db;
2447
+ constructor(db: any);
2448
+ getConfig(): Promise<MasterpiecesConfig$1>;
2449
+ updateConfig(configData: Partial<MasterpiecesConfig$1>): Promise<MasterpiecesConfig$1>;
2450
+ resetConfig(): Promise<MasterpiecesConfig$1>;
2451
+ private createDefaultConfig;
2452
+ private mapDbConfigToType;
2453
+ }
2454
+ declare class CategoriesDbService$1 {
2455
+ private readonly db;
2456
+ constructor(db: any);
2457
+ getCategories(): Promise<string[]>;
2458
+ createCategory(name: string, description?: string): Promise<void>;
2459
+ }
2460
+ declare class TagsDbService$1 {
2461
+ private readonly db;
2462
+ constructor(db: any);
2463
+ getTags(): Promise<string[]>;
2464
+ createTag(name: string, color?: string): Promise<void>;
2465
+ }
2466
+ declare function createMasterpiecesConfigDbService(db: any): MasterpiecesConfigDbService$1;
2467
+ declare function createCategoriesDbService(db: any): CategoriesDbService$1;
2468
+ declare function createTagsDbService(db: any): TagsDbService$1;
2469
+
2470
+ declare function initializeShowmasterpieceDb(database: any, resolver?: (fileId: string) => Promise<string | null | undefined>): void;
2471
+ interface MasterpiecesConfig {
2472
+ siteName: string;
2473
+ siteDescription?: string;
2474
+ heroTitle: string;
2475
+ heroSubtitle?: string;
2476
+ maxCollectionsPerPage: number;
2477
+ enableSearch: boolean;
2478
+ enableCategories: boolean;
2479
+ homeTabConfig: any[];
2480
+ defaultCategory: string;
2481
+ theme: 'light' | 'dark' | 'auto';
2482
+ language: 'zh' | 'en';
2483
+ }
2484
+ type CollectionCategoryType = string;
2485
+ interface ArtworkPage {
2486
+ id: number;
2487
+ title: string;
2488
+ number: string;
2489
+ image: string;
2490
+ fileId?: string;
2491
+ description: string;
2492
+ createdTime?: string;
2493
+ theme?: string;
2494
+ pageOrder: number;
2495
+ }
2496
+ interface ArtCollection {
2497
+ id: number;
2498
+ title: string;
2499
+ number: string;
2500
+ coverImage: string;
2501
+ coverImageFileId?: string;
2502
+ description: string;
2503
+ pages: ArtworkPage[];
2504
+ category: CollectionCategoryType;
2505
+ tags?: string[];
2506
+ isPublished?: boolean;
2507
+ price?: number;
2508
+ }
2509
+ interface CollectionFormData {
2510
+ title: string;
2511
+ number: string;
2512
+ coverImage: string;
2513
+ coverImageFileId?: string;
2514
+ description: string;
2515
+ category: CollectionCategoryType;
2516
+ tags: string[];
2517
+ isPublished: boolean;
2518
+ price?: number;
2519
+ }
2520
+ interface ArtworkFormData {
2521
+ title: string;
2522
+ number: string;
2523
+ image?: string;
2524
+ fileId?: string;
2525
+ description: string;
2526
+ createdTime?: string;
2527
+ theme?: string;
2528
+ }
2529
+ declare class MasterpiecesConfigDbService {
2530
+ getConfig(): Promise<MasterpiecesConfig>;
2531
+ updateConfig(configData: Partial<MasterpiecesConfig>): Promise<MasterpiecesConfig>;
2532
+ resetConfig(): Promise<MasterpiecesConfig>;
2533
+ private createDefaultConfig;
2534
+ private mapDbConfigToType;
2535
+ }
2536
+ declare class CategoriesDbService {
2537
+ getCategories(): Promise<string[]>;
2538
+ createCategory(name: string, description?: string): Promise<void>;
2539
+ }
2540
+ declare class TagsDbService {
2541
+ getTags(): Promise<string[]>;
2542
+ createTag(name: string, color?: string): Promise<void>;
2543
+ }
2544
+ declare class CollectionsDbService {
2545
+ private collectionsCache;
2546
+ private collectionsCacheTime;
2547
+ private collectionsOverviewCache;
2548
+ private collectionsOverviewCacheTime;
2549
+ private readonly CACHE_DURATION;
2550
+ private readonly OVERVIEW_CACHE_DURATION;
2551
+ private readonly STALE_WHILE_REVALIDATE;
2552
+ /**
2553
+ * 获取所有画集 - 优化版本
2554
+ *
2555
+ * 性能问题分析:
2556
+ * 1. 复杂的多表关联查询 - 涉及5个表的数据整合
2557
+ * 2. 作品数据量大 - 包含所有作品的完整信息(特别是图片数据)
2558
+ * 3. N+1查询风险 - 虽然使用并行查询,但仍有优化空间
2559
+ * 4. 缓存策略有限 - 2分钟缓存时间较短,首次访问必须全量查询
2560
+ *
2561
+ * 优化策略:
2562
+ * ✅ 并行查询 - 分类、标签、作品数据并行获取
2563
+ * ✅ 内存缓存 - 减少重复查询
2564
+ * ✅ 字段选择 - 只查询必要字段
2565
+ * ✅ 延长缓存时间 - 从2分钟增加到10分钟
2566
+ * ⚠️ 需要优化 - 数据库索引、分页加载、图片懒加载
2567
+ */
2568
+ getAllCollections(useCache?: boolean): Promise<ArtCollection[]>;
2569
+ /**
2570
+ * 获取画集概览 - 不包含作品详情的轻量版本
2571
+ * 适用于首页列表、搜索结果等场景
2572
+ */
2573
+ getCollectionsOverview(): Promise<Omit<ArtCollection, 'pages'>[]>;
2574
+ /**
2575
+ * 后台异步刷新完整缓存
2576
+ */
2577
+ private refreshCacheInBackground;
2578
+ /**
2579
+ * 后台异步刷新概览缓存
2580
+ */
2581
+ private refreshOverviewCacheInBackground;
2582
+ /**
2583
+ * 从数据库获取完整画集数据
2584
+ * 优化版本:不再返回Base64图片数据,只返回fileId和imageUrl
2585
+ */
2586
+ private fetchAllCollectionsFromDb;
2587
+ /**
2588
+ * 从数据库获取画集概览数据
2589
+ */
2590
+ private fetchCollectionsOverviewFromDb;
2591
+ clearCache(): void;
2592
+ createCollection(collectionData: CollectionFormData): Promise<ArtCollection>;
2593
+ updateCollection(id: number, collectionData: CollectionFormData): Promise<ArtCollection>;
2594
+ deleteCollection(id: number): Promise<void>;
2595
+ private updateCollectionTags;
2596
+ updateCollectionOrder(collectionOrders: {
2597
+ id: number;
2598
+ displayOrder: number;
2599
+ }[]): Promise<void>;
2600
+ moveCollection(collectionId: number, targetOrder: number): Promise<void>;
2601
+ moveCollectionUp(collectionId: number): Promise<void>;
2602
+ moveCollectionDown(collectionId: number): Promise<void>;
2603
+ private normalizeCollectionOrderIfNeeded;
2604
+ }
2605
+ declare class ArtworksDbService {
2606
+ private collectionsService;
2607
+ constructor(collectionsService: CollectionsDbService);
2608
+ addArtworkToCollection(collectionId: number, artworkData: ArtworkFormData): Promise<ArtworkPage>;
2609
+ updateArtwork(collectionId: number, artworkId: number, artworkData: ArtworkFormData): Promise<ArtworkPage>;
2610
+ deleteArtwork(collectionId: number, artworkId: number): Promise<void>;
2611
+ updateArtworkOrder(collectionId: number, artworkOrders: {
2612
+ id: number;
2613
+ pageOrder: number;
2614
+ }[]): Promise<void>;
2615
+ moveArtwork(collectionId: number, artworkId: number, targetOrder: number): Promise<void>;
2616
+ moveArtworkUp(collectionId: number, artworkId: number): Promise<void>;
2617
+ moveArtworkDown(collectionId: number, artworkId: number): Promise<void>;
2618
+ getArtworksByCollection(collectionId: number): Promise<(ArtworkPage & {
2619
+ pageOrder: number;
2620
+ })[]>;
2621
+ private buildArtworkPagesWithUrls;
2622
+ }
2623
+ declare const masterpiecesConfigDbService: MasterpiecesConfigDbService;
2624
+ declare const categoriesDbService: CategoriesDbService;
2625
+ declare const tagsDbService: TagsDbService;
2626
+ declare const collectionsDbService: CollectionsDbService;
2627
+ declare const artworksDbService: ArtworksDbService;
2628
+
2629
+ interface AdminBookingQueryInput {
2630
+ qqNumber?: string | null;
2631
+ phoneNumber?: string | null;
2632
+ status?: string | null;
2633
+ applyFiltersToStats?: boolean;
2634
+ }
2635
+ interface BookableCollectionsQueryInput {
2636
+ categoryId?: number;
2637
+ limit?: number;
2638
+ orderBy?: 'displayOrder' | 'createdAt' | 'title' | string;
2639
+ }
2640
+ interface BookingListQueryInput {
2641
+ collectionId?: number;
2642
+ qqNumber?: string;
2643
+ phoneNumber?: string;
2644
+ status?: string;
2645
+ page?: number;
2646
+ limit?: number;
2647
+ }
2648
+ declare class BookingQueryService {
2649
+ private readonly db;
2650
+ constructor(db: any);
2651
+ private buildAdminConditions;
2652
+ private formatAdminBooking;
2653
+ getAdminBookings(input?: AdminBookingQueryInput): Promise<any>;
2654
+ getBookableCollections(input?: BookableCollectionsQueryInput): Promise<any[]>;
2655
+ exportBookingsCsv(): Promise<string>;
2656
+ getBookingsList(input?: BookingListQueryInput): Promise<any>;
2657
+ getBookingById(id: number): Promise<any | null>;
2658
+ }
2659
+ declare function createBookingQueryService(db: any): BookingQueryService;
2660
+
2661
+ type BookingCommandErrorCode = 'INVALID_BOOKING_ID' | 'BOOKING_NOT_FOUND' | 'INVALID_PAYLOAD' | 'INVALID_PHONE' | 'INVALID_QQ' | 'INVALID_QUANTITY' | 'COLLECTION_NOT_FOUND' | 'INVALID_STATUS';
2662
+ declare class BookingCommandError extends Error {
2663
+ readonly code: BookingCommandErrorCode;
2664
+ constructor(code: BookingCommandErrorCode, message: string);
2665
+ }
2666
+ declare class BookingCommandService {
2667
+ private readonly db;
2668
+ constructor(db: any);
2669
+ private ensureBookingExists;
2670
+ private ensureCollectionExists;
2671
+ private validatePhone;
2672
+ private validateQq;
2673
+ createBooking(body: any): Promise<any>;
2674
+ batchCreateBookings(body: any): Promise<any>;
2675
+ updateBooking(id: number, body: any): Promise<any>;
2676
+ updateBookingStatus(id: number, status: string, adminNotes?: string): Promise<any>;
2677
+ deleteBooking(id: number): Promise<void>;
2678
+ }
2679
+ declare function createBookingCommandService(db: any): BookingCommandService;
2680
+
2681
+ interface ShowMasterpieceFileRuntimeConfig {
2682
+ defaultStorage: string;
2683
+ storageProviders: Record<string, any>;
2684
+ defaultCDN: string;
2685
+ cdnProviders: Record<string, any>;
2686
+ maxFileSize: number;
2687
+ allowedMimeTypes: string[];
2688
+ cache: {
2689
+ metadataTTL: number;
2690
+ urlTTL: number;
2691
+ };
2692
+ }
2693
+ interface ConfigManager {
2694
+ getConfig(): ShowMasterpieceFileRuntimeConfig;
2695
+ }
2696
+ declare function getShowMasterpieceFileConfig(): Promise<ConfigManager>;
2697
+
2698
+ export { BookingCommandError, BookingCommandService, BookingQueryService, CategoriesDbService$1 as CategoriesDbService, MasterpiecesConfigDbService$1 as MasterpiecesConfigDbService, NewPopupConfig, type NewShowmasterConfigCategory, type NewShowmasterConfigHistory, type NewShowmasterConfigItem, type NewShowmasterConfigPermission, PopupConfig, PopupConfigService, type ShowmasterConfigCategory, type ShowmasterConfigHistory, type ShowmasterConfigItem, type ShowmasterConfigPermission, ShowmasterConfigService, TagsDbService$1 as TagsDbService, artworksDbService, categoriesDbService, collectionsDbService, comicUniverseArtworks, comicUniverseArtworksRelations, comicUniverseBookings, comicUniverseBookingsRelations, comicUniverseCategories, comicUniverseCategoriesRelations, comicUniverseCollectionTags, comicUniverseCollectionTagsRelations, comicUniverseCollections, comicUniverseCollectionsRelations, comicUniverseConfigs, comicUniverseConfigsRelations, comicUniverseTags, comicUniverseTagsRelations, createBookingCommandService, createBookingQueryService, createCategoriesDbService, createMasterpiecesConfigDbService, createPopupConfigService, createShowmasterConfigService, createTagsDbService, getShowMasterpieceFileConfig, initializeShowmasterpieceDb, masterpiecesConfigDbService, showmasterConfigCategories, showmasterConfigHistory, showmasterConfigItems, showmasterConfigPermissions, tagsDbService };