@mx-space/api-client 1.17.0 → 1.18.0

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 (288) hide show
  1. package/controllers/ack.ts +1 -2
  2. package/controllers/activity.ts +1 -2
  3. package/controllers/aggregate.ts +1 -2
  4. package/controllers/ai.ts +1 -2
  5. package/controllers/base.ts +1 -2
  6. package/controllers/category.ts +4 -6
  7. package/controllers/comment.ts +1 -2
  8. package/controllers/link.ts +1 -3
  9. package/controllers/note.ts +5 -3
  10. package/controllers/page.ts +1 -2
  11. package/controllers/post.ts +1 -2
  12. package/controllers/project.ts +1 -3
  13. package/controllers/recently.ts +1 -2
  14. package/controllers/say.ts +1 -3
  15. package/controllers/search.ts +2 -3
  16. package/controllers/severless.ts +1 -2
  17. package/controllers/snippet.ts +1 -2
  18. package/controllers/subscribe.ts +1 -2
  19. package/controllers/topic.ts +1 -3
  20. package/controllers/user.ts +1 -2
  21. package/dist/adapter-B1dtiutp.d.cts +25 -0
  22. package/dist/adapter-CRsPadpS.d.mts +25 -0
  23. package/dist/adaptors/axios.cjs +53 -57
  24. package/dist/adaptors/axios.d.cts +5 -4
  25. package/dist/adaptors/axios.d.mts +7 -0
  26. package/dist/adaptors/axios.mjs +33 -0
  27. package/dist/adaptors/fetch.cjs +72 -108
  28. package/dist/adaptors/fetch.d.cts +4 -3
  29. package/dist/adaptors/fetch.d.mts +6 -0
  30. package/dist/adaptors/fetch.mjs +75 -0
  31. package/dist/adaptors/umi-request.cjs +32 -54
  32. package/dist/adaptors/umi-request.d.cts +5 -4
  33. package/dist/adaptors/umi-request.d.mts +7 -0
  34. package/dist/adaptors/umi-request.mjs +33 -0
  35. package/dist/index.cjs +1043 -1207
  36. package/dist/index.d.cts +1754 -1690
  37. package/dist/index.d.mts +2016 -0
  38. package/dist/index.mjs +1101 -0
  39. package/interfaces/request.ts +3 -1
  40. package/mod-dts.mjs +13 -10
  41. package/models/comment.ts +1 -2
  42. package/models/note.ts +1 -1
  43. package/models/recently.ts +2 -0
  44. package/package.json +16 -16
  45. package/{tsup.config.ts → tsdown.config.ts} +2 -2
  46. package/.eslintcache +0 -1
  47. package/coverage/clover.xml +0 -591
  48. package/coverage/coverage-final.json +0 -5944
  49. package/coverage/lcov-report/adaptors/axios.ts.html +0 -201
  50. package/coverage/lcov-report/adaptors/index.html +0 -196
  51. package/coverage/lcov-report/adaptors/umi-request.ts.html +0 -186
  52. package/coverage/lcov-report/auto-bind.ts.html +0 -228
  53. package/coverage/lcov-report/base.css +0 -354
  54. package/coverage/lcov-report/block-navigation.js +0 -85
  55. package/coverage/lcov-report/controllers/aggregate.ts.html +0 -294
  56. package/coverage/lcov-report/controllers/base.ts.html +0 -183
  57. package/coverage/lcov-report/controllers/category.ts.html +0 -441
  58. package/coverage/lcov-report/controllers/comment.ts.html +0 -291
  59. package/coverage/lcov-report/controllers/index.html +0 -476
  60. package/coverage/lcov-report/controllers/index.ts.html +0 -297
  61. package/coverage/lcov-report/controllers/link.ts.html +0 -216
  62. package/coverage/lcov-report/controllers/note.ts.html +0 -375
  63. package/coverage/lcov-report/controllers/page.ts.html +0 -279
  64. package/coverage/lcov-report/controllers/post.ts.html +0 -369
  65. package/coverage/lcov-report/controllers/project.ts.html +0 -168
  66. package/coverage/lcov-report/controllers/recently.ts.html +0 -246
  67. package/coverage/lcov-report/controllers/say.ts.html +0 -207
  68. package/coverage/lcov-report/controllers/search.ts.html +0 -411
  69. package/coverage/lcov-report/controllers/severless.ts.html +0 -180
  70. package/coverage/lcov-report/controllers/snippet.ts.html +0 -195
  71. package/coverage/lcov-report/controllers/user.ts.html +0 -240
  72. package/coverage/lcov-report/core/attach-request.ts.html +0 -216
  73. package/coverage/lcov-report/core/client.ts.html +0 -786
  74. package/coverage/lcov-report/core/error.ts.html +0 -117
  75. package/coverage/lcov-report/core/index.html +0 -236
  76. package/coverage/lcov-report/core/index.ts.html +0 -93
  77. package/coverage/lcov-report/favicon.png +0 -0
  78. package/coverage/lcov-report/index.html +0 -276
  79. package/coverage/lcov-report/index.ts.html +0 -243
  80. package/coverage/lcov-report/models/aggregate.ts.html +0 -300
  81. package/coverage/lcov-report/models/category.ts.html +0 -162
  82. package/coverage/lcov-report/models/index.html +0 -196
  83. package/coverage/lcov-report/prettify.css +0 -101
  84. package/coverage/lcov-report/prettify.js +0 -1004
  85. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  86. package/coverage/lcov-report/sorter.js +0 -191
  87. package/coverage/lcov-report/utils/auto-bind.ts.html +0 -231
  88. package/coverage/lcov-report/utils/index.html +0 -216
  89. package/coverage/lcov-report/utils/index.ts.html +0 -246
  90. package/coverage/lcov-report/utils/path.ts.html +0 -105
  91. package/coverage/lcov.info +0 -1209
  92. package/dist/adapter-B8tKfr1O.d.cts +0 -23
  93. package/dist/adapter-B8tKfr1O.d.ts +0 -23
  94. package/dist/adaptors/axios.d.ts +0 -6
  95. package/dist/adaptors/axios.global.js +0 -15030
  96. package/dist/adaptors/axios.js +0 -33
  97. package/dist/adaptors/fetch.d.ts +0 -5
  98. package/dist/adaptors/fetch.global.js +0 -87
  99. package/dist/adaptors/fetch.js +0 -87
  100. package/dist/adaptors/umi-request.d.ts +0 -6
  101. package/dist/adaptors/umi-request.global.js +0 -7625
  102. package/dist/adaptors/umi-request.js +0 -33
  103. package/dist/index.d.ts +0 -1952
  104. package/dist/index.global.js +0 -1200
  105. package/dist/index.js +0 -1241
  106. package/esm/apps/core/src/modules/subscribe/subscribe.constant.d.ts +0 -12
  107. package/esm/apps/core/src/modules/subscribe/subscribe.constant.js +0 -16
  108. package/esm/apps/core/src/modules/subscribe/subscribe.constant.js.map +0 -1
  109. package/esm/packages/api-client/adaptors/axios.d.ts +0 -4
  110. package/esm/packages/api-client/adaptors/axios.js +0 -37
  111. package/esm/packages/api-client/adaptors/axios.js.map +0 -1
  112. package/esm/packages/api-client/adaptors/fetch.d.ts +0 -2
  113. package/esm/packages/api-client/adaptors/fetch.js +0 -95
  114. package/esm/packages/api-client/adaptors/fetch.js.map +0 -1
  115. package/esm/packages/api-client/adaptors/ky.d.ts +0 -23
  116. package/esm/packages/api-client/adaptors/ky.js +0 -62
  117. package/esm/packages/api-client/adaptors/ky.js.map +0 -1
  118. package/esm/packages/api-client/adaptors/umi-request.d.ts +0 -4
  119. package/esm/packages/api-client/adaptors/umi-request.js +0 -31
  120. package/esm/packages/api-client/adaptors/umi-request.js.map +0 -1
  121. package/esm/packages/api-client/controllers/aggregate.d.ts +0 -64
  122. package/esm/packages/api-client/controllers/aggregate.js +0 -46
  123. package/esm/packages/api-client/controllers/aggregate.js.map +0 -1
  124. package/esm/packages/api-client/controllers/base.d.ts +0 -43
  125. package/esm/packages/api-client/controllers/base.js +0 -27
  126. package/esm/packages/api-client/controllers/base.js.map +0 -1
  127. package/esm/packages/api-client/controllers/category.d.ts +0 -120
  128. package/esm/packages/api-client/controllers/category.js +0 -68
  129. package/esm/packages/api-client/controllers/category.js.map +0 -1
  130. package/esm/packages/api-client/controllers/comment.d.ts +0 -81
  131. package/esm/packages/api-client/controllers/comment.js +0 -47
  132. package/esm/packages/api-client/controllers/comment.js.map +0 -1
  133. package/esm/packages/api-client/controllers/index.d.ts +0 -19
  134. package/esm/packages/api-client/controllers/index.js +0 -60
  135. package/esm/packages/api-client/controllers/index.js.map +0 -1
  136. package/esm/packages/api-client/controllers/link.d.ts +0 -20
  137. package/esm/packages/api-client/controllers/link.js +0 -21
  138. package/esm/packages/api-client/controllers/link.js.map +0 -1
  139. package/esm/packages/api-client/controllers/note.d.ts +0 -103
  140. package/esm/packages/api-client/controllers/note.js +0 -68
  141. package/esm/packages/api-client/controllers/note.js.map +0 -1
  142. package/esm/packages/api-client/controllers/page.d.ts +0 -59
  143. package/esm/packages/api-client/controllers/page.js +0 -42
  144. package/esm/packages/api-client/controllers/page.js.map +0 -1
  145. package/esm/packages/api-client/controllers/post.d.ts +0 -72
  146. package/esm/packages/api-client/controllers/post.js +0 -52
  147. package/esm/packages/api-client/controllers/post.js.map +0 -1
  148. package/esm/packages/api-client/controllers/project.d.ts +0 -15
  149. package/esm/packages/api-client/controllers/project.js +0 -12
  150. package/esm/packages/api-client/controllers/project.js.map +0 -1
  151. package/esm/packages/api-client/controllers/recently.d.ts +0 -110
  152. package/esm/packages/api-client/controllers/recently.js +0 -49
  153. package/esm/packages/api-client/controllers/recently.js.map +0 -1
  154. package/esm/packages/api-client/controllers/say.d.ts +0 -37
  155. package/esm/packages/api-client/controllers/say.js +0 -21
  156. package/esm/packages/api-client/controllers/say.js.map +0 -1
  157. package/esm/packages/api-client/controllers/search.d.ts +0 -87
  158. package/esm/packages/api-client/controllers/search.js +0 -28
  159. package/esm/packages/api-client/controllers/search.js.map +0 -1
  160. package/esm/packages/api-client/controllers/severless.d.ts +0 -24
  161. package/esm/packages/api-client/controllers/severless.js +0 -16
  162. package/esm/packages/api-client/controllers/severless.js.map +0 -1
  163. package/esm/packages/api-client/controllers/snippet.d.ts +0 -24
  164. package/esm/packages/api-client/controllers/snippet.js +0 -19
  165. package/esm/packages/api-client/controllers/snippet.js.map +0 -1
  166. package/esm/packages/api-client/controllers/subscribe.d.ts +0 -64
  167. package/esm/packages/api-client/controllers/subscribe.js +0 -35
  168. package/esm/packages/api-client/controllers/subscribe.js.map +0 -1
  169. package/esm/packages/api-client/controllers/topic.d.ts +0 -26
  170. package/esm/packages/api-client/controllers/topic.js +0 -18
  171. package/esm/packages/api-client/controllers/topic.js.map +0 -1
  172. package/esm/packages/api-client/controllers/user.d.ts +0 -70
  173. package/esm/packages/api-client/controllers/user.js +0 -40
  174. package/esm/packages/api-client/controllers/user.js.map +0 -1
  175. package/esm/packages/api-client/core/attach-request.d.ts +0 -2
  176. package/esm/packages/api-client/core/attach-request.js +0 -36
  177. package/esm/packages/api-client/core/attach-request.js.map +0 -1
  178. package/esm/packages/api-client/core/client.d.ts +0 -29
  179. package/esm/packages/api-client/core/client.js +0 -193
  180. package/esm/packages/api-client/core/client.js.map +0 -1
  181. package/esm/packages/api-client/core/error.d.ts +0 -6
  182. package/esm/packages/api-client/core/error.js +0 -9
  183. package/esm/packages/api-client/core/error.js.map +0 -1
  184. package/esm/packages/api-client/core/index.d.ts +0 -2
  185. package/esm/packages/api-client/core/index.js +0 -3
  186. package/esm/packages/api-client/core/index.js.map +0 -1
  187. package/esm/packages/api-client/dtos/comment.d.ts +0 -8
  188. package/esm/packages/api-client/dtos/comment.js +0 -2
  189. package/esm/packages/api-client/dtos/comment.js.map +0 -1
  190. package/esm/packages/api-client/dtos/index.d.ts +0 -1
  191. package/esm/packages/api-client/dtos/index.js +0 -2
  192. package/esm/packages/api-client/dtos/index.js.map +0 -1
  193. package/esm/packages/api-client/index.d.ts +0 -8
  194. package/esm/packages/api-client/index.js +0 -9
  195. package/esm/packages/api-client/index.js.map +0 -1
  196. package/esm/packages/api-client/interfaces/adapter.d.ts +0 -14
  197. package/esm/packages/api-client/interfaces/adapter.js +0 -2
  198. package/esm/packages/api-client/interfaces/adapter.js.map +0 -1
  199. package/esm/packages/api-client/interfaces/client.d.ts +0 -13
  200. package/esm/packages/api-client/interfaces/client.js +0 -2
  201. package/esm/packages/api-client/interfaces/client.js.map +0 -1
  202. package/esm/packages/api-client/interfaces/controller.d.ts +0 -4
  203. package/esm/packages/api-client/interfaces/controller.js +0 -2
  204. package/esm/packages/api-client/interfaces/controller.js.map +0 -1
  205. package/esm/packages/api-client/interfaces/instance.d.ts +0 -7
  206. package/esm/packages/api-client/interfaces/instance.js +0 -2
  207. package/esm/packages/api-client/interfaces/instance.js.map +0 -1
  208. package/esm/packages/api-client/interfaces/options.d.ts +0 -1
  209. package/esm/packages/api-client/interfaces/options.js +0 -2
  210. package/esm/packages/api-client/interfaces/options.js.map +0 -1
  211. package/esm/packages/api-client/interfaces/params.d.ts +0 -4
  212. package/esm/packages/api-client/interfaces/params.js +0 -2
  213. package/esm/packages/api-client/interfaces/params.js.map +0 -1
  214. package/esm/packages/api-client/interfaces/request.d.ts +0 -44
  215. package/esm/packages/api-client/interfaces/request.js +0 -2
  216. package/esm/packages/api-client/interfaces/request.js.map +0 -1
  217. package/esm/packages/api-client/interfaces/types.d.ts +0 -2
  218. package/esm/packages/api-client/interfaces/types.js +0 -2
  219. package/esm/packages/api-client/interfaces/types.js.map +0 -1
  220. package/esm/packages/api-client/models/aggregate.d.ts +0 -67
  221. package/esm/packages/api-client/models/aggregate.js +0 -6
  222. package/esm/packages/api-client/models/aggregate.js.map +0 -1
  223. package/esm/packages/api-client/models/base.d.ts +0 -40
  224. package/esm/packages/api-client/models/base.js +0 -2
  225. package/esm/packages/api-client/models/base.js.map +0 -1
  226. package/esm/packages/api-client/models/category.d.ts +0 -22
  227. package/esm/packages/api-client/models/category.js +0 -6
  228. package/esm/packages/api-client/models/category.js.map +0 -1
  229. package/esm/packages/api-client/models/comment.d.ts +0 -39
  230. package/esm/packages/api-client/models/comment.js +0 -13
  231. package/esm/packages/api-client/models/comment.js.map +0 -1
  232. package/esm/packages/api-client/models/index.d.ts +0 -16
  233. package/esm/packages/api-client/models/index.js +0 -17
  234. package/esm/packages/api-client/models/index.js.map +0 -1
  235. package/esm/packages/api-client/models/link.d.ts +0 -22
  236. package/esm/packages/api-client/models/link.js +0 -14
  237. package/esm/packages/api-client/models/link.js.map +0 -1
  238. package/esm/packages/api-client/models/note.d.ts +0 -38
  239. package/esm/packages/api-client/models/note.js +0 -2
  240. package/esm/packages/api-client/models/note.js.map +0 -1
  241. package/esm/packages/api-client/models/page.d.ts +0 -14
  242. package/esm/packages/api-client/models/page.js +0 -7
  243. package/esm/packages/api-client/models/page.js.map +0 -1
  244. package/esm/packages/api-client/models/post.d.ts +0 -17
  245. package/esm/packages/api-client/models/post.js +0 -2
  246. package/esm/packages/api-client/models/post.js.map +0 -1
  247. package/esm/packages/api-client/models/project.d.ts +0 -11
  248. package/esm/packages/api-client/models/project.js +0 -2
  249. package/esm/packages/api-client/models/project.js.map +0 -1
  250. package/esm/packages/api-client/models/recently.d.ts +0 -20
  251. package/esm/packages/api-client/models/recently.js +0 -7
  252. package/esm/packages/api-client/models/recently.js.map +0 -1
  253. package/esm/packages/api-client/models/say.d.ts +0 -6
  254. package/esm/packages/api-client/models/say.js +0 -2
  255. package/esm/packages/api-client/models/say.js.map +0 -1
  256. package/esm/packages/api-client/models/setting.d.ts +0 -66
  257. package/esm/packages/api-client/models/setting.js +0 -2
  258. package/esm/packages/api-client/models/setting.js.map +0 -1
  259. package/esm/packages/api-client/models/snippet.d.ts +0 -18
  260. package/esm/packages/api-client/models/snippet.js +0 -8
  261. package/esm/packages/api-client/models/snippet.js.map +0 -1
  262. package/esm/packages/api-client/models/subscribe.d.ts +0 -3
  263. package/esm/packages/api-client/models/subscribe.js +0 -2
  264. package/esm/packages/api-client/models/subscribe.js.map +0 -1
  265. package/esm/packages/api-client/models/topic.d.ts +0 -8
  266. package/esm/packages/api-client/models/topic.js +0 -2
  267. package/esm/packages/api-client/models/topic.js.map +0 -1
  268. package/esm/packages/api-client/models/user.d.ts +0 -21
  269. package/esm/packages/api-client/models/user.js +0 -2
  270. package/esm/packages/api-client/models/user.js.map +0 -1
  271. package/esm/packages/api-client/tsup.config.d.ts +0 -2
  272. package/esm/packages/api-client/tsup.config.js +0 -14
  273. package/esm/packages/api-client/tsup.config.js.map +0 -1
  274. package/esm/packages/api-client/utils/auto-bind.d.ts +0 -4
  275. package/esm/packages/api-client/utils/auto-bind.js +0 -36
  276. package/esm/packages/api-client/utils/auto-bind.js.map +0 -1
  277. package/esm/packages/api-client/utils/camelcase-keys.d.ts +0 -6
  278. package/esm/packages/api-client/utils/camelcase-keys.js +0 -23
  279. package/esm/packages/api-client/utils/camelcase-keys.js.map +0 -1
  280. package/esm/packages/api-client/utils/index.d.ts +0 -5
  281. package/esm/packages/api-client/utils/index.js +0 -43
  282. package/esm/packages/api-client/utils/index.js.map +0 -1
  283. package/esm/packages/api-client/utils/path.d.ts +0 -1
  284. package/esm/packages/api-client/utils/path.js +0 -7
  285. package/esm/packages/api-client/utils/path.js.map +0 -1
  286. package/esm/packages/api-client/vitest.config.d.ts +0 -2
  287. package/esm/packages/api-client/vitest.config.js +0 -15
  288. package/esm/packages/api-client/vitest.config.js.map +0 -1
package/dist/index.d.ts DELETED
@@ -1,1952 +0,0 @@
1
- import { R as RequestOptions, I as IRequestAdapter, a as IAdaptorRequestResponseType } from './adapter-B8tKfr1O.js';
2
-
3
- interface IController {
4
- base: string;
5
- name: string | string[];
6
- }
7
-
8
- type Class<T> = new (...args: any[]) => T;
9
- type SelectFields<T extends string> = `${'+' | '-' | ''}${T}`[];
10
-
11
- interface IClientOptions {
12
- controllers: Class<IController>[];
13
- getCodeMessageFromException: <T = Error>(error: T) => {
14
- message?: string | undefined | null;
15
- code?: number | undefined | null;
16
- };
17
- customThrowResponseError: <T extends Error = Error>(err: any) => T;
18
- transformResponse: <T = any>(data: any) => T;
19
- /**
20
- *
21
- * @default (res) => res.data
22
- */
23
- getDataFromResponse: <T = any>(response: unknown) => T;
24
- }
25
- type ClientOptions = Partial<IClientOptions>;
26
-
27
- type NoStringIndex<T> = {
28
- [K in keyof T as string extends K ? never : K]: T[K];
29
- };
30
- interface IRequestHandler<ResponseWrapper> {
31
- (path?: string | number): IRequestHandler<ResponseWrapper>;
32
- get: <P = unknown>(options?: Omit<NoStringIndex<RequestOptions>, 'data'>) => RequestProxyResult<P, ResponseWrapper>;
33
- post: <P = unknown>(options?: RequestOptions) => RequestProxyResult<P, ResponseWrapper>;
34
- patch: <P = unknown>(options?: RequestOptions) => RequestProxyResult<P, ResponseWrapper>;
35
- delete: <P = unknown>(options?: Omit<NoStringIndex<RequestOptions>, 'data'>) => RequestProxyResult<P, ResponseWrapper>;
36
- put: <P = unknown>(options?: RequestOptions) => RequestProxyResult<P, ResponseWrapper>;
37
- toString: (withBase?: boolean) => string;
38
- valueOf: (withBase?: boolean) => string;
39
- [key: string]: IRequestHandler<ResponseWrapper>;
40
- }
41
- type RequestProxyResult<T, ResponseWrapper, R = ResponseWrapper extends unknown ? {
42
- data: T;
43
- [key: string]: any;
44
- } : ResponseWrapper extends {
45
- data: T;
46
- } ? ResponseWrapper : Omit<ResponseWrapper, 'data'> & {
47
- data: T;
48
- }> = Promise<ResponseProxyExtraRaw<T, R, ResponseWrapper>>;
49
- type CamelToSnake<T extends string, P extends string = ''> = string extends T ? string : T extends `${infer C0}${infer R}` ? CamelToSnake<R, `${P}${C0 extends Lowercase<C0> ? '' : '_'}${Lowercase<C0>}`> : P;
50
- type CamelKeysToSnake<T> = {
51
- [K in keyof T as CamelToSnake<Extract<K, string>>]: T[K];
52
- };
53
- type ResponseWrapperType<Response, RawData, T> = {
54
- $raw: Response extends {
55
- data: infer T;
56
- } ? Response : Response extends unknown ? {
57
- [i: string]: any;
58
- data: RawData extends unknown ? CamelKeysToSnake<T> : RawData;
59
- } : Response;
60
- $request: {
61
- path: string;
62
- method: string;
63
- [k: string]: string;
64
- };
65
- $serialized: T;
66
- };
67
- type ResponseProxyExtraRaw<T, RawData = unknown, Response = unknown> = T extends object ? T & ResponseWrapperType<Response, RawData, T> : T extends unknown ? T & ResponseWrapperType<Response, RawData, T> : unknown;
68
-
69
- declare class HTTPClient<T extends IRequestAdapter = IRequestAdapter, ResponseWrapper = unknown> {
70
- private readonly _endpoint;
71
- private _adaptor;
72
- private options;
73
- private readonly _proxy;
74
- constructor(_endpoint: string, _adaptor: T, options?: Omit<ClientOptions, 'controllers'>);
75
- private initGetClient;
76
- injectControllers(...Controller: Class<IController>[]): void;
77
- injectControllers(Controller: Class<IController>[]): void;
78
- get endpoint(): string;
79
- get instance(): T;
80
- request(options: {
81
- url: string;
82
- method?: string;
83
- data?: any;
84
- params?: any;
85
- }): Promise<IAdaptorRequestResponseType<any>>;
86
- get proxy(): IRequestHandler<ResponseWrapper>;
87
- private buildRoute;
88
- }
89
- declare function createClient<T extends IRequestAdapter>(adapter: T): <ResponseWrapper = T extends {
90
- responseWrapper: infer Type;
91
- } ? Type extends undefined ? unknown : Type : unknown>(endpoint: string, options?: ClientOptions) => HTTPClient<T, ResponseWrapper>;
92
-
93
- declare class RequestError extends Error {
94
- status: number;
95
- path: string;
96
- raw: any;
97
- constructor(message: string, status: number, path: string, raw: any);
98
- }
99
-
100
- declare module '@mx-space/api-client' {
101
- interface HTTPClient<T extends IRequestAdapter = IRequestAdapter, ResponseWrapper = unknown> {
102
- ack: AckController<ResponseWrapper>;
103
- }
104
- }
105
- /**
106
- * @support core >= 4.4.0
107
- */
108
- declare class AckController<ResponseWrapper> implements IController {
109
- private client;
110
- base: string;
111
- name: string;
112
- constructor(client: HTTPClient);
113
- get proxy(): IRequestHandler<ResponseWrapper>;
114
- read(type: 'post' | 'note', id: string): RequestProxyResult<never, ResponseWrapper, ResponseWrapper extends unknown ? {
115
- [key: string]: any;
116
- data: never;
117
- } : ResponseWrapper extends {
118
- data: never;
119
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
120
- data: never;
121
- }>;
122
- }
123
-
124
- declare enum CollectionRefTypes {
125
- Post = "posts",
126
- Note = "notes",
127
- Page = "pages",
128
- Recently = "recentlies"
129
- }
130
-
131
- interface Count {
132
- read: number;
133
- like: number;
134
- }
135
- interface Image {
136
- height: number;
137
- width: number;
138
- type: string;
139
- accent?: string;
140
- src: string;
141
- blurHash?: string;
142
- }
143
- interface Pager {
144
- total: number;
145
- size: number;
146
- currentPage: number;
147
- totalPage: number;
148
- hasPrevPage: boolean;
149
- hasNextPage: boolean;
150
- }
151
- interface PaginateResult<T> {
152
- data: T[];
153
- pagination: Pager;
154
- }
155
- interface BaseModel {
156
- created: string;
157
- id: string;
158
- }
159
- interface BaseCommentIndexModel extends BaseModel {
160
- commentsIndex?: number;
161
- allowComment: boolean;
162
- }
163
- interface TextBaseModel extends BaseCommentIndexModel {
164
- title: string;
165
- text: string;
166
- images?: Image[];
167
- modified: string | null;
168
- }
169
- type ModelWithLiked<T> = T & {
170
- liked: boolean;
171
- };
172
-
173
- interface PostModel extends TextBaseModel {
174
- summary?: string | null;
175
- copyright: boolean;
176
- tags: string[];
177
- count: Count;
178
- text: string;
179
- title: string;
180
- slug: string;
181
- categoryId: string;
182
- images: Image[];
183
- category: CategoryModel;
184
- pin?: string | null;
185
- pinOrder?: number;
186
- related?: Pick<PostModel, 'id' | 'category' | 'categoryId' | 'created' | 'modified' | 'title' | 'slug' | 'summary'>[];
187
- }
188
-
189
- declare enum CategoryType {
190
- Category = 0,
191
- Tag = 1
192
- }
193
- interface CategoryModel extends BaseModel {
194
- type: CategoryType;
195
- count: number;
196
- slug: string;
197
- name: string;
198
- }
199
- type CategoryWithChildrenModel = CategoryModel & {
200
- children: Pick<PostModel, 'id' | 'title' | 'slug' | 'modified' | 'created'>[];
201
- };
202
- type CategoryEntries = {
203
- entries: Record<string, CategoryWithChildrenModel>;
204
- };
205
- interface TagModel {
206
- count: number;
207
- name: string;
208
- }
209
-
210
- interface ActivityPresence {
211
- operationTime: number;
212
- identity: string;
213
- roomName: string;
214
- position: number;
215
- joinedAt: number;
216
- connectedAt: number;
217
- updatedAt: number;
218
- readerId?: string;
219
- displayName?: string;
220
- }
221
- interface RoomOmittedNote {
222
- title: string;
223
- nid: number;
224
- id: string;
225
- created: string;
226
- }
227
- interface RoomOmittedPage {
228
- title: string;
229
- slug: string;
230
- id: string;
231
- created: string;
232
- }
233
- interface RoomOmittedPost {
234
- slug: string;
235
- title: string;
236
- categoryId: string;
237
- category: CategoryModel;
238
- id: string;
239
- created: string;
240
- }
241
- interface RoomsData {
242
- rooms: string[];
243
- roomCount: {
244
- [key: string]: number;
245
- };
246
- objects: {
247
- posts: RoomOmittedPost[];
248
- notes: RoomOmittedNote[];
249
- pages: RoomOmittedPage[];
250
- };
251
- }
252
- interface RecentActivities {
253
- like: RecentLike[];
254
- comment: RecentComment[];
255
- recent: RecentRecent[];
256
- post: RecentPost[];
257
- note: RecentNote[];
258
- }
259
- interface RecentComment {
260
- created: string;
261
- author: string;
262
- text: string;
263
- id: string;
264
- title: string;
265
- slug?: string;
266
- type: string;
267
- avatar: string;
268
- nid?: string;
269
- }
270
- interface RecentLike {
271
- created: string;
272
- id: string;
273
- type: CollectionRefTypes.Post | CollectionRefTypes.Note;
274
- nid?: number;
275
- slug?: string;
276
- title: string;
277
- }
278
- interface RecentNote {
279
- id: string;
280
- created: string;
281
- title: string;
282
- modified: string;
283
- nid: number;
284
- }
285
- interface RecentPost {
286
- id: string;
287
- created: string;
288
- title: string;
289
- modified: string;
290
- slug: string;
291
- }
292
- interface RecentRecent {
293
- id: string;
294
- content: string;
295
- up: number;
296
- down: number;
297
- created: string;
298
- }
299
- interface LastYearPublication {
300
- posts: PostsItem[];
301
- notes: NotesItem[];
302
- }
303
- interface PostsItem {
304
- id: string;
305
- created: string;
306
- title: string;
307
- slug: string;
308
- categoryId: string;
309
- category: Category;
310
- }
311
- interface Category {
312
- id: string;
313
- type: number;
314
- name: string;
315
- slug: string;
316
- created: string;
317
- }
318
- interface NotesItem {
319
- id: string;
320
- created: string;
321
- title: string;
322
- mood: string;
323
- weather: string;
324
- nid: number;
325
- bookmark: boolean;
326
- }
327
-
328
- interface TopicModel extends BaseModel {
329
- description?: string;
330
- introduce: string;
331
- name: string;
332
- slug: string;
333
- icon?: string;
334
- }
335
-
336
- interface NoteModel extends TextBaseModel {
337
- hide: boolean;
338
- count: {
339
- read: number;
340
- like: number;
341
- };
342
- mood?: string;
343
- weather?: string;
344
- bookmark?: boolean;
345
- publicAt?: Date;
346
- password?: string | null;
347
- nid: number;
348
- location?: string;
349
- coordinates?: Coordinate;
350
- topic?: TopicModel;
351
- topicId?: string;
352
- }
353
- interface Coordinate {
354
- latitude: number;
355
- longitude: number;
356
- }
357
- interface NoteWrappedPayload {
358
- data: NoteModel;
359
- next?: Partial<NoteModel>;
360
- prev?: Partial<NoteModel>;
361
- }
362
- interface NoteWrappedWithLikedPayload {
363
- data: ModelWithLiked<NoteModel>;
364
- next?: Partial<NoteModel>;
365
- prev?: Partial<NoteModel>;
366
- }
367
-
368
- declare enum EnumPageType {
369
- 'md' = "md",
370
- 'html' = "html",
371
- 'frame' = "frame"
372
- }
373
- interface PageModel extends TextBaseModel {
374
- created: string;
375
- slug: string;
376
- subtitle?: string;
377
- order?: number;
378
- type?: EnumPageType;
379
- options?: object;
380
- }
381
-
382
- interface SayModel extends BaseModel {
383
- text: string;
384
- source?: string;
385
- author?: string;
386
- }
387
-
388
- declare class SeoOptionModel {
389
- title: string;
390
- description: string;
391
- icon?: string;
392
- keywords?: string[];
393
- }
394
- declare class UrlOptionModel {
395
- webUrl: string;
396
- adminUrl: string;
397
- serverUrl: string;
398
- wsUrl: string;
399
- }
400
- declare class MailOptionModel {
401
- port: number;
402
- host: string;
403
- }
404
- declare class MailOptionsModel {
405
- enable: boolean;
406
- user: string;
407
- pass: string;
408
- options?: MailOptionModel;
409
- }
410
- declare class CommentOptionsModel {
411
- antiSpam: boolean;
412
- spamKeywords?: string[];
413
- blockIps?: string[];
414
- disableNoChinese?: boolean;
415
- }
416
- declare class BackupOptionsModel {
417
- enable: boolean;
418
- secretId?: string;
419
- secretKey?: string;
420
- bucket?: string;
421
- region: string;
422
- }
423
- declare class BaiduSearchOptionsModel {
424
- enable: boolean;
425
- token?: string;
426
- }
427
- declare class BingSearchOptionsModel {
428
- enable: boolean;
429
- token?: string;
430
- }
431
- declare class AlgoliaSearchOptionsModel {
432
- enable: boolean;
433
- apiKey?: string;
434
- appId?: string;
435
- indexName?: string;
436
- }
437
- declare class AdminExtraModel {
438
- background?: string;
439
- gaodemapKey?: string;
440
- title?: string;
441
- /**
442
- * 是否开启后台反代访问
443
- */
444
- enableAdminProxy?: boolean;
445
- }
446
- interface IConfig {
447
- seo: SeoOptionModel;
448
- url: UrlOptionModel;
449
- mailOptions: MailOptionsModel;
450
- commentOptions: CommentOptionsModel;
451
- backupOptions: BackupOptionsModel;
452
- baiduSearchOptions: BaiduSearchOptionsModel;
453
- algoliaSearchOptions: AlgoliaSearchOptionsModel;
454
- adminExtra: AdminExtraModel;
455
- }
456
- declare type IConfigKeys = keyof IConfig;
457
-
458
- interface UserModel extends BaseModel {
459
- introduce: string;
460
- mail: string;
461
- url: string;
462
- name: string;
463
- socialIds: Record<string, string>;
464
- username: string;
465
- modified: string;
466
- v: number;
467
- lastLoginTime: string;
468
- lastLoginIp?: string;
469
- avatar: string;
470
- postID: string;
471
- }
472
- type TLogin = {
473
- token: string;
474
- expiresIn: number;
475
- lastLoginTime: null | string;
476
- lastLoginIp?: null | string;
477
- } & Pick<UserModel, 'name' | 'username' | 'created' | 'url' | 'mail' | 'avatar' | 'id'>;
478
-
479
- interface AggregateRoot {
480
- user: UserModel;
481
- seo: SeoOptionModel;
482
- url: Url;
483
- categories: CategoryModel[];
484
- pageMeta: Pick<PageModel, 'title' | 'id' | 'slug' | 'order'>[] | null;
485
- /**
486
- * @available 4.2.2
487
- */
488
- latestNoteId: {
489
- id: string;
490
- nid: number;
491
- };
492
- }
493
- interface AggregateRootWithTheme<Theme = unknown> extends AggregateRoot {
494
- theme?: Theme;
495
- }
496
- interface Url {
497
- wsUrl: string;
498
- serverUrl: string;
499
- webUrl: string;
500
- }
501
- interface AggregateTopNote extends Pick<NoteModel, 'id' | 'title' | 'created' | 'nid' | 'images'> {
502
- }
503
- interface AggregateTopPost extends Pick<PostModel, 'id' | 'slug' | 'created' | 'title' | 'category' | 'images'> {
504
- }
505
- interface AggregateTop {
506
- notes: AggregateTopNote[];
507
- posts: AggregateTopPost[];
508
- says: SayModel[];
509
- }
510
- declare enum TimelineType {
511
- Post = 0,
512
- Note = 1
513
- }
514
- interface TimelineData {
515
- notes?: Pick<NoteModel, 'id' | 'nid' | 'title' | 'weather' | 'mood' | 'created' | 'modified' | 'bookmark'>[];
516
- posts?: (Pick<PostModel, 'id' | 'title' | 'slug' | 'created' | 'modified' | 'category'> & {
517
- url: string;
518
- })[];
519
- }
520
- interface AggregateStat {
521
- allComments: number;
522
- categories: number;
523
- comments: number;
524
- linkApply: number;
525
- links: number;
526
- notes: number;
527
- pages: number;
528
- posts: number;
529
- says: number;
530
- recently: number;
531
- unreadComments: number;
532
- online: number;
533
- todayMaxOnline: string;
534
- todayOnlineTotal: string;
535
- callTime: number;
536
- uv: number;
537
- todayIpAccessCount: number;
538
- }
539
-
540
- interface AISummaryModel {
541
- id: string;
542
- created: string;
543
- summary: string;
544
- hash: string;
545
- refId: string;
546
- lang: string;
547
- }
548
- interface AIDeepReadingModel {
549
- id: string;
550
- hash: string;
551
- refId: string;
552
- keyPoints: string[];
553
- criticalAnalysis: string;
554
- content: string;
555
- }
556
-
557
- interface AuthUser {
558
- id: string;
559
- email: string;
560
- isOwner: boolean;
561
- image: string;
562
- name: string;
563
- provider: string;
564
- handle: string;
565
- }
566
-
567
- interface CommentModel extends BaseModel {
568
- refType: CollectionRefTypes;
569
- ref: string;
570
- state: number;
571
- commentsIndex: number;
572
- author: string;
573
- text: string;
574
- mail?: string;
575
- url?: string;
576
- ip?: string;
577
- agent?: string;
578
- key: string;
579
- pin?: boolean;
580
- avatar: string;
581
- parent?: CommentModel | string;
582
- children: CommentModel[];
583
- isWhispers?: boolean;
584
- location?: string;
585
- source?: string;
586
- readerId?: string;
587
- editedAt?: string;
588
- }
589
- interface CommentRef {
590
- id: string;
591
- categoryId?: string;
592
- slug: string;
593
- title: string;
594
- category?: CategoryModel;
595
- }
596
- declare enum CommentState {
597
- Unread = 0,
598
- Read = 1,
599
- Junk = 2
600
- }
601
-
602
- declare enum LinkType {
603
- Friend = 0,
604
- Collection = 1
605
- }
606
- declare enum LinkState {
607
- Pass = 0,
608
- Audit = 1,
609
- Outdate = 2,
610
- Banned = 3,
611
- Reject = 4
612
- }
613
- interface LinkModel extends BaseModel {
614
- name: string;
615
- url: string;
616
- avatar: string;
617
- description?: string;
618
- type: LinkType;
619
- state: LinkState;
620
- hide: boolean;
621
- email: string;
622
- }
623
-
624
- interface ProjectModel extends BaseModel {
625
- name: string;
626
- previewUrl?: string;
627
- docUrl?: string;
628
- projectUrl?: string;
629
- images?: string[];
630
- description: string;
631
- avatar?: string;
632
- text: string;
633
- }
634
-
635
- interface ReaderModel {
636
- email: string;
637
- name: string;
638
- handle: string;
639
- image: string;
640
- isOwner: boolean;
641
- }
642
-
643
- declare enum RecentlyRefTypes {
644
- Post = "Post",
645
- Note = "Note",
646
- Page = "Page"
647
- }
648
- type RecentlyRefType = {
649
- title: string;
650
- url: string;
651
- };
652
- interface RecentlyModel extends BaseCommentIndexModel {
653
- content: string;
654
- ref?: RecentlyRefType & {
655
- [key: string]: any;
656
- };
657
- refId?: string;
658
- refType?: RecentlyRefTypes;
659
- up: number;
660
- down: number;
661
- }
662
-
663
- declare enum SnippetType {
664
- JSON = "json",
665
- Function = "function",
666
- Text = "text",
667
- YAML = "yaml"
668
- }
669
- interface SnippetModel<T = unknown> extends BaseModel {
670
- type: SnippetType;
671
- private: boolean;
672
- raw: string;
673
- name: string;
674
- reference: string;
675
- comment?: string;
676
- metatype?: string;
677
- schema?: string;
678
- data: T;
679
- }
680
-
681
- declare const SubscribePostCreateBit: number;
682
- declare const SubscribeNoteCreateBit: number;
683
- declare const SubscribeSayCreateBit: number;
684
- declare const SubscribeRecentCreateBit: number;
685
- declare const SubscribeAllBit: number;
686
- declare const SubscribeTypeToBitMap: {
687
- post_c: number;
688
- note_c: number;
689
- say_c: number;
690
- recently_c: number;
691
- all: number;
692
- };
693
-
694
- type SubscribeType = keyof typeof SubscribeTypeToBitMap;
695
-
696
- declare module '@mx-space/api-client' {
697
- interface HTTPClient<T extends IRequestAdapter = IRequestAdapter, ResponseWrapper = unknown> {
698
- activity: ActivityController<ResponseWrapper>;
699
- }
700
- }
701
- /**
702
- * @support core >= 4.3.0
703
- */
704
- declare class ActivityController<ResponseWrapper> implements IController {
705
- private client;
706
- base: string;
707
- name: string;
708
- constructor(client: HTTPClient);
709
- get proxy(): IRequestHandler<ResponseWrapper>;
710
- likeIt(type: 'Post' | 'Note', id: string): RequestProxyResult<never, ResponseWrapper, ResponseWrapper extends unknown ? {
711
- [key: string]: any;
712
- data: never;
713
- } : ResponseWrapper extends {
714
- data: never;
715
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
716
- data: never;
717
- }>;
718
- /**
719
- *
720
- * @support core >= 5.0.0
721
- */
722
- getPresence(roomName: string): RequestProxyResult<{
723
- data: Record<string, ActivityPresence>;
724
- readers: Record<string, AuthUser>;
725
- }, ResponseWrapper, ResponseWrapper extends unknown ? {
726
- [key: string]: any;
727
- data: {
728
- data: Record<string, ActivityPresence>;
729
- readers: Record<string, AuthUser>;
730
- };
731
- } : ResponseWrapper extends {
732
- data: {
733
- data: Record<string, ActivityPresence>;
734
- readers: Record<string, AuthUser>;
735
- };
736
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
737
- data: {
738
- data: Record<string, ActivityPresence>;
739
- readers: Record<string, AuthUser>;
740
- };
741
- }>;
742
- /**
743
- *
744
- * @support core >= 5.0.0
745
- */
746
- updatePresence({ identity, position, roomName, sid, ts, displayName, readerId, }: {
747
- roomName: string;
748
- position: number;
749
- identity: string;
750
- sid: string;
751
- displayName?: string;
752
- ts?: number;
753
- readerId?: string;
754
- }): RequestProxyResult<unknown, ResponseWrapper, ResponseWrapper extends unknown ? {
755
- [key: string]: any;
756
- data: unknown;
757
- } : ResponseWrapper extends {
758
- data: unknown;
759
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
760
- data: unknown;
761
- }>;
762
- getRoomsInfo(): Promise<RoomsData & {
763
- $raw: ResponseWrapper extends {
764
- data: infer T;
765
- } ? ResponseWrapper : ResponseWrapper extends unknown ? {
766
- [i: string]: any;
767
- data: (ResponseWrapper extends unknown ? {
768
- [key: string]: any;
769
- data: RoomsData;
770
- } : ResponseWrapper extends {
771
- data: RoomsData;
772
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
773
- data: RoomsData;
774
- }) extends infer T_1 ? T_1 extends (ResponseWrapper extends unknown ? {
775
- [key: string]: any;
776
- data: RoomsData;
777
- } : ResponseWrapper extends {
778
- data: RoomsData;
779
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
780
- data: RoomsData;
781
- }) ? T_1 extends unknown ? {
782
- rooms: string[];
783
- room_count: {
784
- [key: string]: number;
785
- };
786
- objects: {
787
- posts: RoomOmittedPost[];
788
- notes: RoomOmittedNote[];
789
- pages: RoomOmittedPage[];
790
- };
791
- } : T_1 : never : never;
792
- } : ResponseWrapper;
793
- $request: {
794
- path: string;
795
- method: string;
796
- [k: string]: string;
797
- };
798
- $serialized: RoomsData;
799
- }>;
800
- getRecentActivities(): Promise<RecentActivities & {
801
- $raw: ResponseWrapper extends {
802
- data: infer T;
803
- } ? ResponseWrapper : ResponseWrapper extends unknown ? {
804
- [i: string]: any;
805
- data: (ResponseWrapper extends unknown ? {
806
- [key: string]: any;
807
- data: RecentActivities;
808
- } : ResponseWrapper extends {
809
- data: RecentActivities;
810
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
811
- data: RecentActivities;
812
- }) extends infer T_1 ? T_1 extends (ResponseWrapper extends unknown ? {
813
- [key: string]: any;
814
- data: RecentActivities;
815
- } : ResponseWrapper extends {
816
- data: RecentActivities;
817
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
818
- data: RecentActivities;
819
- }) ? T_1 extends unknown ? {
820
- like: RecentLike[];
821
- comment: RecentComment[];
822
- recent: RecentRecent[];
823
- post: RecentPost[];
824
- note: RecentNote[];
825
- } : T_1 : never : never;
826
- } : ResponseWrapper;
827
- $request: {
828
- path: string;
829
- method: string;
830
- [k: string]: string;
831
- };
832
- $serialized: RecentActivities;
833
- }>;
834
- getLastYearPublication(): Promise<LastYearPublication>;
835
- }
836
-
837
- type SortOrder = 'asc' | 'desc';
838
-
839
- declare module '@mx-space/api-client' {
840
- interface HTTPClient<T extends IRequestAdapter = IRequestAdapter, ResponseWrapper = unknown> {
841
- aggregate: AggregateController<ResponseWrapper>;
842
- }
843
- }
844
- declare class AggregateController<ResponseWrapper> implements IController {
845
- private client;
846
- base: string;
847
- name: string;
848
- constructor(client: HTTPClient);
849
- get proxy(): IRequestHandler<ResponseWrapper>;
850
- /**
851
- * 获取聚合数据
852
- */
853
- getAggregateData<Theme>(theme?: string): RequestProxyResult<AggregateRootWithTheme<Theme>, ResponseWrapper>;
854
- /**
855
- * 获取最新发布的内容
856
- */
857
- getTop(size?: number): RequestProxyResult<AggregateTop, ResponseWrapper, ResponseWrapper extends unknown ? {
858
- [key: string]: any;
859
- data: AggregateTop;
860
- } : ResponseWrapper extends {
861
- data: AggregateTop;
862
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
863
- data: AggregateTop;
864
- }>;
865
- getTimeline(options?: {
866
- sort?: SortOrder;
867
- type?: TimelineType;
868
- year?: number;
869
- }): RequestProxyResult<{
870
- data: TimelineData;
871
- }, ResponseWrapper, ResponseWrapper extends unknown ? {
872
- [key: string]: any;
873
- data: {
874
- data: TimelineData;
875
- };
876
- } : ResponseWrapper extends {
877
- data: {
878
- data: TimelineData;
879
- };
880
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
881
- data: {
882
- data: TimelineData;
883
- };
884
- }>;
885
- /**
886
- * 获取聚合数据统计
887
- */
888
- getStat(): RequestProxyResult<AggregateStat, ResponseWrapper, ResponseWrapper extends unknown ? {
889
- [key: string]: any;
890
- data: AggregateStat;
891
- } : ResponseWrapper extends {
892
- data: AggregateStat;
893
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
894
- data: AggregateStat;
895
- }>;
896
- }
897
-
898
- declare module '@mx-space/api-client' {
899
- interface HTTPClient<T extends IRequestAdapter = IRequestAdapter, ResponseWrapper = unknown> {
900
- ai: AIController<ResponseWrapper>;
901
- }
902
- }
903
- /**
904
- * @support core >= 5.6.0
905
- */
906
- declare class AIController<ResponseWrapper> implements IController {
907
- private client;
908
- base: string;
909
- name: string;
910
- constructor(client: HTTPClient);
911
- get proxy(): IRequestHandler<ResponseWrapper>;
912
- getSummary({ articleId, lang, onlyDb, }: {
913
- articleId: string;
914
- lang?: string;
915
- onlyDb?: boolean;
916
- }): Promise<AISummaryModel & {
917
- $raw: ResponseWrapper extends {
918
- data: infer T;
919
- } ? ResponseWrapper : ResponseWrapper extends unknown ? {
920
- [i: string]: any;
921
- data: (ResponseWrapper extends unknown ? {
922
- [key: string]: any;
923
- data: AISummaryModel;
924
- } : ResponseWrapper extends {
925
- data: AISummaryModel;
926
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
927
- data: AISummaryModel;
928
- }) extends infer T_1 ? T_1 extends (ResponseWrapper extends unknown ? {
929
- [key: string]: any;
930
- data: AISummaryModel;
931
- } : ResponseWrapper extends {
932
- data: AISummaryModel;
933
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
934
- data: AISummaryModel;
935
- }) ? T_1 extends unknown ? {
936
- id: string;
937
- created: string;
938
- summary: string;
939
- hash: string;
940
- ref_id: string;
941
- lang: string;
942
- } : T_1 : never : never;
943
- } : ResponseWrapper;
944
- $request: {
945
- path: string;
946
- method: string;
947
- [k: string]: string;
948
- };
949
- $serialized: AISummaryModel;
950
- }>;
951
- generateSummary(articleId: string, lang?: string, token?: string): Promise<AISummaryModel & {
952
- $raw: ResponseWrapper extends {
953
- data: infer T;
954
- } ? ResponseWrapper : ResponseWrapper extends unknown ? {
955
- [i: string]: any;
956
- data: (ResponseWrapper extends unknown ? {
957
- [key: string]: any;
958
- data: AISummaryModel;
959
- } : ResponseWrapper extends {
960
- data: AISummaryModel;
961
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
962
- data: AISummaryModel;
963
- }) extends infer T_1 ? T_1 extends (ResponseWrapper extends unknown ? {
964
- [key: string]: any;
965
- data: AISummaryModel;
966
- } : ResponseWrapper extends {
967
- data: AISummaryModel;
968
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
969
- data: AISummaryModel;
970
- }) ? T_1 extends unknown ? {
971
- id: string;
972
- created: string;
973
- summary: string;
974
- hash: string;
975
- ref_id: string;
976
- lang: string;
977
- } : T_1 : never : never;
978
- } : ResponseWrapper;
979
- $request: {
980
- path: string;
981
- method: string;
982
- [k: string]: string;
983
- };
984
- $serialized: AISummaryModel;
985
- }>;
986
- /**
987
- * Core >= 8.3.0
988
- * @param articleId
989
- */
990
- getDeepReading(articleId: string): Promise<AIDeepReadingModel & {
991
- $raw: ResponseWrapper extends {
992
- data: infer T;
993
- } ? ResponseWrapper : ResponseWrapper extends unknown ? {
994
- [i: string]: any;
995
- data: (ResponseWrapper extends unknown ? {
996
- [key: string]: any;
997
- data: AIDeepReadingModel;
998
- } : ResponseWrapper extends {
999
- data: AIDeepReadingModel;
1000
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1001
- data: AIDeepReadingModel;
1002
- }) extends infer T_1 ? T_1 extends (ResponseWrapper extends unknown ? {
1003
- [key: string]: any;
1004
- data: AIDeepReadingModel;
1005
- } : ResponseWrapper extends {
1006
- data: AIDeepReadingModel;
1007
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1008
- data: AIDeepReadingModel;
1009
- }) ? T_1 extends unknown ? {
1010
- id: string;
1011
- hash: string;
1012
- ref_id: string;
1013
- key_points: string[];
1014
- critical_analysis: string;
1015
- content: string;
1016
- } : T_1 : never : never;
1017
- } : ResponseWrapper;
1018
- $request: {
1019
- path: string;
1020
- method: string;
1021
- [k: string]: string;
1022
- };
1023
- $serialized: AIDeepReadingModel;
1024
- }>;
1025
- }
1026
-
1027
- declare module '@mx-space/api-client' {
1028
- interface HTTPClient<T extends IRequestAdapter = IRequestAdapter, ResponseWrapper = unknown> {
1029
- category: CategoryController<ResponseWrapper>;
1030
- }
1031
- }
1032
- declare class CategoryController<ResponseWrapper> implements IController {
1033
- private client;
1034
- name: string;
1035
- base: string;
1036
- constructor(client: HTTPClient);
1037
- get proxy(): IRequestHandler<ResponseWrapper>;
1038
- getAllCategories(): RequestProxyResult<{
1039
- data: CategoryModel[];
1040
- }, ResponseWrapper>;
1041
- getAllTags(): RequestProxyResult<{
1042
- data: TagModel[];
1043
- }, ResponseWrapper>;
1044
- getCategoryDetail(id: string): Promise<ResponseProxyExtraRaw<CategoryWithChildrenModel>>;
1045
- getCategoryDetail(ids: string[]): Promise<ResponseProxyExtraRaw<Map<string, CategoryWithChildrenModel>>>;
1046
- getCategoryByIdOrSlug(idOrSlug: string): Promise<CategoryModel & {
1047
- children: Pick<PostModel, "id" | "title" | "slug" | "modified" | "created">[];
1048
- } & {
1049
- $raw: ResponseWrapper extends {
1050
- data: infer T;
1051
- } ? ResponseWrapper : ResponseWrapper extends unknown ? {
1052
- [i: string]: any;
1053
- data: (ResponseWrapper extends unknown ? {
1054
- [key: string]: any;
1055
- data: CategoryWithChildrenModel;
1056
- } : ResponseWrapper extends {
1057
- data: CategoryWithChildrenModel;
1058
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1059
- data: CategoryWithChildrenModel;
1060
- }) extends infer T_1 ? T_1 extends (ResponseWrapper extends unknown ? {
1061
- [key: string]: any;
1062
- data: CategoryWithChildrenModel;
1063
- } : ResponseWrapper extends {
1064
- data: CategoryWithChildrenModel;
1065
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1066
- data: CategoryWithChildrenModel;
1067
- }) ? T_1 extends unknown ? {
1068
- type: CategoryType;
1069
- count: number;
1070
- slug: string;
1071
- name: string;
1072
- created: string;
1073
- id: string;
1074
- children: Pick<PostModel, "id" | "created" | "modified" | "title" | "slug">[];
1075
- } : T_1 : never : never;
1076
- } : ResponseWrapper;
1077
- $request: {
1078
- path: string;
1079
- method: string;
1080
- [k: string]: string;
1081
- };
1082
- $serialized: CategoryWithChildrenModel;
1083
- }>;
1084
- getTagByName(name: string): Promise<{
1085
- tag: string;
1086
- data: Pick<PostModel, "id" | "title" | "slug" | "category" | "created">[];
1087
- } & {
1088
- $raw: ResponseWrapper extends {
1089
- data: infer T;
1090
- } ? ResponseWrapper : ResponseWrapper extends unknown ? {
1091
- [i: string]: any;
1092
- data: (ResponseWrapper extends unknown ? {
1093
- [key: string]: any;
1094
- data: {
1095
- tag: string;
1096
- data: Pick<PostModel, "id" | "title" | "slug" | "category" | "created">[];
1097
- };
1098
- } : ResponseWrapper extends {
1099
- data: {
1100
- tag: string;
1101
- data: Pick<PostModel, "id" | "title" | "slug" | "category" | "created">[];
1102
- };
1103
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1104
- data: {
1105
- tag: string;
1106
- data: Pick<PostModel, "id" | "title" | "slug" | "category" | "created">[];
1107
- };
1108
- }) extends infer T_1 ? T_1 extends (ResponseWrapper extends unknown ? {
1109
- [key: string]: any;
1110
- data: {
1111
- tag: string;
1112
- data: Pick<PostModel, "id" | "title" | "slug" | "category" | "created">[];
1113
- };
1114
- } : ResponseWrapper extends {
1115
- data: {
1116
- tag: string;
1117
- data: Pick<PostModel, "id" | "title" | "slug" | "category" | "created">[];
1118
- };
1119
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1120
- data: {
1121
- tag: string;
1122
- data: Pick<PostModel, "id" | "title" | "slug" | "category" | "created">[];
1123
- };
1124
- }) ? T_1 extends unknown ? {
1125
- tag: string;
1126
- data: Pick<PostModel, "id" | "category" | "created" | "title" | "slug">[];
1127
- } : T_1 : never : never;
1128
- } : ResponseWrapper;
1129
- $request: {
1130
- path: string;
1131
- method: string;
1132
- [k: string]: string;
1133
- };
1134
- $serialized: {
1135
- tag: string;
1136
- data: Pick<PostModel, "id" | "title" | "slug" | "category" | "created">[];
1137
- };
1138
- }>;
1139
- }
1140
-
1141
- interface PaginationParams {
1142
- size?: number;
1143
- page?: number;
1144
- }
1145
-
1146
- interface CommentDto {
1147
- author: string;
1148
- text: string;
1149
- mail: string;
1150
- url?: string;
1151
- source?: 'github' | 'google';
1152
- avatar?: string;
1153
- }
1154
-
1155
- declare module '@mx-space/api-client' {
1156
- interface HTTPClient<T extends IRequestAdapter = IRequestAdapter, ResponseWrapper = unknown> {
1157
- comment: CommentController<ResponseWrapper>;
1158
- }
1159
- }
1160
- declare class CommentController<ResponseWrapper> implements IController {
1161
- private readonly client;
1162
- base: string;
1163
- name: string;
1164
- constructor(client: HTTPClient);
1165
- get proxy(): IRequestHandler<ResponseWrapper>;
1166
- /**
1167
- * 根据 comment id 获取评论,包括子评论
1168
- */
1169
- getById(id: string): RequestProxyResult<CommentModel & {
1170
- ref: string;
1171
- }, ResponseWrapper, ResponseWrapper extends unknown ? {
1172
- [key: string]: any;
1173
- data: CommentModel & {
1174
- ref: string;
1175
- };
1176
- } : ResponseWrapper extends {
1177
- data: CommentModel & {
1178
- ref: string;
1179
- };
1180
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1181
- data: CommentModel & {
1182
- ref: string;
1183
- };
1184
- }>;
1185
- /**
1186
- * 获取文章的评论列表
1187
- * @param refId 文章 Id
1188
- */
1189
- getByRefId(refId: string, pagination?: PaginationParams): RequestProxyResult<PaginateResult<CommentModel & {
1190
- ref: string;
1191
- }> & {
1192
- readers: Record<string, ReaderModel>;
1193
- }, ResponseWrapper, ResponseWrapper extends unknown ? {
1194
- [key: string]: any;
1195
- data: PaginateResult<CommentModel & {
1196
- ref: string;
1197
- }> & {
1198
- readers: Record<string, ReaderModel>;
1199
- };
1200
- } : ResponseWrapper extends {
1201
- data: PaginateResult<CommentModel & {
1202
- ref: string;
1203
- }> & {
1204
- readers: Record<string, ReaderModel>;
1205
- };
1206
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1207
- data: PaginateResult<CommentModel & {
1208
- ref: string;
1209
- }> & {
1210
- readers: Record<string, ReaderModel>;
1211
- };
1212
- }>;
1213
- /**
1214
- * 评论
1215
- */
1216
- comment(refId: string, data: CommentDto): RequestProxyResult<CommentModel, ResponseWrapper, ResponseWrapper extends unknown ? {
1217
- [key: string]: any;
1218
- data: CommentModel;
1219
- } : ResponseWrapper extends {
1220
- data: CommentModel;
1221
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1222
- data: CommentModel;
1223
- }>;
1224
- /**
1225
- * 回复评论
1226
- */
1227
- reply(commentId: string, data: CommentDto): RequestProxyResult<CommentModel, ResponseWrapper, ResponseWrapper extends unknown ? {
1228
- [key: string]: any;
1229
- data: CommentModel;
1230
- } : ResponseWrapper extends {
1231
- data: CommentModel;
1232
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1233
- data: CommentModel;
1234
- }>;
1235
- }
1236
-
1237
- type SortOptions = {
1238
- sortBy?: string;
1239
- sortOrder?: 1 | -1 | 'asc' | 'desc';
1240
- };
1241
- declare abstract class BaseCrudController<T, ResponseWrapper> {
1242
- protected client: HTTPClient;
1243
- base: string;
1244
- constructor(client: HTTPClient);
1245
- get proxy(): IRequestHandler<ResponseWrapper>;
1246
- getById(id: string): RequestProxyResult<T, ResponseWrapper>;
1247
- getAll(): RequestProxyResult<{
1248
- data: T[];
1249
- }, ResponseWrapper, ResponseWrapper extends unknown ? {
1250
- [key: string]: any;
1251
- data: {
1252
- data: T[];
1253
- };
1254
- } : ResponseWrapper extends {
1255
- data: {
1256
- data: T[];
1257
- };
1258
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1259
- data: {
1260
- data: T[];
1261
- };
1262
- }>;
1263
- /**
1264
- * 带分页的查询
1265
- * @param page
1266
- * @param perPage
1267
- */
1268
- getAllPaginated(page?: number, perPage?: number, sortOption?: SortOptions): RequestProxyResult<PaginateResult<T>, ResponseWrapper, ResponseWrapper extends unknown ? {
1269
- [key: string]: any;
1270
- data: PaginateResult<T>;
1271
- } : ResponseWrapper extends {
1272
- data: PaginateResult<T>;
1273
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1274
- data: PaginateResult<T>;
1275
- }>;
1276
- }
1277
-
1278
- declare module '@mx-space/api-client' {
1279
- interface HTTPClient<T extends IRequestAdapter = IRequestAdapter, ResponseWrapper = unknown> {
1280
- link: LinkController<ResponseWrapper>;
1281
- friend: LinkController<ResponseWrapper>;
1282
- }
1283
- }
1284
- declare class LinkController<ResponseWrapper> extends BaseCrudController<LinkModel, ResponseWrapper> {
1285
- protected readonly client: HTTPClient;
1286
- constructor(client: HTTPClient);
1287
- canApplyLink(): Promise<boolean>;
1288
- applyLink(data: Pick<LinkModel, 'avatar' | 'name' | 'description' | 'url' | 'email'> & {
1289
- author: string;
1290
- }): Promise<never>;
1291
- name: string[];
1292
- base: string;
1293
- }
1294
-
1295
- declare module '@mx-space/api-client' {
1296
- interface HTTPClient<T extends IRequestAdapter = IRequestAdapter, ResponseWrapper = unknown> {
1297
- note: NoteController<ResponseWrapper>;
1298
- }
1299
- }
1300
- type NoteListOptions = {
1301
- select?: SelectFields<keyof NoteModel>;
1302
- year?: number;
1303
- sortBy?: 'weather' | 'mood' | 'title' | 'created' | 'modified';
1304
- sortOrder?: 1 | -1;
1305
- };
1306
- declare class NoteController<ResponseWrapper> implements IController {
1307
- private client;
1308
- base: string;
1309
- name: string;
1310
- constructor(client: HTTPClient);
1311
- get proxy(): IRequestHandler<ResponseWrapper>;
1312
- /**
1313
- * 最新日记
1314
- */
1315
- getLatest(): RequestProxyResult<NoteWrappedWithLikedPayload, ResponseWrapper, ResponseWrapper extends unknown ? {
1316
- [key: string]: any;
1317
- data: NoteWrappedWithLikedPayload;
1318
- } : ResponseWrapper extends {
1319
- data: NoteWrappedWithLikedPayload;
1320
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1321
- data: NoteWrappedWithLikedPayload;
1322
- }>;
1323
- /**
1324
- * 获取一篇日记,根据 Id 查询需要鉴权
1325
- * @param id id | nid
1326
- * @param password 访问密码
1327
- */
1328
- getNoteById(id: string): Promise<RequestProxyResult<NoteModel, ResponseWrapper>>;
1329
- getNoteById(id: number): Promise<NoteWrappedPayload>;
1330
- getNoteById(id: number, password: string): Promise<NoteWrappedPayload>;
1331
- getNoteById(id: number, password: undefined, singleResult: true): Promise<RequestProxyResult<NoteModel, ResponseWrapper>>;
1332
- getNoteById(id: number, password: string, singleResult: true): Promise<RequestProxyResult<NoteModel, ResponseWrapper>>;
1333
- /**
1334
- * 日记列表分页
1335
- */
1336
- getList(page?: number, perPage?: number, options?: NoteListOptions): RequestProxyResult<PaginateResult<NoteModel>, ResponseWrapper, ResponseWrapper extends unknown ? {
1337
- [key: string]: any;
1338
- data: PaginateResult<NoteModel>;
1339
- } : ResponseWrapper extends {
1340
- data: PaginateResult<NoteModel>;
1341
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1342
- data: PaginateResult<NoteModel>;
1343
- }>;
1344
- /**
1345
- * 获取当前日记的上下各 n / 2 篇日记
1346
- */
1347
- getMiddleList(id: string, size?: number): RequestProxyResult<{
1348
- data: Pick<NoteModel, "id" | "title" | "nid" | "created" | "hide">[];
1349
- size: number;
1350
- }, ResponseWrapper, ResponseWrapper extends unknown ? {
1351
- [key: string]: any;
1352
- data: {
1353
- data: Pick<NoteModel, "id" | "title" | "nid" | "created" | "hide">[];
1354
- size: number;
1355
- };
1356
- } : ResponseWrapper extends {
1357
- data: {
1358
- data: Pick<NoteModel, "id" | "title" | "nid" | "created" | "hide">[];
1359
- size: number;
1360
- };
1361
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1362
- data: {
1363
- data: Pick<NoteModel, "id" | "title" | "nid" | "created" | "hide">[];
1364
- size: number;
1365
- };
1366
- }>;
1367
- /**
1368
- * 获取专栏内的所有日记
1369
- */
1370
- getNoteByTopicId(topicId: string, page?: number, size?: number, sortOptions?: SortOptions): RequestProxyResult<PaginateResult<NoteModel>, ResponseWrapper, ResponseWrapper extends unknown ? {
1371
- [key: string]: any;
1372
- data: PaginateResult<NoteModel>;
1373
- } : ResponseWrapper extends {
1374
- data: PaginateResult<NoteModel>;
1375
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1376
- data: PaginateResult<NoteModel>;
1377
- }>;
1378
- }
1379
-
1380
- declare module '@mx-space/api-client' {
1381
- interface HTTPClient<T extends IRequestAdapter = IRequestAdapter, ResponseWrapper = unknown> {
1382
- page: PageController<ResponseWrapper>;
1383
- }
1384
- }
1385
- type PageListOptions = {
1386
- select?: SelectFields<keyof PageModel>;
1387
- sortBy?: 'order' | 'subtitle' | 'title' | 'created' | 'modified';
1388
- sortOrder?: 1 | -1;
1389
- };
1390
- declare class PageController<ResponseWrapper> implements IController {
1391
- private readonly client;
1392
- constructor(client: HTTPClient);
1393
- base: string;
1394
- name: string;
1395
- get proxy(): IRequestHandler<ResponseWrapper>;
1396
- /**
1397
- * 页面列表
1398
- */
1399
- getList(page?: number, perPage?: number, options?: PageListOptions): RequestProxyResult<PaginateResult<PageModel>, ResponseWrapper, ResponseWrapper extends unknown ? {
1400
- [key: string]: any;
1401
- data: PaginateResult<PageModel>;
1402
- } : ResponseWrapper extends {
1403
- data: PaginateResult<PageModel>;
1404
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1405
- data: PaginateResult<PageModel>;
1406
- }>;
1407
- /**
1408
- * 页面详情
1409
- */
1410
- getById(id: string): RequestProxyResult<PageModel, ResponseWrapper, ResponseWrapper extends unknown ? {
1411
- [key: string]: any;
1412
- data: PageModel;
1413
- } : ResponseWrapper extends {
1414
- data: PageModel;
1415
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1416
- data: PageModel;
1417
- }>;
1418
- /**
1419
- * 根据路径获取页面
1420
- * @param slug 路径
1421
- * @returns
1422
- */
1423
- getBySlug(slug: string): RequestProxyResult<PageModel, ResponseWrapper, ResponseWrapper extends unknown ? {
1424
- [key: string]: any;
1425
- data: PageModel;
1426
- } : ResponseWrapper extends {
1427
- data: PageModel;
1428
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1429
- data: PageModel;
1430
- }>;
1431
- }
1432
-
1433
- declare module '@mx-space/api-client' {
1434
- interface HTTPClient<T extends IRequestAdapter = IRequestAdapter, ResponseWrapper = unknown> {
1435
- post: PostController<ResponseWrapper>;
1436
- }
1437
- }
1438
- type PostListOptions = {
1439
- select?: SelectFields<keyof PostModel>;
1440
- year?: number;
1441
- sortBy?: 'categoryId' | 'title' | 'created' | 'modified';
1442
- sortOrder?: 1 | -1;
1443
- truncate?: number;
1444
- };
1445
- declare class PostController<ResponseWrapper> implements IController {
1446
- private client;
1447
- constructor(client: HTTPClient);
1448
- base: string;
1449
- name: string;
1450
- get proxy(): IRequestHandler<ResponseWrapper>;
1451
- /**
1452
- * 获取文章列表分页
1453
- * @param page
1454
- * @param perPage
1455
- * @returns
1456
- */
1457
- getList(page?: number, perPage?: number, options?: PostListOptions): RequestProxyResult<PaginateResult<PostModel>, ResponseWrapper, ResponseWrapper extends unknown ? {
1458
- [key: string]: any;
1459
- data: PaginateResult<PostModel>;
1460
- } : ResponseWrapper extends {
1461
- data: PaginateResult<PostModel>;
1462
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1463
- data: PaginateResult<PostModel>;
1464
- }>;
1465
- /**
1466
- * 根据分类和路径查找文章
1467
- * @param categoryName
1468
- * @param slug
1469
- */
1470
- getPost(categoryName: string, slug: string): RequestProxyResult<ModelWithLiked<PostModel>, ResponseWrapper>;
1471
- /**
1472
- * 根据 ID 查找文章
1473
- * @param id
1474
- */
1475
- getPost(id: string): RequestProxyResult<PostModel, ResponseWrapper>;
1476
- /**
1477
- * 获取最新的文章
1478
- */
1479
- getLatest(): RequestProxyResult<ModelWithLiked<PostModel>, ResponseWrapper, ResponseWrapper extends unknown ? {
1480
- [key: string]: any;
1481
- data: ModelWithLiked<PostModel>;
1482
- } : ResponseWrapper extends {
1483
- data: ModelWithLiked<PostModel>;
1484
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1485
- data: ModelWithLiked<PostModel>;
1486
- }>;
1487
- getFullUrl(slug: string): RequestProxyResult<{
1488
- path: string;
1489
- }, ResponseWrapper, ResponseWrapper extends unknown ? {
1490
- [key: string]: any;
1491
- data: {
1492
- path: string;
1493
- };
1494
- } : ResponseWrapper extends {
1495
- data: {
1496
- path: string;
1497
- };
1498
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1499
- data: {
1500
- path: string;
1501
- };
1502
- }>;
1503
- }
1504
-
1505
- declare module '@mx-space/api-client' {
1506
- interface HTTPClient<T extends IRequestAdapter = IRequestAdapter, ResponseWrapper = unknown> {
1507
- project: ProjectController<ResponseWrapper>;
1508
- }
1509
- }
1510
- declare class ProjectController<ResponseWrapper> extends BaseCrudController<ProjectModel, ResponseWrapper> {
1511
- protected readonly client: HTTPClient;
1512
- constructor(client: HTTPClient);
1513
- base: string;
1514
- name: string;
1515
- }
1516
-
1517
- declare module '@mx-space/api-client' {
1518
- interface HTTPClient<T extends IRequestAdapter = IRequestAdapter, ResponseWrapper = unknown> {
1519
- recently: RecentlyController<ResponseWrapper>;
1520
- shorthand: RecentlyController<ResponseWrapper>;
1521
- }
1522
- }
1523
- declare enum RecentlyAttitudeResultEnum {
1524
- Inc = 1,
1525
- Dec = -1
1526
- }
1527
- declare enum RecentlyAttitudeEnum {
1528
- Up = 0,
1529
- Down = 1
1530
- }
1531
- declare class RecentlyController<ResponseWrapper> implements IController {
1532
- private readonly client;
1533
- base: string;
1534
- name: string[];
1535
- constructor(client: HTTPClient);
1536
- get proxy(): IRequestHandler<ResponseWrapper>;
1537
- /**
1538
- * 获取最新一条
1539
- */
1540
- getLatestOne(): RequestProxyResult<RecentlyModel & {
1541
- comments: number;
1542
- }, ResponseWrapper, ResponseWrapper extends unknown ? {
1543
- [key: string]: any;
1544
- data: RecentlyModel & {
1545
- comments: number;
1546
- };
1547
- } : ResponseWrapper extends {
1548
- data: RecentlyModel & {
1549
- comments: number;
1550
- };
1551
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1552
- data: RecentlyModel & {
1553
- comments: number;
1554
- };
1555
- }>;
1556
- getAll(): RequestProxyResult<{
1557
- data: RecentlyModel[] & {
1558
- comments: number;
1559
- };
1560
- }, ResponseWrapper, ResponseWrapper extends unknown ? {
1561
- [key: string]: any;
1562
- data: {
1563
- data: RecentlyModel[] & {
1564
- comments: number;
1565
- };
1566
- };
1567
- } : ResponseWrapper extends {
1568
- data: {
1569
- data: RecentlyModel[] & {
1570
- comments: number;
1571
- };
1572
- };
1573
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1574
- data: {
1575
- data: RecentlyModel[] & {
1576
- comments: number;
1577
- };
1578
- };
1579
- }>;
1580
- getList({ before, after, size, }?: {
1581
- before?: string | undefined;
1582
- after?: string | undefined;
1583
- size?: number | number;
1584
- }): RequestProxyResult<{
1585
- data: RecentlyModel[] & {
1586
- comments: number;
1587
- };
1588
- }, ResponseWrapper, ResponseWrapper extends unknown ? {
1589
- [key: string]: any;
1590
- data: {
1591
- data: RecentlyModel[] & {
1592
- comments: number;
1593
- };
1594
- };
1595
- } : ResponseWrapper extends {
1596
- data: {
1597
- data: RecentlyModel[] & {
1598
- comments: number;
1599
- };
1600
- };
1601
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1602
- data: {
1603
- data: RecentlyModel[] & {
1604
- comments: number;
1605
- };
1606
- };
1607
- }>;
1608
- getById(id: string): RequestProxyResult<RecentlyModel & {
1609
- comments: number;
1610
- }, ResponseWrapper, ResponseWrapper extends unknown ? {
1611
- [key: string]: any;
1612
- data: RecentlyModel & {
1613
- comments: number;
1614
- };
1615
- } : ResponseWrapper extends {
1616
- data: RecentlyModel & {
1617
- comments: number;
1618
- };
1619
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1620
- data: RecentlyModel & {
1621
- comments: number;
1622
- };
1623
- }>;
1624
- /** 表态:点赞,点踩 */
1625
- attitude(id: string, attitude: RecentlyAttitudeEnum): RequestProxyResult<{
1626
- code: RecentlyAttitudeResultEnum;
1627
- }, ResponseWrapper, ResponseWrapper extends unknown ? {
1628
- [key: string]: any;
1629
- data: {
1630
- code: RecentlyAttitudeResultEnum;
1631
- };
1632
- } : ResponseWrapper extends {
1633
- data: {
1634
- code: RecentlyAttitudeResultEnum;
1635
- };
1636
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1637
- data: {
1638
- code: RecentlyAttitudeResultEnum;
1639
- };
1640
- }>;
1641
- }
1642
-
1643
- declare module '@mx-space/api-client' {
1644
- interface HTTPClient<T extends IRequestAdapter = IRequestAdapter, ResponseWrapper = unknown> {
1645
- say: SayController<ResponseWrapper>;
1646
- }
1647
- }
1648
- declare class SayController<ResponseWrapper> extends BaseCrudController<SayModel, ResponseWrapper> implements IController {
1649
- protected client: HTTPClient;
1650
- base: string;
1651
- name: string;
1652
- constructor(client: HTTPClient);
1653
- get proxy(): IRequestHandler<ResponseWrapper>;
1654
- /**
1655
- * 获取随机一条
1656
- */
1657
- getRandom(): RequestProxyResult<{
1658
- data: SayModel | null;
1659
- }, ResponseWrapper, ResponseWrapper extends unknown ? {
1660
- [key: string]: any;
1661
- data: {
1662
- data: SayModel | null;
1663
- };
1664
- } : ResponseWrapper extends {
1665
- data: {
1666
- data: SayModel | null;
1667
- };
1668
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1669
- data: {
1670
- data: SayModel | null;
1671
- };
1672
- }>;
1673
- }
1674
-
1675
- declare module '@mx-space/api-client' {
1676
- interface HTTPClient<T extends IRequestAdapter = IRequestAdapter, ResponseWrapper = unknown> {
1677
- search: SearchController<ResponseWrapper>;
1678
- }
1679
- }
1680
- type SearchOption = {
1681
- orderBy?: string;
1682
- order?: number;
1683
- rawAlgolia?: boolean;
1684
- };
1685
- declare class SearchController<ResponseWrapper> implements IController {
1686
- private readonly client;
1687
- base: string;
1688
- name: string;
1689
- constructor(client: HTTPClient);
1690
- get proxy(): IRequestHandler<ResponseWrapper>;
1691
- search(type: 'note', keyword: string, options?: Omit<SearchOption, 'rawAlgolia'>): Promise<RequestProxyResult<PaginateResult<Pick<NoteModel, 'modified' | 'id' | 'title' | 'created' | 'nid'>>, ResponseWrapper>>;
1692
- search(type: 'post', keyword: string, options?: Omit<SearchOption, 'rawAlgolia'>): Promise<RequestProxyResult<PaginateResult<Pick<PostModel, 'modified' | 'id' | 'title' | 'created' | 'slug' | 'category'>>, ResponseWrapper>>;
1693
- /**
1694
- * 从 algolya 搜索
1695
- * https://www.algolia.com/doc/api-reference/api-methods/search/
1696
- * @param keyword
1697
- * @param options
1698
- * @returns
1699
- */
1700
- searchByAlgolia(keyword: string, options?: SearchOption): RequestProxyResult<RequestProxyResult<PaginateResult<(Pick<PostModel, "id" | "category" | "created" | "modified" | "title" | "slug"> & {
1701
- type: "post";
1702
- }) | (Pick<NoteModel, "id" | "created" | "modified" | "title" | "nid"> & {
1703
- type: "note";
1704
- }) | (Pick<PageModel, "id" | "created" | "modified" | "title" | "slug"> & {
1705
- type: "page";
1706
- })> & {
1707
- /**
1708
- * @see: algoliasearch <https://www.algolia.com/doc/api-reference/api-methods/search/>
1709
- */
1710
- raw?: any;
1711
- }, ResponseWrapper>, ResponseWrapper, ResponseWrapper extends unknown ? {
1712
- [key: string]: any;
1713
- data: RequestProxyResult<PaginateResult<(Pick<PostModel, "id" | "category" | "created" | "modified" | "title" | "slug"> & {
1714
- type: "post";
1715
- }) | (Pick<NoteModel, "id" | "created" | "modified" | "title" | "nid"> & {
1716
- type: "note";
1717
- }) | (Pick<PageModel, "id" | "created" | "modified" | "title" | "slug"> & {
1718
- type: "page";
1719
- })> & {
1720
- /**
1721
- * @see: algoliasearch <https://www.algolia.com/doc/api-reference/api-methods/search/>
1722
- */
1723
- raw?: any;
1724
- }, ResponseWrapper>;
1725
- } : ResponseWrapper extends {
1726
- data: RequestProxyResult<PaginateResult<(Pick<PostModel, "id" | "category" | "created" | "modified" | "title" | "slug"> & {
1727
- type: "post";
1728
- }) | (Pick<NoteModel, "id" | "created" | "modified" | "title" | "nid"> & {
1729
- type: "note";
1730
- }) | (Pick<PageModel, "id" | "created" | "modified" | "title" | "slug"> & {
1731
- type: "page";
1732
- })> & {
1733
- /**
1734
- * @see: algoliasearch <https://www.algolia.com/doc/api-reference/api-methods/search/>
1735
- */
1736
- raw?: any;
1737
- }, ResponseWrapper>;
1738
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1739
- data: RequestProxyResult<PaginateResult<(Pick<PostModel, "id" | "category" | "created" | "modified" | "title" | "slug"> & {
1740
- type: "post";
1741
- }) | (Pick<NoteModel, "id" | "created" | "modified" | "title" | "nid"> & {
1742
- type: "note";
1743
- }) | (Pick<PageModel, "id" | "created" | "modified" | "title" | "slug"> & {
1744
- type: "page";
1745
- })> & {
1746
- /**
1747
- * @see: algoliasearch <https://www.algolia.com/doc/api-reference/api-methods/search/>
1748
- */
1749
- raw?: any;
1750
- }, ResponseWrapper>;
1751
- }>;
1752
- }
1753
-
1754
- declare module '@mx-space/api-client' {
1755
- interface HTTPClient<T extends IRequestAdapter = IRequestAdapter, ResponseWrapper = unknown> {
1756
- serverless: ServerlessController<ResponseWrapper>;
1757
- }
1758
- }
1759
- declare class ServerlessController<ResponseWrapper> implements IController {
1760
- protected client: HTTPClient;
1761
- base: string;
1762
- name: string;
1763
- constructor(client: HTTPClient);
1764
- get proxy(): IRequestHandler<ResponseWrapper>;
1765
- getByReferenceAndName<T = unknown>(reference: string, name: string): RequestProxyResult<T, ResponseWrapper, ResponseWrapper extends unknown ? {
1766
- [key: string]: any;
1767
- data: T;
1768
- } : ResponseWrapper extends {
1769
- data: T;
1770
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1771
- data: T;
1772
- }>;
1773
- }
1774
-
1775
- declare module '@mx-space/api-client' {
1776
- interface HTTPClient<T extends IRequestAdapter = IRequestAdapter, ResponseWrapper = unknown> {
1777
- snippet: SnippetController<ResponseWrapper>;
1778
- }
1779
- }
1780
- declare class SnippetController<ResponseWrapper> implements IController {
1781
- protected client: HTTPClient;
1782
- base: string;
1783
- name: string;
1784
- constructor(client: HTTPClient);
1785
- get proxy(): IRequestHandler<ResponseWrapper>;
1786
- getByReferenceAndName<T = unknown>(reference: string, name: string): RequestProxyResult<T, ResponseWrapper, ResponseWrapper extends unknown ? {
1787
- [key: string]: any;
1788
- data: T;
1789
- } : ResponseWrapper extends {
1790
- data: T;
1791
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1792
- data: T;
1793
- }>;
1794
- }
1795
-
1796
- declare module '@mx-space/api-client' {
1797
- interface HTTPClient<T extends IRequestAdapter = IRequestAdapter, ResponseWrapper = unknown> {
1798
- subscribe: SubscribeController<ResponseWrapper>;
1799
- }
1800
- }
1801
- declare class SubscribeController<ResponseWrapper> implements IController {
1802
- protected client: HTTPClient;
1803
- base: string;
1804
- name: string;
1805
- constructor(client: HTTPClient);
1806
- get proxy(): IRequestHandler<ResponseWrapper>;
1807
- /**
1808
- * 检查开启状态
1809
- */
1810
- check(): RequestProxyResult<{
1811
- enable: boolean;
1812
- bitMap: Record<SubscribeType, number>;
1813
- allowBits: number[];
1814
- allowTypes: SubscribeType[];
1815
- }, ResponseWrapper, ResponseWrapper extends unknown ? {
1816
- [key: string]: any;
1817
- data: {
1818
- enable: boolean;
1819
- bitMap: Record<SubscribeType, number>;
1820
- allowBits: number[];
1821
- allowTypes: SubscribeType[];
1822
- };
1823
- } : ResponseWrapper extends {
1824
- data: {
1825
- enable: boolean;
1826
- bitMap: Record<SubscribeType, number>;
1827
- allowBits: number[];
1828
- allowTypes: SubscribeType[];
1829
- };
1830
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1831
- data: {
1832
- enable: boolean;
1833
- bitMap: Record<SubscribeType, number>;
1834
- allowBits: number[];
1835
- allowTypes: SubscribeType[];
1836
- };
1837
- }>;
1838
- subscribe(email: string, types: SubscribeType[]): RequestProxyResult<never, ResponseWrapper, ResponseWrapper extends unknown ? {
1839
- [key: string]: any;
1840
- data: never;
1841
- } : ResponseWrapper extends {
1842
- data: never;
1843
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1844
- data: never;
1845
- }>;
1846
- unsubscribe(email: string, cancelToken: string): RequestProxyResult<string, ResponseWrapper, ResponseWrapper extends unknown ? {
1847
- [key: string]: any;
1848
- data: string;
1849
- } : ResponseWrapper extends {
1850
- data: string;
1851
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1852
- data: string;
1853
- }>;
1854
- }
1855
-
1856
- declare module '@mx-space/api-client' {
1857
- interface HTTPClient<T extends IRequestAdapter = IRequestAdapter, ResponseWrapper = unknown> {
1858
- topic: TopicController<ResponseWrapper>;
1859
- }
1860
- }
1861
- declare class TopicController<ResponseWrapper> extends BaseCrudController<TopicModel, ResponseWrapper> implements IController {
1862
- protected client: HTTPClient;
1863
- base: string;
1864
- name: string;
1865
- constructor(client: HTTPClient);
1866
- get proxy(): IRequestHandler<ResponseWrapper>;
1867
- getTopicBySlug(slug: string): RequestProxyResult<TopicModel, ResponseWrapper, ResponseWrapper extends unknown ? {
1868
- [key: string]: any;
1869
- data: TopicModel;
1870
- } : ResponseWrapper extends {
1871
- data: TopicModel;
1872
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1873
- data: TopicModel;
1874
- }>;
1875
- }
1876
-
1877
- declare module '@mx-space/api-client' {
1878
- interface HTTPClient<T extends IRequestAdapter = IRequestAdapter, ResponseWrapper = unknown> {
1879
- user: UserController<ResponseWrapper>;
1880
- master: UserController<ResponseWrapper>;
1881
- }
1882
- }
1883
- declare class UserController<ResponseWrapper> implements IController {
1884
- private readonly client;
1885
- constructor(client: HTTPClient);
1886
- base: string;
1887
- name: string[];
1888
- get proxy(): IRequestHandler<ResponseWrapper>;
1889
- getMasterInfo(): RequestProxyResult<UserModel, ResponseWrapper, ResponseWrapper extends unknown ? {
1890
- [key: string]: any;
1891
- data: UserModel;
1892
- } : ResponseWrapper extends {
1893
- data: UserModel;
1894
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1895
- data: UserModel;
1896
- }>;
1897
- login(username: string, password: string): RequestProxyResult<TLogin, ResponseWrapper, ResponseWrapper extends unknown ? {
1898
- [key: string]: any;
1899
- data: TLogin;
1900
- } : ResponseWrapper extends {
1901
- data: TLogin;
1902
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1903
- data: TLogin;
1904
- }>;
1905
- loginWithToken(token?: string): RequestProxyResult<{
1906
- token: string;
1907
- }, ResponseWrapper, ResponseWrapper extends unknown ? {
1908
- [key: string]: any;
1909
- data: {
1910
- token: string;
1911
- };
1912
- } : ResponseWrapper extends {
1913
- data: {
1914
- token: string;
1915
- };
1916
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1917
- data: {
1918
- token: string;
1919
- };
1920
- }>;
1921
- checkTokenValid(token: string): RequestProxyResult<{
1922
- ok: number;
1923
- isGuest: boolean;
1924
- }, ResponseWrapper, ResponseWrapper extends unknown ? {
1925
- [key: string]: any;
1926
- data: {
1927
- ok: number;
1928
- isGuest: boolean;
1929
- };
1930
- } : ResponseWrapper extends {
1931
- data: {
1932
- ok: number;
1933
- isGuest: boolean;
1934
- };
1935
- } ? ResponseWrapper : Omit<ResponseWrapper, "data"> & {
1936
- data: {
1937
- ok: number;
1938
- isGuest: boolean;
1939
- };
1940
- }>;
1941
- }
1942
-
1943
- declare const allControllers: (typeof AckController | typeof ActivityController | typeof AggregateController | typeof AIController | typeof CategoryController | typeof CommentController | typeof LinkController | typeof NoteController | typeof PageController | typeof PostController | typeof ProjectController | typeof RecentlyController | typeof SayController | typeof SearchController | typeof ServerlessController | typeof SnippetController | typeof SubscribeController | typeof TopicController | typeof UserController)[];
1944
- declare const allControllerNames: readonly ["ai", "ack", "activity", "aggregate", "category", "comment", "link", "note", "page", "post", "project", "topic", "recently", "say", "search", "snippet", "serverless", "subscribe", "user", "friend", "master", "shorthand"];
1945
-
1946
- /**
1947
- * A simple camelCase function that only handles strings, but not handling symbol, date, or other complex case.
1948
- * If you need to handle more complex cases, please use camelcase-keys package.
1949
- */
1950
- declare const camelcaseKeys: <T = any>(obj: any) => T;
1951
-
1952
- export { AIController, type AIDeepReadingModel, type AISummaryModel, AckController, ActivityController, type ActivityPresence, AdminExtraModel, AggregateController, type AggregateRoot, type AggregateRootWithTheme, type AggregateStat, type AggregateTop, type AggregateTopNote, type AggregateTopPost, AlgoliaSearchOptionsModel, type AuthUser, BackupOptionsModel, BaiduSearchOptionsModel, type BaseCommentIndexModel, type BaseModel, BingSearchOptionsModel, CategoryController, type CategoryEntries, type CategoryModel, CategoryType, type CategoryWithChildrenModel, CollectionRefTypes, CommentController, type CommentDto, type CommentModel, CommentOptionsModel, type CommentRef, CommentState, type Coordinate, type Count, EnumPageType, HTTPClient, type IConfig, type IConfigKeys, IRequestAdapter, type Image, type LastYearPublication, LinkController, type LinkModel, LinkState, LinkType, MailOptionsModel, type ModelWithLiked, NoteController, type NoteModel, type NoteWrappedPayload, type NoteWrappedWithLikedPayload, PageController, type PageModel, type Pager, type PaginateResult, PostController, type PostModel, ProjectController, type ProjectModel, type ReaderModel, type RecentActivities, type RecentComment, type RecentLike, type RecentNote, type RecentPost, type RecentRecent, RecentlyAttitudeEnum, RecentlyAttitudeResultEnum, RecentlyController, type RecentlyModel, type RecentlyRefType, RecentlyRefTypes, RequestError, type RoomOmittedNote, type RoomOmittedPage, type RoomOmittedPost, type RoomsData, SayController, type SayModel, SearchController, SeoOptionModel, ServerlessController, SnippetController, type SnippetModel, SnippetType, SubscribeAllBit, SubscribeController, SubscribeNoteCreateBit, SubscribePostCreateBit, SubscribeRecentCreateBit, SubscribeSayCreateBit, type SubscribeType, SubscribeTypeToBitMap, type TLogin, type TagModel, type TextBaseModel, type TimelineData, TimelineType, TopicController, type TopicModel, type Url, UrlOptionModel, UserController, type UserModel, allControllerNames, allControllers, createClient, createClient as default, camelcaseKeys as simpleCamelcaseKeys };