sa2kit 3.2.0 → 3.2.1

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 (217) hide show
  1. package/dist/CollisionBalls-DgKtscU2.d.mts +41 -0
  2. package/dist/CollisionBalls-DgKtscU2.d.ts +41 -0
  3. package/dist/ConfigService-Oga_zFRS.d.mts +262 -0
  4. package/dist/ConfigService-Oga_zFRS.d.ts +262 -0
  5. package/dist/UniversalFileService-CC4d3wkc.d.ts +139 -0
  6. package/dist/UniversalFileService-CzAE_G4V.d.mts +139 -0
  7. package/dist/boothVaultService-lKcnyA-u.d.mts +83 -0
  8. package/dist/boothVaultService-lKcnyA-u.d.ts +83 -0
  9. package/dist/business/audioDetection/index.d.mts +2 -0
  10. package/dist/business/audioDetection/index.d.ts +2 -0
  11. package/dist/business/audioDetection/index.js +1244 -0
  12. package/dist/business/audioDetection/index.js.map +1 -0
  13. package/dist/business/audioDetection/index.mjs +1227 -0
  14. package/dist/business/audioDetection/index.mjs.map +1 -0
  15. package/dist/business/calendar/index.d.mts +6 -0
  16. package/dist/business/calendar/index.d.ts +6 -0
  17. package/dist/business/calendar/index.js +7433 -0
  18. package/dist/business/calendar/index.js.map +1 -0
  19. package/dist/business/calendar/index.mjs +7257 -0
  20. package/dist/business/calendar/index.mjs.map +1 -0
  21. package/dist/business/calendar/routes/index.d.mts +191 -0
  22. package/dist/business/calendar/routes/index.d.ts +191 -0
  23. package/dist/business/calendar/routes/index.js +844 -0
  24. package/dist/business/calendar/routes/index.js.map +1 -0
  25. package/dist/business/calendar/routes/index.mjs +826 -0
  26. package/dist/business/calendar/routes/index.mjs.map +1 -0
  27. package/dist/business/festivalCard/index.d.mts +4 -0
  28. package/dist/business/festivalCard/index.d.ts +4 -0
  29. package/dist/business/festivalCard/index.js +1492 -0
  30. package/dist/business/festivalCard/index.js.map +1 -0
  31. package/dist/business/festivalCard/index.mjs +1475 -0
  32. package/dist/business/festivalCard/index.mjs.map +1 -0
  33. package/dist/business/festivalCard/routes/index.d.mts +42 -0
  34. package/dist/business/festivalCard/routes/index.d.ts +42 -0
  35. package/dist/business/festivalCard/routes/index.js +361 -0
  36. package/dist/business/festivalCard/routes/index.js.map +1 -0
  37. package/dist/business/festivalCard/routes/index.mjs +356 -0
  38. package/dist/business/festivalCard/routes/index.mjs.map +1 -0
  39. package/dist/business/festivalCard/server/index.d.mts +120 -0
  40. package/dist/business/festivalCard/server/index.d.ts +120 -0
  41. package/dist/business/festivalCard/server/index.js +272 -0
  42. package/dist/business/festivalCard/server/index.js.map +1 -0
  43. package/dist/business/festivalCard/server/index.mjs +265 -0
  44. package/dist/business/festivalCard/server/index.mjs.map +1 -0
  45. package/dist/business/index.d.mts +34 -0
  46. package/dist/business/index.d.ts +34 -0
  47. package/dist/business/index.js +29282 -0
  48. package/dist/business/index.js.map +1 -0
  49. package/dist/business/index.mjs +29237 -0
  50. package/dist/business/index.mjs.map +1 -0
  51. package/dist/business/mikuContest/ui/web/index.d.mts +2 -0
  52. package/dist/business/mikuContest/ui/web/index.d.ts +2 -0
  53. package/dist/business/mikuContest/ui/web/index.js +353 -0
  54. package/dist/business/mikuContest/ui/web/index.js.map +1 -0
  55. package/dist/business/mikuContest/ui/web/index.mjs +343 -0
  56. package/dist/business/mikuContest/ui/web/index.mjs.map +1 -0
  57. package/dist/business/mikuFireworks3D/index.d.mts +2 -0
  58. package/dist/business/mikuFireworks3D/index.d.ts +2 -0
  59. package/dist/business/mikuFireworks3D/index.js +1267 -0
  60. package/dist/business/mikuFireworks3D/index.js.map +1 -0
  61. package/dist/business/mikuFireworks3D/index.mjs +1228 -0
  62. package/dist/business/mikuFireworks3D/index.mjs.map +1 -0
  63. package/dist/business/mikuFusionGame/index.d.mts +2 -0
  64. package/dist/business/mikuFusionGame/index.d.ts +2 -0
  65. package/dist/business/mikuFusionGame/index.js +1208 -0
  66. package/dist/business/mikuFusionGame/index.js.map +1 -0
  67. package/dist/business/mikuFusionGame/index.mjs +1195 -0
  68. package/dist/business/mikuFusionGame/index.mjs.map +1 -0
  69. package/dist/business/mmd/admin/index.d.mts +487 -0
  70. package/dist/business/mmd/admin/index.d.ts +487 -0
  71. package/dist/business/mmd/admin/index.js +1058 -0
  72. package/dist/business/mmd/admin/index.js.map +1 -0
  73. package/dist/business/mmd/admin/index.mjs +1027 -0
  74. package/dist/business/mmd/admin/index.mjs.map +1 -0
  75. package/dist/business/mmd/index.d.mts +5 -0
  76. package/dist/business/mmd/index.d.ts +5 -0
  77. package/dist/business/mmd/index.js +10119 -0
  78. package/dist/business/mmd/index.js.map +1 -0
  79. package/dist/business/mmd/index.mjs +10028 -0
  80. package/dist/business/mmd/index.mjs.map +1 -0
  81. package/dist/business/mmd/server/index.d.mts +139 -0
  82. package/dist/business/mmd/server/index.d.ts +139 -0
  83. package/dist/business/mmd/server/index.js +424 -0
  84. package/dist/business/mmd/server/index.js.map +1 -0
  85. package/dist/business/mmd/server/index.mjs +404 -0
  86. package/dist/business/mmd/server/index.mjs.map +1 -0
  87. package/dist/business/music/index.d.mts +3 -0
  88. package/dist/business/music/index.d.ts +3 -0
  89. package/dist/business/music/index.js +830 -0
  90. package/dist/business/music/index.js.map +1 -0
  91. package/dist/business/music/index.mjs +809 -0
  92. package/dist/business/music/index.mjs.map +1 -0
  93. package/dist/business/music/server/index.d.mts +1 -0
  94. package/dist/business/music/server/index.d.ts +1 -0
  95. package/dist/business/music/server/index.js +194 -0
  96. package/dist/business/music/server/index.js.map +1 -0
  97. package/dist/business/music/server/index.mjs +182 -0
  98. package/dist/business/music/server/index.mjs.map +1 -0
  99. package/dist/business/navigation/index.d.mts +2 -0
  100. package/dist/business/navigation/index.d.ts +2 -0
  101. package/dist/business/navigation/index.js +453 -0
  102. package/dist/business/navigation/index.js.map +1 -0
  103. package/dist/business/navigation/index.mjs +443 -0
  104. package/dist/business/navigation/index.mjs.map +1 -0
  105. package/dist/business/portfolio/index.d.mts +3 -0
  106. package/dist/business/portfolio/index.d.ts +3 -0
  107. package/dist/business/portfolio/index.js +736 -0
  108. package/dist/business/portfolio/index.js.map +1 -0
  109. package/dist/business/portfolio/index.mjs +724 -0
  110. package/dist/business/portfolio/index.mjs.map +1 -0
  111. package/dist/business/qqbot/server/index.d.mts +167 -0
  112. package/dist/business/qqbot/server/index.d.ts +167 -0
  113. package/dist/business/qqbot/server/index.js +394 -0
  114. package/dist/business/qqbot/server/index.js.map +1 -0
  115. package/dist/business/qqbot/server/index.mjs +385 -0
  116. package/dist/business/qqbot/server/index.mjs.map +1 -0
  117. package/dist/business/qqbot/ui/web/index.d.mts +10 -0
  118. package/dist/business/qqbot/ui/web/index.d.ts +10 -0
  119. package/dist/business/qqbot/ui/web/index.js +105 -0
  120. package/dist/business/qqbot/ui/web/index.js.map +1 -0
  121. package/dist/business/qqbot/ui/web/index.mjs +99 -0
  122. package/dist/business/qqbot/ui/web/index.mjs.map +1 -0
  123. package/dist/business/screenReceiver/index.d.mts +2 -0
  124. package/dist/business/screenReceiver/index.d.ts +2 -0
  125. package/dist/business/screenReceiver/index.js +281 -0
  126. package/dist/business/screenReceiver/index.js.map +1 -0
  127. package/dist/business/screenReceiver/index.mjs +273 -0
  128. package/dist/business/screenReceiver/index.mjs.map +1 -0
  129. package/dist/business/testYourself/admin/index.d.mts +58 -0
  130. package/dist/business/testYourself/admin/index.d.ts +58 -0
  131. package/dist/business/testYourself/admin/index.js +1009 -0
  132. package/dist/business/testYourself/admin/index.js.map +1 -0
  133. package/dist/business/testYourself/admin/index.mjs +1002 -0
  134. package/dist/business/testYourself/admin/index.mjs.map +1 -0
  135. package/dist/business/testYourself/index.d.mts +6 -0
  136. package/dist/business/testYourself/index.d.ts +6 -0
  137. package/dist/business/testYourself/index.js +2551 -0
  138. package/dist/business/testYourself/index.js.map +1 -0
  139. package/dist/business/testYourself/index.mjs +2531 -0
  140. package/dist/business/testYourself/index.mjs.map +1 -0
  141. package/dist/business/testYourself/server/index.d.mts +1029 -0
  142. package/dist/business/testYourself/server/index.d.ts +1029 -0
  143. package/dist/business/testYourself/server/index.js +825 -0
  144. package/dist/business/testYourself/server/index.js.map +1 -0
  145. package/dist/business/testYourself/server/index.mjs +816 -0
  146. package/dist/business/testYourself/server/index.mjs.map +1 -0
  147. package/dist/business/vocaloidBooth/index.d.mts +2 -0
  148. package/dist/business/vocaloidBooth/index.d.ts +2 -0
  149. package/dist/business/vocaloidBooth/index.js +172 -0
  150. package/dist/business/vocaloidBooth/index.js.map +1 -0
  151. package/dist/business/vocaloidBooth/index.mjs +166 -0
  152. package/dist/business/vocaloidBooth/index.mjs.map +1 -0
  153. package/dist/business/vocaloidBooth/server/index.d.mts +111 -0
  154. package/dist/business/vocaloidBooth/server/index.d.ts +111 -0
  155. package/dist/business/vocaloidBooth/server/index.js +247 -0
  156. package/dist/business/vocaloidBooth/server/index.js.map +1 -0
  157. package/dist/business/vocaloidBooth/server/index.mjs +237 -0
  158. package/dist/business/vocaloidBooth/server/index.mjs.map +1 -0
  159. package/dist/business/vocaloidBooth/web/index.d.mts +45 -0
  160. package/dist/business/vocaloidBooth/web/index.d.ts +45 -0
  161. package/dist/business/vocaloidBooth/web/index.js +376 -0
  162. package/dist/business/vocaloidBooth/web/index.js.map +1 -0
  163. package/dist/business/vocaloidBooth/web/index.mjs +362 -0
  164. package/dist/business/vocaloidBooth/web/index.mjs.map +1 -0
  165. package/dist/config-BQp3qLAL.d.mts +22 -0
  166. package/dist/config-BQp3qLAL.d.ts +22 -0
  167. package/dist/drizzle-schema-BNhqj2AZ.d.mts +1114 -0
  168. package/dist/drizzle-schema-BNhqj2AZ.d.ts +1114 -0
  169. package/dist/festivalCardService-D60G-sgr.d.mts +13 -0
  170. package/dist/festivalCardService-DnLyJpRh.d.ts +13 -0
  171. package/dist/index-BMgdH5dL.d.mts +1716 -0
  172. package/dist/index-BO9_Do5y.d.mts +93 -0
  173. package/dist/index-BO9_Do5y.d.ts +93 -0
  174. package/dist/index-BSmd4ikf.d.ts +76 -0
  175. package/dist/index-BSwvWYp2.d.mts +2632 -0
  176. package/dist/index-Bo_fW3Tl.d.mts +105 -0
  177. package/dist/index-Bo_fW3Tl.d.ts +105 -0
  178. package/dist/index-BrKazb8M.d.mts +148 -0
  179. package/dist/index-BrKazb8M.d.ts +148 -0
  180. package/dist/index-Bzh6QE4P.d.ts +25 -0
  181. package/dist/index-C5Ic6eSR.d.mts +25 -0
  182. package/dist/index-C8i9SIxk.d.ts +2632 -0
  183. package/dist/index-C_GhVhOT.d.mts +109 -0
  184. package/dist/index-C_GhVhOT.d.ts +109 -0
  185. package/dist/index-Cb3UEpG4.d.mts +101 -0
  186. package/dist/index-CjlkUj01.d.mts +103 -0
  187. package/dist/index-CucXCBNR.d.mts +302 -0
  188. package/dist/index-CucXCBNR.d.ts +302 -0
  189. package/dist/index-DLLPTprx.d.mts +1522 -0
  190. package/dist/index-DRiZy0dv.d.mts +525 -0
  191. package/dist/index-DRiZy0dv.d.ts +525 -0
  192. package/dist/index-Dc_I2t0P.d.mts +103 -0
  193. package/dist/index-DowAHRIP.d.mts +250 -0
  194. package/dist/index-DowAHRIP.d.ts +250 -0
  195. package/dist/index-Dpq_5H2n.d.ts +103 -0
  196. package/dist/index-Ds2M_9zb.d.ts +101 -0
  197. package/dist/index-IXMAeTtN.d.ts +1716 -0
  198. package/dist/index-VFDbZxVM.d.ts +1522 -0
  199. package/dist/index-jadkp96n.d.ts +103 -0
  200. package/dist/index-r2-zE3iC.d.mts +76 -0
  201. package/dist/index.d.mts +10682 -0
  202. package/dist/index.d.ts +10682 -0
  203. package/dist/index.js +38233 -0
  204. package/dist/index.js.map +1 -0
  205. package/dist/index.mjs +37959 -0
  206. package/dist/index.mjs.map +1 -0
  207. package/dist/types-B6B210gX.d.mts +270 -0
  208. package/dist/types-B6B210gX.d.ts +270 -0
  209. package/dist/types-B7voqjjA.d.mts +51 -0
  210. package/dist/types-B7voqjjA.d.ts +51 -0
  211. package/dist/types-Bdnte5EN.d.mts +292 -0
  212. package/dist/types-C2z_QQPI.d.mts +70 -0
  213. package/dist/types-C2z_QQPI.d.ts +70 -0
  214. package/dist/types-HorDyIRv.d.mts +303 -0
  215. package/dist/types-HorDyIRv.d.ts +303 -0
  216. package/dist/types-_rFX1atk.d.ts +292 -0
  217. package/package.json +3 -2
@@ -0,0 +1,191 @@
1
+ import { NextRequest, NextResponse } from 'next/server';
2
+
3
+ /** Better Auth 实例(运行时完整 API,类型刻意保持宽松以便跨插件版本) */
4
+ type Sa2kitAuthInstance = {
5
+ handler: (request: Request) => Promise<Response>;
6
+ api: {
7
+ getSession: (ctx: {
8
+ headers: Headers;
9
+ }) => Promise<{
10
+ user: Record<string, unknown>;
11
+ } | null>;
12
+ [key: string]: unknown;
13
+ };
14
+ [key: string]: unknown;
15
+ };
16
+
17
+ type CalendarAuthValidator = (request: NextRequest) => Promise<{
18
+ id: number;
19
+ } | null>;
20
+ /**
21
+ * 注入 calendar API 路由使用的 session 校验(应用启动时调用一次)
22
+ */
23
+ declare function configureCalendarApiAuth(validateAuth: CalendarAuthValidator): void;
24
+ /** 重置(测试用) */
25
+ declare function resetCalendarApiAuth(): void;
26
+ /**
27
+ * 使用 Better Auth session 一键配置 calendar API
28
+ */
29
+ declare function configureCalendarApiWithBetterAuth(auth: Sa2kitAuthInstance, options?: {
30
+ db?: unknown;
31
+ }): void;
32
+
33
+ /**
34
+ * 创建 calendar 路由所需的 validateAuth(由 Better Auth session 注入)
35
+ *
36
+ * @example
37
+ * ```ts
38
+ * configureCalendarApiWithBetterAuth(auth, { db });
39
+ * const routeConfig = createDefaultCalendarRouteConfig();
40
+ * export const GET = createGetEventsHandler(routeConfig);
41
+ * ```
42
+ */
43
+ declare function createCalendarAuthRequirement(validateAuth: CalendarAuthValidator): CalendarAuthValidator;
44
+ declare function createDefaultCalendarRouteConfig(validateAuth?: CalendarAuthValidator): CalendarRouteConfig;
45
+ declare function withCalendarDbGuard<T extends unknown[]>(handler: (...args: T) => Promise<Response>): (...args: T) => Promise<Response>;
46
+
47
+ declare function createCalendarEventsRouteHandlers(config?: CalendarRouteConfig): {
48
+ GET: (request: NextRequest) => Promise<Response>;
49
+ POST: (request: NextRequest) => Promise<Response>;
50
+ };
51
+ declare function createCalendarEventByIdRouteHandlers(config?: CalendarRouteConfig): {
52
+ GET: (request: NextRequest, routeParams: {
53
+ params: {
54
+ id: string;
55
+ };
56
+ }) => Promise<Response>;
57
+ PUT: (request: NextRequest, routeParams: {
58
+ params: {
59
+ id: string;
60
+ };
61
+ }) => Promise<Response>;
62
+ DELETE: (request: NextRequest, routeParams: {
63
+ params: {
64
+ id: string;
65
+ };
66
+ }) => Promise<Response>;
67
+ };
68
+ declare function createCalendarBatchDeleteRouteHandlers(config?: CalendarRouteConfig): {
69
+ DELETE: (request: NextRequest) => Promise<Response>;
70
+ };
71
+ declare function createCalendarConfigRouteHandlers(config?: CalendarRouteConfig): {
72
+ GET: (request: NextRequest) => Promise<Response>;
73
+ PUT: (request: NextRequest) => Promise<Response>;
74
+ };
75
+
76
+ interface CalendarRouteConfig {
77
+ /**
78
+ * Drizzle 数据库实例
79
+ * 如果提供,将自动初始化 calendarDbService
80
+ */
81
+ db?: any;
82
+ /**
83
+ * 验证用户身份的函数
84
+ * 应该返回用户信息或 null
85
+ */
86
+ validateAuth: (request: NextRequest) => Promise<{
87
+ id: number;
88
+ } | null>;
89
+ }
90
+ /**
91
+ * 创建获取日历事件列表的处理器
92
+ */
93
+ declare function createGetEventsHandler(config: CalendarRouteConfig): (request: NextRequest) => Promise<NextResponse<{
94
+ success: boolean;
95
+ error: string;
96
+ }> | NextResponse<{
97
+ success: boolean;
98
+ data: any;
99
+ message: string;
100
+ }>>;
101
+ /**
102
+ * 创建日历事件的处理器
103
+ */
104
+ declare function createCreateEventHandler(config: CalendarRouteConfig): (request: NextRequest) => Promise<NextResponse<{
105
+ success: boolean;
106
+ error: string;
107
+ }> | NextResponse<{
108
+ success: boolean;
109
+ data: any;
110
+ message: string;
111
+ }>>;
112
+ /**
113
+ * 创建获取单个事件的处理器
114
+ */
115
+ declare function createGetEventByIdHandler(config: CalendarRouteConfig): (request: NextRequest, { params }: {
116
+ params: {
117
+ id: string;
118
+ };
119
+ }) => Promise<NextResponse<{
120
+ success: boolean;
121
+ error: string;
122
+ }> | NextResponse<{
123
+ success: boolean;
124
+ data: any;
125
+ message: string;
126
+ }>>;
127
+ /**
128
+ * 创建更新事件的处理器
129
+ */
130
+ declare function createUpdateEventHandler(config: CalendarRouteConfig): (request: NextRequest, { params }: {
131
+ params: {
132
+ id: string;
133
+ };
134
+ }) => Promise<NextResponse<{
135
+ success: boolean;
136
+ error: string;
137
+ }> | NextResponse<{
138
+ success: boolean;
139
+ data: any;
140
+ message: string;
141
+ }>>;
142
+ /**
143
+ * 创建删除事件的处理器
144
+ */
145
+ declare function createDeleteEventHandler(config: CalendarRouteConfig): (request: NextRequest, { params }: {
146
+ params: {
147
+ id: string;
148
+ };
149
+ }) => Promise<NextResponse<{
150
+ success: boolean;
151
+ error: string;
152
+ }> | NextResponse<{
153
+ success: boolean;
154
+ message: string;
155
+ }>>;
156
+ /**
157
+ * 创建批量删除事件的处理器
158
+ */
159
+ declare function createBatchDeleteEventsHandler(config: CalendarRouteConfig): (request: NextRequest) => Promise<NextResponse<{
160
+ success: boolean;
161
+ error: string;
162
+ }> | NextResponse<{
163
+ success: boolean;
164
+ data: {
165
+ deletedCount: number;
166
+ };
167
+ message: string;
168
+ }>>;
169
+ /**
170
+ * 创建配置处理器的工厂
171
+ */
172
+ declare function createConfigHandler(config: CalendarRouteConfig): {
173
+ GET: (request: NextRequest) => Promise<NextResponse<{
174
+ success: boolean;
175
+ error: string;
176
+ }> | NextResponse<{
177
+ success: boolean;
178
+ data: any;
179
+ message: string;
180
+ }>>;
181
+ PUT: (request: NextRequest) => Promise<NextResponse<{
182
+ success: boolean;
183
+ error: string;
184
+ }> | NextResponse<{
185
+ success: boolean;
186
+ data: any;
187
+ message: string;
188
+ }>>;
189
+ };
190
+
191
+ export { type CalendarAuthValidator, type CalendarRouteConfig, configureCalendarApiAuth, configureCalendarApiWithBetterAuth, createBatchDeleteEventsHandler, createCalendarAuthRequirement, createCalendarBatchDeleteRouteHandlers, createCalendarConfigRouteHandlers, createCalendarEventByIdRouteHandlers, createCalendarEventsRouteHandlers, createConfigHandler, createCreateEventHandler, createDefaultCalendarRouteConfig, createDeleteEventHandler, createGetEventByIdHandler, createGetEventsHandler, createUpdateEventHandler, resetCalendarApiAuth, withCalendarDbGuard };
@@ -0,0 +1,191 @@
1
+ import { NextRequest, NextResponse } from 'next/server';
2
+
3
+ /** Better Auth 实例(运行时完整 API,类型刻意保持宽松以便跨插件版本) */
4
+ type Sa2kitAuthInstance = {
5
+ handler: (request: Request) => Promise<Response>;
6
+ api: {
7
+ getSession: (ctx: {
8
+ headers: Headers;
9
+ }) => Promise<{
10
+ user: Record<string, unknown>;
11
+ } | null>;
12
+ [key: string]: unknown;
13
+ };
14
+ [key: string]: unknown;
15
+ };
16
+
17
+ type CalendarAuthValidator = (request: NextRequest) => Promise<{
18
+ id: number;
19
+ } | null>;
20
+ /**
21
+ * 注入 calendar API 路由使用的 session 校验(应用启动时调用一次)
22
+ */
23
+ declare function configureCalendarApiAuth(validateAuth: CalendarAuthValidator): void;
24
+ /** 重置(测试用) */
25
+ declare function resetCalendarApiAuth(): void;
26
+ /**
27
+ * 使用 Better Auth session 一键配置 calendar API
28
+ */
29
+ declare function configureCalendarApiWithBetterAuth(auth: Sa2kitAuthInstance, options?: {
30
+ db?: unknown;
31
+ }): void;
32
+
33
+ /**
34
+ * 创建 calendar 路由所需的 validateAuth(由 Better Auth session 注入)
35
+ *
36
+ * @example
37
+ * ```ts
38
+ * configureCalendarApiWithBetterAuth(auth, { db });
39
+ * const routeConfig = createDefaultCalendarRouteConfig();
40
+ * export const GET = createGetEventsHandler(routeConfig);
41
+ * ```
42
+ */
43
+ declare function createCalendarAuthRequirement(validateAuth: CalendarAuthValidator): CalendarAuthValidator;
44
+ declare function createDefaultCalendarRouteConfig(validateAuth?: CalendarAuthValidator): CalendarRouteConfig;
45
+ declare function withCalendarDbGuard<T extends unknown[]>(handler: (...args: T) => Promise<Response>): (...args: T) => Promise<Response>;
46
+
47
+ declare function createCalendarEventsRouteHandlers(config?: CalendarRouteConfig): {
48
+ GET: (request: NextRequest) => Promise<Response>;
49
+ POST: (request: NextRequest) => Promise<Response>;
50
+ };
51
+ declare function createCalendarEventByIdRouteHandlers(config?: CalendarRouteConfig): {
52
+ GET: (request: NextRequest, routeParams: {
53
+ params: {
54
+ id: string;
55
+ };
56
+ }) => Promise<Response>;
57
+ PUT: (request: NextRequest, routeParams: {
58
+ params: {
59
+ id: string;
60
+ };
61
+ }) => Promise<Response>;
62
+ DELETE: (request: NextRequest, routeParams: {
63
+ params: {
64
+ id: string;
65
+ };
66
+ }) => Promise<Response>;
67
+ };
68
+ declare function createCalendarBatchDeleteRouteHandlers(config?: CalendarRouteConfig): {
69
+ DELETE: (request: NextRequest) => Promise<Response>;
70
+ };
71
+ declare function createCalendarConfigRouteHandlers(config?: CalendarRouteConfig): {
72
+ GET: (request: NextRequest) => Promise<Response>;
73
+ PUT: (request: NextRequest) => Promise<Response>;
74
+ };
75
+
76
+ interface CalendarRouteConfig {
77
+ /**
78
+ * Drizzle 数据库实例
79
+ * 如果提供,将自动初始化 calendarDbService
80
+ */
81
+ db?: any;
82
+ /**
83
+ * 验证用户身份的函数
84
+ * 应该返回用户信息或 null
85
+ */
86
+ validateAuth: (request: NextRequest) => Promise<{
87
+ id: number;
88
+ } | null>;
89
+ }
90
+ /**
91
+ * 创建获取日历事件列表的处理器
92
+ */
93
+ declare function createGetEventsHandler(config: CalendarRouteConfig): (request: NextRequest) => Promise<NextResponse<{
94
+ success: boolean;
95
+ error: string;
96
+ }> | NextResponse<{
97
+ success: boolean;
98
+ data: any;
99
+ message: string;
100
+ }>>;
101
+ /**
102
+ * 创建日历事件的处理器
103
+ */
104
+ declare function createCreateEventHandler(config: CalendarRouteConfig): (request: NextRequest) => Promise<NextResponse<{
105
+ success: boolean;
106
+ error: string;
107
+ }> | NextResponse<{
108
+ success: boolean;
109
+ data: any;
110
+ message: string;
111
+ }>>;
112
+ /**
113
+ * 创建获取单个事件的处理器
114
+ */
115
+ declare function createGetEventByIdHandler(config: CalendarRouteConfig): (request: NextRequest, { params }: {
116
+ params: {
117
+ id: string;
118
+ };
119
+ }) => Promise<NextResponse<{
120
+ success: boolean;
121
+ error: string;
122
+ }> | NextResponse<{
123
+ success: boolean;
124
+ data: any;
125
+ message: string;
126
+ }>>;
127
+ /**
128
+ * 创建更新事件的处理器
129
+ */
130
+ declare function createUpdateEventHandler(config: CalendarRouteConfig): (request: NextRequest, { params }: {
131
+ params: {
132
+ id: string;
133
+ };
134
+ }) => Promise<NextResponse<{
135
+ success: boolean;
136
+ error: string;
137
+ }> | NextResponse<{
138
+ success: boolean;
139
+ data: any;
140
+ message: string;
141
+ }>>;
142
+ /**
143
+ * 创建删除事件的处理器
144
+ */
145
+ declare function createDeleteEventHandler(config: CalendarRouteConfig): (request: NextRequest, { params }: {
146
+ params: {
147
+ id: string;
148
+ };
149
+ }) => Promise<NextResponse<{
150
+ success: boolean;
151
+ error: string;
152
+ }> | NextResponse<{
153
+ success: boolean;
154
+ message: string;
155
+ }>>;
156
+ /**
157
+ * 创建批量删除事件的处理器
158
+ */
159
+ declare function createBatchDeleteEventsHandler(config: CalendarRouteConfig): (request: NextRequest) => Promise<NextResponse<{
160
+ success: boolean;
161
+ error: string;
162
+ }> | NextResponse<{
163
+ success: boolean;
164
+ data: {
165
+ deletedCount: number;
166
+ };
167
+ message: string;
168
+ }>>;
169
+ /**
170
+ * 创建配置处理器的工厂
171
+ */
172
+ declare function createConfigHandler(config: CalendarRouteConfig): {
173
+ GET: (request: NextRequest) => Promise<NextResponse<{
174
+ success: boolean;
175
+ error: string;
176
+ }> | NextResponse<{
177
+ success: boolean;
178
+ data: any;
179
+ message: string;
180
+ }>>;
181
+ PUT: (request: NextRequest) => Promise<NextResponse<{
182
+ success: boolean;
183
+ error: string;
184
+ }> | NextResponse<{
185
+ success: boolean;
186
+ data: any;
187
+ message: string;
188
+ }>>;
189
+ };
190
+
191
+ export { type CalendarAuthValidator, type CalendarRouteConfig, configureCalendarApiAuth, configureCalendarApiWithBetterAuth, createBatchDeleteEventsHandler, createCalendarAuthRequirement, createCalendarBatchDeleteRouteHandlers, createCalendarConfigRouteHandlers, createCalendarEventByIdRouteHandlers, createCalendarEventsRouteHandlers, createConfigHandler, createCreateEventHandler, createDefaultCalendarRouteConfig, createDeleteEventHandler, createGetEventByIdHandler, createGetEventsHandler, createUpdateEventHandler, resetCalendarApiAuth, withCalendarDbGuard };