@canonmsg/backend-contracts 1.8.1 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (193) hide show
  1. package/dist/agentBehaviorPolicy.d.ts +45 -86
  2. package/dist/agentBehaviorPolicy.js +0 -53
  3. package/dist/cjs/agentBehaviorPolicy.js +1 -54
  4. package/dist/cjs/contactRequest.js +0 -30
  5. package/dist/cjs/index.js +0 -8
  6. package/dist/cjs/media.js +0 -13
  7. package/dist/cjs/message.js +0 -64
  8. package/dist/cjs/runtimeCardFields.js +1 -58
  9. package/dist/cjs/turnProtocol.js +1 -41
  10. package/dist/contactRequest.d.ts +23 -42
  11. package/dist/contactRequest.js +0 -29
  12. package/dist/index.d.ts +0 -8
  13. package/dist/index.js +0 -8
  14. package/dist/media.d.ts +11 -24
  15. package/dist/media.js +0 -12
  16. package/dist/message.d.ts +50 -133
  17. package/dist/message.js +1 -64
  18. package/dist/runtimeCardFields.d.ts +39 -112
  19. package/dist/runtimeCardFields.js +0 -57
  20. package/dist/turnProtocol.d.ts +24 -91
  21. package/dist/turnProtocol.js +0 -40
  22. package/package.json +5 -8
  23. package/dist/bridgeLocal.d.ts +0 -1729
  24. package/dist/bridgeLocal.js +0 -673
  25. package/dist/cjs/bridgeLocal.js +0 -676
  26. package/dist/cjs/controlSignals.js +0 -44
  27. package/dist/cjs/endpointRegistry.js +0 -264
  28. package/dist/cjs/hitl.js +0 -0
  29. package/dist/cjs/inboundFrame.js +0 -92
  30. package/dist/cjs/restEndpoints.js +0 -237
  31. package/dist/cjs/sendContextual.js +0 -92
  32. package/dist/cjs/sseEvents.js +0 -298
  33. package/dist/controlSignals.d.ts +0 -55
  34. package/dist/controlSignals.js +0 -41
  35. package/dist/endpointRegistry.d.ts +0 -13
  36. package/dist/endpointRegistry.js +0 -261
  37. package/dist/hitl.d.ts +0 -303
  38. package/dist/hitl.js +0 -168
  39. package/dist/inboundFrame.d.ts +0 -229
  40. package/dist/inboundFrame.js +0 -89
  41. package/dist/restEndpoints.d.ts +0 -531
  42. package/dist/restEndpoints.js +0 -234
  43. package/dist/schemas/agent-behavior-settings-record.schema.json +0 -48
  44. package/dist/schemas/bridge-connection-state-notification.schema.json +0 -19
  45. package/dist/schemas/bridge-get-attachment-params.schema.json +0 -24
  46. package/dist/schemas/bridge-get-attachment-result.schema.json +0 -20
  47. package/dist/schemas/bridge-hello-params.schema.json +0 -42
  48. package/dist/schemas/bridge-hello-result.schema.json +0 -105
  49. package/dist/schemas/bridge-hitl-state.schema.json +0 -38
  50. package/dist/schemas/bridge-ok-result.schema.json +0 -15
  51. package/dist/schemas/bridge-ready-notification.schema.json +0 -79
  52. package/dist/schemas/bridge-resync-reason.schema.json +0 -9
  53. package/dist/schemas/bridge-resync.schema.json +0 -18
  54. package/dist/schemas/bridge-rpc-error.schema.json +0 -19
  55. package/dist/schemas/bridge-rpc-id.schema.json +0 -12
  56. package/dist/schemas/bridge-rpc-notification.schema.json +0 -20
  57. package/dist/schemas/bridge-rpc-request.schema.json +0 -31
  58. package/dist/schemas/bridge-rpc-response.schema.json +0 -81
  59. package/dist/schemas/bridge-status-result.schema.json +0 -76
  60. package/dist/schemas/bridge-upload-media-params.schema.json +0 -28
  61. package/dist/schemas/bridge-upstream-state.schema.json +0 -10
  62. package/dist/schemas/contacts-response.schema.json +0 -52
  63. package/dist/schemas/control-channel-key.schema.json +0 -10
  64. package/dist/schemas/control-primitive-event.schema.json +0 -30
  65. package/dist/schemas/control-primitive-map.schema.json +0 -15
  66. package/dist/schemas/control-session-event.schema.json +0 -26
  67. package/dist/schemas/control-session-node.schema.json +0 -11
  68. package/dist/schemas/control-signal-event.schema.json +0 -35
  69. package/dist/schemas/control-signal-node.schema.json +0 -22
  70. package/dist/schemas/control-signal-type.schema.json +0 -10
  71. package/dist/schemas/conversations-response.schema.json +0 -167
  72. package/dist/schemas/create-contact-request-request.schema.json +0 -17
  73. package/dist/schemas/create-contact-request-response.schema.json +0 -51
  74. package/dist/schemas/create-conversation-request.schema.json +0 -82
  75. package/dist/schemas/create-conversation-response.schema.json +0 -29
  76. package/dist/schemas/delete-message-response.schema.json +0 -11
  77. package/dist/schemas/delivery-intent.schema.json +0 -11
  78. package/dist/schemas/forward-message-request.schema.json +0 -25
  79. package/dist/schemas/forward-message-response.schema.json +0 -35
  80. package/dist/schemas/forwarded-from.schema.json +0 -18
  81. package/dist/schemas/get-messages-query.schema.json +0 -17
  82. package/dist/schemas/hitl-approval-category.schema.json +0 -15
  83. package/dist/schemas/hitl-approval-detail.schema.json +0 -21
  84. package/dist/schemas/hitl-approval-outcome-record.schema.json +0 -33
  85. package/dist/schemas/hitl-approval-reply-record.schema.json +0 -57
  86. package/dist/schemas/hitl-approval-request-record.schema.json +0 -105
  87. package/dist/schemas/hitl-approval-risk.schema.json +0 -11
  88. package/dist/schemas/hitl-card-outcome-record.schema.json +0 -48
  89. package/dist/schemas/hitl-card-reply-record.schema.json +0 -46
  90. package/dist/schemas/hitl-card-request-record.schema.json +0 -73
  91. package/dist/schemas/hitl-input-answers.schema.json +0 -23
  92. package/dist/schemas/hitl-input-kind.schema.json +0 -10
  93. package/dist/schemas/hitl-input-outcome-record.schema.json +0 -46
  94. package/dist/schemas/hitl-input-question.schema.json +0 -54
  95. package/dist/schemas/hitl-input-reply-record.schema.json +0 -44
  96. package/dist/schemas/hitl-input-request-record.schema.json +0 -134
  97. package/dist/schemas/hitl-pending.schema.json +0 -31
  98. package/dist/schemas/hitl-request-accepted.schema.json +0 -18
  99. package/dist/schemas/hitl-request-kind.schema.json +0 -10
  100. package/dist/schemas/hitl-resolution-status.schema.json +0 -10
  101. package/dist/schemas/hitl-resolution.schema.json +0 -38
  102. package/dist/schemas/hitl-session-rule.schema.json +0 -32
  103. package/dist/schemas/inbound-disposition.schema.json +0 -13
  104. package/dist/schemas/inbound-frame-attachment-v1.schema.json +0 -94
  105. package/dist/schemas/inbound-frame-contact-card-v1.schema.json +0 -59
  106. package/dist/schemas/inbound-frame-group-context-v1.schema.json +0 -96
  107. package/dist/schemas/inbound-frame-reply-context-v1.schema.json +0 -261
  108. package/dist/schemas/inbound-frame-shape-v1.schema.json +0 -12
  109. package/dist/schemas/inbound-frame-v1.schema.json +0 -506
  110. package/dist/schemas/mark-read-response.schema.json +0 -11
  111. package/dist/schemas/media-attachment-kind.schema.json +0 -11
  112. package/dist/schemas/media-attachment.schema.json +0 -42
  113. package/dist/schemas/messages-page-response.schema.json +0 -290
  114. package/dist/schemas/participation-decision-input.schema.json +0 -44
  115. package/dist/schemas/participation-history-message.schema.json +0 -23
  116. package/dist/schemas/participation-history-snapshot.schema.json +0 -37
  117. package/dist/schemas/participation-style.schema.json +0 -13
  118. package/dist/schemas/react-request.schema.json +0 -22
  119. package/dist/schemas/react-response.schema.json +0 -35
  120. package/dist/schemas/resolve-admission-request.schema.json +0 -30
  121. package/dist/schemas/resolve-admission-response.schema.json +0 -129
  122. package/dist/schemas/resolved-agent-behavior-policy-record.schema.json +0 -81
  123. package/dist/schemas/rest-contact.schema.json +0 -40
  124. package/dist/schemas/rest-conversation-last-message.schema.json +0 -77
  125. package/dist/schemas/rest-conversation.schema.json +0 -155
  126. package/dist/schemas/rest-message.schema.json +0 -252
  127. package/dist/schemas/rest-ok-response.schema.json +0 -11
  128. package/dist/schemas/rest-session-selection.schema.json +0 -40
  129. package/dist/schemas/runtime-card-field-choice.schema.json +0 -23
  130. package/dist/schemas/runtime-card-field-type.schema.json +0 -17
  131. package/dist/schemas/runtime-card-field.schema.json +0 -180
  132. package/dist/schemas/runtime-card-line-item-column-type.schema.json +0 -12
  133. package/dist/schemas/runtime-card-line-item-column.schema.json +0 -74
  134. package/dist/schemas/send-contextual-deferred-response.schema.json +0 -39
  135. package/dist/schemas/send-contextual-messaged-response.schema.json +0 -42
  136. package/dist/schemas/send-contextual-request.schema.json +0 -103
  137. package/dist/schemas/send-contextual-response.schema.json +0 -105
  138. package/dist/schemas/send-contextual-self-context.schema.json +0 -19
  139. package/dist/schemas/send-contextual-state-response.schema.json +0 -24
  140. package/dist/schemas/send-message-request.schema.json +0 -106
  141. package/dist/schemas/send-message-response.schema.json +0 -14
  142. package/dist/schemas/sender-type.schema.json +0 -9
  143. package/dist/schemas/serialize-message-input.schema.json +0 -29
  144. package/dist/schemas/serialized-agent-client-type.schema.json +0 -12
  145. package/dist/schemas/serialized-contact-card.schema.json +0 -65
  146. package/dist/schemas/serialized-contact-request-status.schema.json +0 -11
  147. package/dist/schemas/serialized-contact-request.schema.json +0 -157
  148. package/dist/schemas/serialized-content-type.schema.json +0 -13
  149. package/dist/schemas/serialized-message.schema.json +0 -249
  150. package/dist/schemas/serialized-reactions.schema.json +0 -14
  151. package/dist/schemas/serialized-sender-type.schema.json +0 -9
  152. package/dist/schemas/set-streaming-request.schema.json +0 -67
  153. package/dist/schemas/set-typing-request.schema.json +0 -25
  154. package/dist/schemas/sse-access-policy.schema.json +0 -10
  155. package/dist/schemas/sse-agent-context-payload.schema.json +0 -57
  156. package/dist/schemas/sse-connected-payload.schema.json +0 -18
  157. package/dist/schemas/sse-contact-payload.schema.json +0 -40
  158. package/dist/schemas/sse-contact-removed-payload.schema.json +0 -14
  159. package/dist/schemas/sse-contact-request-payload.schema.json +0 -157
  160. package/dist/schemas/sse-conversation-updated-payload.schema.json +0 -48
  161. package/dist/schemas/sse-error-payload.schema.json +0 -23
  162. package/dist/schemas/sse-event-envelope.schema.json +0 -42
  163. package/dist/schemas/sse-event-family.schema.json +0 -12
  164. package/dist/schemas/sse-event-type.schema.json +0 -28
  165. package/dist/schemas/sse-heartbeat-payload.schema.json +0 -14
  166. package/dist/schemas/sse-membership-change.schema.json +0 -28
  167. package/dist/schemas/sse-message-created-payload.schema.json +0 -414
  168. package/dist/schemas/sse-message-deleted-payload.schema.json +0 -18
  169. package/dist/schemas/sse-message-updated-payload.schema.json +0 -46
  170. package/dist/schemas/sse-presence-payload.schema.json +0 -21
  171. package/dist/schemas/sse-provenance.schema.json +0 -64
  172. package/dist/schemas/sse-replay-expired-payload.schema.json +0 -21
  173. package/dist/schemas/sse-runtime-control-kind.schema.json +0 -13
  174. package/dist/schemas/sse-runtime-control-payload.schema.json +0 -44
  175. package/dist/schemas/sse-runtime-updated-payload.schema.json +0 -78
  176. package/dist/schemas/sse-self-context.schema.json +0 -45
  177. package/dist/schemas/sse-turn-dispatch.schema.json +0 -29
  178. package/dist/schemas/sse-turn-updated-payload.schema.json +0 -33
  179. package/dist/schemas/sse-typing-payload.schema.json +0 -32
  180. package/dist/schemas/sse-voice-session-event-payload.schema.json +0 -170
  181. package/dist/schemas/sse-voice-session.schema.json +0 -157
  182. package/dist/schemas/trigger-decision.schema.json +0 -27
  183. package/dist/schemas/turn-lifecycle-state.schema.json +0 -14
  184. package/dist/schemas/turn-message-semantics.schema.json +0 -10
  185. package/dist/schemas/turn-metadata.schema.json +0 -56
  186. package/dist/schemas/turn-state-like.schema.json +0 -39
  187. package/dist/schemas/update-disposition-request.schema.json +0 -22
  188. package/dist/schemas/upload-media-request.schema.json +0 -25
  189. package/dist/schemas/upload-media-response.schema.json +0 -55
  190. package/dist/sendContextual.d.ts +0 -114
  191. package/dist/sendContextual.js +0 -89
  192. package/dist/sseEvents.d.ts +0 -494
  193. package/dist/sseEvents.js +0 -295
@@ -1,494 +0,0 @@
1
- import { z } from 'zod';
2
- export declare const SseAccessPolicySchema: z.ZodEnum<{
3
- open: "open";
4
- "approval-required": "approval-required";
5
- "owner-only": "owner-only";
6
- }>;
7
- export type SseAccessPolicy = z.infer<typeof SseAccessPolicySchema>;
8
- export declare const SseConnectedPayloadSchema: z.ZodObject<{
9
- connectionId: z.ZodString;
10
- agentId: z.ZodString;
11
- }, z.core.$strip>;
12
- export type SseConnectedPayload = z.infer<typeof SseConnectedPayloadSchema>;
13
- /** Trusted, server-injected identity & access info (stream.ts `agent.context`). */
14
- export declare const SseAgentContextPayloadSchema: z.ZodObject<{
15
- agentId: z.ZodString;
16
- canonContactId: z.ZodOptional<z.ZodString>;
17
- clientType: z.ZodOptional<z.ZodString>;
18
- ownerId: z.ZodString;
19
- ownerName: z.ZodString;
20
- defaultBehavior: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
21
- inboundPolicy: z.ZodEnum<{
22
- open: "open";
23
- "approval-required": "approval-required";
24
- "owner-only": "owner-only";
25
- }>;
26
- groupJoinPolicy: z.ZodEnum<{
27
- open: "open";
28
- "approval-required": "approval-required";
29
- "owner-only": "owner-only";
30
- }>;
31
- discoverable: z.ZodBoolean;
32
- }, z.core.$loose>;
33
- export type SseAgentContextPayload = z.infer<typeof SseAgentContextPayloadSchema>;
34
- export declare const SseHeartbeatPayloadSchema: z.ZodObject<{
35
- timestamp: z.ZodString;
36
- }, z.core.$strip>;
37
- export type SseHeartbeatPayload = z.infer<typeof SseHeartbeatPayloadSchema>;
38
- export declare const SseReplayExpiredPayloadSchema: z.ZodObject<{
39
- lastAvailableId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
40
- message: z.ZodOptional<z.ZodString>;
41
- }, z.core.$loose>;
42
- export type SseReplayExpiredPayload = z.infer<typeof SseReplayExpiredPayloadSchema>;
43
- export declare const SseErrorPayloadSchema: z.ZodObject<{
44
- code: z.ZodOptional<z.ZodString>;
45
- message: z.ZodOptional<z.ZodString>;
46
- retryAfterMs: z.ZodOptional<z.ZodNumber>;
47
- activeConnections: z.ZodOptional<z.ZodNumber>;
48
- maxConnections: z.ZodOptional<z.ZodNumber>;
49
- }, z.core.$loose>;
50
- export type SseErrorPayload = z.infer<typeof SseErrorPayloadSchema>;
51
- export declare const SseSelfContextSchema: z.ZodObject<{
52
- id: z.ZodString;
53
- type: z.ZodLiteral<"cross_session">;
54
- context: z.ZodString;
55
- createdAt: z.ZodNullable<z.ZodString>;
56
- updatedAt: z.ZodNullable<z.ZodString>;
57
- }, z.core.$strip>;
58
- export type SseSelfContext = z.infer<typeof SseSelfContextSchema>;
59
- export declare const SseTurnDispatchSchema: z.ZodObject<{
60
- kind: z.ZodEnum<{
61
- run_turn: "run_turn";
62
- observe_only: "observe_only";
63
- }>;
64
- reason: z.ZodString;
65
- addressed: z.ZodBoolean;
66
- policyVersion: z.ZodOptional<z.ZodString>;
67
- }, z.core.$loose>;
68
- export type SseTurnDispatch = z.infer<typeof SseTurnDispatchSchema>;
69
- export declare const SseProvenanceSchema: z.ZodObject<{
70
- conversation: z.ZodObject<{
71
- id: z.ZodString;
72
- type: z.ZodEnum<{
73
- unknown: "unknown";
74
- direct: "direct";
75
- group: "group";
76
- }>;
77
- }, z.core.$loose>;
78
- sender: z.ZodObject<{
79
- id: z.ZodString;
80
- name: z.ZodOptional<z.ZodString>;
81
- type: z.ZodEnum<{
82
- human: "human";
83
- ai_agent: "ai_agent";
84
- }>;
85
- isOwner: z.ZodBoolean;
86
- }, z.core.$loose>;
87
- mentionedAgent: z.ZodBoolean;
88
- }, z.core.$loose>;
89
- export type SseProvenance = z.infer<typeof SseProvenanceSchema>;
90
- /**
91
- * `message.created` — the inbound message envelope. `message` is exactly the
92
- * SerializedMessage the shared serializer emits (the E2EE S1 slot).
93
- */
94
- export declare const SseMessageCreatedPayloadSchema: z.ZodObject<{
95
- conversationId: z.ZodString;
96
- behavior: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
97
- activeSelfContextId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
98
- selfContexts: z.ZodOptional<z.ZodArray<z.ZodObject<{
99
- id: z.ZodString;
100
- type: z.ZodLiteral<"cross_session">;
101
- context: z.ZodString;
102
- createdAt: z.ZodNullable<z.ZodString>;
103
- updatedAt: z.ZodNullable<z.ZodString>;
104
- }, z.core.$strip>>>;
105
- provenance: z.ZodOptional<z.ZodObject<{
106
- conversation: z.ZodObject<{
107
- id: z.ZodString;
108
- type: z.ZodEnum<{
109
- unknown: "unknown";
110
- direct: "direct";
111
- group: "group";
112
- }>;
113
- }, z.core.$loose>;
114
- sender: z.ZodObject<{
115
- id: z.ZodString;
116
- name: z.ZodOptional<z.ZodString>;
117
- type: z.ZodEnum<{
118
- human: "human";
119
- ai_agent: "ai_agent";
120
- }>;
121
- isOwner: z.ZodBoolean;
122
- }, z.core.$loose>;
123
- mentionedAgent: z.ZodBoolean;
124
- }, z.core.$loose>>;
125
- turnDispatch: z.ZodOptional<z.ZodObject<{
126
- kind: z.ZodEnum<{
127
- run_turn: "run_turn";
128
- observe_only: "observe_only";
129
- }>;
130
- reason: z.ZodString;
131
- addressed: z.ZodBoolean;
132
- policyVersion: z.ZodOptional<z.ZodString>;
133
- }, z.core.$loose>>;
134
- message: z.ZodObject<{
135
- id: z.ZodString;
136
- senderId: z.ZodString;
137
- senderName: z.ZodOptional<z.ZodString>;
138
- senderType: z.ZodEnum<{
139
- human: "human";
140
- ai_agent: "ai_agent";
141
- }>;
142
- isOwner: z.ZodBoolean;
143
- contentType: z.ZodEnum<{
144
- file: "file";
145
- image: "image";
146
- audio: "audio";
147
- video: "video";
148
- text: "text";
149
- contact_card: "contact_card";
150
- }>;
151
- text: z.ZodNullable<z.ZodString>;
152
- attachments: z.ZodArray<z.ZodObject<{
153
- kind: z.ZodEnum<{
154
- file: "file";
155
- image: "image";
156
- audio: "audio";
157
- video: "video";
158
- }>;
159
- url: z.ZodString;
160
- mimeType: z.ZodOptional<z.ZodString>;
161
- fileName: z.ZodOptional<z.ZodString>;
162
- sizeBytes: z.ZodOptional<z.ZodNumber>;
163
- width: z.ZodOptional<z.ZodNumber>;
164
- height: z.ZodOptional<z.ZodNumber>;
165
- durationMs: z.ZodOptional<z.ZodNumber>;
166
- }, z.core.$strip>>;
167
- mentions: z.ZodArray<z.ZodString>;
168
- replyTo: z.ZodNullable<z.ZodString>;
169
- replyToPosition: z.ZodNullable<z.ZodNumber>;
170
- forwarded: z.ZodOptional<z.ZodBoolean>;
171
- forwardedFrom: z.ZodOptional<z.ZodObject<{
172
- sourceConversationId: z.ZodString;
173
- messageId: z.ZodString;
174
- }, z.core.$strip>>;
175
- status: z.ZodEnum<{
176
- sent: "sent";
177
- read: "read";
178
- }>;
179
- createdAt: z.ZodString;
180
- metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
181
- contactCard: z.ZodOptional<z.ZodObject<{
182
- userId: z.ZodString;
183
- canonContactId: z.ZodOptional<z.ZodString>;
184
- displayName: z.ZodString;
185
- avatarUrl: z.ZodNullable<z.ZodString>;
186
- userType: z.ZodEnum<{
187
- human: "human";
188
- ai_agent: "ai_agent";
189
- }>;
190
- clientType: z.ZodOptional<z.ZodEnum<{
191
- "claude-code": "claude-code";
192
- openclaw: "openclaw";
193
- codex: "codex";
194
- hermes: "hermes";
195
- generic: "generic";
196
- }>>;
197
- about: z.ZodOptional<z.ZodString>;
198
- isActive: z.ZodOptional<z.ZodBoolean>;
199
- ownerId: z.ZodOptional<z.ZodString>;
200
- ownerName: z.ZodOptional<z.ZodString>;
201
- lifecycleState: z.ZodOptional<z.ZodString>;
202
- }, z.core.$strip>>;
203
- runtimeCard: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
204
- reactions: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>>;
205
- }, z.core.$strip>;
206
- }, z.core.$loose>;
207
- export type SseMessageCreatedPayload = z.infer<typeof SseMessageCreatedPayloadSchema>;
208
- export declare const SseMessageUpdatedPayloadSchema: z.ZodObject<{
209
- conversationId: z.ZodString;
210
- messageId: z.ZodString;
211
- actorId: z.ZodOptional<z.ZodString>;
212
- updatedAt: z.ZodOptional<z.ZodString>;
213
- changes: z.ZodObject<{
214
- reactions: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>;
215
- }, z.core.$loose>;
216
- }, z.core.$strip>;
217
- export type SseMessageUpdatedPayload = z.infer<typeof SseMessageUpdatedPayloadSchema>;
218
- export declare const SseMessageDeletedPayloadSchema: z.ZodObject<{
219
- conversationId: z.ZodString;
220
- messageId: z.ZodString;
221
- }, z.core.$strip>;
222
- export type SseMessageDeletedPayload = z.infer<typeof SseMessageDeletedPayloadSchema>;
223
- export declare const SseMembershipChangeSchema: z.ZodObject<{
224
- addedMemberIds: z.ZodArray<z.ZodString>;
225
- removedMemberIds: z.ZodArray<z.ZodString>;
226
- memberCount: z.ZodNumber;
227
- }, z.core.$strip>;
228
- export type SseMembershipChange = z.infer<typeof SseMembershipChangeSchema>;
229
- export declare const SseConversationUpdatedPayloadSchema: z.ZodObject<{
230
- conversationId: z.ZodString;
231
- changes: z.ZodRecord<z.ZodString, z.ZodUnknown>;
232
- membershipChange: z.ZodOptional<z.ZodObject<{
233
- addedMemberIds: z.ZodArray<z.ZodString>;
234
- removedMemberIds: z.ZodArray<z.ZodString>;
235
- memberCount: z.ZodNumber;
236
- }, z.core.$strip>>;
237
- }, z.core.$strip>;
238
- export type SseConversationUpdatedPayload = z.infer<typeof SseConversationUpdatedPayloadSchema>;
239
- /** `contact.request` / `contact.approved` carry the serialized contact request. */
240
- export declare const SseContactRequestPayloadSchema: z.ZodObject<{
241
- id: z.ZodString;
242
- requesterId: z.ZodString;
243
- requesterName: z.ZodString;
244
- requesterAvatarUrl: z.ZodNullable<z.ZodString>;
245
- targetId: z.ZodString;
246
- targetName: z.ZodString;
247
- targetAvatarUrl: z.ZodNullable<z.ZodString>;
248
- targetUserType: z.ZodEnum<{
249
- human: "human";
250
- ai_agent: "ai_agent";
251
- }>;
252
- targetOwnerId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
253
- approverId: z.ZodString;
254
- message: z.ZodNullable<z.ZodString>;
255
- status: z.ZodEnum<{
256
- rejected: "rejected";
257
- pending: "pending";
258
- approved: "approved";
259
- expired: "expired";
260
- }>;
261
- kind: z.ZodEnum<{
262
- dm: "dm";
263
- group_invite: "group_invite";
264
- }>;
265
- groupContext: z.ZodOptional<z.ZodObject<{
266
- conversationId: z.ZodString;
267
- groupName: z.ZodNullable<z.ZodString>;
268
- }, z.core.$strip>>;
269
- createdAt: z.ZodNullable<z.ZodString>;
270
- resolvedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
271
- expiresAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
272
- }, z.core.$strip>;
273
- export type SseContactRequestPayload = z.infer<typeof SseContactRequestPayloadSchema>;
274
- /**
275
- * `contact.added` / `contact.updated`. `source` is a pass-through string —
276
- * canonical values today: direct_add, phone_book, contact_request, link, qr,
277
- * group, open_inbound_message, unknown.
278
- */
279
- export declare const SseContactPayloadSchema: z.ZodObject<{
280
- id: z.ZodString;
281
- source: z.ZodString;
282
- addedAt: z.ZodNullable<z.ZodString>;
283
- displayNameOverride: z.ZodNullable<z.ZodString>;
284
- }, z.core.$strip>;
285
- export type SseContactPayload = z.infer<typeof SseContactPayloadSchema>;
286
- export declare const SseContactRemovedPayloadSchema: z.ZodObject<{
287
- id: z.ZodString;
288
- }, z.core.$strip>;
289
- export type SseContactRemovedPayload = z.infer<typeof SseContactRemovedPayloadSchema>;
290
- export declare const SseTypingPayloadSchema: z.ZodObject<{
291
- conversationId: z.ZodString;
292
- userId: z.ZodString;
293
- isTyping: z.ZodBoolean;
294
- status: z.ZodOptional<z.ZodEnum<{
295
- thinking: "thinking";
296
- typing: "typing";
297
- }>>;
298
- timestamp: z.ZodOptional<z.ZodNumber>;
299
- }, z.core.$strip>;
300
- export type SseTypingPayload = z.infer<typeof SseTypingPayloadSchema>;
301
- export declare const SsePresencePayloadSchema: z.ZodObject<{
302
- userId: z.ZodString;
303
- online: z.ZodBoolean;
304
- lastSeen: z.ZodOptional<z.ZodString>;
305
- }, z.core.$strip>;
306
- export type SsePresencePayload = z.infer<typeof SsePresencePayloadSchema>;
307
- /** Aggregated RTDB runtime snapshot — nodes are passed through opaquely. */
308
- export declare const SseRuntimeUpdatedPayloadSchema: z.ZodObject<{
309
- conversationId: z.ZodString;
310
- agentId: z.ZodString;
311
- runtime: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
312
- runtimeInfo: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
313
- sessionState: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
314
- sessionConfig: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
315
- }, z.core.$strip>;
316
- export type SseRuntimeUpdatedPayload = z.infer<typeof SseRuntimeUpdatedPayloadSchema>;
317
- export declare const SseTurnUpdatedPayloadSchema: z.ZodObject<{
318
- conversationId: z.ZodString;
319
- agentId: z.ZodString;
320
- turn: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
321
- }, z.core.$strip>;
322
- export type SseTurnUpdatedPayload = z.infer<typeof SseTurnUpdatedPayloadSchema>;
323
- export declare const SseRuntimeControlKindSchema: z.ZodEnum<{
324
- session: "session";
325
- signal: "signal";
326
- primitive: "primitive";
327
- runtimeCard: "runtimeCard";
328
- runtimeInput: "runtimeInput";
329
- runtimeApproval: "runtimeApproval";
330
- }>;
331
- export type SseRuntimeControlKind = z.infer<typeof SseRuntimeControlKindSchema>;
332
- export declare const SseRuntimeControlPayloadSchema: z.ZodObject<{
333
- conversationId: z.ZodString;
334
- agentId: z.ZodString;
335
- kind: z.ZodEnum<{
336
- session: "session";
337
- signal: "signal";
338
- primitive: "primitive";
339
- runtimeCard: "runtimeCard";
340
- runtimeInput: "runtimeInput";
341
- runtimeApproval: "runtimeApproval";
342
- }>;
343
- requestId: z.ZodOptional<z.ZodString>;
344
- updatedAt: z.ZodOptional<z.ZodNumber>;
345
- value: z.ZodRecord<z.ZodString, z.ZodUnknown>;
346
- }, z.core.$strip>;
347
- export type SseRuntimeControlPayload = z.infer<typeof SseRuntimeControlPayloadSchema>;
348
- export declare const SseVoiceSessionSchema: z.ZodObject<{
349
- id: z.ZodString;
350
- conversationId: z.ZodString;
351
- roomName: z.ZodString;
352
- mode: z.ZodEnum<{
353
- human: "human";
354
- runtime_voice: "runtime_voice";
355
- }>;
356
- status: z.ZodEnum<{
357
- error: "error";
358
- active: "active";
359
- ended: "ended";
360
- }>;
361
- createdBy: z.ZodString;
362
- participantIds: z.ZodArray<z.ZodString>;
363
- participants: z.ZodOptional<z.ZodArray<z.ZodObject<{
364
- userId: z.ZodString;
365
- userType: z.ZodEnum<{
366
- human: "human";
367
- ai_agent: "ai_agent";
368
- system: "system";
369
- }>;
370
- displayName: z.ZodNullable<z.ZodString>;
371
- joinedAt: z.ZodNullable<z.ZodString>;
372
- leftAt: z.ZodNullable<z.ZodString>;
373
- }, z.core.$loose>>>;
374
- targetAgentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
375
- createdAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
376
- updatedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
377
- endedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
378
- error: z.ZodOptional<z.ZodNullable<z.ZodString>>;
379
- }, z.core.$loose>;
380
- export type SseVoiceSession = z.infer<typeof SseVoiceSessionSchema>;
381
- export declare const SseVoiceSessionEventPayloadSchema: z.ZodObject<{
382
- conversationId: z.ZodString;
383
- session: z.ZodObject<{
384
- id: z.ZodString;
385
- conversationId: z.ZodString;
386
- roomName: z.ZodString;
387
- mode: z.ZodEnum<{
388
- human: "human";
389
- runtime_voice: "runtime_voice";
390
- }>;
391
- status: z.ZodEnum<{
392
- error: "error";
393
- active: "active";
394
- ended: "ended";
395
- }>;
396
- createdBy: z.ZodString;
397
- participantIds: z.ZodArray<z.ZodString>;
398
- participants: z.ZodOptional<z.ZodArray<z.ZodObject<{
399
- userId: z.ZodString;
400
- userType: z.ZodEnum<{
401
- human: "human";
402
- ai_agent: "ai_agent";
403
- system: "system";
404
- }>;
405
- displayName: z.ZodNullable<z.ZodString>;
406
- joinedAt: z.ZodNullable<z.ZodString>;
407
- leftAt: z.ZodNullable<z.ZodString>;
408
- }, z.core.$loose>>>;
409
- targetAgentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
410
- createdAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
411
- updatedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
412
- endedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
413
- error: z.ZodOptional<z.ZodNullable<z.ZodString>>;
414
- }, z.core.$loose>;
415
- }, z.core.$strip>;
416
- export type SseVoiceSessionEventPayload = z.infer<typeof SseVoiceSessionEventPayloadSchema>;
417
- /**
418
- * Every SSE `event:` name stream-service emits today (stream.ts + listeners.ts;
419
- * mirrored by CanonStream's dispatch switch in core). NOTE: `contact.updated`
420
- * is emitted by stream-service but not yet consumed by CanonStream.
421
- */
422
- export declare const SSE_EVENT_TYPES: readonly ["connected", "agent.context", "heartbeat", "message.created", "message.updated", "message.deleted", "conversation.updated", "contact.request", "contact.approved", "contact.added", "contact.updated", "contact.removed", "typing", "presence", "runtime.updated", "turn.updated", "runtime.control", "voice.session.started", "voice.session.ended", "replay.expired", "error"];
423
- export declare const SseEventTypeSchema: z.ZodEnum<{
424
- typing: "typing";
425
- error: "error";
426
- connected: "connected";
427
- "agent.context": "agent.context";
428
- heartbeat: "heartbeat";
429
- "message.created": "message.created";
430
- "message.updated": "message.updated";
431
- "message.deleted": "message.deleted";
432
- "conversation.updated": "conversation.updated";
433
- "contact.request": "contact.request";
434
- "contact.approved": "contact.approved";
435
- "contact.added": "contact.added";
436
- "contact.updated": "contact.updated";
437
- "contact.removed": "contact.removed";
438
- presence: "presence";
439
- "runtime.updated": "runtime.updated";
440
- "turn.updated": "turn.updated";
441
- "runtime.control": "runtime.control";
442
- "voice.session.started": "voice.session.started";
443
- "voice.session.ended": "voice.session.ended";
444
- "replay.expired": "replay.expired";
445
- }>;
446
- export type SseEventType = z.infer<typeof SseEventTypeSchema>;
447
- /** Payload schema for every event type — the machine-readable event registry. */
448
- export declare const SSE_EVENT_PAYLOAD_SCHEMAS: Record<SseEventType, z.ZodType>;
449
- /**
450
- * Subscription families (`?events=` filter). Lifecycle events (`connected`,
451
- * `agent.context`, `heartbeat`, `replay.expired`, `error`) are always sent.
452
- */
453
- export declare const SSE_EVENT_FAMILIES: readonly ["messages", "contacts", "typing_presence", "runtime_turn", "voice"];
454
- export declare const SseEventFamilySchema: z.ZodEnum<{
455
- messages: "messages";
456
- contacts: "contacts";
457
- typing_presence: "typing_presence";
458
- runtime_turn: "runtime_turn";
459
- voice: "voice";
460
- }>;
461
- export type SseEventFamily = z.infer<typeof SseEventFamilySchema>;
462
- export declare const SSE_EVENT_FAMILY_BY_TYPE: Record<SseEventType, SseEventFamily | 'lifecycle'>;
463
- /**
464
- * A parsed SSE frame: `id:` (replay cursor), `event:`, and the JSON-decoded
465
- * `data:` payload. Validate `data` with SSE_EVENT_PAYLOAD_SCHEMAS[event].
466
- */
467
- export declare const SseEventEnvelopeSchema: z.ZodObject<{
468
- id: z.ZodOptional<z.ZodString>;
469
- event: z.ZodEnum<{
470
- typing: "typing";
471
- error: "error";
472
- connected: "connected";
473
- "agent.context": "agent.context";
474
- heartbeat: "heartbeat";
475
- "message.created": "message.created";
476
- "message.updated": "message.updated";
477
- "message.deleted": "message.deleted";
478
- "conversation.updated": "conversation.updated";
479
- "contact.request": "contact.request";
480
- "contact.approved": "contact.approved";
481
- "contact.added": "contact.added";
482
- "contact.updated": "contact.updated";
483
- "contact.removed": "contact.removed";
484
- presence: "presence";
485
- "runtime.updated": "runtime.updated";
486
- "turn.updated": "turn.updated";
487
- "runtime.control": "runtime.control";
488
- "voice.session.started": "voice.session.started";
489
- "voice.session.ended": "voice.session.ended";
490
- "replay.expired": "replay.expired";
491
- }>;
492
- data: z.ZodUnknown;
493
- }, z.core.$strip>;
494
- export type SseEventEnvelope = z.infer<typeof SseEventEnvelopeSchema>;