@diskd-ai/sdk 5.1.2

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 (299) hide show
  1. package/LICENSE +190 -0
  2. package/README.md +1036 -0
  3. package/dist/agentHub/StreamProtocolFetcher.d.ts +55 -0
  4. package/dist/agentHub/StreamProtocolFetcher.d.ts.map +1 -0
  5. package/dist/agentHub/StreamProtocolFetcher.js +176 -0
  6. package/dist/agentHub/StreamProtocolFetcher.js.map +1 -0
  7. package/dist/agentHub/StreamProtocolHandler.d.ts +18 -0
  8. package/dist/agentHub/StreamProtocolHandler.d.ts.map +1 -0
  9. package/dist/agentHub/StreamProtocolHandler.js +63 -0
  10. package/dist/agentHub/StreamProtocolHandler.js.map +1 -0
  11. package/dist/agentHub/agentHub.d.ts +30 -0
  12. package/dist/agentHub/agentHub.d.ts.map +1 -0
  13. package/dist/agentHub/agentHub.js +200 -0
  14. package/dist/agentHub/agentHub.js.map +1 -0
  15. package/dist/agentHub/agentHubTypes.d.ts +110 -0
  16. package/dist/agentHub/agentHubTypes.d.ts.map +1 -0
  17. package/dist/agentHub/agentHubTypes.js +8 -0
  18. package/dist/agentHub/agentHubTypes.js.map +1 -0
  19. package/dist/agentHub/streamProtocolMap.d.ts +328 -0
  20. package/dist/agentHub/streamProtocolMap.d.ts.map +1 -0
  21. package/dist/agentHub/streamProtocolMap.js +8 -0
  22. package/dist/agentHub/streamProtocolMap.js.map +1 -0
  23. package/dist/auth/createApiKeyAuth.d.ts +11 -0
  24. package/dist/auth/createApiKeyAuth.d.ts.map +1 -0
  25. package/dist/auth/createApiKeyAuth.js +31 -0
  26. package/dist/auth/createApiKeyAuth.js.map +1 -0
  27. package/dist/auth/createAuth.d.ts +3 -0
  28. package/dist/auth/createAuth.d.ts.map +1 -0
  29. package/dist/auth/createAuth.js +128 -0
  30. package/dist/auth/createAuth.js.map +1 -0
  31. package/dist/auth/createAuthBrowser.d.ts +3 -0
  32. package/dist/auth/createAuthBrowser.d.ts.map +1 -0
  33. package/dist/auth/createAuthBrowser.js +104 -0
  34. package/dist/auth/createAuthBrowser.js.map +1 -0
  35. package/dist/auth/jwtClaims.d.ts +3 -0
  36. package/dist/auth/jwtClaims.d.ts.map +1 -0
  37. package/dist/auth/jwtClaims.js +23 -0
  38. package/dist/auth/jwtClaims.js.map +1 -0
  39. package/dist/auth/keyfile.d.ts +10 -0
  40. package/dist/auth/keyfile.d.ts.map +1 -0
  41. package/dist/auth/keyfile.js +28 -0
  42. package/dist/auth/keyfile.js.map +1 -0
  43. package/dist/auth/oidcDiscovery.d.ts +9 -0
  44. package/dist/auth/oidcDiscovery.d.ts.map +1 -0
  45. package/dist/auth/oidcDiscovery.js +27 -0
  46. package/dist/auth/oidcDiscovery.js.map +1 -0
  47. package/dist/auth/pkce.d.ts +4 -0
  48. package/dist/auth/pkce.d.ts.map +1 -0
  49. package/dist/auth/pkce.js +43 -0
  50. package/dist/auth/pkce.js.map +1 -0
  51. package/dist/auth/sessionStorage.d.ts +8 -0
  52. package/dist/auth/sessionStorage.d.ts.map +1 -0
  53. package/dist/auth/sessionStorage.js +8 -0
  54. package/dist/auth/sessionStorage.js.map +1 -0
  55. package/dist/auth/tokenRequests.d.ts +15 -0
  56. package/dist/auth/tokenRequests.d.ts.map +1 -0
  57. package/dist/auth/tokenRequests.js +89 -0
  58. package/dist/auth/tokenRequests.js.map +1 -0
  59. package/dist/auth/types.d.ts +35 -0
  60. package/dist/auth/types.d.ts.map +1 -0
  61. package/dist/auth/types.js +2 -0
  62. package/dist/auth/types.js.map +1 -0
  63. package/dist/auth/urlRuntime.d.ts +7 -0
  64. package/dist/auth/urlRuntime.d.ts.map +1 -0
  65. package/dist/auth/urlRuntime.js +17 -0
  66. package/dist/auth/urlRuntime.js.map +1 -0
  67. package/dist/browser/index.d.ts +8 -0
  68. package/dist/browser/index.d.ts.map +1 -0
  69. package/dist/browser/index.js +3 -0
  70. package/dist/browser/index.js.map +1 -0
  71. package/dist/calendar/calendar.d.ts +21 -0
  72. package/dist/calendar/calendar.d.ts.map +1 -0
  73. package/dist/calendar/calendar.js +105 -0
  74. package/dist/calendar/calendar.js.map +1 -0
  75. package/dist/calendar/calendarTypes.d.ts +191 -0
  76. package/dist/calendar/calendarTypes.d.ts.map +1 -0
  77. package/dist/calendar/calendarTypes.js +4 -0
  78. package/dist/calendar/calendarTypes.js.map +1 -0
  79. package/dist/contacts/contacts.d.ts +10 -0
  80. package/dist/contacts/contacts.d.ts.map +1 -0
  81. package/dist/contacts/contacts.js +86 -0
  82. package/dist/contacts/contacts.js.map +1 -0
  83. package/dist/contacts/contactsTypes.d.ts +81 -0
  84. package/dist/contacts/contactsTypes.d.ts.map +1 -0
  85. package/dist/contacts/contactsTypes.js +4 -0
  86. package/dist/contacts/contactsTypes.js.map +1 -0
  87. package/dist/drive/DriveRepository.d.ts +88 -0
  88. package/dist/drive/DriveRepository.d.ts.map +1 -0
  89. package/dist/drive/DriveRepository.js +156 -0
  90. package/dist/drive/DriveRepository.js.map +1 -0
  91. package/dist/drive/crontab.d.ts +7 -0
  92. package/dist/drive/crontab.d.ts.map +1 -0
  93. package/dist/drive/crontab.js +374 -0
  94. package/dist/drive/crontab.js.map +1 -0
  95. package/dist/drive/crontabTypes.d.ts +136 -0
  96. package/dist/drive/crontabTypes.d.ts.map +1 -0
  97. package/dist/drive/crontabTypes.js +2 -0
  98. package/dist/drive/crontabTypes.js.map +1 -0
  99. package/dist/drive/drive.d.ts +8 -0
  100. package/dist/drive/drive.d.ts.map +1 -0
  101. package/dist/drive/drive.js +711 -0
  102. package/dist/drive/drive.js.map +1 -0
  103. package/dist/drive/driveDb.d.ts +6 -0
  104. package/dist/drive/driveDb.d.ts.map +1 -0
  105. package/dist/drive/driveDb.js +220 -0
  106. package/dist/drive/driveDb.js.map +1 -0
  107. package/dist/drive/driveDbTypes.d.ts +138 -0
  108. package/dist/drive/driveDbTypes.d.ts.map +1 -0
  109. package/dist/drive/driveDbTypes.js +5 -0
  110. package/dist/drive/driveDbTypes.js.map +1 -0
  111. package/dist/drive/driveTypes.d.ts +322 -0
  112. package/dist/drive/driveTypes.d.ts.map +1 -0
  113. package/dist/drive/driveTypes.js +5 -0
  114. package/dist/drive/driveTypes.js.map +1 -0
  115. package/dist/drive/rpc.d.ts +14 -0
  116. package/dist/drive/rpc.d.ts.map +1 -0
  117. package/dist/drive/rpc.js +48 -0
  118. package/dist/drive/rpc.js.map +1 -0
  119. package/dist/drive/session.d.ts +7 -0
  120. package/dist/drive/session.d.ts.map +1 -0
  121. package/dist/drive/session.js +450 -0
  122. package/dist/drive/session.js.map +1 -0
  123. package/dist/drive/sessionBuilder.d.ts +33 -0
  124. package/dist/drive/sessionBuilder.d.ts.map +1 -0
  125. package/dist/drive/sessionBuilder.js +77 -0
  126. package/dist/drive/sessionBuilder.js.map +1 -0
  127. package/dist/drive/sessionObject.d.ts +57 -0
  128. package/dist/drive/sessionObject.d.ts.map +1 -0
  129. package/dist/drive/sessionObject.js +191 -0
  130. package/dist/drive/sessionObject.js.map +1 -0
  131. package/dist/drive/sessionTypes.d.ts +182 -0
  132. package/dist/drive/sessionTypes.d.ts.map +1 -0
  133. package/dist/drive/sessionTypes.js +2 -0
  134. package/dist/drive/sessionTypes.js.map +1 -0
  135. package/dist/drive/typeorm/DriveDriver.d.ts +27 -0
  136. package/dist/drive/typeorm/DriveDriver.d.ts.map +1 -0
  137. package/dist/drive/typeorm/DriveDriver.js +86 -0
  138. package/dist/drive/typeorm/DriveDriver.js.map +1 -0
  139. package/dist/drive/typeorm/DriveQueryRunner.d.ts +15 -0
  140. package/dist/drive/typeorm/DriveQueryRunner.d.ts.map +1 -0
  141. package/dist/drive/typeorm/DriveQueryRunner.js +76 -0
  142. package/dist/drive/typeorm/DriveQueryRunner.js.map +1 -0
  143. package/dist/drive/typeorm/createDriveDataSource.d.ts +3 -0
  144. package/dist/drive/typeorm/createDriveDataSource.d.ts.map +1 -0
  145. package/dist/drive/typeorm/createDriveDataSource.js +36 -0
  146. package/dist/drive/typeorm/createDriveDataSource.js.map +1 -0
  147. package/dist/drive/typeorm/datasourceTypes.d.ts +56 -0
  148. package/dist/drive/typeorm/datasourceTypes.d.ts.map +1 -0
  149. package/dist/drive/typeorm/datasourceTypes.js +5 -0
  150. package/dist/drive/typeorm/datasourceTypes.js.map +1 -0
  151. package/dist/drive/types.d.ts +48 -0
  152. package/dist/drive/types.d.ts.map +1 -0
  153. package/dist/drive/types.js +2 -0
  154. package/dist/drive/types.js.map +1 -0
  155. package/dist/env/apiKey.d.ts +2 -0
  156. package/dist/env/apiKey.d.ts.map +1 -0
  157. package/dist/env/apiKey.js +11 -0
  158. package/dist/env/apiKey.js.map +1 -0
  159. package/dist/env/baseUrl.d.ts +3 -0
  160. package/dist/env/baseUrl.d.ts.map +1 -0
  161. package/dist/env/baseUrl.js +31 -0
  162. package/dist/env/baseUrl.js.map +1 -0
  163. package/dist/inbox/inboxTypes.d.ts +34 -0
  164. package/dist/inbox/inboxTypes.d.ts.map +1 -0
  165. package/dist/inbox/inboxTypes.js +5 -0
  166. package/dist/inbox/inboxTypes.js.map +1 -0
  167. package/dist/index.d.ts +56 -0
  168. package/dist/index.d.ts.map +1 -0
  169. package/dist/index.js +43 -0
  170. package/dist/index.js.map +1 -0
  171. package/dist/llmRouter/llmRouter.d.ts +23 -0
  172. package/dist/llmRouter/llmRouter.d.ts.map +1 -0
  173. package/dist/llmRouter/llmRouter.js +566 -0
  174. package/dist/llmRouter/llmRouter.js.map +1 -0
  175. package/dist/llmRouter/llmRouterTypes.d.ts +350 -0
  176. package/dist/llmRouter/llmRouterTypes.d.ts.map +1 -0
  177. package/dist/llmRouter/llmRouterTypes.js +5 -0
  178. package/dist/llmRouter/llmRouterTypes.js.map +1 -0
  179. package/dist/mcpHub/mcpHub.d.ts +23 -0
  180. package/dist/mcpHub/mcpHub.d.ts.map +1 -0
  181. package/dist/mcpHub/mcpHub.js +223 -0
  182. package/dist/mcpHub/mcpHub.js.map +1 -0
  183. package/dist/mcpHub/mcpHubTypes.d.ts +228 -0
  184. package/dist/mcpHub/mcpHubTypes.d.ts.map +1 -0
  185. package/dist/mcpHub/mcpHubTypes.js +5 -0
  186. package/dist/mcpHub/mcpHubTypes.js.map +1 -0
  187. package/dist/mcpTools/mcpTools.d.ts +31 -0
  188. package/dist/mcpTools/mcpTools.d.ts.map +1 -0
  189. package/dist/mcpTools/mcpTools.js +144 -0
  190. package/dist/mcpTools/mcpTools.js.map +1 -0
  191. package/dist/mcpTools/mcpToolsTypes.d.ts +45 -0
  192. package/dist/mcpTools/mcpToolsTypes.d.ts.map +1 -0
  193. package/dist/mcpTools/mcpToolsTypes.js +5 -0
  194. package/dist/mcpTools/mcpToolsTypes.js.map +1 -0
  195. package/dist/messagesStore/messagesStore.d.ts +22 -0
  196. package/dist/messagesStore/messagesStore.d.ts.map +1 -0
  197. package/dist/messagesStore/messagesStore.js +402 -0
  198. package/dist/messagesStore/messagesStore.js.map +1 -0
  199. package/dist/messagesStore/messagesStoreTypes.d.ts +327 -0
  200. package/dist/messagesStore/messagesStoreTypes.d.ts.map +1 -0
  201. package/dist/messagesStore/messagesStoreTypes.js +11 -0
  202. package/dist/messagesStore/messagesStoreTypes.js.map +1 -0
  203. package/dist/node/fastDns.d.ts +2 -0
  204. package/dist/node/fastDns.d.ts.map +1 -0
  205. package/dist/node/fastDns.js +119 -0
  206. package/dist/node/fastDns.js.map +1 -0
  207. package/dist/operatives/operatives.d.ts +22 -0
  208. package/dist/operatives/operatives.d.ts.map +1 -0
  209. package/dist/operatives/operatives.js +199 -0
  210. package/dist/operatives/operatives.js.map +1 -0
  211. package/dist/operatives/operativesTypes.d.ts +141 -0
  212. package/dist/operatives/operativesTypes.d.ts.map +1 -0
  213. package/dist/operatives/operativesTypes.js +6 -0
  214. package/dist/operatives/operativesTypes.js.map +1 -0
  215. package/dist/platformEvents/platformEvents.d.ts +14 -0
  216. package/dist/platformEvents/platformEvents.d.ts.map +1 -0
  217. package/dist/platformEvents/platformEvents.js +70 -0
  218. package/dist/platformEvents/platformEvents.js.map +1 -0
  219. package/dist/platformEvents/platformEventsTypes.d.ts +31 -0
  220. package/dist/platformEvents/platformEventsTypes.d.ts.map +1 -0
  221. package/dist/platformEvents/platformEventsTypes.js +8 -0
  222. package/dist/platformEvents/platformEventsTypes.js.map +1 -0
  223. package/dist/projects/projects.d.ts +19 -0
  224. package/dist/projects/projects.d.ts.map +1 -0
  225. package/dist/projects/projects.js +52 -0
  226. package/dist/projects/projects.js.map +1 -0
  227. package/dist/projects/projectsTypes.d.ts +47 -0
  228. package/dist/projects/projectsTypes.d.ts.map +1 -0
  229. package/dist/projects/projectsTypes.js +4 -0
  230. package/dist/projects/projectsTypes.js.map +1 -0
  231. package/dist/routineRuns/routineRuns.d.ts +19 -0
  232. package/dist/routineRuns/routineRuns.d.ts.map +1 -0
  233. package/dist/routineRuns/routineRuns.js +47 -0
  234. package/dist/routineRuns/routineRuns.js.map +1 -0
  235. package/dist/routineRuns/routineRunsTypes.d.ts +39 -0
  236. package/dist/routineRuns/routineRunsTypes.d.ts.map +1 -0
  237. package/dist/routineRuns/routineRunsTypes.js +4 -0
  238. package/dist/routineRuns/routineRunsTypes.js.map +1 -0
  239. package/dist/routines/routines.d.ts +19 -0
  240. package/dist/routines/routines.d.ts.map +1 -0
  241. package/dist/routines/routines.js +77 -0
  242. package/dist/routines/routines.js.map +1 -0
  243. package/dist/routines/routinesTypes.d.ts +106 -0
  244. package/dist/routines/routinesTypes.d.ts.map +1 -0
  245. package/dist/routines/routinesTypes.js +4 -0
  246. package/dist/routines/routinesTypes.js.map +1 -0
  247. package/dist/sdk/diskd.d.ts +3 -0
  248. package/dist/sdk/diskd.d.ts.map +1 -0
  249. package/dist/sdk/diskd.js +126 -0
  250. package/dist/sdk/diskd.js.map +1 -0
  251. package/dist/sdk/http.d.ts +13 -0
  252. package/dist/sdk/http.d.ts.map +1 -0
  253. package/dist/sdk/http.js +80 -0
  254. package/dist/sdk/http.js.map +1 -0
  255. package/dist/sdk/types.d.ts +115 -0
  256. package/dist/sdk/types.d.ts.map +1 -0
  257. package/dist/sdk/types.js +2 -0
  258. package/dist/sdk/types.js.map +1 -0
  259. package/dist/testing/auth.d.ts +8 -0
  260. package/dist/testing/auth.d.ts.map +1 -0
  261. package/dist/testing/auth.js +14 -0
  262. package/dist/testing/auth.js.map +1 -0
  263. package/dist/testing/fetchMock.d.ts +17 -0
  264. package/dist/testing/fetchMock.d.ts.map +1 -0
  265. package/dist/testing/fetchMock.js +46 -0
  266. package/dist/testing/fetchMock.js.map +1 -0
  267. package/dist/testing/index.d.ts +11 -0
  268. package/dist/testing/index.d.ts.map +1 -0
  269. package/dist/testing/index.js +11 -0
  270. package/dist/testing/index.js.map +1 -0
  271. package/dist/testing/integration.d.ts +33 -0
  272. package/dist/testing/integration.d.ts.map +1 -0
  273. package/dist/testing/integration.js +32 -0
  274. package/dist/testing/integration.js.map +1 -0
  275. package/dist/testing/jsonRpc.d.ts +9 -0
  276. package/dist/testing/jsonRpc.d.ts.map +1 -0
  277. package/dist/testing/jsonRpc.js +24 -0
  278. package/dist/testing/jsonRpc.js.map +1 -0
  279. package/dist/testing/rpcMock.d.ts +16 -0
  280. package/dist/testing/rpcMock.d.ts.map +1 -0
  281. package/dist/testing/rpcMock.js +28 -0
  282. package/dist/testing/rpcMock.js.map +1 -0
  283. package/dist/tgUserbot/tgUserbot.d.ts +23 -0
  284. package/dist/tgUserbot/tgUserbot.d.ts.map +1 -0
  285. package/dist/tgUserbot/tgUserbot.js +314 -0
  286. package/dist/tgUserbot/tgUserbot.js.map +1 -0
  287. package/dist/tgUserbot/tgUserbotTypes.d.ts +124 -0
  288. package/dist/tgUserbot/tgUserbotTypes.d.ts.map +1 -0
  289. package/dist/tgUserbot/tgUserbotTypes.js +5 -0
  290. package/dist/tgUserbot/tgUserbotTypes.js.map +1 -0
  291. package/dist/webNavigator/webNavigator.d.ts +22 -0
  292. package/dist/webNavigator/webNavigator.d.ts.map +1 -0
  293. package/dist/webNavigator/webNavigator.js +46 -0
  294. package/dist/webNavigator/webNavigator.js.map +1 -0
  295. package/dist/webNavigator/webNavigatorTypes.d.ts +133 -0
  296. package/dist/webNavigator/webNavigatorTypes.d.ts.map +1 -0
  297. package/dist/webNavigator/webNavigatorTypes.js +5 -0
  298. package/dist/webNavigator/webNavigatorTypes.js.map +1 -0
  299. package/package.json +90 -0
@@ -0,0 +1,115 @@
1
+ import type { AgentHubClient } from '../agentHub/agentHubTypes.js';
2
+ import type { ApiKeyAuthParams, AuthModule, SdkCreateParams } from '../auth/types.js';
3
+ import type { CalendarClient } from '../calendar/calendarTypes.js';
4
+ import type { ContactsClient } from '../contacts/contactsTypes.js';
5
+ import type { DriveCrontabScopeRef, DriveScopedCrontabClient } from '../drive/crontabTypes.js';
6
+ import type { DriveDatabase, DriveDatabaseParams } from '../drive/DriveRepository.js';
7
+ import type { DriveScopedSessionManager } from '../drive/sessionObject.js';
8
+ import type { DriveSessionScopeRef } from '../drive/sessionTypes.js';
9
+ import type { DriveDataSource, DriveDataSourceParams } from '../drive/typeorm/datasourceTypes.js';
10
+ import type { DriveClient } from '../drive/types.js';
11
+ import type { LlmRouterClient } from '../llmRouter/llmRouterTypes.js';
12
+ import type { McpHubClient } from '../mcpHub/mcpHubTypes.js';
13
+ import type { McpToolsClient } from '../mcpTools/mcpToolsTypes.js';
14
+ import type { MessagesStoreClient } from '../messagesStore/messagesStoreTypes.js';
15
+ import type { OperativesClient } from '../operatives/operativesTypes.js';
16
+ import type { PlatformEventsClient } from '../platformEvents/platformEventsTypes.js';
17
+ import type { ProjectsClient } from '../projects/projectsTypes.js';
18
+ import type { RoutineRunsClient } from '../routineRuns/routineRunsTypes.js';
19
+ import type { RoutinesClient } from '../routines/routinesTypes.js';
20
+ import type { TgUserbotClient } from '../tgUserbot/tgUserbotTypes.js';
21
+ import type { WebNavigatorClient } from '../webNavigator/webNavigatorTypes.js';
22
+ export type DiskD = {
23
+ /** Auth factory methods. */
24
+ readonly auth: {
25
+ /** Create an AuthModule for internal service-to-service communication (uses APIS_API_KEY from env). */
26
+ readonly apiKey: (params: ApiKeyAuthParams) => AuthModule;
27
+ /** Create an AuthModule for external clients (OAuth2 service-account or PKCE). */
28
+ readonly credentials: (params: SdkCreateParams) => Promise<AuthModule>;
29
+ };
30
+ readonly os: {
31
+ readonly drive: (params: {
32
+ readonly version: 'v1';
33
+ readonly auth: AuthModule;
34
+ readonly url?: string;
35
+ }) => DriveClient;
36
+ readonly database: (params: DriveDatabaseParams & {
37
+ readonly auth: AuthModule;
38
+ readonly url?: string;
39
+ }) => DriveDatabase;
40
+ /** Create a TypeORM DataSource backed by Drive DB (requires `typeorm` peer). */
41
+ readonly datasource: (params: DriveDataSourceParams) => DriveDataSource;
42
+ readonly llm: (params: {
43
+ readonly auth: AuthModule;
44
+ readonly url?: string;
45
+ }) => LlmRouterClient;
46
+ readonly mcp: (params: {
47
+ readonly auth: AuthModule;
48
+ readonly url?: string;
49
+ }) => McpHubClient;
50
+ readonly mcpTools: (params: {
51
+ readonly auth: AuthModule;
52
+ readonly url?: string;
53
+ }) => McpToolsClient;
54
+ readonly agents: (params: {
55
+ readonly auth: AuthModule;
56
+ readonly url?: string;
57
+ }) => AgentHubClient;
58
+ readonly messagesStore: (params: {
59
+ readonly auth: AuthModule;
60
+ readonly url?: string;
61
+ }) => MessagesStoreClient;
62
+ };
63
+ readonly platform: {
64
+ readonly sessions: (params: {
65
+ readonly auth: AuthModule;
66
+ readonly scope: DriveSessionScopeRef;
67
+ readonly url?: string;
68
+ }) => DriveScopedSessionManager;
69
+ readonly crontab: (params: {
70
+ readonly auth: AuthModule;
71
+ readonly scope: DriveCrontabScopeRef;
72
+ readonly timezone?: string | null;
73
+ readonly url?: string;
74
+ }) => DriveScopedCrontabClient;
75
+ readonly routineRuns: (params: {
76
+ readonly auth: AuthModule;
77
+ readonly url?: string;
78
+ }) => RoutineRunsClient;
79
+ readonly routines: (params: {
80
+ readonly auth: AuthModule;
81
+ readonly url?: string;
82
+ }) => RoutinesClient;
83
+ readonly operatives: (params: {
84
+ readonly auth: AuthModule;
85
+ readonly url?: string;
86
+ }) => OperativesClient;
87
+ readonly projects: (params: {
88
+ readonly auth: AuthModule;
89
+ readonly url?: string;
90
+ }) => ProjectsClient;
91
+ readonly events: (params: {
92
+ readonly auth: AuthModule;
93
+ readonly url?: string;
94
+ }) => PlatformEventsClient;
95
+ readonly calendar: (params: {
96
+ readonly auth: AuthModule;
97
+ readonly url?: string;
98
+ }) => CalendarClient;
99
+ readonly contacts: (params: {
100
+ readonly auth: AuthModule;
101
+ readonly url?: string;
102
+ }) => ContactsClient;
103
+ };
104
+ readonly utils: {
105
+ readonly tgUserBot: (params: {
106
+ readonly auth: AuthModule;
107
+ readonly url?: string;
108
+ }) => TgUserbotClient;
109
+ readonly webNavigator: (params: {
110
+ readonly auth: AuthModule;
111
+ readonly url?: string;
112
+ }) => WebNavigatorClient;
113
+ };
114
+ };
115
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/sdk/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/sdk/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,8 @@
1
+ import type { AuthModule } from '../auth/types.js';
2
+ export type MakeAuthOptions = {
3
+ readonly accessToken?: string;
4
+ readonly workspaceId?: string;
5
+ };
6
+ /** Create a stub AuthModule for testing. Framework-agnostic, no side effects. */
7
+ export declare const makeAuth: (options?: MakeAuthOptions) => AuthModule;
8
+ //# sourceMappingURL=auth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/testing/auth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B,CAAC;AAEF,iFAAiF;AACjF,eAAO,MAAM,QAAQ,GAAI,UAAU,eAAe,KAAG,UAWpD,CAAC"}
@@ -0,0 +1,14 @@
1
+ /** Create a stub AuthModule for testing. Framework-agnostic, no side effects. */
2
+ export const makeAuth = (options) => {
3
+ const token = options?.accessToken ?? 'token-123';
4
+ const wsId = options?.workspaceId ?? 'test-workspace';
5
+ return {
6
+ signIn: async () => { },
7
+ signOut: () => { },
8
+ handleRedirectCallback: async () => { },
9
+ getAccessToken: async () => token,
10
+ getToken: () => ({ accessToken: token }),
11
+ getWorkspaceId: async () => wsId,
12
+ };
13
+ };
14
+ //# sourceMappingURL=auth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/testing/auth.ts"],"names":[],"mappings":"AAOA,iFAAiF;AACjF,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,OAAyB,EAAc,EAAE;IAChE,MAAM,KAAK,GAAG,OAAO,EAAE,WAAW,IAAI,WAAW,CAAC;IAClD,MAAM,IAAI,GAAG,OAAO,EAAE,WAAW,IAAI,gBAAgB,CAAC;IACtD,OAAO;QACL,MAAM,EAAE,KAAK,IAAI,EAAE,GAAE,CAAC;QACtB,OAAO,EAAE,GAAG,EAAE,GAAE,CAAC;QACjB,sBAAsB,EAAE,KAAK,IAAI,EAAE,GAAE,CAAC;QACtC,cAAc,EAAE,KAAK,IAAI,EAAE,CAAC,KAAK;QACjC,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QACxC,cAAc,EAAE,KAAK,IAAI,EAAE,CAAC,IAAI;KACjC,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,17 @@
1
+ export type FetchCall = {
2
+ readonly url: string;
3
+ readonly init?: RequestInit;
4
+ };
5
+ export type FetchHandler = (url: string, init?: RequestInit) => Response;
6
+ /**
7
+ * Replace globalThis.fetch for the duration of `fn`, restoring it afterward.
8
+ * The handler receives the normalized URL string and init.
9
+ * The calls array collects every request for assertions.
10
+ */
11
+ export declare const withFetchMock: (handler: FetchHandler, fn: (calls: FetchCall[]) => Promise<void>) => Promise<void>;
12
+ /**
13
+ * Run `fn` with the given env vars set, restoring originals afterward.
14
+ * Keys whose original value was undefined are deleted after the test.
15
+ */
16
+ export declare const withEnv: (vars: Readonly<Record<string, string>>, fn: () => Promise<void>) => Promise<void>;
17
+ //# sourceMappingURL=fetchMock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetchMock.d.ts","sourceRoot":"","sources":["../../src/testing/fetchMock.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,SAAS,GAAG;IACtB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,CAAC,EAAE,WAAW,CAAC;CAC7B,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,KAAK,QAAQ,CAAC;AAEzE;;;;GAIG;AACH,eAAO,MAAM,aAAa,GACxB,SAAS,YAAY,EACrB,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,KACxC,OAAO,CAAC,IAAI,CAcd,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,OAAO,GAClB,MAAM,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EACtC,IAAI,MAAM,OAAO,CAAC,IAAI,CAAC,KACtB,OAAO,CAAC,IAAI,CAiBd,CAAC"}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * Replace globalThis.fetch for the duration of `fn`, restoring it afterward.
3
+ * The handler receives the normalized URL string and init.
4
+ * The calls array collects every request for assertions.
5
+ */
6
+ export const withFetchMock = async (handler, fn) => {
7
+ const calls = [];
8
+ const originalFetch = globalThis.fetch;
9
+ const fetchMock = async (input, init) => {
10
+ const url = typeof input === 'string' ? input : input.toString();
11
+ calls.push({ url, init });
12
+ return handler(url, init);
13
+ };
14
+ globalThis.fetch = fetchMock;
15
+ try {
16
+ await fn(calls);
17
+ }
18
+ finally {
19
+ globalThis.fetch = originalFetch;
20
+ }
21
+ };
22
+ /**
23
+ * Run `fn` with the given env vars set, restoring originals afterward.
24
+ * Keys whose original value was undefined are deleted after the test.
25
+ */
26
+ export const withEnv = async (vars, fn) => {
27
+ const originals = {};
28
+ for (const key of Object.keys(vars)) {
29
+ originals[key] = process.env[key];
30
+ process.env[key] = vars[key];
31
+ }
32
+ try {
33
+ await fn();
34
+ }
35
+ finally {
36
+ for (const [key, original] of Object.entries(originals)) {
37
+ if (original === undefined) {
38
+ delete process.env[key];
39
+ }
40
+ else {
41
+ process.env[key] = original;
42
+ }
43
+ }
44
+ }
45
+ };
46
+ //# sourceMappingURL=fetchMock.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetchMock.js","sourceRoot":"","sources":["../../src/testing/fetchMock.ts"],"names":[],"mappings":"AAOA;;;;GAIG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,EAChC,OAAqB,EACrB,EAAyC,EAC1B,EAAE;IACjB,MAAM,KAAK,GAAgB,EAAE,CAAC;IAC9B,MAAM,aAAa,GAAG,UAAU,CAAC,KAAK,CAAC;IACvC,MAAM,SAAS,GAAG,KAAK,EAAE,KAAwB,EAAE,IAAkB,EAAqB,EAAE;QAC1F,MAAM,GAAG,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;QACjE,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1B,OAAO,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC5B,CAAC,CAAC;IACD,UAAsC,CAAC,KAAK,GAAG,SAAS,CAAC;IAC1D,IAAI,CAAC;QACH,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC;IAClB,CAAC;YAAS,CAAC;QACR,UAAsC,CAAC,KAAK,GAAG,aAAa,CAAC;IAChE,CAAC;AACH,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,EAC1B,IAAsC,EACtC,EAAuB,EACR,EAAE;IACjB,MAAM,SAAS,GAAuC,EAAE,CAAC;IACzD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACpC,SAAS,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAClC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;IAC/B,CAAC;IACD,IAAI,CAAC;QACH,MAAM,EAAE,EAAE,CAAC;IACb,CAAC;YAAS,CAAC;QACT,KAAK,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;YACxD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,OAAO,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC1B,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC;YAC9B,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC,CAAC"}
@@ -0,0 +1,11 @@
1
+ export type { AuthModule, AuthToken } from '../auth/types.js';
2
+ export type { MakeAuthOptions } from './auth.js';
3
+ export { makeAuth } from './auth.js';
4
+ export type { FetchCall, FetchHandler } from './fetchMock.js';
5
+ export { withEnv, withFetchMock } from './fetchMock.js';
6
+ export type { ApiKeyCheck, ApiKeyEnv, IntegrationCheck, IntegrationEnv } from './integration.js';
7
+ export { checkApiKeyEnv, checkIntegrationEnv } from './integration.js';
8
+ export { jsonResponse, jsonRpcError, jsonRpcResponse, parseBody } from './jsonRpc.js';
9
+ export type { RpcCall, RpcMock } from './rpcMock.js';
10
+ export { makeRpcMock, makeRpcSequenceMock } from './rpcMock.js';
11
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/testing/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC9D,YAAY,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AACrC,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9D,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACxD,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEjG,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAEvE,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACtF,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAErD,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1,11 @@
1
+ // Auth stubs
2
+ export { makeAuth } from './auth.js';
3
+ // Fetch mock utilities
4
+ export { withEnv, withFetchMock } from './fetchMock.js';
5
+ // Integration test helpers
6
+ export { checkApiKeyEnv, checkIntegrationEnv } from './integration.js';
7
+ // JSON-RPC response builders
8
+ export { jsonResponse, jsonRpcError, jsonRpcResponse, parseBody } from './jsonRpc.js';
9
+ // RPC mock utilities
10
+ export { makeRpcMock, makeRpcSequenceMock } from './rpcMock.js';
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/testing/index.ts"],"names":[],"mappings":"AAAA,aAAa;AAKb,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAErC,uBAAuB;AACvB,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAExD,2BAA2B;AAC3B,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACvE,6BAA6B;AAC7B,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEtF,qBAAqB;AACrB,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1,33 @@
1
+ export type IntegrationEnv = {
2
+ readonly credentialsPath: string;
3
+ readonly baseUrl: string;
4
+ };
5
+ export type IntegrationCheck = {
6
+ readonly tag: 'Ready';
7
+ readonly env: IntegrationEnv;
8
+ } | {
9
+ readonly tag: 'Skip';
10
+ readonly reason: string;
11
+ };
12
+ /**
13
+ * Check whether OAuth2 keyfile integration env vars are available.
14
+ * Returns a discriminated union so tests can skip or proceed.
15
+ */
16
+ export declare const checkIntegrationEnv: () => IntegrationCheck;
17
+ export type ApiKeyEnv = {
18
+ readonly apiKey: string;
19
+ readonly workspaceId: string;
20
+ };
21
+ export type ApiKeyCheck = {
22
+ readonly tag: 'Ready';
23
+ readonly env: ApiKeyEnv;
24
+ } | {
25
+ readonly tag: 'Skip';
26
+ readonly reason: string;
27
+ };
28
+ /**
29
+ * Check whether API key integration env vars are available.
30
+ * Use this for Tilt-based smoke tests with internal service auth.
31
+ */
32
+ export declare const checkApiKeyEnv: () => ApiKeyCheck;
33
+ //# sourceMappingURL=integration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"integration.d.ts","sourceRoot":"","sources":["../../src/testing/integration.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,gBAAgB,GACxB;IAAE,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,cAAc,CAAA;CAAE,GACvD;IAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtD;;;GAGG;AACH,eAAO,MAAM,mBAAmB,QAAO,gBAWtC,CAAC;AAIF,MAAM,MAAM,SAAS,GAAG;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,WAAW,GACnB;IAAE,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,SAAS,CAAA;CAAE,GAClD;IAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtD;;;GAGG;AACH,eAAO,MAAM,cAAc,QAAO,WAWjC,CAAC"}
@@ -0,0 +1,32 @@
1
+ // -- OAuth2 keyfile auth (external) --
2
+ /**
3
+ * Check whether OAuth2 keyfile integration env vars are available.
4
+ * Returns a discriminated union so tests can skip or proceed.
5
+ */
6
+ export const checkIntegrationEnv = () => {
7
+ const credentialsPath = process.env.DISKD_CREDENTIALS_PATH;
8
+ const baseUrl = process.env.DISKD_BASE_URL;
9
+ if (!credentialsPath || credentialsPath.trim().length === 0) {
10
+ return { tag: 'Skip', reason: 'Set DISKD_CREDENTIALS_PATH to run integration tests' };
11
+ }
12
+ if (!baseUrl || baseUrl.trim().length === 0) {
13
+ return { tag: 'Skip', reason: 'Set DISKD_BASE_URL to run integration tests' };
14
+ }
15
+ return { tag: 'Ready', env: { credentialsPath, baseUrl } };
16
+ };
17
+ /**
18
+ * Check whether API key integration env vars are available.
19
+ * Use this for Tilt-based smoke tests with internal service auth.
20
+ */
21
+ export const checkApiKeyEnv = () => {
22
+ const apiKey = process.env.DISKD_API_KEY;
23
+ const workspaceId = process.env.DISKD_WORKSPACE_ID;
24
+ if (!apiKey || apiKey.trim().length === 0) {
25
+ return { tag: 'Skip', reason: 'Set DISKD_API_KEY to run integration tests' };
26
+ }
27
+ if (!workspaceId || workspaceId.trim().length === 0) {
28
+ return { tag: 'Skip', reason: 'Set DISKD_WORKSPACE_ID to run integration tests' };
29
+ }
30
+ return { tag: 'Ready', env: { apiKey, workspaceId } };
31
+ };
32
+ //# sourceMappingURL=integration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"integration.js","sourceRoot":"","sources":["../../src/testing/integration.ts"],"names":[],"mappings":"AAAA,uCAAuC;AAWvC;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAqB,EAAE;IACxD,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC;IAC3D,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;IAE3C,IAAI,CAAC,eAAe,IAAI,eAAe,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5D,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,qDAAqD,EAAE,CAAC;IACxF,CAAC;IACD,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5C,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,6CAA6C,EAAE,CAAC;IAChF,CAAC;IACD,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,eAAe,EAAE,OAAO,EAAE,EAAE,CAAC;AAC7D,CAAC,CAAC;AAaF;;;GAGG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,GAAgB,EAAE;IAC9C,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;IACzC,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;IAEnD,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1C,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,4CAA4C,EAAE,CAAC;IAC/E,CAAC;IACD,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpD,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,iDAAiD,EAAE,CAAC;IACpF,CAAC;IACD,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,CAAC;AACxD,CAAC,CAAC"}
@@ -0,0 +1,9 @@
1
+ /** Create a JSON-RPC 2.0 success Response. */
2
+ export declare const jsonRpcResponse: (result: unknown, sessionId?: string) => Response;
3
+ /** Create a JSON-RPC 2.0 error Response. */
4
+ export declare const jsonRpcError: (code: number, message: string) => Response;
5
+ /** Parse the JSON body from a RequestInit. */
6
+ export declare const parseBody: (init?: RequestInit) => Record<string, unknown>;
7
+ /** Create a simple JSON Response (for REST mocks). */
8
+ export declare const jsonResponse: (body: unknown, status?: number) => Response;
9
+ //# sourceMappingURL=jsonRpc.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jsonRpc.d.ts","sourceRoot":"","sources":["../../src/testing/jsonRpc.ts"],"names":[],"mappings":"AAAA,8CAA8C;AAC9C,eAAO,MAAM,eAAe,GAAI,QAAQ,OAAO,EAAE,YAAY,MAAM,KAAG,QASrE,CAAC;AAEF,4CAA4C;AAC5C,eAAO,MAAM,YAAY,GAAI,MAAM,MAAM,EAAE,SAAS,MAAM,KAAG,QAIzD,CAAC;AAEL,8CAA8C;AAC9C,eAAO,MAAM,SAAS,GAAI,OAAO,WAAW,KAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CACqB,CAAC;AAE3F,sDAAsD;AACtD,eAAO,MAAM,YAAY,GAAI,MAAM,OAAO,EAAE,eAAY,KAAG,QAIvD,CAAC"}
@@ -0,0 +1,24 @@
1
+ /** Create a JSON-RPC 2.0 success Response. */
2
+ export const jsonRpcResponse = (result, sessionId) => {
3
+ const headers = { 'Content-Type': 'application/json' };
4
+ if (sessionId) {
5
+ headers['mcp-session-id'] = sessionId;
6
+ }
7
+ return new Response(JSON.stringify({ jsonrpc: '2.0', id: 1, result }), {
8
+ status: 200,
9
+ headers,
10
+ });
11
+ };
12
+ /** Create a JSON-RPC 2.0 error Response. */
13
+ export const jsonRpcError = (code, message) => new Response(JSON.stringify({ jsonrpc: '2.0', id: 1, error: { code, message } }), {
14
+ status: 200,
15
+ headers: { 'Content-Type': 'application/json' },
16
+ });
17
+ /** Parse the JSON body from a RequestInit. */
18
+ export const parseBody = (init) => JSON.parse(typeof init?.body === 'string' ? init.body : '{}');
19
+ /** Create a simple JSON Response (for REST mocks). */
20
+ export const jsonResponse = (body, status = 200) => new Response(JSON.stringify(body), {
21
+ status,
22
+ headers: { 'Content-Type': 'application/json' },
23
+ });
24
+ //# sourceMappingURL=jsonRpc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jsonRpc.js","sourceRoot":"","sources":["../../src/testing/jsonRpc.ts"],"names":[],"mappings":"AAAA,8CAA8C;AAC9C,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,MAAe,EAAE,SAAkB,EAAY,EAAE;IAC/E,MAAM,OAAO,GAA2B,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC;IAC/E,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,CAAC,gBAAgB,CAAC,GAAG,SAAS,CAAC;IACxC,CAAC;IACD,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE;QACrE,MAAM,EAAE,GAAG;QACX,OAAO;KACR,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,4CAA4C;AAC5C,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAY,EAAE,OAAe,EAAY,EAAE,CACtE,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE;IAChF,MAAM,EAAE,GAAG;IACX,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;CAChD,CAAC,CAAC;AAEL,8CAA8C;AAC9C,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,IAAkB,EAA2B,EAAE,CACvE,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAA4B,CAAC;AAE3F,sDAAsD;AACtD,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAa,EAAE,MAAM,GAAG,GAAG,EAAY,EAAE,CACpE,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;IACjC,MAAM;IACN,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;CAChD,CAAC,CAAC"}
@@ -0,0 +1,16 @@
1
+ export type RpcCall = {
2
+ readonly method: string;
3
+ readonly params: unknown;
4
+ };
5
+ export type RpcMock = {
6
+ readonly calls: RpcCall[];
7
+ readonly call: (method: string, params: unknown) => Promise<unknown>;
8
+ };
9
+ /** Create an RPC mock that always returns the same response. */
10
+ export declare const makeRpcMock: (response: unknown) => RpcMock;
11
+ /**
12
+ * Create an RPC mock that returns responses in sequence.
13
+ * If a response is an Error instance, it will be thrown.
14
+ */
15
+ export declare const makeRpcSequenceMock: (responses: readonly unknown[]) => RpcMock;
16
+ //# sourceMappingURL=rpcMock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rpcMock.d.ts","sourceRoot":"","sources":["../../src/testing/rpcMock.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,OAAO,GAAG;IACpB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG;IACpB,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CACtE,CAAC;AAEF,gEAAgE;AAChE,eAAO,MAAM,WAAW,GAAI,UAAU,OAAO,KAAG,OAO/C,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,GAAI,WAAW,SAAS,OAAO,EAAE,KAAG,OAanE,CAAC"}
@@ -0,0 +1,28 @@
1
+ /** Create an RPC mock that always returns the same response. */
2
+ export const makeRpcMock = (response) => {
3
+ const calls = [];
4
+ const call = async (method, params) => {
5
+ calls.push({ method, params });
6
+ return response;
7
+ };
8
+ return { calls, call };
9
+ };
10
+ /**
11
+ * Create an RPC mock that returns responses in sequence.
12
+ * If a response is an Error instance, it will be thrown.
13
+ */
14
+ export const makeRpcSequenceMock = (responses) => {
15
+ const calls = [];
16
+ let index = 0;
17
+ const call = async (method, params) => {
18
+ calls.push({ method, params });
19
+ const response = responses[index];
20
+ index += 1;
21
+ if (response instanceof Error) {
22
+ throw response;
23
+ }
24
+ return response;
25
+ };
26
+ return { calls, call };
27
+ };
28
+ //# sourceMappingURL=rpcMock.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rpcMock.js","sourceRoot":"","sources":["../../src/testing/rpcMock.ts"],"names":[],"mappings":"AAUA,gEAAgE;AAChE,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,QAAiB,EAAW,EAAE;IACxD,MAAM,KAAK,GAAc,EAAE,CAAC;IAC5B,MAAM,IAAI,GAAG,KAAK,EAAE,MAAc,EAAE,MAAe,EAAoB,EAAE;QACvE,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QAC/B,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC;IACF,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AACzB,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,SAA6B,EAAW,EAAE;IAC5E,MAAM,KAAK,GAAc,EAAE,CAAC;IAC5B,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,MAAM,IAAI,GAAG,KAAK,EAAE,MAAc,EAAE,MAAe,EAAoB,EAAE;QACvE,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QAC/B,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;QAClC,KAAK,IAAI,CAAC,CAAC;QACX,IAAI,QAAQ,YAAY,KAAK,EAAE,CAAC;YAC9B,MAAM,QAAQ,CAAC;QACjB,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC;IACF,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AACzB,CAAC,CAAC"}
@@ -0,0 +1,23 @@
1
+ import type { AuthModule } from '../auth/types.js';
2
+ import type { TgUserbotClient } from './tgUserbotTypes.js';
3
+ /**
4
+ * Creates a TG Userbot REST client bound to a given auth module and workspace.
5
+ *
6
+ * The URL defaults to the centralized `APIS_BASE_URL` gateway with the
7
+ * `/v1/utils/tg-userbot` path prefix.
8
+ *
9
+ * The workspace is derived from `auth.getWorkspaceId()` and forwarded as
10
+ * `X-Workspace-Id` on all authenticated endpoints. The `channels.resolve`
11
+ * endpoint is public and does not require it.
12
+ *
13
+ * Example:
14
+ * ```ts
15
+ * const tg = createTgUserbotClient({ auth });
16
+ * const channels = await tg.channels.list();
17
+ * ```
18
+ */
19
+ export declare const createTgUserbotClient: (params: {
20
+ readonly auth: AuthModule;
21
+ readonly url?: string;
22
+ }) => TgUserbotClient;
23
+ //# sourceMappingURL=tgUserbot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tgUserbot.d.ts","sourceRoot":"","sources":["../../src/tgUserbot/tgUserbot.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,OAAO,KAAK,EAaV,eAAe,EAChB,MAAM,qBAAqB,CAAC;AAqQ7B;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,qBAAqB,GAAI,QAAQ;IAC5C,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;CACvB,KAAG,eAgIH,CAAC"}