@letta-ai/letta-code 0.30.6 → 0.30.8

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 (274) hide show
  1. package/dist/agent-presets.js.map +1 -1
  2. package/dist/app-server-client.cjs +12 -2
  3. package/dist/app-server-client.cjs.map +4 -4
  4. package/dist/app-server-client.js +12 -2
  5. package/dist/app-server-client.js.map +4 -4
  6. package/dist/channels-public.js +210 -39
  7. package/dist/channels-public.js.map +7 -4
  8. package/dist/channels-slack.js +1 -1
  9. package/dist/channels-slack.js.map +3 -3
  10. package/dist/gateway-core.js +60 -42
  11. package/dist/gateway-core.js.map +3 -3
  12. package/dist/mcp-client.js +2 -2
  13. package/dist/mcp-client.js.map +1 -1
  14. package/dist/types/agent/approval-execution.d.ts +0 -2
  15. package/dist/types/agent/approval-execution.d.ts.map +1 -1
  16. package/dist/types/agent/subagents/manager.d.ts.map +1 -1
  17. package/dist/types/agent/subagents/subagent-launcher.d.ts +0 -5
  18. package/dist/types/agent/subagents/subagent-launcher.d.ts.map +1 -1
  19. package/dist/types/app-server-client.d.ts +4 -1
  20. package/dist/types/app-server-client.d.ts.map +1 -1
  21. package/dist/types/channels/gateway-core.d.ts +14 -4
  22. package/dist/types/channels/gateway-core.d.ts.map +1 -1
  23. package/dist/types/channels/processor.d.ts.map +1 -1
  24. package/dist/types/channels/slack/presentation.d.ts.map +1 -1
  25. package/dist/types/cli/helpers/stream-processor.d.ts +6 -0
  26. package/dist/types/cli/helpers/stream-processor.d.ts.map +1 -1
  27. package/dist/types/cli/helpers/stream-resume.d.ts +33 -0
  28. package/dist/types/cli/helpers/stream-resume.d.ts.map +1 -0
  29. package/dist/types/cli/helpers/stream.d.ts +5 -30
  30. package/dist/types/cli/helpers/stream.d.ts.map +1 -1
  31. package/dist/types/constants.d.ts +1 -1
  32. package/dist/types/constants.d.ts.map +1 -1
  33. package/dist/types/gateway-core.d.ts +1 -1
  34. package/dist/types/gateway-core.d.ts.map +1 -1
  35. package/dist/types/runtime-context.d.ts +0 -9
  36. package/dist/types/runtime-context.d.ts.map +1 -1
  37. package/dist/types/tools/manager.d.ts +4 -11
  38. package/dist/types/tools/manager.d.ts.map +1 -1
  39. package/dist/types/tools/tool-definitions.d.ts +0 -1
  40. package/dist/types/tools/tool-definitions.d.ts.map +1 -1
  41. package/dist/types/tools/toolset.d.ts +1 -5
  42. package/dist/types/tools/toolset.d.ts.map +1 -1
  43. package/dist/types/types/app-server-info.d.ts +1 -0
  44. package/dist/types/types/app-server-info.d.ts.map +1 -1
  45. package/dist/types/types/external-tool-protocol.d.ts +61 -0
  46. package/dist/types/types/external-tool-protocol.d.ts.map +1 -0
  47. package/dist/types/types/protocol_v2.d.ts +7 -55
  48. package/dist/types/types/protocol_v2.d.ts.map +1 -1
  49. package/dist/types/types/runtime-scope.d.ts +18 -0
  50. package/dist/types/types/runtime-scope.d.ts.map +1 -0
  51. package/dist/types/websocket/listener/runtime.d.ts.map +1 -1
  52. package/dist/types/websocket/listener/types.d.ts +7 -0
  53. package/dist/types/websocket/listener/types.d.ts.map +1 -1
  54. package/letta.js +105615 -105454
  55. package/package.json +1 -1
  56. package/scripts/source-file-size-baseline.json +6 -7
  57. package/dist/types/channels/access-control.d.ts +0 -104
  58. package/dist/types/channels/access-control.d.ts.map +0 -1
  59. package/dist/types/channels/accounts.d.ts +0 -17
  60. package/dist/types/channels/accounts.d.ts.map +0 -1
  61. package/dist/types/channels/commands.d.ts +0 -98
  62. package/dist/types/channels/commands.d.ts.map +0 -1
  63. package/dist/types/channels/config.d.ts +0 -18
  64. package/dist/types/channels/config.d.ts.map +0 -1
  65. package/dist/types/channels/credential-store.d.ts +0 -21
  66. package/dist/types/channels/credential-store.d.ts.map +0 -1
  67. package/dist/types/channels/custom/adapter.d.ts +0 -3
  68. package/dist/types/channels/custom/adapter.d.ts.map +0 -1
  69. package/dist/types/channels/custom/plugin.d.ts +0 -10
  70. package/dist/types/channels/custom/plugin.d.ts.map +0 -1
  71. package/dist/types/channels/discord/account-display.d.ts +0 -2
  72. package/dist/types/channels/discord/account-display.d.ts.map +0 -1
  73. package/dist/types/channels/discord/adapter.d.ts +0 -3
  74. package/dist/types/channels/discord/adapter.d.ts.map +0 -1
  75. package/dist/types/channels/discord/bot-policy.d.ts +0 -19
  76. package/dist/types/channels/discord/bot-policy.d.ts.map +0 -1
  77. package/dist/types/channels/discord/channel-gating.d.ts +0 -41
  78. package/dist/types/channels/discord/channel-gating.d.ts.map +0 -1
  79. package/dist/types/channels/discord/error-reply.d.ts +0 -24
  80. package/dist/types/channels/discord/error-reply.d.ts.map +0 -1
  81. package/dist/types/channels/discord/internal-types.d.ts +0 -101
  82. package/dist/types/channels/discord/internal-types.d.ts.map +0 -1
  83. package/dist/types/channels/discord/media.d.ts +0 -47
  84. package/dist/types/channels/discord/media.d.ts.map +0 -1
  85. package/dist/types/channels/discord/message-actions.d.ts +0 -3
  86. package/dist/types/channels/discord/message-actions.d.ts.map +0 -1
  87. package/dist/types/channels/discord/plugin.d.ts +0 -3
  88. package/dist/types/channels/discord/plugin.d.ts.map +0 -1
  89. package/dist/types/channels/discord/runtime.d.ts +0 -28
  90. package/dist/types/channels/discord/runtime.d.ts.map +0 -1
  91. package/dist/types/channels/discord/setup.d.ts +0 -2
  92. package/dist/types/channels/discord/setup.d.ts.map +0 -1
  93. package/dist/types/channels/discord/utils.d.ts +0 -47
  94. package/dist/types/channels/discord/utils.d.ts.map +0 -1
  95. package/dist/types/channels/feedback.d.ts +0 -26
  96. package/dist/types/channels/feedback.d.ts.map +0 -1
  97. package/dist/types/channels/inbound-debounce.d.ts +0 -50
  98. package/dist/types/channels/inbound-debounce.d.ts.map +0 -1
  99. package/dist/types/channels/interactive.d.ts +0 -13
  100. package/dist/types/channels/interactive.d.ts.map +0 -1
  101. package/dist/types/channels/lifecycle-error-report.d.ts +0 -19
  102. package/dist/types/channels/lifecycle-error-report.d.ts.map +0 -1
  103. package/dist/types/channels/message-tool.d.ts +0 -15
  104. package/dist/types/channels/message-tool.d.ts.map +0 -1
  105. package/dist/types/channels/pairing.d.ts +0 -53
  106. package/dist/types/channels/pairing.d.ts.map +0 -1
  107. package/dist/types/channels/pending-control-requests.d.ts +0 -12
  108. package/dist/types/channels/pending-control-requests.d.ts.map +0 -1
  109. package/dist/types/channels/plugin-registry.d.ts +0 -9
  110. package/dist/types/channels/plugin-registry.d.ts.map +0 -1
  111. package/dist/types/channels/registry-commands.d.ts +0 -52
  112. package/dist/types/channels/registry-commands.d.ts.map +0 -1
  113. package/dist/types/channels/registry-controls.d.ts +0 -33
  114. package/dist/types/channels/registry-controls.d.ts.map +0 -1
  115. package/dist/types/channels/registry-events.d.ts +0 -27
  116. package/dist/types/channels/registry-events.d.ts.map +0 -1
  117. package/dist/types/channels/registry-handlers.d.ts +0 -46
  118. package/dist/types/channels/registry-handlers.d.ts.map +0 -1
  119. package/dist/types/channels/registry-inbound.d.ts +0 -19
  120. package/dist/types/channels/registry-inbound.d.ts.map +0 -1
  121. package/dist/types/channels/registry-presentation.d.ts +0 -20
  122. package/dist/types/channels/registry-presentation.d.ts.map +0 -1
  123. package/dist/types/channels/registry-routes.d.ts +0 -33
  124. package/dist/types/channels/registry-routes.d.ts.map +0 -1
  125. package/dist/types/channels/registry.d.ts +0 -130
  126. package/dist/types/channels/registry.d.ts.map +0 -1
  127. package/dist/types/channels/restore-scope.d.ts +0 -8
  128. package/dist/types/channels/restore-scope.d.ts.map +0 -1
  129. package/dist/types/channels/routing.d.ts +0 -74
  130. package/dist/types/channels/routing.d.ts.map +0 -1
  131. package/dist/types/channels/runtime-deps.d.ts +0 -25
  132. package/dist/types/channels/runtime-deps.d.ts.map +0 -1
  133. package/dist/types/channels/schema-config.d.ts +0 -33
  134. package/dist/types/channels/schema-config.d.ts.map +0 -1
  135. package/dist/types/channels/signal/account-conflicts.d.ts +0 -14
  136. package/dist/types/channels/signal/account-conflicts.d.ts.map +0 -1
  137. package/dist/types/channels/signal/adapter.d.ts +0 -40
  138. package/dist/types/channels/signal/adapter.d.ts.map +0 -1
  139. package/dist/types/channels/signal/client.d.ts +0 -51
  140. package/dist/types/channels/signal/client.d.ts.map +0 -1
  141. package/dist/types/channels/signal/inbound.d.ts +0 -25
  142. package/dist/types/channels/signal/inbound.d.ts.map +0 -1
  143. package/dist/types/channels/signal/internal-types.d.ts +0 -82
  144. package/dist/types/channels/signal/internal-types.d.ts.map +0 -1
  145. package/dist/types/channels/signal/media.d.ts +0 -35
  146. package/dist/types/channels/signal/media.d.ts.map +0 -1
  147. package/dist/types/channels/signal/message-actions.d.ts +0 -3
  148. package/dist/types/channels/signal/message-actions.d.ts.map +0 -1
  149. package/dist/types/channels/signal/plugin.d.ts +0 -3
  150. package/dist/types/channels/signal/plugin.d.ts.map +0 -1
  151. package/dist/types/channels/signal/runtime.d.ts +0 -14
  152. package/dist/types/channels/signal/runtime.d.ts.map +0 -1
  153. package/dist/types/channels/signal/setup-runtime.d.ts +0 -35
  154. package/dist/types/channels/signal/setup-runtime.d.ts.map +0 -1
  155. package/dist/types/channels/signal/setup.d.ts +0 -5
  156. package/dist/types/channels/signal/setup.d.ts.map +0 -1
  157. package/dist/types/channels/signal/target.d.ts +0 -21
  158. package/dist/types/channels/signal/target.d.ts.map +0 -1
  159. package/dist/types/channels/slack/account-display.d.ts +0 -2
  160. package/dist/types/channels/slack/account-display.d.ts.map +0 -1
  161. package/dist/types/channels/slack/adapter.d.ts +0 -12
  162. package/dist/types/channels/slack/adapter.d.ts.map +0 -1
  163. package/dist/types/channels/slack/agent-thread-tracker.d.ts +0 -13
  164. package/dist/types/channels/slack/agent-thread-tracker.d.ts.map +0 -1
  165. package/dist/types/channels/slack/approval-controller.d.ts +0 -14
  166. package/dist/types/channels/slack/approval-controller.d.ts.map +0 -1
  167. package/dist/types/channels/slack/attachment-download.d.ts +0 -20
  168. package/dist/types/channels/slack/attachment-download.d.ts.map +0 -1
  169. package/dist/types/channels/slack/attachment-stream.d.ts +0 -23
  170. package/dist/types/channels/slack/attachment-stream.d.ts.map +0 -1
  171. package/dist/types/channels/slack/attachment-task.d.ts +0 -37
  172. package/dist/types/channels/slack/attachment-task.d.ts.map +0 -1
  173. package/dist/types/channels/slack/attachment-types.d.ts +0 -27
  174. package/dist/types/channels/slack/attachment-types.d.ts.map +0 -1
  175. package/dist/types/channels/slack/bot-policy.d.ts +0 -25
  176. package/dist/types/channels/slack/bot-policy.d.ts.map +0 -1
  177. package/dist/types/channels/slack/file-upload.d.ts +0 -6
  178. package/dist/types/channels/slack/file-upload.d.ts.map +0 -1
  179. package/dist/types/channels/slack/inbound-debounce.d.ts +0 -16
  180. package/dist/types/channels/slack/inbound-debounce.d.ts.map +0 -1
  181. package/dist/types/channels/slack/ingress-controller.d.ts +0 -21
  182. package/dist/types/channels/slack/ingress-controller.d.ts.map +0 -1
  183. package/dist/types/channels/slack/media.d.ts +0 -63
  184. package/dist/types/channels/slack/media.d.ts.map +0 -1
  185. package/dist/types/channels/slack/message-actions.d.ts +0 -2
  186. package/dist/types/channels/slack/message-actions.d.ts.map +0 -1
  187. package/dist/types/channels/slack/model-picker-blocks.d.ts +0 -9
  188. package/dist/types/channels/slack/model-picker-blocks.d.ts.map +0 -1
  189. package/dist/types/channels/slack/plugin.d.ts +0 -3
  190. package/dist/types/channels/slack/plugin.d.ts.map +0 -1
  191. package/dist/types/channels/slack/proactive-accounts.d.ts +0 -15
  192. package/dist/types/channels/slack/proactive-accounts.d.ts.map +0 -1
  193. package/dist/types/channels/slack/runtime.d.ts +0 -6
  194. package/dist/types/channels/slack/runtime.d.ts.map +0 -1
  195. package/dist/types/channels/slack/setup.d.ts +0 -2
  196. package/dist/types/channels/slack/setup.d.ts.map +0 -1
  197. package/dist/types/channels/slack/target-resolution.d.ts +0 -52
  198. package/dist/types/channels/slack/target-resolution.d.ts.map +0 -1
  199. package/dist/types/channels/slack/thread-context.d.ts +0 -15
  200. package/dist/types/channels/slack/thread-context.d.ts.map +0 -1
  201. package/dist/types/channels/slack/web-api-client.d.ts +0 -2
  202. package/dist/types/channels/slack/web-api-client.d.ts.map +0 -1
  203. package/dist/types/channels/targets.d.ts +0 -17
  204. package/dist/types/channels/targets.d.ts.map +0 -1
  205. package/dist/types/channels/telegram/account-display.d.ts +0 -9
  206. package/dist/types/channels/telegram/account-display.d.ts.map +0 -1
  207. package/dist/types/channels/telegram/adapter.d.ts +0 -12
  208. package/dist/types/channels/telegram/adapter.d.ts.map +0 -1
  209. package/dist/types/channels/telegram/debounce.d.ts +0 -22
  210. package/dist/types/channels/telegram/debounce.d.ts.map +0 -1
  211. package/dist/types/channels/telegram/internal-types.d.ts +0 -98
  212. package/dist/types/channels/telegram/internal-types.d.ts.map +0 -1
  213. package/dist/types/channels/telegram/media.d.ts +0 -115
  214. package/dist/types/channels/telegram/media.d.ts.map +0 -1
  215. package/dist/types/channels/telegram/message-actions.d.ts +0 -3
  216. package/dist/types/channels/telegram/message-actions.d.ts.map +0 -1
  217. package/dist/types/channels/telegram/plugin.d.ts +0 -3
  218. package/dist/types/channels/telegram/plugin.d.ts.map +0 -1
  219. package/dist/types/channels/telegram/runtime.d.ts +0 -6
  220. package/dist/types/channels/telegram/runtime.d.ts.map +0 -1
  221. package/dist/types/channels/telegram/setup.d.ts +0 -14
  222. package/dist/types/channels/telegram/setup.d.ts.map +0 -1
  223. package/dist/types/channels/telegram/startup-helpers.d.ts +0 -10
  224. package/dist/types/channels/telegram/startup-helpers.d.ts.map +0 -1
  225. package/dist/types/channels/telegram/typing-controller.d.ts +0 -11
  226. package/dist/types/channels/telegram/typing-controller.d.ts.map +0 -1
  227. package/dist/types/channels/telegram/utils.d.ts +0 -43
  228. package/dist/types/channels/telegram/utils.d.ts.map +0 -1
  229. package/dist/types/channels/transcription/index.d.ts +0 -20
  230. package/dist/types/channels/transcription/index.d.ts.map +0 -1
  231. package/dist/types/channels/whatsapp/adapter-helpers.d.ts +0 -21
  232. package/dist/types/channels/whatsapp/adapter-helpers.d.ts.map +0 -1
  233. package/dist/types/channels/whatsapp/adapter-types.d.ts +0 -44
  234. package/dist/types/channels/whatsapp/adapter-types.d.ts.map +0 -1
  235. package/dist/types/channels/whatsapp/adapter.d.ts +0 -18
  236. package/dist/types/channels/whatsapp/adapter.d.ts.map +0 -1
  237. package/dist/types/channels/whatsapp/attachment-policy.d.ts +0 -22
  238. package/dist/types/channels/whatsapp/attachment-policy.d.ts.map +0 -1
  239. package/dist/types/channels/whatsapp/dedupe-claims.d.ts +0 -8
  240. package/dist/types/channels/whatsapp/dedupe-claims.d.ts.map +0 -1
  241. package/dist/types/channels/whatsapp/identity.d.ts +0 -29
  242. package/dist/types/channels/whatsapp/identity.d.ts.map +0 -1
  243. package/dist/types/channels/whatsapp/inbound-debounce.d.ts +0 -28
  244. package/dist/types/channels/whatsapp/inbound-debounce.d.ts.map +0 -1
  245. package/dist/types/channels/whatsapp/jid.d.ts +0 -40
  246. package/dist/types/channels/whatsapp/jid.d.ts.map +0 -1
  247. package/dist/types/channels/whatsapp/lid-store.d.ts +0 -45
  248. package/dist/types/channels/whatsapp/lid-store.d.ts.map +0 -1
  249. package/dist/types/channels/whatsapp/media.d.ts +0 -26
  250. package/dist/types/channels/whatsapp/media.d.ts.map +0 -1
  251. package/dist/types/channels/whatsapp/message-actions.d.ts +0 -3
  252. package/dist/types/channels/whatsapp/message-actions.d.ts.map +0 -1
  253. package/dist/types/channels/whatsapp/message-store.d.ts +0 -13
  254. package/dist/types/channels/whatsapp/message-store.d.ts.map +0 -1
  255. package/dist/types/channels/whatsapp/plugin.d.ts +0 -3
  256. package/dist/types/channels/whatsapp/plugin.d.ts.map +0 -1
  257. package/dist/types/channels/whatsapp/reactions.d.ts +0 -33
  258. package/dist/types/channels/whatsapp/reactions.d.ts.map +0 -1
  259. package/dist/types/channels/whatsapp/reconnect-scheduler.d.ts +0 -16
  260. package/dist/types/channels/whatsapp/reconnect-scheduler.d.ts.map +0 -1
  261. package/dist/types/channels/whatsapp/runtime.d.ts +0 -25
  262. package/dist/types/channels/whatsapp/runtime.d.ts.map +0 -1
  263. package/dist/types/channels/whatsapp/session.d.ts +0 -56
  264. package/dist/types/channels/whatsapp/session.d.ts.map +0 -1
  265. package/dist/types/channels/whatsapp/setup.d.ts +0 -2
  266. package/dist/types/channels/whatsapp/setup.d.ts.map +0 -1
  267. package/dist/types/channels/whatsapp/state.d.ts +0 -18
  268. package/dist/types/channels/whatsapp/state.d.ts.map +0 -1
  269. package/dist/types/channels/whatsapp/typing-controller.d.ts +0 -28
  270. package/dist/types/channels/whatsapp/typing-controller.d.ts.map +0 -1
  271. package/dist/types/tools/impl/message-channel.d.ts +0 -10
  272. package/dist/types/tools/impl/message-channel.d.ts.map +0 -1
  273. package/dist/types/updater/auto-update.d.ts +0 -48
  274. package/dist/types/updater/auto-update.d.ts.map +0 -1
@@ -1,20 +0,0 @@
1
- import type { ChannelRoute, ChannelTurnSource, InboundChannelMessage } from "./types";
2
- type PairingInstructionOptions = {
3
- agentId?: string | null;
4
- };
5
- export declare function getConfiguredAgentId(config: unknown): string | null;
6
- export declare function buildPairingInstructions(channelId: string, code: string, options?: PairingInstructionOptions): string;
7
- export declare function buildUnboundRouteInstructions(channelId: string, chatId: string): string;
8
- export declare function buildSlackAppSetupInstructions(): string;
9
- export declare function buildSlackConversationSummary(msg: Pick<InboundChannelMessage, "chatId" | "chatLabel" | "chatType" | "senderId" | "senderName" | "text" | "threadId">): string;
10
- export declare function buildDiscordConversationSummary(msg: Pick<InboundChannelMessage, "chatId" | "chatLabel" | "chatType" | "senderId" | "senderName" | "text">): string;
11
- export declare function buildTelegramConversationSummary(msg: Pick<InboundChannelMessage, "chatId" | "chatLabel" | "chatType" | "senderId" | "senderName" | "text">): string;
12
- export declare function buildWhatsAppConversationSummary(msg: Pick<InboundChannelMessage, "chatId" | "chatLabel" | "chatType" | "senderId" | "senderName" | "text">): string;
13
- export declare function buildSignalConversationSummary(msg: Pick<InboundChannelMessage, "chatId" | "chatLabel" | "chatType" | "senderId" | "senderName" | "text">): string;
14
- export declare function buildChannelTurnSource(route: ChannelRoute, msg: Pick<InboundChannelMessage, "channel" | "accountId" | "chatId" | "chatType" | "senderId" | "senderTeamId" | "messageId" | "threadId">): ChannelTurnSource;
15
- export declare function buildDirectReplyOptions(msg: Pick<InboundChannelMessage, "messageId" | "threadId">): {
16
- replyToMessageId?: string;
17
- threadId?: string | null;
18
- } | undefined;
19
- export {};
20
- //# sourceMappingURL=registry-presentation.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"registry-presentation.d.ts","sourceRoot":"","sources":["../../../src/channels/registry-presentation.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,YAAY,EACZ,iBAAiB,EACjB,qBAAqB,EACtB,MAAM,SAAS,CAAC;AAEjB,KAAK,yBAAyB,GAAG;IAC/B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB,CAAC;AAsBF,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAOnE;AAED,wBAAgB,wBAAwB,CACtC,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,yBAA8B,GACtC,MAAM,CAiCR;AAED,wBAAgB,6BAA6B,CAC3C,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,GACb,MAAM,CAeR;AAED,wBAAgB,8BAA8B,IAAI,MAAM,CAKvD;AAYD,wBAAgB,6BAA6B,CAC3C,GAAG,EAAE,IAAI,CACP,qBAAqB,EACnB,QAAQ,GACR,WAAW,GACX,UAAU,GACV,UAAU,GACV,YAAY,GACZ,MAAM,GACN,UAAU,CACb,GACA,MAAM,CAgBR;AAED,wBAAgB,+BAA+B,CAC7C,GAAG,EAAE,IAAI,CACP,qBAAqB,EACrB,QAAQ,GAAG,WAAW,GAAG,UAAU,GAAG,UAAU,GAAG,YAAY,GAAG,MAAM,CACzE,GACA,MAAM,CASR;AAED,wBAAgB,gCAAgC,CAC9C,GAAG,EAAE,IAAI,CACP,qBAAqB,EACrB,QAAQ,GAAG,WAAW,GAAG,UAAU,GAAG,UAAU,GAAG,YAAY,GAAG,MAAM,CACzE,GACA,MAAM,CASR;AAED,wBAAgB,gCAAgC,CAC9C,GAAG,EAAE,IAAI,CACP,qBAAqB,EACrB,QAAQ,GAAG,WAAW,GAAG,UAAU,GAAG,UAAU,GAAG,YAAY,GAAG,MAAM,CACzE,GACA,MAAM,CASR;AAED,wBAAgB,8BAA8B,CAC5C,GAAG,EAAE,IAAI,CACP,qBAAqB,EACrB,QAAQ,GAAG,WAAW,GAAG,UAAU,GAAG,UAAU,GAAG,YAAY,GAAG,MAAM,CACzE,GACA,MAAM,CASR;AAED,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,YAAY,EACnB,GAAG,EAAE,IAAI,CACP,qBAAqB,EACnB,SAAS,GACT,WAAW,GACX,QAAQ,GACR,UAAU,GACV,UAAU,GACV,cAAc,GACd,WAAW,GACX,UAAU,CACb,GACA,iBAAiB,CAanB;AAED,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,IAAI,CAAC,qBAAqB,EAAE,WAAW,GAAG,UAAU,CAAC,GACzD;IAAE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAAG,SAAS,CAMrE"}
@@ -1,33 +0,0 @@
1
- import type { ChannelRegistryEvent } from "./registry-events";
2
- import type { ChannelAdapter, ChannelRoute, DiscordChannelAccount, InboundChannelMessage, SignalChannelAccount, SlackChannelAccount, TelegramChannelAccount, WhatsAppChannelAccount } from "./types";
3
- export declare function createChannelRouteProvisioner(deps: {
4
- emitEvent: (event: ChannelRegistryEvent) => void;
5
- }): {
6
- createConversationForAgent: (agentId: string, summary?: string) => Promise<string>;
7
- createSlackRoute: (config: SlackChannelAccount, msg: InboundChannelMessage, options?: {
8
- outboundEnabled?: boolean;
9
- detached?: boolean;
10
- }) => Promise<ChannelRoute>;
11
- ensureSlackRoute: (adapter: ChannelAdapter, msg: InboundChannelMessage, config: SlackChannelAccount) => Promise<{
12
- route: ChannelRoute;
13
- isFirstRouteTurn: boolean;
14
- } | null>;
15
- ensureTelegramRoute: (adapter: ChannelAdapter, msg: InboundChannelMessage, config: TelegramChannelAccount) => Promise<{
16
- route: ChannelRoute;
17
- isFirstRouteTurn: boolean;
18
- } | null>;
19
- ensureDiscordRoute: (adapter: ChannelAdapter, msg: InboundChannelMessage, config: DiscordChannelAccount) => Promise<{
20
- route: ChannelRoute;
21
- isFirstRouteTurn: boolean;
22
- } | null>;
23
- ensureWhatsAppRoute: (adapter: ChannelAdapter, msg: InboundChannelMessage, config: WhatsAppChannelAccount) => Promise<{
24
- route: ChannelRoute;
25
- isFirstRouteTurn: boolean;
26
- } | null>;
27
- ensureSignalRoute: (adapter: ChannelAdapter, msg: InboundChannelMessage, config: SignalChannelAccount) => Promise<{
28
- route: ChannelRoute;
29
- isFirstRouteTurn: boolean;
30
- } | null>;
31
- };
32
- export type ChannelRouteProvisioner = ReturnType<typeof createChannelRouteProvisioner>;
33
- //# sourceMappingURL=registry-routes.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"registry-routes.d.ts","sourceRoot":"","sources":["../../../src/channels/registry-routes.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAY9D,OAAO,KAAK,EACV,cAAc,EACd,YAAY,EACZ,qBAAqB,EACrB,qBAAqB,EACrB,oBAAoB,EACpB,mBAAmB,EACnB,sBAAsB,EACtB,sBAAsB,EACvB,MAAM,SAAS,CAAC;AAEjB,wBAAgB,6BAA6B,CAAC,IAAI,EAAE;IAClD,SAAS,EAAE,CAAC,KAAK,EAAE,oBAAoB,KAAK,IAAI,CAAC;CAClD;0CAEY,MAAM,YACL,MAAM,KACf,OAAO,CAAC,MAAM,CAAC;+BASR,mBAAmB,OACtB,qBAAqB,YACjB;QAAE,eAAe,CAAC,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,KACzD,OAAO,CAAC,YAAY,CAAC;gCAwCb,cAAc,OAClB,qBAAqB,UAClB,mBAAmB,KAC1B,OAAO,CAAC;QACT,KAAK,EAAE,YAAY,CAAC;QACpB,gBAAgB,EAAE,OAAO,CAAC;KAC3B,GAAG,IAAI,CAAC;mCA+HE,cAAc,OAClB,qBAAqB,UAClB,sBAAsB,KAC7B,OAAO,CAAC;QACT,KAAK,EAAE,YAAY,CAAC;QACpB,gBAAgB,EAAE,OAAO,CAAC;KAC3B,GAAG,IAAI,CAAC;kCA8FE,cAAc,OAClB,qBAAqB,UAClB,qBAAqB,KAC5B,OAAO,CAAC;QACT,KAAK,EAAE,YAAY,CAAC;QACpB,gBAAgB,EAAE,OAAO,CAAC;KAC3B,GAAG,IAAI,CAAC;mCA+EE,cAAc,OAClB,qBAAqB,UAClB,sBAAsB,KAC7B,OAAO,CAAC;QACT,KAAK,EAAE,YAAY,CAAC;QACpB,gBAAgB,EAAE,OAAO,CAAC;KAC3B,GAAG,IAAI,CAAC;iCAgFE,cAAc,OAClB,qBAAqB,UAClB,oBAAoB,KAC3B,OAAO,CAAC;QACT,KAAK,EAAE,YAAY,CAAC;QACpB,gBAAgB,EAAE,OAAO,CAAC;KAC3B,GAAG,IAAI,CAAC;EA2DV;AAED,MAAM,MAAM,uBAAuB,GAAG,UAAU,CAC9C,OAAO,6BAA6B,CACrC,CAAC"}
@@ -1,130 +0,0 @@
1
- /**
2
- * Channel Registry — singleton that manages channel adapters, routing,
3
- * pairing, and the ingress pipeline.
4
- *
5
- * Lifecycle:
6
- * 1. initializeChannels() creates adapters from channel accounts
7
- * 2. Adapters start long-polling (buffer inbound until ready)
8
- * 3. setReady() is called from inside startListenerClient() once closure state exists
9
- * 4. Buffered messages flush through the registered onMessage handler
10
- */
11
- import { type ChannelApprovalResponseHandler, type PendingChannelControlRequest } from "./registry-controls";
12
- import type { ChannelRegistryEvent } from "./registry-events";
13
- import type { ChannelCancelHandler, ChannelMessageHandler, ChannelModelHandler, ChannelReflectionHandler, ChannelReloadHandler } from "./registry-handlers";
14
- import type { ChannelRestoreAgentScope } from "./restore-scope";
15
- import type { ChannelAdapter, ChannelControlRequestEvent, ChannelRoute, ChannelStartupLogger, ChannelTurnLifecycleEvent, ChannelTurnProgressEvent, ChannelTurnSource } from "./types";
16
- export declare function getChannelRegistry(): ChannelRegistry | null;
17
- export declare function ensureChannelRegistry(): ChannelRegistry;
18
- export declare function getActiveChannelIds(): string[];
19
- type ChannelStartupOptions = {
20
- logger?: ChannelStartupLogger;
21
- };
22
- export interface ChannelStartupFailure {
23
- channelId: string;
24
- accountId?: string;
25
- error: string;
26
- }
27
- export declare class ChannelInitializationError extends Error {
28
- readonly failures: ChannelStartupFailure[];
29
- constructor(failures: ChannelStartupFailure[]);
30
- }
31
- export declare function formatChannelStartupFailures(failures: ChannelStartupFailure[]): string;
32
- export declare class ChannelRegistry {
33
- private readonly adapters;
34
- private ready;
35
- private messageHandler;
36
- private eventHandler;
37
- private approvalResponseHandler;
38
- private cancelHandler;
39
- private reflectionHandler;
40
- private modelHandler;
41
- private reloadHandler;
42
- private readonly buffer;
43
- private readonly controls;
44
- private readonly routes;
45
- private readonly commands;
46
- private readonly inbound;
47
- private readonly unsubscribeWhatsAppState;
48
- constructor();
49
- private getAdapterKey;
50
- registerAdapter(adapter: ChannelAdapter): void;
51
- getAdapter(channelId: string, accountId?: string): ChannelAdapter | null;
52
- getActiveChannelIds(): string[];
53
- resolveTurnSourcesForScope(agentId: string, conversationId: string): ChannelTurnSource[];
54
- dispatchTurnLifecycleEvent(event: ChannelTurnLifecycleEvent): Promise<void>;
55
- dispatchTurnProgressEvent(event: ChannelTurnProgressEvent): Promise<void>;
56
- /**
57
- * Set the message handler and mark the registry as ready.
58
- * Called by the owning gateway after its App Server client is connected.
59
- */
60
- setMessageHandler(handler: ChannelMessageHandler): void;
61
- setApprovalResponseHandler(handler: ChannelApprovalResponseHandler | null): void;
62
- setCancelHandler(handler: ChannelCancelHandler | null): void;
63
- setReflectionHandler(handler: ChannelReflectionHandler | null): void;
64
- setModelHandler(handler: ChannelModelHandler | null): void;
65
- setReloadHandler(handler: ChannelReloadHandler | null): void;
66
- setEventHandler(handler: ((event: ChannelRegistryEvent) => void) | null): void;
67
- hasPendingControlRequest(requestId: string): boolean;
68
- getPendingControlRequests(): PendingChannelControlRequest[];
69
- registerPendingControlRequest(event: ChannelControlRequestEvent): Promise<void>;
70
- redeliverPendingControlRequest(requestId: string): Promise<boolean>;
71
- clearPendingControlRequest(requestId: string): void;
72
- /**
73
- * Mark the registry as ready, flushing any buffered messages.
74
- */
75
- setReady(): void;
76
- /**
77
- * Check if the registry is ready to deliver messages.
78
- */
79
- isReady(): boolean;
80
- getRoute(channel: string, chatId: string, accountId?: string, threadId?: string | null): ChannelRoute | null;
81
- getRouteForScope(channel: string, chatId: string, agentId: string, conversationId: string, accountId?: string): ChannelRoute | null;
82
- startChannel(channelId: string): Promise<boolean>;
83
- startChannelAccount(channelId: string, accountId: string, options?: ChannelStartupOptions): Promise<boolean>;
84
- stopChannel(channelId: string): Promise<boolean>;
85
- stopChannelAccount(channelId: string, accountId: string): Promise<boolean>;
86
- startAll(): Promise<void>;
87
- /**
88
- * Pause delivery without stopping adapters.
89
- * Called on WS disconnect — adapters keep polling, messages buffer.
90
- * On reconnect, wireChannelIngress re-registers the handler and calls setReady().
91
- */
92
- pause(): void;
93
- /**
94
- * Fully stop all adapters and destroy the singleton.
95
- * Only called on actual process shutdown, NOT on WS disconnect.
96
- */
97
- stopAll(): Promise<void>;
98
- private deliverOrBuffer;
99
- private flushBuffer;
100
- }
101
- /**
102
- * Initialize the channel system.
103
- *
104
- * 1. Creates the ChannelRegistry singleton
105
- * 2. Loads configs, routing tables, and pairing stores
106
- * 3. Creates adapters for each requested channel
107
- * 4. Starts adapters (begin long-polling, buffer until ready)
108
- *
109
- * Does NOT set the message handler or mark ready — that happens
110
- * inside startListenerClient() when closure state is available.
111
- */
112
- export declare function initializeChannels(channelNames: string[], options?: {
113
- failOnStartupError?: boolean;
114
- logger?: ChannelStartupLogger;
115
- restoreAgentScope?: ChannelRestoreAgentScope | null;
116
- }): Promise<ChannelRegistry>;
117
- /**
118
- * Complete a pairing and create a route (atomic operation).
119
- *
120
- * Validates the pairing code, approves the user, and binds their
121
- * chat to the specified agent+conversation.
122
- */
123
- export declare function completePairing(channelId: string, code: string, agentId: string, conversationId: string, accountId?: string): {
124
- success: boolean;
125
- error?: string;
126
- chatId?: string;
127
- accountId?: string;
128
- };
129
- export {};
130
- //# sourceMappingURL=registry.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/channels/registry.ts"],"names":[],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- import type { ChannelAccount } from "./types";
2
- export type ChannelRestoreAgentScope = "all" | "cloud" | "local";
3
- export declare const RESTORE_CHANNEL_AGENT_SCOPE_ENV = "LETTA_RESTORE_CHANNEL_AGENT_SCOPE";
4
- export declare const RESTORE_ENABLED_CHANNELS_AGENT_SCOPE_ENV = "LETTA_RESTORE_ENABLED_CHANNELS_AGENT_SCOPE";
5
- export declare function getChannelAccountAgentId(account: ChannelAccount): string | null;
6
- export declare function parseChannelRestoreAgentScope(value: string | undefined): ChannelRestoreAgentScope | null;
7
- export declare function shouldRestoreChannelAccountForAgentScope(account: ChannelAccount, scope: ChannelRestoreAgentScope | null | undefined): boolean;
8
- //# sourceMappingURL=restore-scope.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"restore-scope.d.ts","sourceRoot":"","sources":["../../../src/channels/restore-scope.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAE9C,MAAM,MAAM,wBAAwB,GAAG,KAAK,GAAG,OAAO,GAAG,OAAO,CAAC;AAEjE,eAAO,MAAM,+BAA+B,sCACP,CAAC;AACtC,eAAO,MAAM,wCAAwC,+CACP,CAAC;AAc/C,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,cAAc,GACtB,MAAM,GAAG,IAAI,CAMf;AAED,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,MAAM,GAAG,SAAS,GACxB,wBAAwB,GAAG,IAAI,CAUjC;AAED,wBAAgB,wCAAwC,CACtD,OAAO,EAAE,cAAc,EACvB,KAAK,EAAE,wBAAwB,GAAG,IAAI,GAAG,SAAS,GACjD,OAAO,CAYT"}
@@ -1,74 +0,0 @@
1
- /**
2
- * Channel routing table.
3
- *
4
- * Maps platform chat IDs to Letta agent+conversation pairs.
5
- * Persisted in ~/.letta/channels/<channel>/routing.yaml.
6
- */
7
- import type { ChannelRoute, InboundChannelMessage } from "./types";
8
- /**
9
- * Load routing table from disk for a given channel.
10
- */
11
- export declare function loadRoutes(channelId: string): void;
12
- /** @internal Test-only: override saveRoutes behavior. Pass null to restore. */
13
- export declare function __testOverrideSaveRoutes(fn: ((channelId: string) => void) | null): void;
14
- /** @internal Test-only: override loadRoutes behavior. Pass null to restore. */
15
- export declare function __testOverrideLoadRoutes(fn: ((channelId: string) => ChannelRoute[] | null) | null): void;
16
- /**
17
- * Save all routes for a given channel to disk.
18
- */
19
- export declare function saveRoutes(channelId: string): void;
20
- /**
21
- * Get the route for a specific channel + chatId.
22
- * Returns null if no route exists or the route is disabled.
23
- */
24
- export declare function getRoute(channel: string, chatId: string, accountId?: string, threadId?: string | null): ChannelRoute | null;
25
- /**
26
- * Get the raw route entry (including disabled), or undefined.
27
- * Used for snapshotting before an overwrite.
28
- */
29
- export declare function getRouteRaw(channel: string, chatId: string, accountId?: string, threadId?: string | null): ChannelRoute | undefined;
30
- type InboundRouteMessage = Pick<InboundChannelMessage, "channel" | "chatId" | "chatType" | "threadId">;
31
- export declare function getRouteForInboundMessage(msg: InboundRouteMessage, accountId?: string, options?: {
32
- includeDisabled?: boolean;
33
- }): ChannelRoute | null;
34
- export declare function loadRouteForInboundMessage(msg: InboundRouteMessage, accountId?: string, options?: {
35
- includeDisabled?: boolean;
36
- }): ChannelRoute | null;
37
- /**
38
- * Get all routes for a channel.
39
- */
40
- export declare function getRoutesForChannel(channelId: string, accountId?: string): ChannelRoute[];
41
- /**
42
- * Get all routes across all channels.
43
- */
44
- export declare function getAllRoutes(): ChannelRoute[];
45
- /**
46
- * Add or update a route. Automatically saves to disk.
47
- */
48
- export declare function addRoute(channelId: string, route: ChannelRoute): void;
49
- /**
50
- * Remove a route. Automatically saves to disk.
51
- */
52
- export declare function removeRoute(channelId: string, chatId: string, accountId?: string, threadId?: string | null): boolean;
53
- /**
54
- * Remove a route from the in-memory map only (no disk write).
55
- * Used by rollback paths where the original disk write already failed.
56
- */
57
- export declare function removeRouteInMemory(channelId: string, chatId: string, accountId?: string, threadId?: string | null): boolean;
58
- /**
59
- * Set a route in the in-memory map only (no disk write).
60
- * Used to restore a snapshot on rollback.
61
- */
62
- export declare function setRouteInMemory(channelId: string, route: ChannelRoute): void;
63
- /**
64
- * Remove all routes for a specific agent+conversation.
65
- * Used when disabling channels for an agent.
66
- */
67
- export declare function removeRoutesForScope(channelId: string, agentId: string, conversationId: string, accountId?: string): number;
68
- export declare function removeRoutesForAccount(channelId: string, accountId: string): number;
69
- /**
70
- * Clear all in-memory routes (for testing).
71
- */
72
- export declare function clearAllRoutes(): void;
73
- export {};
74
- //# sourceMappingURL=routing.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"routing.d.ts","sourceRoot":"","sources":["../../../src/channels/routing.ts"],"names":[],"mappings":"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"}
@@ -1,25 +0,0 @@
1
- import { type PackageManager } from "../updater/auto-update";
2
- import { type PackageManagerProcessFactory } from "../utils/package-manager-spawn";
3
- import type { SupportedChannelId } from "./types";
4
- export declare const CHANNEL_RUNTIME_ROOT_ENV = "LETTA_CHANNEL_RUNTIME_ROOT";
5
- type InstallProcessFactory = PackageManagerProcessFactory;
6
- type RuntimePackageManager = PackageManager;
7
- export declare function getChannelRuntimeDir(channelId: SupportedChannelId): string;
8
- export declare function getBundledChannelRuntimeDir(channelId: SupportedChannelId): string | null;
9
- export declare function getChannelRuntimePackagePath(channelId: SupportedChannelId): string;
10
- export declare function getChannelRuntimeSearchPaths(channelId: SupportedChannelId): string[];
11
- export declare function getChannelInstallCommand(channelId: SupportedChannelId): string;
12
- export declare function buildMissingChannelRuntimeError(channelId: SupportedChannelId): Error;
13
- export declare function isChannelRuntimeInstalled(channelId: SupportedChannelId): boolean;
14
- export declare function installChannelRuntime(channelId: SupportedChannelId): Promise<void>;
15
- export declare function ensureChannelRuntimeInstalled(channelId: SupportedChannelId): Promise<boolean>;
16
- export declare function loadChannelRuntimeModule<T>(channelId: SupportedChannelId, moduleName?: string): Promise<T>;
17
- export declare function __testOverrideChannelRuntimeDeps(overrides: {
18
- runtimeRoot?: string | null;
19
- bundledRuntimeRoot?: string | null;
20
- spawnImpl?: InstallProcessFactory | null;
21
- packageManager?: RuntimePackageManager | null;
22
- platform?: NodeJS.Platform | null;
23
- } | null): void;
24
- export {};
25
- //# sourceMappingURL=runtime-deps.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"runtime-deps.d.ts","sourceRoot":"","sources":["../../../src/channels/runtime-deps.ts"],"names":[],"mappings":"AAKA,OAAO,EAEL,KAAK,cAAc,EACpB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAEL,KAAK,4BAA4B,EAClC,MAAM,+BAA+B,CAAC;AAGvC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAElD,eAAO,MAAM,wBAAwB,+BAA+B,CAAC;AAErE,KAAK,qBAAqB,GAAG,4BAA4B,CAAC;AAC1D,KAAK,qBAAqB,GAAG,cAAc,CAAC;AA0B5C,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,kBAAkB,GAAG,MAAM,CAG1E;AAED,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,kBAAkB,GAC5B,MAAM,GAAG,IAAI,CASf;AAED,wBAAgB,4BAA4B,CAC1C,SAAS,EAAE,kBAAkB,GAC5B,MAAM,CAER;AA0BD,wBAAgB,4BAA4B,CAC1C,SAAS,EAAE,kBAAkB,GAC5B,MAAM,EAAE,CAEV;AAiBD,wBAAgB,wBAAwB,CACtC,SAAS,EAAE,kBAAkB,GAC5B,MAAM,CAER;AAED,wBAAgB,+BAA+B,CAC7C,SAAS,EAAE,kBAAkB,GAC5B,KAAK,CAKP;AAED,wBAAgB,yBAAyB,CACvC,SAAS,EAAE,kBAAkB,GAC5B,OAAO,CAMT;AAgGD,wBAAsB,qBAAqB,CACzC,SAAS,EAAE,kBAAkB,GAC5B,OAAO,CAAC,IAAI,CAAC,CAgCf;AAED,wBAAsB,6BAA6B,CACjD,SAAS,EAAE,kBAAkB,GAC5B,OAAO,CAAC,OAAO,CAAC,CAelB;AAED,wBAAsB,wBAAwB,CAAC,CAAC,EAC9C,SAAS,EAAE,kBAAkB,EAC7B,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,CAAC,CAAC,CAeZ;AAED,wBAAgB,gCAAgC,CAC9C,SAAS,EAAE;IACT,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,SAAS,CAAC,EAAE,qBAAqB,GAAG,IAAI,CAAC;IACzC,cAAc,CAAC,EAAE,qBAAqB,GAAG,IAAI,CAAC;IAC9C,QAAQ,CAAC,EAAE,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;CACnC,GAAG,IAAI,GACP,IAAI,CAQN"}
@@ -1,33 +0,0 @@
1
- import type { ChannelConfigSchema, ChannelProtocolConfig } from "./plugin-types";
2
- /**
3
- * Parse a JSON-like value into a {@link ChannelConfigSchema}. Returns `null`
4
- * when the value violates the strict v1 contract, in which case callers should
5
- * silently drop the schema (the channel still loads, just without dynamic
6
- * config UI).
7
- */
8
- export declare function parseChannelConfigSchema(value: unknown): ChannelConfigSchema | null;
9
- export type SchemaValidationResult = {
10
- ok: true;
11
- } | {
12
- ok: false;
13
- reason: string;
14
- };
15
- /**
16
- * Strictly validate a plugin config payload against a declared schema.
17
- *
18
- * - Unknown keys are rejected.
19
- * - Each declared field's type must match the value type.
20
- * - Required string fields, when present in the patch, must be non-empty.
21
- * - Partial patches are allowed (omitted keys mean "no change").
22
- */
23
- export declare function validateConfigAgainstSchema(schema: ChannelConfigSchema, config: ChannelProtocolConfig): SchemaValidationResult;
24
- /**
25
- * Build a redacted, client-safe view of a stored plugin config.
26
- *
27
- * - `secret` fields collapse to `has_<key>: boolean` (Slack pattern).
28
- * - `text` / `select` / `boolean` fields fall through to their stored value,
29
- * or the schema default when nothing is stored and a default exists.
30
- * - Stored keys not declared in the schema are omitted.
31
- */
32
- export declare function redactConfigForSnapshot(schema: ChannelConfigSchema, storedConfig: Record<string, unknown>): ChannelProtocolConfig;
33
- //# sourceMappingURL=schema-config.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"schema-config.d.ts","sourceRoot":"","sources":["../../../src/channels/schema-config.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAKV,mBAAmB,EAMnB,qBAAqB,EACtB,MAAM,gBAAgB,CAAC;AAyTxB;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,OAAO,GACb,mBAAmB,GAAG,IAAI,CA0B5B;AAED,MAAM,MAAM,sBAAsB,GAC9B;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,GACZ;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAElC;;;;;;;GAOG;AACH,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,mBAAmB,EAC3B,MAAM,EAAE,qBAAqB,GAC5B,sBAAsB,CA8JxB;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,mBAAmB,EAC3B,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACpC,qBAAqB,CAgGvB"}
@@ -1,14 +0,0 @@
1
- import type { SignalChannelAccount } from "../types";
2
- export declare function findSignalBaseUrlConflict(accounts: SignalChannelAccount[]): {
3
- baseUrl: string;
4
- accountIds: string[];
5
- } | null;
6
- export declare function findSignalBaseUrlConflictForStart(accounts: SignalChannelAccount[], accountToStart: SignalChannelAccount): {
7
- baseUrl: string;
8
- accountIds: string[];
9
- } | null;
10
- export declare function buildSignalBaseUrlConflictError(conflict: {
11
- baseUrl: string;
12
- accountIds: string[];
13
- }): string;
14
- //# sourceMappingURL=account-conflicts.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"account-conflicts.d.ts","sourceRoot":"","sources":["../../../../src/channels/signal/account-conflicts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAc7D,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,oBAAoB,EAAE,GAC/B;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,EAAE,CAAA;CAAE,GAAG,IAAI,CAalD;AAED,wBAAgB,iCAAiC,CAC/C,QAAQ,EAAE,oBAAoB,EAAE,EAChC,cAAc,EAAE,oBAAoB,GACnC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,EAAE,CAAA;CAAE,GAAG,IAAI,CAiBlD;AAED,wBAAgB,+BAA+B,CAAC,QAAQ,EAAE;IACxD,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB,GAAG,MAAM,CAET"}
@@ -1,40 +0,0 @@
1
- import type { ChannelAdapter, ChannelAdapterStartOptions, ChannelTurnLifecycleEvent, InboundChannelMessage, OutboundChannelMessage, SignalChannelAccount } from "../types";
2
- import type { SignalAdapterOptions } from "./internal-types";
3
- export declare class SignalChannelAdapter implements ChannelAdapter {
4
- private readonly account;
5
- readonly id = "signal";
6
- readonly channelId = "signal";
7
- readonly accountId: string;
8
- readonly name = "Signal";
9
- onMessage?: (msg: InboundChannelMessage) => Promise<void>;
10
- private running;
11
- private abortController;
12
- private eventLoop;
13
- private retryTimer;
14
- private retryResolve;
15
- private readonly typingByChatId;
16
- private readonly client;
17
- private readonly retryMs;
18
- private logger?;
19
- constructor(account: SignalChannelAccount, options?: SignalAdapterOptions);
20
- start(options?: ChannelAdapterStartOptions): Promise<void>;
21
- stop(): Promise<void>;
22
- isRunning(): boolean;
23
- sendMessage(msg: OutboundChannelMessage): Promise<{
24
- messageId: string;
25
- }>;
26
- sendDirectReply(chatId: string, text: string, _options?: {
27
- replyToMessageId?: string;
28
- }): Promise<void>;
29
- prepareInboundMessage(msg: InboundChannelMessage): Promise<InboundChannelMessage>;
30
- handleTurnLifecycleEvent(event: ChannelTurnLifecycleEvent): Promise<void>;
31
- private startTypingForSource;
32
- private stopTypingForSource;
33
- private stopTypingForChat;
34
- private clearAllTyping;
35
- private stopAllTyping;
36
- private resolveDirectTargetAuthor;
37
- private runEventLoop;
38
- }
39
- export declare function createSignalAdapter(account: SignalChannelAccount, options?: SignalAdapterOptions): SignalChannelAdapter;
40
- //# sourceMappingURL=adapter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../../src/channels/signal/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,0BAA0B,EAC1B,yBAAyB,EAEzB,qBAAqB,EACrB,sBAAsB,EACtB,oBAAoB,EACrB,MAAM,kBAAkB,CAAC;AAU1B,OAAO,KAAK,EACV,oBAAoB,EAGrB,MAAM,kBAAkB,CAAC;AAO1B,qBAAa,oBAAqB,YAAW,cAAc;IAmBvD,OAAO,CAAC,QAAQ,CAAC,OAAO;IAlB1B,QAAQ,CAAC,EAAE,YAAY;IACvB,QAAQ,CAAC,SAAS,YAAY;IAC9B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,IAAI,YAAY;IAEzB,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,qBAAqB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1D,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,eAAe,CAAgC;IACvD,OAAO,CAAC,SAAS,CAA8B;IAC/C,OAAO,CAAC,UAAU,CAA8C;IAChE,OAAO,CAAC,YAAY,CAA6B;IACjD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAwC;IACvE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmB;IAC1C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,MAAM,CAAC,CAAuC;gBAGnC,OAAO,EAAE,oBAAoB,EAC9C,OAAO,GAAE,oBAAyB;IAY9B,KAAK,CAAC,OAAO,CAAC,EAAE,0BAA0B,GAAG,OAAO,CAAC,IAAI,CAAC;IAc1D,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAoB3B,SAAS,IAAI,OAAO;IAId,WAAW,CACf,GAAG,EAAE,sBAAsB,GAC1B,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAgD3B,eAAe,CACnB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,QAAQ,CAAC,EAAE;QAAE,gBAAgB,CAAC,EAAE,MAAM,CAAA;KAAE,GACvC,OAAO,CAAC,IAAI,CAAC;IASV,qBAAqB,CACzB,GAAG,EAAE,qBAAqB,GACzB,OAAO,CAAC,qBAAqB,CAAC;IAO3B,wBAAwB,CAC5B,KAAK,EAAE,yBAAyB,GAC/B,OAAO,CAAC,IAAI,CAAC;YAkBF,oBAAoB;YA8CpB,mBAAmB;YAQnB,iBAAiB;IAoC/B,OAAO,CAAC,cAAc;YAQR,aAAa;IAQ3B,OAAO,CAAC,yBAAyB;YAKnB,YAAY;CAkD3B;AAED,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,oBAAoB,EAC7B,OAAO,CAAC,EAAE,oBAAoB,GAC7B,oBAAoB,CAEtB"}
@@ -1,51 +0,0 @@
1
- import type { SignalMessageTarget } from "./target";
2
- export type SignalSseEvent = {
3
- event?: string;
4
- data?: string;
5
- id?: string;
6
- retry?: string;
7
- };
8
- export type SignalClientOptions = {
9
- baseUrl: string;
10
- account?: string;
11
- requestTimeoutMs?: number;
12
- };
13
- export type SignalSendMessageParams = {
14
- target: SignalMessageTarget;
15
- message: string;
16
- attachments?: string[];
17
- textStyle?: string[];
18
- };
19
- export type SignalReactionParams = {
20
- target: SignalMessageTarget;
21
- emoji: string;
22
- targetTimestamp: number;
23
- targetAuthor: string;
24
- remove?: boolean;
25
- };
26
- export type SignalTypingParams = {
27
- target: SignalMessageTarget;
28
- stop?: boolean;
29
- };
30
- export declare class SignalRpcError extends Error {
31
- readonly code?: number | string | undefined;
32
- readonly data?: unknown | undefined;
33
- readonly method?: string | undefined;
34
- readonly params?: Record<string, unknown> | undefined;
35
- constructor(message: string, code?: number | string | undefined, data?: unknown | undefined, method?: string | undefined, params?: Record<string, unknown> | undefined);
36
- }
37
- export declare class SignalRestClient {
38
- private readonly baseUrl;
39
- private readonly account?;
40
- private readonly requestTimeoutMs;
41
- constructor(options: SignalClientOptions);
42
- check(): Promise<void>;
43
- rpc<T = unknown>(method: string, params: Record<string, unknown>): Promise<T>;
44
- sendMessage(params: SignalSendMessageParams): Promise<string>;
45
- sendReaction(params: SignalReactionParams): Promise<void>;
46
- sendTyping(params: SignalTypingParams): Promise<void>;
47
- streamEvents(onEvent: (event: SignalSseEvent) => void | Promise<void>, signal?: AbortSignal): Promise<void>;
48
- private withAccount;
49
- private request;
50
- }
51
- //# sourceMappingURL=client.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../../src/channels/signal/client.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAOpD,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,MAAM,EAAE,mBAAmB,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,MAAM,EAAE,mBAAmB,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,MAAM,EAAE,mBAAmB,CAAC;IAC5B,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC;AAEF,qBAAa,cAAe,SAAQ,KAAK;aAGrB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM;aACtB,IAAI,CAAC,EAAE,OAAO;aACd,MAAM,CAAC,EAAE,MAAM;aACf,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;gBAJhD,OAAO,EAAE,MAAM,EACC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,YAAA,EACtB,IAAI,CAAC,EAAE,OAAO,YAAA,EACd,MAAM,CAAC,EAAE,MAAM,YAAA,EACf,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,YAAA;CAKnD;AAyED,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;gBAE9B,OAAO,EAAE,mBAAmB;IAUlC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA4BtB,GAAG,CAAC,CAAC,GAAG,OAAO,EACnB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,OAAO,CAAC,CAAC,CAAC;IAmCP,WAAW,CAAC,MAAM,EAAE,uBAAuB,GAAG,OAAO,CAAC,MAAM,CAAC;IAuB7D,YAAY,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAUzD,UAAU,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAOrD,YAAY,CAChB,OAAO,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,EACxD,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,IAAI,CAAC;IA8JhB,OAAO,CAAC,WAAW;IASnB,OAAO,CAAC,OAAO;CAgDhB"}
@@ -1,25 +0,0 @@
1
- import type { ChannelTurnSource, InboundChannelMessage, SignalChannelAccount } from "../types";
2
- import type { SignalSseEvent } from "./client";
3
- import type { SignalDataMessage, SignalEnvelope, SignalReceivePayload, SignalSentSyncMessage } from "./internal-types";
4
- import type { SignalMessageTarget } from "./target";
5
- export declare function isRecord(value: unknown): value is Record<string, unknown>;
6
- export declare function parseSignalEventData(event: SignalSseEvent): SignalReceivePayload | null;
7
- export declare function normalizeIdentity(value: string | null | undefined): string;
8
- export declare function isOwnSignalMessage(envelope: SignalEnvelope, account: SignalChannelAccount): boolean;
9
- export declare function signalIdentityMatchesAccount(identity: string | null | undefined, account: SignalChannelAccount): boolean;
10
- export declare function normalizeSignalAliasKey(value: string | null | undefined): string;
11
- export declare function formatSignalAdapterError(error: unknown): string;
12
- export declare function resolveSignalRecipientAlias(identity: string | null | undefined, account: SignalChannelAccount): string | null;
13
- export declare function syncMessageTargetsOwnAccount(sentMessage: SignalSentSyncMessage, account: SignalChannelAccount): boolean;
14
- export declare function envelopeFromSelfSyncMessage(envelope: SignalEnvelope, account: SignalChannelAccount): SignalEnvelope | null;
15
- export declare function signalTargetMatchesAccount(target: SignalMessageTarget, account: SignalChannelAccount): boolean;
16
- export declare function renderSignalMentions(text: string, mentions: SignalDataMessage["mentions"]): string;
17
- export declare function buildSignalMessageId(timestamp: number | null | undefined, author: string): string;
18
- export declare function parseReactionTargetMessageId(messageId: string): {
19
- targetTimestamp: number;
20
- targetAuthor?: string;
21
- };
22
- export declare function signalInboundFromPayload(payload: SignalReceivePayload, account: SignalChannelAccount): InboundChannelMessage | null;
23
- export declare function signalInboundFromSseEvent(event: SignalSseEvent, account: SignalChannelAccount): InboundChannelMessage | null;
24
- export declare function getSignalTypingKey(source: ChannelTurnSource): string | null;
25
- //# sourceMappingURL=inbound.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"inbound.d.ts","sourceRoot":"","sources":["../../../../src/channels/signal/inbound.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EACjB,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC/C,OAAO,KAAK,EACV,iBAAiB,EACjB,cAAc,EACd,oBAAoB,EACpB,qBAAqB,EACtB,MAAM,kBAAkB,CAAC;AAK1B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAGpD,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAEzE;AAED,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,cAAc,GACpB,oBAAoB,GAAG,IAAI,CAgB7B;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAE1E;AAED,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,cAAc,EACxB,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAST;AAED,wBAAgB,4BAA4B,CAC1C,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACnC,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAOT;AAED,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAC/B,MAAM,CAER;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAK/D;AAED,wBAAgB,2BAA2B,CACzC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACnC,OAAO,EAAE,oBAAoB,GAC5B,MAAM,GAAG,IAAI,CAUf;AAED,wBAAgB,4BAA4B,CAC1C,WAAW,EAAE,qBAAqB,EAClC,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAaT;AAED,wBAAgB,2BAA2B,CACzC,QAAQ,EAAE,cAAc,EACxB,OAAO,EAAE,oBAAoB,GAC5B,cAAc,GAAG,IAAI,CAYvB;AAED,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,mBAAmB,EAC3B,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAKT;AAED,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,iBAAiB,CAAC,UAAU,CAAC,GACtC,MAAM,CAOR;AAED,wBAAgB,oBAAoB,CAClC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACpC,MAAM,EAAE,MAAM,GACb,MAAM,CAMR;AAED,wBAAgB,4BAA4B,CAAC,SAAS,EAAE,MAAM,GAAG;IAC/D,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAUA;AAED,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,oBAAoB,EAC7B,OAAO,EAAE,oBAAoB,GAC5B,qBAAqB,GAAG,IAAI,CAgJ9B;AAED,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,oBAAoB,GAC5B,qBAAqB,GAAG,IAAI,CAM9B;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM,GAAG,IAAI,CAW3E"}
@@ -1,82 +0,0 @@
1
- import type { ChannelTurnSource } from "../types";
2
- import type { SignalRestClient } from "./client";
3
- export type SignalClientLike = Pick<SignalRestClient, "check" | "sendMessage" | "sendReaction" | "sendTyping" | "streamEvents">;
4
- export type SignalAdapterOptions = {
5
- client?: SignalClientLike;
6
- retryMs?: number;
7
- };
8
- export type SignalDataMessage = {
9
- timestamp?: number | null;
10
- message?: string | null;
11
- attachments?: Array<{
12
- id?: string | null;
13
- contentType?: string | null;
14
- filename?: string | null;
15
- storedFilename?: string | null;
16
- path?: string | null;
17
- localPath?: string | null;
18
- size?: number | null;
19
- }> | null;
20
- mentions?: Array<{
21
- name?: string | null;
22
- number?: string | null;
23
- uuid?: string | null;
24
- }> | null;
25
- groupInfo?: {
26
- groupId?: string | null;
27
- groupName?: string | null;
28
- } | null;
29
- quote?: {
30
- text?: string | null;
31
- author?: string | null;
32
- authorUuid?: string | null;
33
- } | null;
34
- reaction?: SignalReactionMessage | null;
35
- };
36
- export type SignalReactionMessage = {
37
- emoji?: string | null;
38
- targetAuthor?: string | null;
39
- targetAuthorUuid?: string | null;
40
- targetSentTimestamp?: number | null;
41
- isRemove?: boolean | null;
42
- groupInfo?: {
43
- groupId?: string | null;
44
- groupName?: string | null;
45
- } | null;
46
- };
47
- export type SignalEnvelope = {
48
- sourceNumber?: string | null;
49
- sourceUuid?: string | null;
50
- sourceName?: string | null;
51
- timestamp?: number | null;
52
- dataMessage?: SignalDataMessage | null;
53
- editMessage?: {
54
- dataMessage?: SignalDataMessage | null;
55
- } | null;
56
- reactionMessage?: SignalReactionMessage | null;
57
- syncMessage?: SignalSyncMessage | null;
58
- };
59
- export type SignalSentSyncMessage = SignalDataMessage & {
60
- destination?: string | null;
61
- destinationNumber?: string | null;
62
- destinationUuid?: string | null;
63
- recipients?: string[] | null;
64
- timestamp?: number | null;
65
- };
66
- export type SignalSyncMessage = {
67
- sentMessage?: SignalSentSyncMessage | null;
68
- };
69
- export type SignalReceivePayload = {
70
- account?: string | null;
71
- envelope?: SignalEnvelope | null;
72
- exception?: {
73
- message?: string | null;
74
- } | null;
75
- };
76
- export type SignalAttachmentCandidate = NonNullable<SignalDataMessage["attachments"]>[number];
77
- export type SignalTypingEntry = {
78
- source: ChannelTurnSource;
79
- timer: ReturnType<typeof setInterval>;
80
- timeout: ReturnType<typeof setTimeout>;
81
- };
82
- //# sourceMappingURL=internal-types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"internal-types.d.ts","sourceRoot":"","sources":["../../../../src/channels/signal/internal-types.ts"],"names":[],"mappings":"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"}