@sdkwork/ai-sdk 1.0.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 (318) hide show
  1. package/README.md +276 -0
  2. package/dist/api/assistants.d.ts +19 -0
  3. package/dist/api/assistants.d.ts.map +1 -0
  4. package/dist/api/audio.d.ts +15 -0
  5. package/dist/api/audio.d.ts.map +1 -0
  6. package/dist/api/base.d.ts +13 -0
  7. package/dist/api/base.d.ts.map +1 -0
  8. package/dist/api/batches.d.ts +17 -0
  9. package/dist/api/batches.d.ts.map +1 -0
  10. package/dist/api/chat-completions.d.ts +19 -0
  11. package/dist/api/chat-completions.d.ts.map +1 -0
  12. package/dist/api/chat.d.ts +27 -0
  13. package/dist/api/chat.d.ts.map +1 -0
  14. package/dist/api/context.d.ts +16 -0
  15. package/dist/api/context.d.ts.map +1 -0
  16. package/dist/api/embeddings.d.ts +10 -0
  17. package/dist/api/embeddings.d.ts.map +1 -0
  18. package/dist/api/files.d.ts +19 -0
  19. package/dist/api/files.d.ts.map +1 -0
  20. package/dist/api/images.d.ts +14 -0
  21. package/dist/api/images.d.ts.map +1 -0
  22. package/dist/api/index.d.ts +20 -0
  23. package/dist/api/index.d.ts.map +1 -0
  24. package/dist/api/knowledge-bases.d.ts +27 -0
  25. package/dist/api/knowledge-bases.d.ts.map +1 -0
  26. package/dist/api/models.d.ts +14 -0
  27. package/dist/api/models.d.ts.map +1 -0
  28. package/dist/api/moderations.d.ts +10 -0
  29. package/dist/api/moderations.d.ts.map +1 -0
  30. package/dist/api/music.d.ts +17 -0
  31. package/dist/api/music.d.ts.map +1 -0
  32. package/dist/api/paths.d.ts +3 -0
  33. package/dist/api/paths.d.ts.map +1 -0
  34. package/dist/api/rerank.d.ts +10 -0
  35. package/dist/api/rerank.d.ts.map +1 -0
  36. package/dist/api/responses.d.ts +18 -0
  37. package/dist/api/responses.d.ts.map +1 -0
  38. package/dist/api/threads.d.ts +43 -0
  39. package/dist/api/threads.d.ts.map +1 -0
  40. package/dist/api/videos.d.ts +17 -0
  41. package/dist/api/videos.d.ts.map +1 -0
  42. package/dist/auth/index.d.ts +3 -0
  43. package/dist/auth/index.d.ts.map +1 -0
  44. package/dist/http/client.d.ts +21 -0
  45. package/dist/http/client.d.ts.map +1 -0
  46. package/dist/http/index.d.ts +2 -0
  47. package/dist/http/index.d.ts.map +1 -0
  48. package/dist/index.cjs +2 -0
  49. package/dist/index.cjs.map +1 -0
  50. package/dist/index.d.ts +6 -0
  51. package/dist/index.d.ts.map +1 -0
  52. package/dist/index.js +639 -0
  53. package/dist/index.js.map +1 -0
  54. package/dist/sdk.d.ts +49 -0
  55. package/dist/sdk.d.ts.map +1 -0
  56. package/dist/types/annotation.d.ts +11 -0
  57. package/dist/types/annotation.d.ts.map +1 -0
  58. package/dist/types/assistant-create-request.d.ts +26 -0
  59. package/dist/types/assistant-create-request.d.ts.map +1 -0
  60. package/dist/types/assistant-delete-response.d.ts +10 -0
  61. package/dist/types/assistant-delete-response.d.ts.map +1 -0
  62. package/dist/types/assistant-list-response.d.ts +15 -0
  63. package/dist/types/assistant-list-response.d.ts.map +1 -0
  64. package/dist/types/assistant-response.d.ts +30 -0
  65. package/dist/types/assistant-response.d.ts.map +1 -0
  66. package/dist/types/attachment.d.ts +8 -0
  67. package/dist/types/attachment.d.ts.map +1 -0
  68. package/dist/types/audio-parameters.d.ts +8 -0
  69. package/dist/types/audio-parameters.d.ts.map +1 -0
  70. package/dist/types/audio.d.ts +12 -0
  71. package/dist/types/audio.d.ts.map +1 -0
  72. package/dist/types/batch-create-request.d.ts +12 -0
  73. package/dist/types/batch-create-request.d.ts.map +1 -0
  74. package/dist/types/batch-list-response.d.ts +15 -0
  75. package/dist/types/batch-list-response.d.ts.map +1 -0
  76. package/dist/types/batch-response.d.ts +42 -0
  77. package/dist/types/batch-response.d.ts.map +1 -0
  78. package/dist/types/cancel-response-response.d.ts +2 -0
  79. package/dist/types/cancel-response-response.d.ts.map +1 -0
  80. package/dist/types/categories.d.ts +22 -0
  81. package/dist/types/categories.d.ts.map +1 -0
  82. package/dist/types/category-scores.d.ts +22 -0
  83. package/dist/types/category-scores.d.ts.map +1 -0
  84. package/dist/types/chat-completion-delete-response.d.ts +10 -0
  85. package/dist/types/chat-completion-delete-response.d.ts.map +1 -0
  86. package/dist/types/chat-completion-list.d.ts +15 -0
  87. package/dist/types/chat-completion-list.d.ts.map +1 -0
  88. package/dist/types/chat-completion-request.d.ts +66 -0
  89. package/dist/types/chat-completion-request.d.ts.map +1 -0
  90. package/dist/types/chat-completion-response.d.ts +22 -0
  91. package/dist/types/chat-completion-response.d.ts.map +1 -0
  92. package/dist/types/chat-message-list.d.ts +15 -0
  93. package/dist/types/chat-message-list.d.ts.map +1 -0
  94. package/dist/types/chat-message.d.ts +23 -0
  95. package/dist/types/chat-message.d.ts.map +1 -0
  96. package/dist/types/chat-with-context-request.d.ts +3 -0
  97. package/dist/types/chat-with-context-request.d.ts.map +1 -0
  98. package/dist/types/choice.d.ts +16 -0
  99. package/dist/types/choice.d.ts.map +1 -0
  100. package/dist/types/chunk-config.d.ts +10 -0
  101. package/dist/types/chunk-config.d.ts.map +1 -0
  102. package/dist/types/common.d.ts +36 -0
  103. package/dist/types/common.d.ts.map +1 -0
  104. package/dist/types/completion-tokens-details.d.ts +12 -0
  105. package/dist/types/completion-tokens-details.d.ts.map +1 -0
  106. package/dist/types/content-block.d.ts +12 -0
  107. package/dist/types/content-block.d.ts.map +1 -0
  108. package/dist/types/content.d.ts +13 -0
  109. package/dist/types/content.d.ts.map +1 -0
  110. package/dist/types/context-create-request.d.ts +16 -0
  111. package/dist/types/context-create-request.d.ts.map +1 -0
  112. package/dist/types/context-message.d.ts +13 -0
  113. package/dist/types/context-message.d.ts.map +1 -0
  114. package/dist/types/context-response.d.ts +22 -0
  115. package/dist/types/context-response.d.ts.map +1 -0
  116. package/dist/types/count-claude-tokens-request.d.ts +2 -0
  117. package/dist/types/count-claude-tokens-request.d.ts.map +1 -0
  118. package/dist/types/count-claude-tokens-response.d.ts +2 -0
  119. package/dist/types/count-claude-tokens-response.d.ts.map +1 -0
  120. package/dist/types/create-chat-completion-response.d.ts +2 -0
  121. package/dist/types/create-chat-completion-response.d.ts.map +1 -0
  122. package/dist/types/create-claude-message-request.d.ts +2 -0
  123. package/dist/types/create-claude-message-request.d.ts.map +1 -0
  124. package/dist/types/create-claude-message-response.d.ts +2 -0
  125. package/dist/types/create-claude-message-response.d.ts.map +1 -0
  126. package/dist/types/create-response-request.d.ts +3 -0
  127. package/dist/types/create-response-request.d.ts.map +1 -0
  128. package/dist/types/create-response-response.d.ts +2 -0
  129. package/dist/types/create-response-response.d.ts.map +1 -0
  130. package/dist/types/create-run-response.d.ts +2 -0
  131. package/dist/types/create-run-response.d.ts.map +1 -0
  132. package/dist/types/create-thread-and-run-response.d.ts +2 -0
  133. package/dist/types/create-thread-and-run-response.d.ts.map +1 -0
  134. package/dist/types/create-transcription-request.d.ts +5 -0
  135. package/dist/types/create-transcription-request.d.ts.map +1 -0
  136. package/dist/types/create-translation-request.d.ts +5 -0
  137. package/dist/types/create-translation-request.d.ts.map +1 -0
  138. package/dist/types/delete-response-response.d.ts +2 -0
  139. package/dist/types/delete-response-response.d.ts.map +1 -0
  140. package/dist/types/document-add-request.d.ts +17 -0
  141. package/dist/types/document-add-request.d.ts.map +1 -0
  142. package/dist/types/document-response.d.ts +22 -0
  143. package/dist/types/document-response.d.ts.map +1 -0
  144. package/dist/types/document.d.ts +8 -0
  145. package/dist/types/document.d.ts.map +1 -0
  146. package/dist/types/embedding-request.d.ts +9 -0
  147. package/dist/types/embedding-request.d.ts.map +1 -0
  148. package/dist/types/embedding-response.d.ts +14 -0
  149. package/dist/types/embedding-response.d.ts.map +1 -0
  150. package/dist/types/embedding.d.ts +10 -0
  151. package/dist/types/embedding.d.ts.map +1 -0
  152. package/dist/types/error-object.d.ts +12 -0
  153. package/dist/types/error-object.d.ts.map +1 -0
  154. package/dist/types/errors.d.ts +9 -0
  155. package/dist/types/errors.d.ts.map +1 -0
  156. package/dist/types/file-citation.d.ts +8 -0
  157. package/dist/types/file-citation.d.ts.map +1 -0
  158. package/dist/types/filter.d.ts +10 -0
  159. package/dist/types/filter.d.ts.map +1 -0
  160. package/dist/types/function-call.d.ts +8 -0
  161. package/dist/types/function-call.d.ts.map +1 -0
  162. package/dist/types/function.d.ts +8 -0
  163. package/dist/types/function.d.ts.map +1 -0
  164. package/dist/types/get-response-response.d.ts +2 -0
  165. package/dist/types/get-response-response.d.ts.map +1 -0
  166. package/dist/types/image-data.d.ts +6 -0
  167. package/dist/types/image-data.d.ts.map +1 -0
  168. package/dist/types/image-file-content.d.ts +6 -0
  169. package/dist/types/image-file-content.d.ts.map +1 -0
  170. package/dist/types/image-generation-request.d.ts +14 -0
  171. package/dist/types/image-generation-request.d.ts.map +1 -0
  172. package/dist/types/image-generation-response.d.ts +6 -0
  173. package/dist/types/image-generation-response.d.ts.map +1 -0
  174. package/dist/types/index.d.ts +131 -0
  175. package/dist/types/index.d.ts.map +1 -0
  176. package/dist/types/json-schema.d.ts +12 -0
  177. package/dist/types/json-schema.d.ts.map +1 -0
  178. package/dist/types/knowledge-base-create-request.d.ts +14 -0
  179. package/dist/types/knowledge-base-create-request.d.ts.map +1 -0
  180. package/dist/types/knowledge-base-list-response.d.ts +11 -0
  181. package/dist/types/knowledge-base-list-response.d.ts.map +1 -0
  182. package/dist/types/knowledge-base-response.d.ts +22 -0
  183. package/dist/types/knowledge-base-response.d.ts.map +1 -0
  184. package/dist/types/knowledge-search-request.d.ts +15 -0
  185. package/dist/types/knowledge-search-request.d.ts.map +1 -0
  186. package/dist/types/knowledge-search-response.d.ts +9 -0
  187. package/dist/types/knowledge-search-response.d.ts.map +1 -0
  188. package/dist/types/last-error.d.ts +8 -0
  189. package/dist/types/last-error.d.ts.map +1 -0
  190. package/dist/types/list-documents-response.d.ts +3 -0
  191. package/dist/types/list-documents-response.d.ts.map +1 -0
  192. package/dist/types/list-response-input-items-response.d.ts +2 -0
  193. package/dist/types/list-response-input-items-response.d.ts.map +1 -0
  194. package/dist/types/logprobs.d.ts +9 -0
  195. package/dist/types/logprobs.d.ts.map +1 -0
  196. package/dist/types/message.d.ts +17 -0
  197. package/dist/types/message.d.ts.map +1 -0
  198. package/dist/types/moderation-request.d.ts +7 -0
  199. package/dist/types/moderation-request.d.ts.map +1 -0
  200. package/dist/types/moderation-response.d.ts +11 -0
  201. package/dist/types/moderation-response.d.ts.map +1 -0
  202. package/dist/types/moderation-result.d.ts +12 -0
  203. package/dist/types/moderation-result.d.ts.map +1 -0
  204. package/dist/types/music-error.d.ts +8 -0
  205. package/dist/types/music-error.d.ts.map +1 -0
  206. package/dist/types/music-generation-request.d.ts +24 -0
  207. package/dist/types/music-generation-request.d.ts.map +1 -0
  208. package/dist/types/open-ai-file-delete-response.d.ts +6 -0
  209. package/dist/types/open-ai-file-delete-response.d.ts.map +1 -0
  210. package/dist/types/open-ai-file-list.d.ts +15 -0
  211. package/dist/types/open-ai-file-list.d.ts.map +1 -0
  212. package/dist/types/open-ai-file-object.d.ts +24 -0
  213. package/dist/types/open-ai-file-object.d.ts.map +1 -0
  214. package/dist/types/open-ai-model-delete-response.d.ts +6 -0
  215. package/dist/types/open-ai-model-delete-response.d.ts.map +1 -0
  216. package/dist/types/open-ai-model-list.d.ts +6 -0
  217. package/dist/types/open-ai-model-list.d.ts.map +1 -0
  218. package/dist/types/open-ai-model.d.ts +7 -0
  219. package/dist/types/open-ai-model.d.ts.map +1 -0
  220. package/dist/types/open-ai-video-delete-response.d.ts +6 -0
  221. package/dist/types/open-ai-video-delete-response.d.ts.map +1 -0
  222. package/dist/types/open-ai-video-list.d.ts +6 -0
  223. package/dist/types/open-ai-video-list.d.ts.map +1 -0
  224. package/dist/types/open-ai-video.d.ts +35 -0
  225. package/dist/types/open-ai-video.d.ts.map +1 -0
  226. package/dist/types/patch-update-completion-request.d.ts +2 -0
  227. package/dist/types/patch-update-completion-request.d.ts.map +1 -0
  228. package/dist/types/prompt-tokens-details.d.ts +8 -0
  229. package/dist/types/prompt-tokens-details.d.ts.map +1 -0
  230. package/dist/types/request-counts.d.ts +10 -0
  231. package/dist/types/request-counts.d.ts.map +1 -0
  232. package/dist/types/required-action.d.ts +9 -0
  233. package/dist/types/required-action.d.ts.map +1 -0
  234. package/dist/types/rerank-request.d.ts +15 -0
  235. package/dist/types/rerank-request.d.ts.map +1 -0
  236. package/dist/types/rerank-response.d.ts +16 -0
  237. package/dist/types/rerank-response.d.ts.map +1 -0
  238. package/dist/types/response-format.d.ts +9 -0
  239. package/dist/types/response-format.d.ts.map +1 -0
  240. package/dist/types/result.d.ts +10 -0
  241. package/dist/types/result.d.ts.map +1 -0
  242. package/dist/types/run-create-request.d.ts +33 -0
  243. package/dist/types/run-create-request.d.ts.map +1 -0
  244. package/dist/types/run-list-response.d.ts +15 -0
  245. package/dist/types/run-list-response.d.ts.map +1 -0
  246. package/dist/types/run-response.d.ts +55 -0
  247. package/dist/types/run-response.d.ts.map +1 -0
  248. package/dist/types/run-step-list-response.d.ts +15 -0
  249. package/dist/types/run-step-list-response.d.ts.map +1 -0
  250. package/dist/types/run-step-response.d.ts +34 -0
  251. package/dist/types/run-step-response.d.ts.map +1 -0
  252. package/dist/types/search-result.d.ts +14 -0
  253. package/dist/types/search-result.d.ts.map +1 -0
  254. package/dist/types/segment.d.ts +13 -0
  255. package/dist/types/segment.d.ts.map +1 -0
  256. package/dist/types/speech-request.d.ts +10 -0
  257. package/dist/types/speech-request.d.ts.map +1 -0
  258. package/dist/types/stream-options.d.ts +8 -0
  259. package/dist/types/stream-options.d.ts.map +1 -0
  260. package/dist/types/submit-tool-outputs-request.d.ts +3 -0
  261. package/dist/types/submit-tool-outputs-request.d.ts.map +1 -0
  262. package/dist/types/submit-tool-outputs-response.d.ts +2 -0
  263. package/dist/types/submit-tool-outputs-response.d.ts.map +1 -0
  264. package/dist/types/submit-tool-outputs.d.ts +7 -0
  265. package/dist/types/submit-tool-outputs.d.ts.map +1 -0
  266. package/dist/types/suno-music-delete-response.d.ts +6 -0
  267. package/dist/types/suno-music-delete-response.d.ts.map +1 -0
  268. package/dist/types/suno-music-list.d.ts +9 -0
  269. package/dist/types/suno-music-list.d.ts.map +1 -0
  270. package/dist/types/suno-music.d.ts +31 -0
  271. package/dist/types/suno-music.d.ts.map +1 -0
  272. package/dist/types/text-content.d.ts +8 -0
  273. package/dist/types/text-content.d.ts.map +1 -0
  274. package/dist/types/thinking.d.ts +6 -0
  275. package/dist/types/thinking.d.ts.map +1 -0
  276. package/dist/types/thread-create-request.d.ts +11 -0
  277. package/dist/types/thread-create-request.d.ts.map +1 -0
  278. package/dist/types/thread-delete-response.d.ts +10 -0
  279. package/dist/types/thread-delete-response.d.ts.map +1 -0
  280. package/dist/types/thread-message-create-request.d.ts +13 -0
  281. package/dist/types/thread-message-create-request.d.ts.map +1 -0
  282. package/dist/types/thread-message-list-response.d.ts +15 -0
  283. package/dist/types/thread-message-list-response.d.ts.map +1 -0
  284. package/dist/types/thread-message-modify-request.d.ts +6 -0
  285. package/dist/types/thread-message-modify-request.d.ts.map +1 -0
  286. package/dist/types/thread-message-response.d.ts +33 -0
  287. package/dist/types/thread-message-response.d.ts.map +1 -0
  288. package/dist/types/thread-response.d.ts +14 -0
  289. package/dist/types/thread-response.d.ts.map +1 -0
  290. package/dist/types/thread-run-create-request.d.ts +36 -0
  291. package/dist/types/thread-run-create-request.d.ts.map +1 -0
  292. package/dist/types/tool-call.d.ts +11 -0
  293. package/dist/types/tool-call.d.ts.map +1 -0
  294. package/dist/types/tool.d.ts +9 -0
  295. package/dist/types/tool.d.ts.map +1 -0
  296. package/dist/types/top-logprob.d.ts +10 -0
  297. package/dist/types/top-logprob.d.ts.map +1 -0
  298. package/dist/types/transcription-response.d.ts +11 -0
  299. package/dist/types/transcription-response.d.ts.map +1 -0
  300. package/dist/types/truncation-strategy.d.ts +8 -0
  301. package/dist/types/truncation-strategy.d.ts.map +1 -0
  302. package/dist/types/update-chat-completion-request.d.ts +3 -0
  303. package/dist/types/update-chat-completion-request.d.ts.map +1 -0
  304. package/dist/types/update-completion-request.d.ts +2 -0
  305. package/dist/types/update-completion-request.d.ts.map +1 -0
  306. package/dist/types/update-run-request.d.ts +3 -0
  307. package/dist/types/update-run-request.d.ts.map +1 -0
  308. package/dist/types/upload-file-request.d.ts +5 -0
  309. package/dist/types/upload-file-request.d.ts.map +1 -0
  310. package/dist/types/usage.d.ts +16 -0
  311. package/dist/types/usage.d.ts.map +1 -0
  312. package/dist/types/video-error.d.ts +12 -0
  313. package/dist/types/video-error.d.ts.map +1 -0
  314. package/dist/types/video-generation-request.d.ts +20 -0
  315. package/dist/types/video-generation-request.d.ts.map +1 -0
  316. package/dist/types/word.d.ts +6 -0
  317. package/dist/types/word.d.ts.map +1 -0
  318. package/package.json +41 -0
package/README.md ADDED
@@ -0,0 +1,276 @@
1
+ # sdkwork-ai-sdk
2
+
3
+ Professional TypeScript SDK for SDKWork API.
4
+
5
+ ## Installation
6
+
7
+ ```bash
8
+ npm install @sdkwork/ai-sdk
9
+ # or
10
+ yarn add @sdkwork/ai-sdk
11
+ # or
12
+ pnpm add @sdkwork/ai-sdk
13
+ ```
14
+
15
+ ## Quick Start
16
+
17
+ ```typescript
18
+ import { SdkworkAiClient } from '@sdkwork/ai-sdk';
19
+
20
+ const client = new SdkworkAiClient({
21
+ baseUrl: 'http://localhost:8080',
22
+ timeout: 30000,
23
+ });
24
+
25
+ // Mode A: API Key (recommended for server-to-server calls)
26
+ client.setApiKey('your-api-key');
27
+
28
+ // Use the SDK
29
+ const result = await client.models.listModels();
30
+ ```
31
+
32
+ ## Authentication Modes (Mutually Exclusive)
33
+
34
+ Choose exactly one mode for the same client instance.
35
+
36
+ ### Mode A: API Key
37
+
38
+ ```typescript
39
+ const client = new SdkworkAiClient({ baseUrl: 'http://localhost:8080' });
40
+ client.setApiKey('your-api-key');
41
+ // Sends: Authorization: Bearer <apiKey>
42
+ ```
43
+
44
+ ### Mode B: Dual Token
45
+
46
+ ```typescript
47
+ const client = new SdkworkAiClient({ baseUrl: 'http://localhost:8080' });
48
+ client.setAuthToken('your-auth-token');
49
+ client.setAccessToken('your-access-token');
50
+ // Sends:
51
+ // Authorization: Bearer <authToken>
52
+ // Access-Token: <accessToken>
53
+ ```
54
+
55
+ > Do not call `setApiKey(...)` together with `setAuthToken(...)` + `setAccessToken(...)` on the same client.
56
+
57
+ ## Configuration (Non-Auth)
58
+
59
+ ```typescript
60
+ import { SdkworkAiClient } from '@sdkwork/ai-sdk';
61
+
62
+ const client = new SdkworkAiClient({
63
+ baseUrl: 'http://localhost:8080',
64
+ timeout: 30000, // Request timeout in ms
65
+ headers: { // Custom headers
66
+ 'X-Custom-Header': 'value',
67
+ },
68
+ });
69
+ ```
70
+
71
+ ## API Modules
72
+
73
+ - `client.chat` - chat API
74
+ - `client.videos` - videos API
75
+ - `client.threads` - threads API
76
+ - `client.responses` - responses API
77
+ - `client.rerank` - rerank API
78
+ - `client.music` - music API
79
+ - `client.moderations` - moderations API
80
+ - `client.chatCompletions` - chat_completions API
81
+ - `client.knowledgeBases` - knowledge_bases API
82
+ - `client.images` - images API
83
+ - `client.files` - files API
84
+ - `client.embeddings` - embeddings API
85
+ - `client.context` - context API
86
+ - `client.batches` - batches API
87
+ - `client.audio` - audio API
88
+ - `client.assistants` - assistants API
89
+ - `client.models` - models API
90
+
91
+ ## Usage Examples
92
+
93
+ ### chat
94
+
95
+ ```typescript
96
+ // List chat completions
97
+ const params = {} as Record<string, any>;
98
+ const result = await client.chat.listCompletions(params);
99
+ ```
100
+
101
+ ### videos
102
+
103
+ ```typescript
104
+ // List videos
105
+ const params = {} as Record<string, any>;
106
+ const result = await client.videos.listVideos(params);
107
+ ```
108
+
109
+ ### threads
110
+
111
+ ```typescript
112
+ // Get thread
113
+ const thread_id = 1;
114
+ const result = await client.threads.getThread(thread_id);
115
+ ```
116
+
117
+ ### responses
118
+
119
+ ```typescript
120
+ // Create response
121
+ const body = {} as any;
122
+ const result = await client.responses.createResponse(body);
123
+ ```
124
+
125
+ ### rerank
126
+
127
+ ```typescript
128
+ // Rerank documents
129
+ const body = {} as any;
130
+ const result = await client.rerank.rerank(body);
131
+ ```
132
+
133
+ ### music
134
+
135
+ ```typescript
136
+ // List music
137
+ const params = {} as Record<string, any>;
138
+ const result = await client.music.listMusic(params);
139
+ ```
140
+
141
+ ### moderations
142
+
143
+ ```typescript
144
+ // Create moderation
145
+ const body = {} as any;
146
+ const result = await client.moderations.createModeration(body);
147
+ ```
148
+
149
+ ### chat_completions
150
+
151
+ ```typescript
152
+ // List chat completions
153
+ const params = {} as Record<string, any>;
154
+ const result = await client.chatCompletions.listChatCompletions(params);
155
+ ```
156
+
157
+ ### knowledge_bases
158
+
159
+ ```typescript
160
+ // List knowledge bases
161
+ const params = {} as Record<string, any>;
162
+ const result = await client.knowledgeBases.listKnowledgeBases(params);
163
+ ```
164
+
165
+ ### images
166
+
167
+ ```typescript
168
+ // Create image variation
169
+ const body = {} as any;
170
+ const result = await client.images.createImageVariation(body);
171
+ ```
172
+
173
+ ### files
174
+
175
+ ```typescript
176
+ // List files
177
+ const params = {} as Record<string, any>;
178
+ const result = await client.files.listFiles(params);
179
+ ```
180
+
181
+ ### embeddings
182
+
183
+ ```typescript
184
+ // Create embeddings
185
+ const body = {} as any;
186
+ const result = await client.embeddings.createEmbedding(body);
187
+ ```
188
+
189
+ ### context
190
+
191
+ ```typescript
192
+ // Create context
193
+ const body = {} as any;
194
+ const result = await client.context.createContext(body);
195
+ ```
196
+
197
+ ### batches
198
+
199
+ ```typescript
200
+ // List batches
201
+ const params = {} as Record<string, any>;
202
+ const result = await client.batches.listBatches(params);
203
+ ```
204
+
205
+ ### audio
206
+
207
+ ```typescript
208
+ // Create speech
209
+ const body = {} as any;
210
+ const result = await client.audio.createSpeech(body);
211
+ ```
212
+
213
+ ### assistants
214
+
215
+ ```typescript
216
+ // List assistants
217
+ const params = {} as Record<string, any>;
218
+ const result = await client.assistants.listAssistants(params);
219
+ ```
220
+
221
+ ### models
222
+
223
+ ```typescript
224
+ // List models
225
+ const result = await client.models.listModels();
226
+ ```
227
+
228
+ ## Error Handling
229
+
230
+ ```typescript
231
+ import { SdkworkAiClient, NetworkError, TimeoutError, AuthenticationError } from '@sdkwork/ai-sdk';
232
+
233
+ try {
234
+ const result = await client.models.listModels();
235
+ } catch (error) {
236
+ if (error instanceof AuthenticationError) {
237
+ console.error('Authentication failed:', error.message);
238
+ } else if (error instanceof TimeoutError) {
239
+ console.error('Request timed out:', error.message);
240
+ } else if (error instanceof NetworkError) {
241
+ console.error('Network error:', error.message);
242
+ } else {
243
+ throw error;
244
+ }
245
+ }
246
+ ```
247
+
248
+
249
+ ## Publishing
250
+
251
+ This SDK includes cross-platform publish scripts in `bin/`:
252
+ - `bin/publish-core.mjs`
253
+ - `bin/publish.sh`
254
+ - `bin/publish.ps1`
255
+
256
+ ### Check
257
+
258
+ ```bash
259
+ ./bin/publish.sh --action check
260
+ ```
261
+
262
+ ### Publish
263
+
264
+ ```bash
265
+ ./bin/publish.sh --action publish --channel release
266
+ ```
267
+
268
+ ```powershell
269
+ .\bin\publish.ps1 --action publish --channel test --dry-run
270
+ ```
271
+
272
+ > Set `NPM_TOKEN` (and optional `NPM_REGISTRY_URL`) before release publish.
273
+
274
+ ## License
275
+
276
+ MIT
@@ -0,0 +1,19 @@
1
+ import { HttpClient } from '../http/client';
2
+ import { QueryParams } from '../types/common';
3
+ import { AssistantCreateRequest, AssistantDeleteResponse, AssistantListResponse, AssistantResponse } from '../types';
4
+ export declare class AssistantsApi {
5
+ private client;
6
+ constructor(client: HttpClient);
7
+ /** Get assistant */
8
+ getAssistant(assistant_id: string | number): Promise<AssistantResponse>;
9
+ /** Update assistant */
10
+ updateAssistant(assistant_id: string | number, body: AssistantCreateRequest): Promise<AssistantResponse>;
11
+ /** Delete assistant */
12
+ deleteAssistant(assistant_id: string | number): Promise<AssistantDeleteResponse>;
13
+ /** List assistants */
14
+ listAssistants(params?: QueryParams): Promise<AssistantListResponse>;
15
+ /** Create assistant */
16
+ createAssistant(body: AssistantCreateRequest): Promise<AssistantResponse>;
17
+ }
18
+ export declare function createAssistantsApi(client: HttpClient): AssistantsApi;
19
+ //# sourceMappingURL=assistants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assistants.d.ts","sourceRoot":"","sources":["../../src/api/assistants.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,KAAK,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAG1H,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAa;gBAEf,MAAM,EAAE,UAAU;IAIhC,oBAAoB;IACZ,YAAY,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAI/E,uBAAuB;IACf,eAAe,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,EAAE,sBAAsB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAIhH,uBAAuB;IACf,eAAe,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAIxF,sBAAsB;IACd,cAAc,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAI5E,uBAAuB;IACf,eAAe,CAAC,IAAI,EAAE,sBAAsB,GAAG,OAAO,CAAC,iBAAiB,CAAC;CAGhF;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,UAAU,GAAG,aAAa,CAErE"}
@@ -0,0 +1,15 @@
1
+ import { HttpClient } from '../http/client';
2
+ import { QueryParams } from '../types/common';
3
+ import { SpeechRequest, TranscriptionResponse } from '../types';
4
+ export declare class AudioApi {
5
+ private client;
6
+ constructor(client: HttpClient);
7
+ /** Create translation */
8
+ createTranslation(body?: FormData, params?: QueryParams): Promise<TranscriptionResponse>;
9
+ /** Create transcription */
10
+ createTranscription(body?: FormData, params?: QueryParams): Promise<TranscriptionResponse>;
11
+ /** Create speech */
12
+ createSpeech(body: SpeechRequest): Promise<string>;
13
+ }
14
+ export declare function createAudioApi(client: HttpClient): AudioApi;
15
+ //# sourceMappingURL=audio.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"audio.d.ts","sourceRoot":"","sources":["../../src/api/audio.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,KAAK,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAGrE,qBAAa,QAAQ;IACnB,OAAO,CAAC,MAAM,CAAa;gBAEf,MAAM,EAAE,UAAU;IAIhC,yBAAyB;IACjB,iBAAiB,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAIhG,2BAA2B;IACnB,mBAAmB,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAIlG,oBAAoB;IACZ,YAAY,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC;CAGzD;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,UAAU,GAAG,QAAQ,CAE3D"}
@@ -0,0 +1,13 @@
1
+ import { QueryParams } from '../types/common';
2
+ import { HttpClient } from '../http/client';
3
+ export declare abstract class BaseApi {
4
+ protected http: HttpClient;
5
+ protected basePath: string;
6
+ constructor(http: HttpClient, basePath: string);
7
+ protected get<T>(path: string, params?: QueryParams, headers?: Record<string, string>): Promise<T>;
8
+ protected post<T>(path: string, body?: unknown, params?: QueryParams, headers?: Record<string, string>): Promise<T>;
9
+ protected put<T>(path: string, body?: unknown, params?: QueryParams, headers?: Record<string, string>): Promise<T>;
10
+ protected delete<T>(path: string, params?: QueryParams, headers?: Record<string, string>): Promise<T>;
11
+ protected patch<T>(path: string, body?: unknown, params?: QueryParams, headers?: Record<string, string>): Promise<T>;
12
+ }
13
+ //# sourceMappingURL=base.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/api/base.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEjD,8BAAsB,OAAO;IAEzB,SAAS,CAAC,IAAI,EAAE,UAAU;IAC1B,SAAS,CAAC,QAAQ,EAAE,MAAM;gBADhB,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAE,MAAM;cAGZ,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;cAIxF,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;cAIzG,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;cAIxG,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;cAI3F,KAAK,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;CAG3H"}
@@ -0,0 +1,17 @@
1
+ import { HttpClient } from '../http/client';
2
+ import { QueryParams } from '../types/common';
3
+ import { BatchCreateRequest, BatchListResponse, BatchResponse } from '../types';
4
+ export declare class BatchesApi {
5
+ private client;
6
+ constructor(client: HttpClient);
7
+ /** Cancel batch */
8
+ cancelBatch(batch_id: string | number): Promise<BatchResponse>;
9
+ /** List batches */
10
+ listBatches(params?: QueryParams): Promise<BatchListResponse>;
11
+ /** Create batch */
12
+ createBatch(body: BatchCreateRequest): Promise<BatchResponse>;
13
+ /** Get batch */
14
+ getBatch(batch_id: string | number): Promise<BatchResponse>;
15
+ }
16
+ export declare function createBatchesApi(client: HttpClient): BatchesApi;
17
+ //# sourceMappingURL=batches.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"batches.d.ts","sourceRoot":"","sources":["../../src/api/batches.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,KAAK,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAGrF,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAAa;gBAEf,MAAM,EAAE,UAAU;IAIhC,mBAAmB;IACX,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAItE,mBAAmB;IACX,WAAW,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAIrE,mBAAmB;IACX,WAAW,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,aAAa,CAAC;IAIrE,gBAAgB;IACR,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;CAGlE;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,CAE/D"}
@@ -0,0 +1,19 @@
1
+ import { HttpClient } from '../http/client';
2
+ import { QueryParams } from '../types/common';
3
+ import { ChatCompletionDeleteResponse, ChatCompletionList, ChatCompletionResponse, ChatMessageList, UpdateChatCompletionRequest } from '../types';
4
+ export declare class ChatCompletionsApi {
5
+ private client;
6
+ constructor(client: HttpClient);
7
+ /** Get chat completion */
8
+ getChatCompletion(completionId: string | number): Promise<ChatCompletionResponse>;
9
+ /** Update chat completion */
10
+ updateChatCompletion(completionId: string | number, body: UpdateChatCompletionRequest): Promise<ChatCompletionResponse>;
11
+ /** Delete chat completion */
12
+ deleteChatCompletion(completionId: string | number): Promise<ChatCompletionDeleteResponse>;
13
+ /** Get chat messages */
14
+ getChatMessages(completionId: string | number, params?: QueryParams): Promise<ChatMessageList>;
15
+ /** List chat completions */
16
+ listChatCompletions(params?: QueryParams): Promise<ChatCompletionList>;
17
+ }
18
+ export declare function createChatCompletionsApi(client: HttpClient): ChatCompletionsApi;
19
+ //# sourceMappingURL=chat-completions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat-completions.d.ts","sourceRoot":"","sources":["../../src/api/chat-completions.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,KAAK,EAAE,4BAA4B,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,eAAe,EAAE,2BAA2B,EAAE,MAAM,UAAU,CAAC;AAGvJ,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,MAAM,CAAa;gBAEf,MAAM,EAAE,UAAU;IAIhC,0BAA0B;IAClB,iBAAiB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAIzF,6BAA6B;IACrB,oBAAoB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,EAAE,2BAA2B,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAI/H,6BAA6B;IACrB,oBAAoB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,4BAA4B,CAAC;IAIlG,wBAAwB;IAChB,eAAe,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,eAAe,CAAC;IAItG,4BAA4B;IACpB,mBAAmB,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,kBAAkB,CAAC;CAG7E;AAED,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,UAAU,GAAG,kBAAkB,CAE/E"}
@@ -0,0 +1,27 @@
1
+ import { HttpClient } from '../http/client';
2
+ import { QueryParams } from '../types/common';
3
+ import { ChatCompletionDeleteResponse, ChatCompletionList, ChatCompletionRequest, ChatCompletionResponse, ChatMessageList, CountClaudeTokensRequest, CountClaudeTokensResponse, CreateChatCompletionResponse, CreateClaudeMessageRequest, CreateClaudeMessageResponse, PatchUpdateCompletionRequest, UpdateCompletionRequest } from '../types';
4
+ export declare class ChatApi {
5
+ private client;
6
+ constructor(client: HttpClient);
7
+ /** Get chat completion */
8
+ getCompletion(completion_id: string | number): Promise<ChatCompletionResponse>;
9
+ /** Update chat completion */
10
+ updateCompletion(completion_id: string | number, body: UpdateCompletionRequest): Promise<ChatCompletionResponse>;
11
+ /** Delete chat completion */
12
+ deleteCompletion(completion_id: string | number): Promise<ChatCompletionDeleteResponse>;
13
+ /** Update chat completion */
14
+ patchUpdateCompletion(completion_id: string | number, body: PatchUpdateCompletionRequest): Promise<ChatCompletionResponse>;
15
+ /** Count Claude tokens */
16
+ countClaudeTokens(body: CountClaudeTokensRequest): Promise<CountClaudeTokensResponse>;
17
+ /** Create Claude message */
18
+ createClaudeMessage(body: CreateClaudeMessageRequest, headers?: Record<string, string>): Promise<CreateClaudeMessageResponse>;
19
+ /** List chat completions */
20
+ listCompletions(params?: QueryParams): Promise<ChatCompletionList>;
21
+ /** Create chat completion */
22
+ createChatCompletion(body: ChatCompletionRequest): Promise<CreateChatCompletionResponse>;
23
+ /** Get chat completion messages */
24
+ getMessages(completion_id: string | number, params?: QueryParams): Promise<ChatMessageList>;
25
+ }
26
+ export declare function createChatApi(client: HttpClient): ChatApi;
27
+ //# sourceMappingURL=chat.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../src/api/chat.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,KAAK,EAAE,4BAA4B,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,eAAe,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,4BAA4B,EAAE,0BAA0B,EAAE,2BAA2B,EAAE,4BAA4B,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAGpV,qBAAa,OAAO;IAClB,OAAO,CAAC,MAAM,CAAa;gBAEf,MAAM,EAAE,UAAU;IAIhC,0BAA0B;IAClB,aAAa,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAItF,6BAA6B;IACrB,gBAAgB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,EAAE,uBAAuB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAIxH,6BAA6B;IACrB,gBAAgB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,4BAA4B,CAAC;IAI/F,6BAA6B;IACrB,qBAAqB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,EAAE,4BAA4B,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAIlI,0BAA0B;IAClB,iBAAiB,CAAC,IAAI,EAAE,wBAAwB,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAI7F,4BAA4B;IACpB,mBAAmB,CAAC,IAAI,EAAE,0BAA0B,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,2BAA2B,CAAC;IAIrI,4BAA4B;IACpB,eAAe,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAI1E,6BAA6B;IACrB,oBAAoB,CAAC,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC,4BAA4B,CAAC;IAIhG,mCAAmC;IAC3B,WAAW,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,eAAe,CAAC;CAGlG;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAEzD"}
@@ -0,0 +1,16 @@
1
+ import { HttpClient } from '../http/client';
2
+ import { ChatWithContextRequest, ContextCreateRequest, ContextResponse } from '../types';
3
+ export declare class ContextApi {
4
+ private client;
5
+ constructor(client: HttpClient);
6
+ /** Chat with context */
7
+ chatWith(contextId: string | number, body: ChatWithContextRequest): Promise<ContextResponse>;
8
+ /** Create context */
9
+ createContext(body: ContextCreateRequest): Promise<ContextResponse>;
10
+ /** Get context */
11
+ getContext(contextId: string | number): Promise<ContextResponse>;
12
+ /** Delete context */
13
+ deleteContext(contextId: string | number): Promise<void>;
14
+ }
15
+ export declare function createContextApi(client: HttpClient): ContextApi;
16
+ //# sourceMappingURL=context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/api/context.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEjD,OAAO,KAAK,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAG9F,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAAa;gBAEf,MAAM,EAAE,UAAU;IAIhC,wBAAwB;IAChB,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,EAAE,sBAAsB,GAAG,OAAO,CAAC,eAAe,CAAC;IAIpG,qBAAqB;IACb,aAAa,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,eAAe,CAAC;IAI3E,kBAAkB;IACV,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAIxE,qBAAqB;IACb,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAG/D;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU,CAE/D"}
@@ -0,0 +1,10 @@
1
+ import { HttpClient } from '../http/client';
2
+ import { EmbeddingRequest, EmbeddingResponse } from '../types';
3
+ export declare class EmbeddingsApi {
4
+ private client;
5
+ constructor(client: HttpClient);
6
+ /** Create embeddings */
7
+ createEmbedding(body: EmbeddingRequest): Promise<EmbeddingResponse>;
8
+ }
9
+ export declare function createEmbeddingsApi(client: HttpClient): EmbeddingsApi;
10
+ //# sourceMappingURL=embeddings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"embeddings.d.ts","sourceRoot":"","sources":["../../src/api/embeddings.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEjD,OAAO,KAAK,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAGpE,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAa;gBAEf,MAAM,EAAE,UAAU;IAIhC,wBAAwB;IAChB,eAAe,CAAC,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC;CAG1E;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,UAAU,GAAG,aAAa,CAErE"}
@@ -0,0 +1,19 @@
1
+ import { HttpClient } from '../http/client';
2
+ import { QueryParams } from '../types/common';
3
+ import { OpenAiFileDeleteResponse, OpenAiFileList, OpenAiFileObject } from '../types';
4
+ export declare class FilesApi {
5
+ private client;
6
+ constructor(client: HttpClient);
7
+ /** List files */
8
+ listFiles(params?: QueryParams): Promise<OpenAiFileList>;
9
+ /** Upload file */
10
+ uploadFile(body?: FormData, params?: QueryParams): Promise<OpenAiFileObject>;
11
+ /** Retrieve file content */
12
+ retrieveFileContent(fileId: string | number): Promise<string>;
13
+ /** Retrieve file */
14
+ retrieveFile(fileId: string | number): Promise<OpenAiFileObject>;
15
+ /** Delete file */
16
+ deleteFile(fileId: string | number): Promise<OpenAiFileDeleteResponse>;
17
+ }
18
+ export declare function createFilesApi(client: HttpClient): FilesApi;
19
+ //# sourceMappingURL=files.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"files.d.ts","sourceRoot":"","sources":["../../src/api/files.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,KAAK,EAAE,wBAAwB,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAG3F,qBAAa,QAAQ;IACnB,OAAO,CAAC,MAAM,CAAa;gBAEf,MAAM,EAAE,UAAU;IAIhC,iBAAiB;IACT,SAAS,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,cAAc,CAAC;IAIhE,kBAAkB;IACV,UAAU,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAIpF,4BAA4B;IACpB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAIrE,oBAAoB;IACZ,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAIxE,kBAAkB;IACV,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,wBAAwB,CAAC;CAG7E;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,UAAU,GAAG,QAAQ,CAE3D"}
@@ -0,0 +1,14 @@
1
+ import { HttpClient } from '../http/client';
2
+ import { ImageGenerationRequest, ImageGenerationResponse } from '../types';
3
+ export declare class ImagesApi {
4
+ private client;
5
+ constructor(client: HttpClient);
6
+ /** Create image variation */
7
+ createImageVariation(body: ImageGenerationRequest): Promise<ImageGenerationResponse>;
8
+ /** Create image */
9
+ createImage(body: ImageGenerationRequest): Promise<ImageGenerationResponse>;
10
+ /** Create image edit */
11
+ createImageEdit(body: ImageGenerationRequest): Promise<ImageGenerationResponse>;
12
+ }
13
+ export declare function createImagesApi(client: HttpClient): ImagesApi;
14
+ //# sourceMappingURL=images.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"images.d.ts","sourceRoot":"","sources":["../../src/api/images.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEjD,OAAO,KAAK,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAC;AAGhF,qBAAa,SAAS;IACpB,OAAO,CAAC,MAAM,CAAa;gBAEf,MAAM,EAAE,UAAU;IAIhC,6BAA6B;IACrB,oBAAoB,CAAC,IAAI,EAAE,sBAAsB,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAI5F,mBAAmB;IACX,WAAW,CAAC,IAAI,EAAE,sBAAsB,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAInF,wBAAwB;IAChB,eAAe,CAAC,IAAI,EAAE,sBAAsB,GAAG,OAAO,CAAC,uBAAuB,CAAC;CAGtF;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,UAAU,GAAG,SAAS,CAE7D"}
@@ -0,0 +1,20 @@
1
+ export { BaseApi } from './base';
2
+ export { aiApiPath } from './paths';
3
+ export { ChatApi, createChatApi } from './chat';
4
+ export { VideosApi, createVideosApi } from './videos';
5
+ export { ThreadsApi, createThreadsApi } from './threads';
6
+ export { ResponsesApi, createResponsesApi } from './responses';
7
+ export { RerankApi, createRerankApi } from './rerank';
8
+ export { MusicApi, createMusicApi } from './music';
9
+ export { ModerationsApi, createModerationsApi } from './moderations';
10
+ export { ChatCompletionsApi, createChatCompletionsApi } from './chat-completions';
11
+ export { KnowledgeBasesApi, createKnowledgeBasesApi } from './knowledge-bases';
12
+ export { ImagesApi, createImagesApi } from './images';
13
+ export { FilesApi, createFilesApi } from './files';
14
+ export { EmbeddingsApi, createEmbeddingsApi } from './embeddings';
15
+ export { ContextApi, createContextApi } from './context';
16
+ export { BatchesApi, createBatchesApi } from './batches';
17
+ export { AudioApi, createAudioApi } from './audio';
18
+ export { AssistantsApi, createAssistantsApi } from './assistants';
19
+ export { ModelsApi, createModelsApi } from './models';
20
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAClF,OAAO,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAC/E,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC"}
@@ -0,0 +1,27 @@
1
+ import { HttpClient } from '../http/client';
2
+ import { QueryParams } from '../types/common';
3
+ import { DocumentAddRequest, DocumentResponse, KnowledgeBaseCreateRequest, KnowledgeBaseListResponse, KnowledgeBaseResponse, KnowledgeSearchRequest, KnowledgeSearchResponse, ListDocumentsResponse } from '../types';
4
+ export declare class KnowledgeBasesApi {
5
+ private client;
6
+ constructor(client: HttpClient);
7
+ /** List documents */
8
+ listDocuments(knowledgeBaseId: string | number, params?: QueryParams): Promise<ListDocumentsResponse>;
9
+ /** Add document */
10
+ addDocument(knowledgeBaseId: string | number, body: DocumentAddRequest): Promise<DocumentResponse>;
11
+ /** Search knowledge */
12
+ searchKnowledge(body: KnowledgeSearchRequest): Promise<KnowledgeSearchResponse>;
13
+ /** List knowledge bases */
14
+ listKnowledgeBases(params?: QueryParams): Promise<KnowledgeBaseListResponse>;
15
+ /** Create knowledge base */
16
+ createKnowledgeBase(body: KnowledgeBaseCreateRequest): Promise<KnowledgeBaseResponse>;
17
+ /** Get document */
18
+ getDocument(knowledgeBaseId: string | number, documentId: string | number): Promise<DocumentResponse>;
19
+ /** Delete document */
20
+ deleteDocument(knowledgeBaseId: string | number, documentId: string | number): Promise<void>;
21
+ /** Get knowledge base */
22
+ getKnowledgeBase(knowledgeBaseId: string | number): Promise<KnowledgeBaseResponse>;
23
+ /** Delete knowledge base */
24
+ deleteKnowledgeBase(knowledgeBaseId: string | number): Promise<void>;
25
+ }
26
+ export declare function createKnowledgeBasesApi(client: HttpClient): KnowledgeBasesApi;
27
+ //# sourceMappingURL=knowledge-bases.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"knowledge-bases.d.ts","sourceRoot":"","sources":["../../src/api/knowledge-bases.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,KAAK,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,yBAAyB,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAG3N,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,MAAM,CAAa;gBAEf,MAAM,EAAE,UAAU;IAIhC,qBAAqB;IACb,aAAa,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAI7G,mBAAmB;IACX,WAAW,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAI1G,uBAAuB;IACf,eAAe,CAAC,IAAI,EAAE,sBAAsB,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAIvF,2BAA2B;IACnB,kBAAkB,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAIpF,4BAA4B;IACpB,mBAAmB,CAAC,IAAI,EAAE,0BAA0B,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAI7F,mBAAmB;IACX,WAAW,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAI7G,sBAAsB;IACd,cAAc,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIpG,yBAAyB;IACjB,gBAAgB,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAI1F,4BAA4B;IACpB,mBAAmB,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAG3E;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,UAAU,GAAG,iBAAiB,CAE7E"}
@@ -0,0 +1,14 @@
1
+ import { HttpClient } from '../http/client';
2
+ import { OpenAiModel, OpenAiModelDeleteResponse, OpenAiModelList } from '../types';
3
+ export declare class ModelsApi {
4
+ private client;
5
+ constructor(client: HttpClient);
6
+ /** Retrieve model */
7
+ retrieveModel(model: string | number): Promise<OpenAiModel>;
8
+ /** Delete model */
9
+ deleteModel(model: string | number): Promise<OpenAiModelDeleteResponse>;
10
+ /** List models */
11
+ listModels(): Promise<OpenAiModelList>;
12
+ }
13
+ export declare function createModelsApi(client: HttpClient): ModelsApi;
14
+ //# sourceMappingURL=models.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../src/api/models.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEjD,OAAO,KAAK,EAAE,WAAW,EAAE,yBAAyB,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAGxF,qBAAa,SAAS;IACpB,OAAO,CAAC,MAAM,CAAa;gBAEf,MAAM,EAAE,UAAU;IAIhC,qBAAqB;IACb,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAInE,mBAAmB;IACX,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAI/E,kBAAkB;IACV,UAAU,IAAI,OAAO,CAAC,eAAe,CAAC;CAG7C;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,UAAU,GAAG,SAAS,CAE7D"}
@@ -0,0 +1,10 @@
1
+ import { HttpClient } from '../http/client';
2
+ import { ModerationRequest, ModerationResponse } from '../types';
3
+ export declare class ModerationsApi {
4
+ private client;
5
+ constructor(client: HttpClient);
6
+ /** Create moderation */
7
+ createModeration(body: ModerationRequest): Promise<ModerationResponse>;
8
+ }
9
+ export declare function createModerationsApi(client: HttpClient): ModerationsApi;
10
+ //# sourceMappingURL=moderations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"moderations.d.ts","sourceRoot":"","sources":["../../src/api/moderations.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEjD,OAAO,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAGtE,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAa;gBAEf,MAAM,EAAE,UAAU;IAIhC,wBAAwB;IAChB,gBAAgB,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC;CAG7E;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,UAAU,GAAG,cAAc,CAEvE"}
@@ -0,0 +1,17 @@
1
+ import { HttpClient } from '../http/client';
2
+ import { QueryParams } from '../types/common';
3
+ import { MusicGenerationRequest, SunoMusic, SunoMusicDeleteResponse, SunoMusicList } from '../types';
4
+ export declare class MusicApi {
5
+ private client;
6
+ constructor(client: HttpClient);
7
+ /** Generate music */
8
+ generate(body: MusicGenerationRequest): Promise<SunoMusic>;
9
+ /** Retrieve music */
10
+ retrieve(musicId: string | number): Promise<SunoMusic>;
11
+ /** Delete music */
12
+ deleteMusic(musicId: string | number): Promise<SunoMusicDeleteResponse>;
13
+ /** List music */
14
+ listMusic(params?: QueryParams): Promise<SunoMusicList>;
15
+ }
16
+ export declare function createMusicApi(client: HttpClient): MusicApi;
17
+ //# sourceMappingURL=music.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"music.d.ts","sourceRoot":"","sources":["../../src/api/music.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,KAAK,EAAE,sBAAsB,EAAE,SAAS,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAG1G,qBAAa,QAAQ;IACnB,OAAO,CAAC,MAAM,CAAa;gBAEf,MAAM,EAAE,UAAU;IAIhC,qBAAqB;IACb,QAAQ,CAAC,IAAI,EAAE,sBAAsB,GAAG,OAAO,CAAC,SAAS,CAAC;IAIlE,qBAAqB;IACb,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAI9D,mBAAmB;IACX,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAI/E,iBAAiB;IACT,SAAS,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC;CAG9D;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,UAAU,GAAG,QAAQ,CAE3D"}
@@ -0,0 +1,3 @@
1
+ export declare const AI_API_PREFIX = "/ai/v3";
2
+ export declare function aiApiPath(path: string): string;
3
+ //# sourceMappingURL=paths.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paths.d.ts","sourceRoot":"","sources":["../../src/api/paths.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa,WAAW,CAAC;AAEtC,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAoB9C"}
@@ -0,0 +1,10 @@
1
+ import { HttpClient } from '../http/client';
2
+ import { RerankRequest, RerankResponse } from '../types';
3
+ export declare class RerankApi {
4
+ private client;
5
+ constructor(client: HttpClient);
6
+ /** Rerank documents */
7
+ rerank(body: RerankRequest): Promise<RerankResponse>;
8
+ }
9
+ export declare function createRerankApi(client: HttpClient): RerankApi;
10
+ //# sourceMappingURL=rerank.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rerank.d.ts","sourceRoot":"","sources":["../../src/api/rerank.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEjD,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAG9D,qBAAa,SAAS;IACpB,OAAO,CAAC,MAAM,CAAa;gBAEf,MAAM,EAAE,UAAU;IAIhC,uBAAuB;IACf,MAAM,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC;CAG3D;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,UAAU,GAAG,SAAS,CAE7D"}