@relaymessenger/mcp 0.1.7-staging.2 → 0.1.7-staging.20

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.
package/README.md CHANGED
@@ -9,6 +9,25 @@ Local MCP v2 stdio server with exactly two tools:
9
9
 
10
10
  There is no `talk` tool and no per-operation `relay_*` tool list.
11
11
 
12
+ ## Selection
13
+
14
+ Use `search_docs` with query `selection` and verbose detail, then `execute`
15
+ with the SDK message-send method and ordered text/selection parts. Incoming
16
+ Message and event results retain `selected_values` and `reply_to`.
17
+
18
+ New human reply text is literal `• ` + each selected source label joined with
19
+ `\n`, followed by `selection_response` metadata in source-option order. Dispatch
20
+ with `selected_values` and the explicit source target, never label parsing.
21
+ Exact legacy comma-joined text remains a server compatibility input. The person
22
+ checks any number of options and submits them once; checking sends nothing, and
23
+ a person answers a given selection once. iOS may draw a checkmark in place of
24
+ each bullet and repeat the prompt's title, as presentation only.
25
+
26
+ ## Invoice
27
+
28
+ Use `search_docs` with query `invoice`, then `execute` a message send whose only
29
+ part is the invoice; update its status with `client.messages.invoice.update`.
30
+
12
31
  ## Start
13
32
 
14
33
  Requires Node.js 22.22.3 or newer.
@@ -1 +1 @@
1
- {"version":3,"file":"generated-docs.d.ts","sourceRoot":"","sources":["../src/generated-docs.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClD,eAAO,MAAM,WAAW;;;;CAIvB,CAAC;AACF,eAAO,MAAM,WAAW,EAAE,SAAS,SAAS,EAuvC3C,CAAC"}
1
+ {"version":3,"file":"generated-docs.d.ts","sourceRoot":"","sources":["../src/generated-docs.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClD,eAAO,MAAM,WAAW;;;;CAIvB,CAAC;AACF,eAAO,MAAM,WAAW,EAAE,SAAS,SAAS,EAy6C3C,CAAC"}
@@ -1,7 +1,7 @@
1
1
  export const DOCS_SOURCE = {
2
- "contract": "9e92c51df654d6896e13a56e95b6a32ce0fbb4c77ed9c754603482890e84dfde",
3
- "client": "22d434138d13652b72de711d14c07203c3c4cbe14947a7aa8c1738f8d7d71570",
4
- "types": "d9d4aaabc92749d01f01abe119275460044bae4ac519133f00e56af297e02dd1"
2
+ "contract": "3fb4873a3c09b7dade09012ecfc57acfef8cfb983b6b35fff9d320cf62bb3b00",
3
+ "client": "4b6f0a1213afc0753b7cc01e086f5bc66e71eccc5ba3b6632324c6b9bb48255e",
4
+ "types": "6a2b9e0151fa742dec7877c08a5762b3e44b48a1a164f9cf63f6529144a4fe19"
5
5
  };
6
6
  export const METHOD_DOCS = [
7
7
  {
@@ -176,164 +176,6 @@ export const METHOD_DOCS = [
176
176
  "executable": true,
177
177
  "optionsIndex": 1
178
178
  },
179
- {
180
- "method": "client.calls.accept",
181
- "signature": "client.calls.accept(callID: string, options?: RequestOptions): Promise<CallResponse>",
182
- "parameters": [
183
- "callID: string",
184
- "options?: RequestOptions"
185
- ],
186
- "httpMethod": "POST",
187
- "path": "/v1/calls/{callId}/accept",
188
- "operationId": "acceptCall",
189
- "summary": "Accept a call",
190
- "description": "The recipient accepts a ringing Call. The Call becomes connecting, not active.",
191
- "definitions": [
192
- "export interface RequestOptions {\n signal?: AbortSignal;\n timeout?: number;\n maxRetries?: number;\n headers?: HeadersInit;\n}",
193
- "export interface CallResponse {\n call: Call;\n}",
194
- "export interface Call {\n id: UUID;\n chat_id: UUID;\n from: CallContact;\n to: [CallContact];\n mode: \"audio\";\n status: \"ringing\" | \"connecting\" | \"active\" | \"ended\";\n revision: number;\n created_at: string;\n ringing_at: string;\n answered_at: string | null;\n connected_at: string | null;\n ended_at: string | null;\n end_reason: \"completed\" | \"declined\" | \"canceled\" | \"no_answer\" | \"disconnected\" | \"failed\" | null;\n}",
195
- "export type UUID = string;",
196
- "export interface CallContact {\n id: UUID;\n handle: string;\n kind: \"user\" | \"agent\";\n}"
197
- ],
198
- "requestBody": {
199
- "required": true,
200
- "content": {
201
- "application/json": {
202
- "schema": {
203
- "$ref": "#/components/schemas/CallEmptyRequest"
204
- }
205
- }
206
- }
207
- },
208
- "executable": true,
209
- "optionsIndex": 1
210
- },
211
- {
212
- "method": "client.calls.connected",
213
- "signature": "client.calls.connected(callID: string, options?: RequestOptions): Promise<CallResponse>",
214
- "parameters": [
215
- "callID: string",
216
- "options?: RequestOptions"
217
- ],
218
- "httpMethod": "POST",
219
- "path": "/v1/calls/{callId}/connected",
220
- "operationId": "markCallConnected",
221
- "summary": "Report connected media",
222
- "description": "Report that this Contact has connected media. The Call becomes active only after both Contacts have reported media readiness.",
223
- "definitions": [
224
- "export interface RequestOptions {\n signal?: AbortSignal;\n timeout?: number;\n maxRetries?: number;\n headers?: HeadersInit;\n}",
225
- "export interface CallResponse {\n call: Call;\n}",
226
- "export interface Call {\n id: UUID;\n chat_id: UUID;\n from: CallContact;\n to: [CallContact];\n mode: \"audio\";\n status: \"ringing\" | \"connecting\" | \"active\" | \"ended\";\n revision: number;\n created_at: string;\n ringing_at: string;\n answered_at: string | null;\n connected_at: string | null;\n ended_at: string | null;\n end_reason: \"completed\" | \"declined\" | \"canceled\" | \"no_answer\" | \"disconnected\" | \"failed\" | null;\n}",
227
- "export type UUID = string;",
228
- "export interface CallContact {\n id: UUID;\n handle: string;\n kind: \"user\" | \"agent\";\n}"
229
- ],
230
- "requestBody": {
231
- "required": true,
232
- "content": {
233
- "application/json": {
234
- "schema": {
235
- "$ref": "#/components/schemas/CallEmptyRequest"
236
- }
237
- }
238
- }
239
- },
240
- "executable": true,
241
- "optionsIndex": 1
242
- },
243
- {
244
- "method": "client.calls.connections.create",
245
- "signature": "client.calls.connections.create(callID: string, body: CallConnectionCreateParams, options?: RequestOptions): Promise<CallConnectionResponse>",
246
- "parameters": [
247
- "callID: string",
248
- "body: CallConnectionCreateParams",
249
- "options?: RequestOptions"
250
- ],
251
- "httpMethod": "POST",
252
- "path": "/v1/calls/{callId}/connections",
253
- "operationId": "createCallConnection",
254
- "summary": "Connect call audio",
255
- "description": "Connect an accepted Call. Users connect with WebRTC; agent backends connect a live audio WebSocket. The returned media grant is scoped to the authenticated Contact and Call. Provider credentials remain on Relay servers.",
256
- "definitions": [
257
- "export type CallConnectionCreateParams =\n | { transport: \"websocket\" }\n | {\n transport: \"webrtc\";\n session_description: { type: \"offer\"; sdp: string };\n tracks: [{ mid: string; name: \"microphone\" }];\n };",
258
- "export interface RequestOptions {\n signal?: AbortSignal;\n timeout?: number;\n maxRetries?: number;\n headers?: HeadersInit;\n}",
259
- "export interface CallConnectionResponse {\n connection: CallWebSocketConnection | CallWebRTCConnection;\n}",
260
- "export interface CallWebSocketConnection {\n id: UUID;\n call_id: UUID;\n transport: \"websocket\";\n url: string;\n /** Ephemeral Relay grant, supplied as the media WebSocket bearer token. */\n token: string;\n expires_at: string;\n audio_format: CallAudioFormat;\n}",
261
- "export type UUID = string;",
262
- "export interface CallAudioFormat {\n encoding: \"pcm_s16le\";\n sample_rate: 48000;\n channels: 2;\n}",
263
- "export interface CallWebRTCConnection {\n id: UUID;\n call_id: UUID;\n transport: \"webrtc\";\n session_description: { type: \"answer\"; sdp: string };\n}"
264
- ],
265
- "requestBody": {
266
- "required": true,
267
- "content": {
268
- "application/json": {
269
- "schema": {
270
- "$ref": "#/components/schemas/CallConnectionRequest"
271
- }
272
- }
273
- }
274
- },
275
- "executable": true,
276
- "optionsIndex": 2
277
- },
278
- {
279
- "method": "client.calls.connections.renegotiate",
280
- "signature": "client.calls.connections.renegotiate(callID: string, connectionID: string, body: { session_description: { type: \"answer\"; sdp: string } }, options?: RequestOptions): Promise<{ success: true }>",
281
- "parameters": [
282
- "callID: string",
283
- "connectionID: string",
284
- "body: { session_description: { type: \"answer\"; sdp: string } }",
285
- "options?: RequestOptions"
286
- ],
287
- "httpMethod": "POST",
288
- "path": "/v1/calls/{callId}/connections/{connectionId}/renegotiate",
289
- "operationId": "renegotiateCallAudio",
290
- "summary": "Finish audio negotiation",
291
- "description": "Submit the WebRTC answer to an offer returned by subscribe.",
292
- "definitions": [
293
- "export interface RequestOptions {\n signal?: AbortSignal;\n timeout?: number;\n maxRetries?: number;\n headers?: HeadersInit;\n}"
294
- ],
295
- "requestBody": {
296
- "required": true,
297
- "content": {
298
- "application/json": {
299
- "schema": {
300
- "$ref": "#/components/schemas/CallRenegotiateRequest"
301
- }
302
- }
303
- }
304
- },
305
- "executable": true,
306
- "optionsIndex": 3
307
- },
308
- {
309
- "method": "client.calls.connections.subscribe",
310
- "signature": "client.calls.connections.subscribe(callID: string, connectionID: string, options?: RequestOptions): Promise<{ session_description: { type: \"offer\"; sdp: string } }>",
311
- "parameters": [
312
- "callID: string",
313
- "connectionID: string",
314
- "options?: RequestOptions"
315
- ],
316
- "httpMethod": "POST",
317
- "path": "/v1/calls/{callId}/connections/{connectionId}/subscribe",
318
- "operationId": "subscribeCallAudio",
319
- "summary": "Receive the other side’s audio",
320
- "description": "For a WebRTC connection, request the other side’s audio track. Apply the returned offer and submit your answer through renegotiate. A 409 means the other track is not ready; retry only during connection setup.",
321
- "definitions": [
322
- "export interface RequestOptions {\n signal?: AbortSignal;\n timeout?: number;\n maxRetries?: number;\n headers?: HeadersInit;\n}"
323
- ],
324
- "requestBody": {
325
- "required": true,
326
- "content": {
327
- "application/json": {
328
- "schema": {
329
- "$ref": "#/components/schemas/CallEmptyRequest"
330
- }
331
- }
332
- }
333
- },
334
- "executable": true,
335
- "optionsIndex": 2
336
- },
337
179
  {
338
180
  "method": "client.calls.create",
339
181
  "signature": "client.calls.create(chatID: string, body: CallCreateParams, options: CallCreateOptions): Promise<CallResponse>",
@@ -346,15 +188,16 @@ export const METHOD_DOCS = [
346
188
  "path": "/v1/chats/{chatId}/calls",
347
189
  "operationId": "createCall",
348
190
  "summary": "Start an individual call",
349
- "description": "Start an audio Call in an existing individual Chat containing one user and one agent. The caller comes from authentication. The user must have added the agent; sending or replying to a Message establishes that relationship. A block in either direction prevents the call. A group Chat is rejected even when it has only two current members. Reuse the same Idempotency-Key and body after an uncertain response. Ringing has a 60-second setup lease; an accepted Call has 30 seconds to connect. Established calls have no duration limit imposed by these setup leases.",
191
+ "description": "Start an audio Call in an existing individual Chat containing exactly one user and one agent. The caller comes from authentication. The user must have added the agent; sending or replying to a Message establishes that relationship. A block in either direction prevents the call. A group Chat is rejected even when it has only two current members. Reuse the same Idempotency-Key and body after an uncertain response. Relay emits `call.created` through the agent's configured event transport. Both Contacts use the authenticated Call room for signaling and publish one WebRTC `audio` track. The callee answers by sending `join` within the 10-second ring lease; silence ends `no-answer`. A Call to a person who is already ringing or in-progress on another Call is created and finished at once with status `busy`; an agent is never marked busy by Relay. An answered Call has no duration limit.",
350
192
  "definitions": [
351
- "export interface CallCreateParams {\n to: [string];\n mode: \"audio\";\n}",
193
+ "export interface CallCreateParams {\n to: [string];\n}",
352
194
  "export interface CallCreateOptions extends RequestOptions {\n /** Reuse this key and request after an uncertain response. */\n idempotencyKey: string;\n}",
353
195
  "export interface RequestOptions {\n signal?: AbortSignal;\n timeout?: number;\n maxRetries?: number;\n headers?: HeadersInit;\n}",
354
196
  "export interface CallResponse {\n call: Call;\n}",
355
- "export interface Call {\n id: UUID;\n chat_id: UUID;\n from: CallContact;\n to: [CallContact];\n mode: \"audio\";\n status: \"ringing\" | \"connecting\" | \"active\" | \"ended\";\n revision: number;\n created_at: string;\n ringing_at: string;\n answered_at: string | null;\n connected_at: string | null;\n ended_at: string | null;\n end_reason: \"completed\" | \"declined\" | \"canceled\" | \"no_answer\" | \"disconnected\" | \"failed\" | null;\n}",
197
+ "export interface Call {\n id: UUID;\n chat_id: UUID;\n from: CallContact;\n to: [CallContact];\n /** `ringing` and `in-progress` are live. Terminal states set `ended_at`. */\n status: \"ringing\" | \"in-progress\" | CallTerminalStatus;\n revision: number;\n created_at: string;\n ringing_at: string;\n answered_at: string | null;\n ended_at: string | null;\n}",
356
198
  "export type UUID = string;",
357
- "export interface CallContact {\n id: UUID;\n handle: string;\n kind: \"user\" | \"agent\";\n}"
199
+ "export interface CallContact {\n id: UUID;\n handle: string;\n kind: \"user\" | \"agent\";\n}",
200
+ "export type CallTerminalStatus =\n | \"completed\"\n | \"no-answer\"\n | \"canceled\"\n | \"busy\"\n | \"failed\";"
358
201
  ],
359
202
  "requestBody": {
360
203
  "required": true,
@@ -369,38 +212,6 @@ export const METHOD_DOCS = [
369
212
  "executable": true,
370
213
  "optionsIndex": 2
371
214
  },
372
- {
373
- "method": "client.calls.decline",
374
- "signature": "client.calls.decline(callID: string, options?: RequestOptions): Promise<CallResponse>",
375
- "parameters": [
376
- "callID: string",
377
- "options?: RequestOptions"
378
- ],
379
- "httpMethod": "POST",
380
- "path": "/v1/calls/{callId}/decline",
381
- "operationId": "declineCall",
382
- "summary": "Decline a call",
383
- "description": "The recipient declines a ringing Call. The Call ends with reason declined.",
384
- "definitions": [
385
- "export interface RequestOptions {\n signal?: AbortSignal;\n timeout?: number;\n maxRetries?: number;\n headers?: HeadersInit;\n}",
386
- "export interface CallResponse {\n call: Call;\n}",
387
- "export interface Call {\n id: UUID;\n chat_id: UUID;\n from: CallContact;\n to: [CallContact];\n mode: \"audio\";\n status: \"ringing\" | \"connecting\" | \"active\" | \"ended\";\n revision: number;\n created_at: string;\n ringing_at: string;\n answered_at: string | null;\n connected_at: string | null;\n ended_at: string | null;\n end_reason: \"completed\" | \"declined\" | \"canceled\" | \"no_answer\" | \"disconnected\" | \"failed\" | null;\n}",
388
- "export type UUID = string;",
389
- "export interface CallContact {\n id: UUID;\n handle: string;\n kind: \"user\" | \"agent\";\n}"
390
- ],
391
- "requestBody": {
392
- "required": true,
393
- "content": {
394
- "application/json": {
395
- "schema": {
396
- "$ref": "#/components/schemas/CallEmptyRequest"
397
- }
398
- }
399
- }
400
- },
401
- "executable": true,
402
- "optionsIndex": 1
403
- },
404
215
  {
405
216
  "method": "client.calls.end",
406
217
  "signature": "client.calls.end(callID: string, options?: RequestOptions): Promise<CallResponse>",
@@ -412,13 +223,14 @@ export const METHOD_DOCS = [
412
223
  "path": "/v1/calls/{callId}/end",
413
224
  "operationId": "endCall",
414
225
  "summary": "End a call",
415
- "description": "Either Contact ends the Call. A ringing Call ends canceled; an answered Call ends completed. Cleanup remains available after a block or removal. Repeated terminal actions never restart the Call.",
226
+ "description": "Either Contact ends the Call. A ringing Call ends canceled when its caller ends it and no-answer when its recipient does; an answered Call ends completed. A participant may also send `end` over its authenticated Call room. Cleanup remains available after a block or removal. Repeated terminal actions never restart the Call.",
416
227
  "definitions": [
417
228
  "export interface RequestOptions {\n signal?: AbortSignal;\n timeout?: number;\n maxRetries?: number;\n headers?: HeadersInit;\n}",
418
229
  "export interface CallResponse {\n call: Call;\n}",
419
- "export interface Call {\n id: UUID;\n chat_id: UUID;\n from: CallContact;\n to: [CallContact];\n mode: \"audio\";\n status: \"ringing\" | \"connecting\" | \"active\" | \"ended\";\n revision: number;\n created_at: string;\n ringing_at: string;\n answered_at: string | null;\n connected_at: string | null;\n ended_at: string | null;\n end_reason: \"completed\" | \"declined\" | \"canceled\" | \"no_answer\" | \"disconnected\" | \"failed\" | null;\n}",
230
+ "export interface Call {\n id: UUID;\n chat_id: UUID;\n from: CallContact;\n to: [CallContact];\n /** `ringing` and `in-progress` are live. Terminal states set `ended_at`. */\n status: \"ringing\" | \"in-progress\" | CallTerminalStatus;\n revision: number;\n created_at: string;\n ringing_at: string;\n answered_at: string | null;\n ended_at: string | null;\n}",
420
231
  "export type UUID = string;",
421
- "export interface CallContact {\n id: UUID;\n handle: string;\n kind: \"user\" | \"agent\";\n}"
232
+ "export interface CallContact {\n id: UUID;\n handle: string;\n kind: \"user\" | \"agent\";\n}",
233
+ "export type CallTerminalStatus =\n | \"completed\"\n | \"no-answer\"\n | \"canceled\"\n | \"busy\"\n | \"failed\";"
422
234
  ],
423
235
  "requestBody": {
424
236
  "required": true,
@@ -450,9 +262,10 @@ export const METHOD_DOCS = [
450
262
  "export interface CallListParams {\n cursor?: string;\n limit?: number;\n}",
451
263
  "export interface RequestOptions {\n signal?: AbortSignal;\n timeout?: number;\n maxRetries?: number;\n headers?: HeadersInit;\n}",
452
264
  "export interface CallListResponse {\n calls: Call[];\n next_cursor: string | null;\n}",
453
- "export interface Call {\n id: UUID;\n chat_id: UUID;\n from: CallContact;\n to: [CallContact];\n mode: \"audio\";\n status: \"ringing\" | \"connecting\" | \"active\" | \"ended\";\n revision: number;\n created_at: string;\n ringing_at: string;\n answered_at: string | null;\n connected_at: string | null;\n ended_at: string | null;\n end_reason: \"completed\" | \"declined\" | \"canceled\" | \"no_answer\" | \"disconnected\" | \"failed\" | null;\n}",
265
+ "export interface Call {\n id: UUID;\n chat_id: UUID;\n from: CallContact;\n to: [CallContact];\n /** `ringing` and `in-progress` are live. Terminal states set `ended_at`. */\n status: \"ringing\" | \"in-progress\" | CallTerminalStatus;\n revision: number;\n created_at: string;\n ringing_at: string;\n answered_at: string | null;\n ended_at: string | null;\n}",
454
266
  "export type UUID = string;",
455
- "export interface CallContact {\n id: UUID;\n handle: string;\n kind: \"user\" | \"agent\";\n}"
267
+ "export interface CallContact {\n id: UUID;\n handle: string;\n kind: \"user\" | \"agent\";\n}",
268
+ "export type CallTerminalStatus =\n | \"completed\"\n | \"no-answer\"\n | \"canceled\"\n | \"busy\"\n | \"failed\";"
456
269
  ],
457
270
  "requestBody": null,
458
271
  "executable": true,
@@ -473,14 +286,37 @@ export const METHOD_DOCS = [
473
286
  "definitions": [
474
287
  "export interface RequestOptions {\n signal?: AbortSignal;\n timeout?: number;\n maxRetries?: number;\n headers?: HeadersInit;\n}",
475
288
  "export interface CallResponse {\n call: Call;\n}",
476
- "export interface Call {\n id: UUID;\n chat_id: UUID;\n from: CallContact;\n to: [CallContact];\n mode: \"audio\";\n status: \"ringing\" | \"connecting\" | \"active\" | \"ended\";\n revision: number;\n created_at: string;\n ringing_at: string;\n answered_at: string | null;\n connected_at: string | null;\n ended_at: string | null;\n end_reason: \"completed\" | \"declined\" | \"canceled\" | \"no_answer\" | \"disconnected\" | \"failed\" | null;\n}",
289
+ "export interface Call {\n id: UUID;\n chat_id: UUID;\n from: CallContact;\n to: [CallContact];\n /** `ringing` and `in-progress` are live. Terminal states set `ended_at`. */\n status: \"ringing\" | \"in-progress\" | CallTerminalStatus;\n revision: number;\n created_at: string;\n ringing_at: string;\n answered_at: string | null;\n ended_at: string | null;\n}",
477
290
  "export type UUID = string;",
478
- "export interface CallContact {\n id: UUID;\n handle: string;\n kind: \"user\" | \"agent\";\n}"
291
+ "export interface CallContact {\n id: UUID;\n handle: string;\n kind: \"user\" | \"agent\";\n}",
292
+ "export type CallTerminalStatus =\n | \"completed\"\n | \"no-answer\"\n | \"canceled\"\n | \"busy\"\n | \"failed\";"
479
293
  ],
480
294
  "requestBody": null,
481
295
  "executable": true,
482
296
  "optionsIndex": 1
483
297
  },
298
+ {
299
+ "method": "client.chats.clearActivity",
300
+ "signature": "client.chats.clearActivity(chatID: string, query: ChatClearActivityParams = {}, options?: RequestOptions): Promise<void>",
301
+ "parameters": [
302
+ "chatID: string",
303
+ "query: ChatClearActivityParams = {}",
304
+ "options?: RequestOptions"
305
+ ],
306
+ "httpMethod": "DELETE",
307
+ "path": "/v1/chats/{chatId}/activity",
308
+ "operationId": "clearActivity",
309
+ "summary": "Clear your activity",
310
+ "description": "Clear the authenticated agent's activity in this chat. Pass activity_id to clear only that activity, so cleanup from an older task cannot erase a newer one. An absent activity or a nonmatching id is a successful no-op.",
311
+ "definitions": [
312
+ "export interface ChatClearActivityParams {\n /** Clear only this task. A stale or missing activity is a successful no-op. */\n activity_id?: UUID;\n}",
313
+ "export type UUID = string;",
314
+ "export interface RequestOptions {\n signal?: AbortSignal;\n timeout?: number;\n maxRetries?: number;\n headers?: HeadersInit;\n}"
315
+ ],
316
+ "requestBody": null,
317
+ "executable": true,
318
+ "optionsIndex": 2
319
+ },
484
320
  {
485
321
  "method": "client.chats.create",
486
322
  "signature": "client.chats.create(body: ChatCreateParams, options?: RequestOptions): Promise<ChatCreateResponse>",
@@ -496,19 +332,44 @@ export const METHOD_DOCS = [
496
332
  "definitions": [
497
333
  "export interface ChatCreateParams {\n from: string;\n to: string[];\n message: MessageContent;\n}",
498
334
  "export interface MessageContent {\n parts: MessagePart[];\n reply_to?: ReplyTo;\n idempotency_key?: string;\n /**\n * Send the Message with no banner and no sound on the recipient's device.\n * The Message still arrives, still counts as unread, and still moves the\n * Chat to the top of the list. Defaults to `false`.\n */\n silent?: boolean;\n}",
499
- "export type MessagePart = TextPart | MediaPart | LinkPart;",
335
+ "export type MessagePart =\n | TextPart\n | MediaPart\n | LinkPart\n | ButtonsPart\n | SelectionPart\n | SelectionResponsePart\n | InvoicePart;",
336
+ "export interface TextPart {\n type: \"text\";\n value: string;\n mention?: string | null;\n mention_range?: [number, number] | null;\n}",
337
+ "export interface MediaPart {\n type: \"media\";\n url?: string;\n attachment_id?: UUID;\n}",
338
+ "export type UUID = string;",
339
+ "export interface LinkPart {\n type: \"link\";\n value: string;\n}",
340
+ "export interface ButtonsPart {\n type: \"buttons\";\n items: ButtonItem[];\n}",
341
+ "export interface ButtonItem {\n /** Link button: the tap opens this HTTPS URL instead of sending the label. */\n url?: string;\n /** The button's visible text, 1 to 80 characters, and what a tap sends. */\n label: string;\n}",
342
+ "export interface SelectionPart {\n type: \"selection\";\n /** The text is the prompt's title; the person checks any number of options and submits them once, and checking sends nothing. */\n options: SelectionOption[];\n}",
343
+ "export interface SelectionOption {\n /** Unique case-sensitive ASCII token, 1–100 characters. Never derived from label. */\n value: string;\n /** Trimmed visible label, 1–80 characters. */\n label: string;\n}",
344
+ "export interface SelectionResponsePart {\n type: \"selection_response\";\n /**\n * Unique known values, nonempty and in source-option order, authoritative with\n * reply_to. New preceding text is literal '• ' + each source label joined with\n * '\\n'. The server accepts exact legacy comma-joined labels for compatibility\n * only, never arbitrary label parsing. iOS may draw a checkmark in place of\n * each bullet and repeat the prompt's title, as presentation only; portable\n * text remains bullets.\n */\n selected_values: string[];\n}",
345
+ "export interface InvoicePart {\n type: \"invoice\";\n /** Trimmed, 1–32 characters (Telegram sendInvoice). */\n title: string;\n /** Minor units, 1..99,999,999 (Stripe's max). */\n amount: number;\n /** 3-letter ISO code, sent in either case, always returned lowercase. */\n currency: string;\n goods: InvoiceGoods;\n /** The developer's own Stripe checkout link on checkout, buy, book, donate or invoice.stripe.com; at most 2048 characters. */\n url: string;\n /** Omit for a one-time charge. */\n recurring?: InvoiceRecurring;\n}",
346
+ "export type InvoiceGoods = \"physical\" | \"digital\";",
347
+ "export interface InvoiceRecurring {\n interval: \"day\" | \"week\" | \"month\" | \"year\";\n /** Defaults to 1. Total span is capped at 3 years (1095 days / 156 weeks / 36 months / 3 years). */\n interval_count?: number;\n}",
500
348
  "export interface ReplyTo {\n message_id: UUID;\n part_index?: number;\n}",
501
349
  "export interface Message {\n id: UUID;\n chat_id: UUID;\n from?: string | null;\n from_handle?: ChatHandle | null;\n parts?: MessagePartResponse[] | null;\n reply_to?: ReplyTo | null;\n is_system_message: boolean;\n system_event?: SystemEvent | null;\n is_from_me: boolean;\n delivery_status: DeliveryStatus;\n created_at: string;\n updated_at: string;\n sent_at?: string | null;\n delivered_at?: string | null;\n read_at?: string | null;\n /** When the Message was last edited, or null if it was never edited. */\n edited_at?: string | null;\n /**\n * When the sender unsent the Message, or null. An unsent Message keeps its\n * place in the transcript and carries no parts.\n */\n unsent_at?: string | null;\n /**\n * Whether the sender sent this Message silently, so the recipient's device\n * showed no banner and played no sound.\n */\n silent?: boolean;\n deliveries?: MessageDelivery[];\n}",
502
- "export interface Chat {\n id: UUID;\n display_name: string | null;\n group_chat_icon?: string | null;\n handles: ChatHandle[];\n is_group: boolean;\n /**\n * The caller's side of a message request on this Chat: `pending` while a\n * sender with no Contact edge to the caller wrote to them and they have not\n * answered, `accepted` or `deleted` once they have. Absent when the caller\n * was never asked; an agent never is.\n */\n created_at: string;\n updated_at: string;\n}",
503
- "export interface RequestOptions {\n signal?: AbortSignal;\n timeout?: number;\n maxRetries?: number;\n headers?: HeadersInit;\n}",
504
- "export interface ChatCreateResponse {\n chat: Pick<\n Chat,\n \"id\" | \"display_name\" | \"is_group\" | \"handles\"\n > & { message: SentMessage };\n}",
505
- "export interface SentMessage {\n id: UUID;\n parts: Array<TextPartResponse | MediaPartResponse | LinkPartResponse>;\n created_at: string;\n sent_at: string | null;\n delivered_at?: string | null;\n delivery_status: DeliveryStatus;\n from_handle?: ChatHandle | null;\n reply_to?: ReplyTo | null;\n /**\n * Whether the sender sent this Message silently, so the recipient's device\n * showed no banner and played no sound.\n */\n silent?: boolean;\n is_system_message: false;\n}",
506
- "export type UUID = string;",
350
+ "export type ChatHandle = UserChatHandle | AgentChatHandle;",
351
+ "export interface UserChatHandle extends ChatHandleBase {\n kind: \"user\";\n}",
352
+ "export interface AgentChatHandle extends ChatHandleBase {\n kind: \"agent\";\n}",
353
+ "export type MessagePartResponse =\n | TextPartResponse\n | MediaPartResponse\n | LinkPartResponse\n | ButtonsPartResponse\n | SelectionPartResponse\n | SelectionResponsePartResponse\n | InvoicePartResponse\n | SystemPartResponse;",
507
354
  "export interface TextPartResponse extends TextPart {\n mentions?: Array<{\n id: string;\n handle: string;\n is_me: boolean;\n range: [number, number];\n }> | null;\n /** @deprecated Use mentions instead. */\n mention?: string | null;\n /** @deprecated Use mentions instead. */\n mention_range?: [number, number] | null;\n reactions: Reaction[] | null;\n}",
508
355
  "export interface MediaPartResponse {\n type: \"media\";\n id: UUID;\n url: string;\n filename: string;\n mime_type: string;\n size_bytes: number;\n duration_ms?: number | null;\n width?: number | null;\n height?: number | null;\n reactions: Reaction[] | null;\n}",
509
356
  "export interface LinkPartResponse extends LinkPart {\n reactions: Reaction[] | null;\n}",
357
+ "export interface ButtonsPartResponse extends ButtonsPart {\n reactions: Reaction[] | null;\n}",
358
+ "export interface SelectionPartResponse extends SelectionPart {\n /** Durable response state for this viewer across devices. Existing Chat rules allow at most one human user; only that user can respond, once; reopening an answered selection shows what they chose without letting them change it. */\n readonly has_responded: boolean;\n /** The values the authenticated viewer chose, in source-option order, identical on every one of that user's devices; null until the viewer answers, when the answer Message no longer exists, and always for an agent viewer. */\n readonly selected_values: string[] | null;\n reactions: null;\n}",
359
+ "export interface SelectionResponsePartResponse extends SelectionResponsePart {}",
360
+ "export interface InvoicePartResponse extends InvoicePart {\n recurring?: Required<InvoiceRecurring>;\n /** Defaults to \"requested\". Only the sending agent's own status PUT changes it. */\n status: InvoiceStatus;\n reactions: Reaction[] | null;\n}",
361
+ "export interface SystemPartResponse {\n type: \"system\";\n value: string;\n reactions: null;\n}",
362
+ "export interface SystemEvent {\n type: SystemEventType;\n actor: SystemEventParty;\n subject: SystemEventParty | null;\n value: string | null;\n icon_attachment_id: UUID | null;\n contact_card: ContactCardItem | null;\n call: CallMarker | null;\n}",
363
+ "export type SystemEventType =\n | \"chat_created\"\n | \"participant_added\"\n | \"participant_removed\"\n | \"group_name_updated\"\n | \"group_icon_updated\"\n | \"contact_card_shared\"\n | \"call\";",
364
+ "export interface SystemEventParty {\n id: UUID;\n handle: string;\n kind: \"user\" | \"agent\";\n}",
365
+ "export interface ContactCardItem {\n handle: string;\n first_name: string;\n last_name: string | null;\n image_url: string | null;\n is_active: boolean;\n kind: \"user\" | \"agent\";\n}",
366
+ "export interface CallMarker {\n id: UUID;\n status: Call[\"status\"];\n answered_at: string | null;\n ended_at: string | null;\n from: CallContact;\n to: [CallContact];\n duration_seconds: number | null;\n}",
510
367
  "export type DeliveryStatus =\n | \"sent\"\n | \"delivered\"\n | \"read\";",
511
- "export type ChatHandle = UserChatHandle | AgentChatHandle;"
368
+ "export interface MessageDelivery {\n contact: ChatHandle;\n delivered_at: string | null;\n read_at: string | null;\n}",
369
+ "export interface Chat {\n id: UUID;\n display_name: string | null;\n group_chat_icon?: string | null;\n handles: ChatHandle[];\n is_group: boolean;\n /**\n * The caller's side of a message request on this Chat: `pending` while a\n * sender with no Contact edge to the caller wrote to them and they have not\n * answered, `accepted` or `deleted` once they have. Absent when the caller\n * was never asked; an agent never is.\n */\n created_at: string;\n updated_at: string;\n}",
370
+ "export interface RequestOptions {\n signal?: AbortSignal;\n timeout?: number;\n maxRetries?: number;\n headers?: HeadersInit;\n}",
371
+ "export interface ChatCreateResponse {\n chat: Pick<\n Chat,\n \"id\" | \"display_name\" | \"is_group\" | \"handles\"\n > & { message: SentMessage };\n}",
372
+ "export interface SentMessage {\n id: UUID;\n parts: Array<\n | TextPartResponse\n | MediaPartResponse\n | LinkPartResponse\n | ButtonsPartResponse\n | SelectionPartResponse\n | SelectionResponsePartResponse\n | InvoicePartResponse\n >;\n created_at: string;\n sent_at: string | null;\n delivered_at?: string | null;\n delivery_status: DeliveryStatus;\n from_handle?: ChatHandle | null;\n reply_to?: ReplyTo | null;\n /**\n * Whether the sender sent this Message silently, so the recipient's device\n * showed no banner and played no sound.\n */\n silent?: boolean;\n is_system_message: false;\n}"
512
373
  ],
513
374
  "requestBody": {
514
375
  "required": true,
@@ -523,6 +384,28 @@ export const METHOD_DOCS = [
523
384
  "executable": true,
524
385
  "optionsIndex": 1
525
386
  },
387
+ {
388
+ "method": "client.chats.getActivity",
389
+ "signature": "client.chats.getActivity(chatID: string, options?: RequestOptions): Promise<ChatActivityResponse>",
390
+ "parameters": [
391
+ "chatID: string",
392
+ "options?: RequestOptions"
393
+ ],
394
+ "httpMethod": "GET",
395
+ "path": "/v1/chats/{chatId}/activity",
396
+ "operationId": "getActivity",
397
+ "summary": "Get your activity",
398
+ "description": "Read the authenticated agent's activity in this chat. Empty, cleared, and expired activity is null. The version remains available after clearing.",
399
+ "definitions": [
400
+ "export interface RequestOptions {\n signal?: AbortSignal;\n timeout?: number;\n maxRetries?: number;\n headers?: HeadersInit;\n}",
401
+ "export interface ChatActivityResponse {\n chat_id: UUID;\n agent_id: UUID;\n version: string;\n activity: ChatActivity | null;\n}",
402
+ "export type UUID = string;",
403
+ "export interface ChatActivity {\n id: UUID;\n text: string;\n emoji: string | null;\n updated_at: string;\n expires_at: string;\n}"
404
+ ],
405
+ "requestBody": null,
406
+ "executable": true,
407
+ "optionsIndex": 1
408
+ },
526
409
  {
527
410
  "method": "client.chats.leaveChat",
528
411
  "signature": "client.chats.leaveChat(chatID: string, options?: RequestOptions): Promise<AcceptedResponse>",
@@ -562,6 +445,8 @@ export const METHOD_DOCS = [
562
445
  "export type UUID = string;",
563
446
  "export type ChatHandle = UserChatHandle | AgentChatHandle;",
564
447
  "export interface UserChatHandle extends ChatHandleBase {\n kind: \"user\";\n}",
448
+ "interface ChatHandleBase {\n id: UUID;\n handle: string;\n status?: \"active\" | \"left\" | \"removed\" | null;\n joined_at: string;\n left_at?: string | null;\n is_me?: boolean | null;\n display_name: string | null;\n image_url: string | null;\n about: string | null;\n verified: boolean;\n /** True when the caller holds this Handle as a Contact. */\n is_contact: boolean;\n activity_version?: string;\n activity?: ChatActivity | null;\n}",
449
+ "export interface ChatActivity {\n id: UUID;\n text: string;\n emoji: string | null;\n updated_at: string;\n expires_at: string;\n}",
565
450
  "export interface AgentChatHandle extends ChatHandleBase {\n kind: \"agent\";\n}"
566
451
  ],
567
452
  "requestBody": null,
@@ -607,17 +492,41 @@ export const METHOD_DOCS = [
607
492
  "export type UUID = string;",
608
493
  "export type ChatHandle = UserChatHandle | AgentChatHandle;",
609
494
  "export interface UserChatHandle extends ChatHandleBase {\n kind: \"user\";\n}",
495
+ "interface ChatHandleBase {\n id: UUID;\n handle: string;\n status?: \"active\" | \"left\" | \"removed\" | null;\n joined_at: string;\n left_at?: string | null;\n is_me?: boolean | null;\n display_name: string | null;\n image_url: string | null;\n about: string | null;\n verified: boolean;\n /** True when the caller holds this Handle as a Contact. */\n is_contact: boolean;\n activity_version?: string;\n activity?: ChatActivity | null;\n}",
496
+ "export interface ChatActivity {\n id: UUID;\n text: string;\n emoji: string | null;\n updated_at: string;\n expires_at: string;\n}",
610
497
  "export interface AgentChatHandle extends ChatHandleBase {\n kind: \"agent\";\n}",
611
- "export type MessagePartResponse =\n | TextPartResponse\n | MediaPartResponse\n | LinkPartResponse\n | SystemPartResponse;",
498
+ "export type MessagePartResponse =\n | TextPartResponse\n | MediaPartResponse\n | LinkPartResponse\n | ButtonsPartResponse\n | SelectionPartResponse\n | SelectionResponsePartResponse\n | InvoicePartResponse\n | SystemPartResponse;",
612
499
  "export interface TextPartResponse extends TextPart {\n mentions?: Array<{\n id: string;\n handle: string;\n is_me: boolean;\n range: [number, number];\n }> | null;\n /** @deprecated Use mentions instead. */\n mention?: string | null;\n /** @deprecated Use mentions instead. */\n mention_range?: [number, number] | null;\n reactions: Reaction[] | null;\n}",
500
+ "export interface TextPart {\n type: \"text\";\n value: string;\n mention?: string | null;\n mention_range?: [number, number] | null;\n}",
501
+ "export interface Reaction {\n is_me: boolean;\n handle: ChatHandle;\n type: ReactionType;\n custom_emoji?: string | null;\n}",
502
+ "export type ReactionType =\n | \"love\"\n | \"like\"\n | \"dislike\"\n | \"laugh\"\n | \"emphasize\"\n | \"question\"\n | \"custom\";",
613
503
  "export interface MediaPartResponse {\n type: \"media\";\n id: UUID;\n url: string;\n filename: string;\n mime_type: string;\n size_bytes: number;\n duration_ms?: number | null;\n width?: number | null;\n height?: number | null;\n reactions: Reaction[] | null;\n}",
614
504
  "export interface LinkPartResponse extends LinkPart {\n reactions: Reaction[] | null;\n}",
505
+ "export interface LinkPart {\n type: \"link\";\n value: string;\n}",
506
+ "export interface ButtonsPartResponse extends ButtonsPart {\n reactions: Reaction[] | null;\n}",
507
+ "export interface ButtonsPart {\n type: \"buttons\";\n items: ButtonItem[];\n}",
508
+ "export interface ButtonItem {\n /** Link button: the tap opens this HTTPS URL instead of sending the label. */\n url?: string;\n /** The button's visible text, 1 to 80 characters, and what a tap sends. */\n label: string;\n}",
509
+ "export interface SelectionPartResponse extends SelectionPart {\n /** Durable response state for this viewer across devices. Existing Chat rules allow at most one human user; only that user can respond, once; reopening an answered selection shows what they chose without letting them change it. */\n readonly has_responded: boolean;\n /** The values the authenticated viewer chose, in source-option order, identical on every one of that user's devices; null until the viewer answers, when the answer Message no longer exists, and always for an agent viewer. */\n readonly selected_values: string[] | null;\n reactions: null;\n}",
510
+ "export interface SelectionPart {\n type: \"selection\";\n /** The text is the prompt's title; the person checks any number of options and submits them once, and checking sends nothing. */\n options: SelectionOption[];\n}",
511
+ "export interface SelectionOption {\n /** Unique case-sensitive ASCII token, 1–100 characters. Never derived from label. */\n value: string;\n /** Trimmed visible label, 1–80 characters. */\n label: string;\n}",
512
+ "export interface Chat {\n id: UUID;\n display_name: string | null;\n group_chat_icon?: string | null;\n handles: ChatHandle[];\n is_group: boolean;\n /**\n * The caller's side of a message request on this Chat: `pending` while a\n * sender with no Contact edge to the caller wrote to them and they have not\n * answered, `accepted` or `deleted` once they have. Absent when the caller\n * was never asked; an agent never is.\n */\n created_at: string;\n updated_at: string;\n}",
513
+ "export interface SelectionResponsePartResponse extends SelectionResponsePart {}",
514
+ "export interface SelectionResponsePart {\n type: \"selection_response\";\n /**\n * Unique known values, nonempty and in source-option order, authoritative with\n * reply_to. New preceding text is literal '• ' + each source label joined with\n * '\\n'. The server accepts exact legacy comma-joined labels for compatibility\n * only, never arbitrary label parsing. iOS may draw a checkmark in place of\n * each bullet and repeat the prompt's title, as presentation only; portable\n * text remains bullets.\n */\n selected_values: string[];\n}",
515
+ "export interface InvoicePartResponse extends InvoicePart {\n recurring?: Required<InvoiceRecurring>;\n /** Defaults to \"requested\". Only the sending agent's own status PUT changes it. */\n status: InvoiceStatus;\n reactions: Reaction[] | null;\n}",
516
+ "export interface InvoicePart {\n type: \"invoice\";\n /** Trimmed, 1–32 characters (Telegram sendInvoice). */\n title: string;\n /** Minor units, 1..99,999,999 (Stripe's max). */\n amount: number;\n /** 3-letter ISO code, sent in either case, always returned lowercase. */\n currency: string;\n goods: InvoiceGoods;\n /** The developer's own Stripe checkout link on checkout, buy, book, donate or invoice.stripe.com; at most 2048 characters. */\n url: string;\n /** Omit for a one-time charge. */\n recurring?: InvoiceRecurring;\n}",
517
+ "export type InvoiceGoods = \"physical\" | \"digital\";",
518
+ "export interface InvoiceRecurring {\n interval: \"day\" | \"week\" | \"month\" | \"year\";\n /** Defaults to 1. Total span is capped at 3 years (1095 days / 156 weeks / 36 months / 3 years). */\n interval_count?: number;\n}",
519
+ "export type InvoiceStatus = \"requested\" | \"succeeded\" | \"canceled\" | \"expired\" | \"refunded\";",
615
520
  "export interface SystemPartResponse {\n type: \"system\";\n value: string;\n reactions: null;\n}",
616
521
  "export interface ReplyTo {\n message_id: UUID;\n part_index?: number;\n}",
617
- "export interface SystemEvent {\n type: SystemEventType;\n actor: SystemEventParty;\n subject: SystemEventParty | null;\n value: string | null;\n icon_attachment_id: UUID | null;\n contact_card: ContactCardItem | null;\n}",
618
- "export type SystemEventType =\n | \"chat_created\"\n | \"participant_added\"\n | \"participant_removed\"\n | \"group_name_updated\"\n | \"group_icon_updated\"\n | \"contact_card_shared\";",
522
+ "export interface SystemEvent {\n type: SystemEventType;\n actor: SystemEventParty;\n subject: SystemEventParty | null;\n value: string | null;\n icon_attachment_id: UUID | null;\n contact_card: ContactCardItem | null;\n call: CallMarker | null;\n}",
523
+ "export type SystemEventType =\n | \"chat_created\"\n | \"participant_added\"\n | \"participant_removed\"\n | \"group_name_updated\"\n | \"group_icon_updated\"\n | \"contact_card_shared\"\n | \"call\";",
619
524
  "export interface SystemEventParty {\n id: UUID;\n handle: string;\n kind: \"user\" | \"agent\";\n}",
620
525
  "export interface ContactCardItem {\n handle: string;\n first_name: string;\n last_name: string | null;\n image_url: string | null;\n is_active: boolean;\n kind: \"user\" | \"agent\";\n}",
526
+ "export interface CallMarker {\n id: UUID;\n status: Call[\"status\"];\n answered_at: string | null;\n ended_at: string | null;\n from: CallContact;\n to: [CallContact];\n duration_seconds: number | null;\n}",
527
+ "export interface Call {\n id: UUID;\n chat_id: UUID;\n from: CallContact;\n to: [CallContact];\n /** `ringing` and `in-progress` are live. Terminal states set `ended_at`. */\n status: \"ringing\" | \"in-progress\" | CallTerminalStatus;\n revision: number;\n created_at: string;\n ringing_at: string;\n answered_at: string | null;\n ended_at: string | null;\n}",
528
+ "export interface CallContact {\n id: UUID;\n handle: string;\n kind: \"user\" | \"agent\";\n}",
529
+ "export type CallTerminalStatus =\n | \"completed\"\n | \"no-answer\"\n | \"canceled\"\n | \"busy\"\n | \"failed\";",
621
530
  "export type DeliveryStatus =\n | \"sent\"\n | \"delivered\"\n | \"read\";",
622
531
  "export interface MessageDelivery {\n contact: ChatHandle;\n delivered_at: string | null;\n read_at: string | null;\n}"
623
532
  ],
@@ -641,19 +550,44 @@ export const METHOD_DOCS = [
641
550
  "definitions": [
642
551
  "export interface MessageSendParams {\n message: MessageContent;\n}",
643
552
  "export interface MessageContent {\n parts: MessagePart[];\n reply_to?: ReplyTo;\n idempotency_key?: string;\n /**\n * Send the Message with no banner and no sound on the recipient's device.\n * The Message still arrives, still counts as unread, and still moves the\n * Chat to the top of the list. Defaults to `false`.\n */\n silent?: boolean;\n}",
644
- "export type MessagePart = TextPart | MediaPart | LinkPart;",
553
+ "export type MessagePart =\n | TextPart\n | MediaPart\n | LinkPart\n | ButtonsPart\n | SelectionPart\n | SelectionResponsePart\n | InvoicePart;",
554
+ "export interface TextPart {\n type: \"text\";\n value: string;\n mention?: string | null;\n mention_range?: [number, number] | null;\n}",
555
+ "export interface MediaPart {\n type: \"media\";\n url?: string;\n attachment_id?: UUID;\n}",
556
+ "export type UUID = string;",
557
+ "export interface LinkPart {\n type: \"link\";\n value: string;\n}",
558
+ "export interface ButtonsPart {\n type: \"buttons\";\n items: ButtonItem[];\n}",
559
+ "export interface ButtonItem {\n /** Link button: the tap opens this HTTPS URL instead of sending the label. */\n url?: string;\n /** The button's visible text, 1 to 80 characters, and what a tap sends. */\n label: string;\n}",
560
+ "export interface SelectionPart {\n type: \"selection\";\n /** The text is the prompt's title; the person checks any number of options and submits them once, and checking sends nothing. */\n options: SelectionOption[];\n}",
561
+ "export interface SelectionOption {\n /** Unique case-sensitive ASCII token, 1–100 characters. Never derived from label. */\n value: string;\n /** Trimmed visible label, 1–80 characters. */\n label: string;\n}",
562
+ "export interface SelectionResponsePart {\n type: \"selection_response\";\n /**\n * Unique known values, nonempty and in source-option order, authoritative with\n * reply_to. New preceding text is literal '• ' + each source label joined with\n * '\\n'. The server accepts exact legacy comma-joined labels for compatibility\n * only, never arbitrary label parsing. iOS may draw a checkmark in place of\n * each bullet and repeat the prompt's title, as presentation only; portable\n * text remains bullets.\n */\n selected_values: string[];\n}",
563
+ "export interface InvoicePart {\n type: \"invoice\";\n /** Trimmed, 1–32 characters (Telegram sendInvoice). */\n title: string;\n /** Minor units, 1..99,999,999 (Stripe's max). */\n amount: number;\n /** 3-letter ISO code, sent in either case, always returned lowercase. */\n currency: string;\n goods: InvoiceGoods;\n /** The developer's own Stripe checkout link on checkout, buy, book, donate or invoice.stripe.com; at most 2048 characters. */\n url: string;\n /** Omit for a one-time charge. */\n recurring?: InvoiceRecurring;\n}",
564
+ "export type InvoiceGoods = \"physical\" | \"digital\";",
565
+ "export interface InvoiceRecurring {\n interval: \"day\" | \"week\" | \"month\" | \"year\";\n /** Defaults to 1. Total span is capped at 3 years (1095 days / 156 weeks / 36 months / 3 years). */\n interval_count?: number;\n}",
645
566
  "export interface ReplyTo {\n message_id: UUID;\n part_index?: number;\n}",
646
567
  "export interface Message {\n id: UUID;\n chat_id: UUID;\n from?: string | null;\n from_handle?: ChatHandle | null;\n parts?: MessagePartResponse[] | null;\n reply_to?: ReplyTo | null;\n is_system_message: boolean;\n system_event?: SystemEvent | null;\n is_from_me: boolean;\n delivery_status: DeliveryStatus;\n created_at: string;\n updated_at: string;\n sent_at?: string | null;\n delivered_at?: string | null;\n read_at?: string | null;\n /** When the Message was last edited, or null if it was never edited. */\n edited_at?: string | null;\n /**\n * When the sender unsent the Message, or null. An unsent Message keeps its\n * place in the transcript and carries no parts.\n */\n unsent_at?: string | null;\n /**\n * Whether the sender sent this Message silently, so the recipient's device\n * showed no banner and played no sound.\n */\n silent?: boolean;\n deliveries?: MessageDelivery[];\n}",
647
- "export interface Chat {\n id: UUID;\n display_name: string | null;\n group_chat_icon?: string | null;\n handles: ChatHandle[];\n is_group: boolean;\n /**\n * The caller's side of a message request on this Chat: `pending` while a\n * sender with no Contact edge to the caller wrote to them and they have not\n * answered, `accepted` or `deleted` once they have. Absent when the caller\n * was never asked; an agent never is.\n */\n created_at: string;\n updated_at: string;\n}",
648
- "export interface RequestOptions {\n signal?: AbortSignal;\n timeout?: number;\n maxRetries?: number;\n headers?: HeadersInit;\n}",
649
- "export interface MessageSendResponse {\n chat_id: UUID;\n message: SentMessage;\n}",
650
- "export type UUID = string;",
651
- "export interface SentMessage {\n id: UUID;\n parts: Array<TextPartResponse | MediaPartResponse | LinkPartResponse>;\n created_at: string;\n sent_at: string | null;\n delivered_at?: string | null;\n delivery_status: DeliveryStatus;\n from_handle?: ChatHandle | null;\n reply_to?: ReplyTo | null;\n /**\n * Whether the sender sent this Message silently, so the recipient's device\n * showed no banner and played no sound.\n */\n silent?: boolean;\n is_system_message: false;\n}",
568
+ "export type ChatHandle = UserChatHandle | AgentChatHandle;",
569
+ "export interface UserChatHandle extends ChatHandleBase {\n kind: \"user\";\n}",
570
+ "export interface AgentChatHandle extends ChatHandleBase {\n kind: \"agent\";\n}",
571
+ "export type MessagePartResponse =\n | TextPartResponse\n | MediaPartResponse\n | LinkPartResponse\n | ButtonsPartResponse\n | SelectionPartResponse\n | SelectionResponsePartResponse\n | InvoicePartResponse\n | SystemPartResponse;",
652
572
  "export interface TextPartResponse extends TextPart {\n mentions?: Array<{\n id: string;\n handle: string;\n is_me: boolean;\n range: [number, number];\n }> | null;\n /** @deprecated Use mentions instead. */\n mention?: string | null;\n /** @deprecated Use mentions instead. */\n mention_range?: [number, number] | null;\n reactions: Reaction[] | null;\n}",
653
573
  "export interface MediaPartResponse {\n type: \"media\";\n id: UUID;\n url: string;\n filename: string;\n mime_type: string;\n size_bytes: number;\n duration_ms?: number | null;\n width?: number | null;\n height?: number | null;\n reactions: Reaction[] | null;\n}",
654
574
  "export interface LinkPartResponse extends LinkPart {\n reactions: Reaction[] | null;\n}",
575
+ "export interface ButtonsPartResponse extends ButtonsPart {\n reactions: Reaction[] | null;\n}",
576
+ "export interface SelectionPartResponse extends SelectionPart {\n /** Durable response state for this viewer across devices. Existing Chat rules allow at most one human user; only that user can respond, once; reopening an answered selection shows what they chose without letting them change it. */\n readonly has_responded: boolean;\n /** The values the authenticated viewer chose, in source-option order, identical on every one of that user's devices; null until the viewer answers, when the answer Message no longer exists, and always for an agent viewer. */\n readonly selected_values: string[] | null;\n reactions: null;\n}",
577
+ "export interface SelectionResponsePartResponse extends SelectionResponsePart {}",
578
+ "export interface InvoicePartResponse extends InvoicePart {\n recurring?: Required<InvoiceRecurring>;\n /** Defaults to \"requested\". Only the sending agent's own status PUT changes it. */\n status: InvoiceStatus;\n reactions: Reaction[] | null;\n}",
579
+ "export interface SystemPartResponse {\n type: \"system\";\n value: string;\n reactions: null;\n}",
580
+ "export interface SystemEvent {\n type: SystemEventType;\n actor: SystemEventParty;\n subject: SystemEventParty | null;\n value: string | null;\n icon_attachment_id: UUID | null;\n contact_card: ContactCardItem | null;\n call: CallMarker | null;\n}",
581
+ "export type SystemEventType =\n | \"chat_created\"\n | \"participant_added\"\n | \"participant_removed\"\n | \"group_name_updated\"\n | \"group_icon_updated\"\n | \"contact_card_shared\"\n | \"call\";",
582
+ "export interface SystemEventParty {\n id: UUID;\n handle: string;\n kind: \"user\" | \"agent\";\n}",
583
+ "export interface ContactCardItem {\n handle: string;\n first_name: string;\n last_name: string | null;\n image_url: string | null;\n is_active: boolean;\n kind: \"user\" | \"agent\";\n}",
584
+ "export interface CallMarker {\n id: UUID;\n status: Call[\"status\"];\n answered_at: string | null;\n ended_at: string | null;\n from: CallContact;\n to: [CallContact];\n duration_seconds: number | null;\n}",
655
585
  "export type DeliveryStatus =\n | \"sent\"\n | \"delivered\"\n | \"read\";",
656
- "export type ChatHandle = UserChatHandle | AgentChatHandle;"
586
+ "export interface MessageDelivery {\n contact: ChatHandle;\n delivered_at: string | null;\n read_at: string | null;\n}",
587
+ "export interface Chat {\n id: UUID;\n display_name: string | null;\n group_chat_icon?: string | null;\n handles: ChatHandle[];\n is_group: boolean;\n /**\n * The caller's side of a message request on this Chat: `pending` while a\n * sender with no Contact edge to the caller wrote to them and they have not\n * answered, `accepted` or `deleted` once they have. Absent when the caller\n * was never asked; an agent never is.\n */\n created_at: string;\n updated_at: string;\n}",
588
+ "export interface RequestOptions {\n signal?: AbortSignal;\n timeout?: number;\n maxRetries?: number;\n headers?: HeadersInit;\n}",
589
+ "export interface MessageSendResponse {\n chat_id: UUID;\n message: SentMessage;\n}",
590
+ "export interface SentMessage {\n id: UUID;\n parts: Array<\n | TextPartResponse\n | MediaPartResponse\n | LinkPartResponse\n | ButtonsPartResponse\n | SelectionPartResponse\n | SelectionResponsePartResponse\n | InvoicePartResponse\n >;\n created_at: string;\n sent_at: string | null;\n delivered_at?: string | null;\n delivery_status: DeliveryStatus;\n from_handle?: ChatHandle | null;\n reply_to?: ReplyTo | null;\n /**\n * Whether the sender sent this Message silently, so the recipient's device\n * showed no banner and played no sound.\n */\n silent?: boolean;\n is_system_message: false;\n}"
657
591
  ],
658
592
  "requestBody": {
659
593
  "required": true,
@@ -748,6 +682,8 @@ export const METHOD_DOCS = [
748
682
  "export type UUID = string;",
749
683
  "export type ChatHandle = UserChatHandle | AgentChatHandle;",
750
684
  "export interface UserChatHandle extends ChatHandleBase {\n kind: \"user\";\n}",
685
+ "interface ChatHandleBase {\n id: UUID;\n handle: string;\n status?: \"active\" | \"left\" | \"removed\" | null;\n joined_at: string;\n left_at?: string | null;\n is_me?: boolean | null;\n display_name: string | null;\n image_url: string | null;\n about: string | null;\n verified: boolean;\n /** True when the caller holds this Handle as a Contact. */\n is_contact: boolean;\n activity_version?: string;\n activity?: ChatActivity | null;\n}",
686
+ "export interface ChatActivity {\n id: UUID;\n text: string;\n emoji: string | null;\n updated_at: string;\n expires_at: string;\n}",
751
687
  "export interface AgentChatHandle extends ChatHandleBase {\n kind: \"agent\";\n}"
752
688
  ],
753
689
  "requestBody": null,
@@ -775,6 +711,8 @@ export const METHOD_DOCS = [
775
711
  "export interface VoiceMemoAttachment {\n id: UUID;\n url: string;\n filename: string;\n mime_type: string;\n size_bytes: number;\n duration_ms?: number | null;\n /** Pixel width when known. Width and height are supplied together. */\n width?: number | null;\n /** Pixel height when known. Width and height are supplied together. */\n height?: number | null;\n}",
776
712
  "export type ChatHandle = UserChatHandle | AgentChatHandle;",
777
713
  "export interface UserChatHandle extends ChatHandleBase {\n kind: \"user\";\n}",
714
+ "interface ChatHandleBase {\n id: UUID;\n handle: string;\n status?: \"active\" | \"left\" | \"removed\" | null;\n joined_at: string;\n left_at?: string | null;\n is_me?: boolean | null;\n display_name: string | null;\n image_url: string | null;\n about: string | null;\n verified: boolean;\n /** True when the caller holds this Handle as a Contact. */\n is_contact: boolean;\n activity_version?: string;\n activity?: ChatActivity | null;\n}",
715
+ "export interface ChatActivity {\n id: UUID;\n text: string;\n emoji: string | null;\n updated_at: string;\n expires_at: string;\n}",
778
716
  "export interface AgentChatHandle extends ChatHandleBase {\n kind: \"agent\";\n}"
779
717
  ],
780
718
  "requestBody": {
@@ -790,6 +728,39 @@ export const METHOD_DOCS = [
790
728
  "executable": true,
791
729
  "optionsIndex": 2
792
730
  },
731
+ {
732
+ "method": "client.chats.setActivity",
733
+ "signature": "client.chats.setActivity(chatID: string, body: ChatSetActivityParams, options?: RequestOptions): Promise<ChatActivityResponse>",
734
+ "parameters": [
735
+ "chatID: string",
736
+ "body: ChatSetActivityParams",
737
+ "options?: RequestOptions"
738
+ ],
739
+ "httpMethod": "PUT",
740
+ "path": "/v1/chats/{chatId}/activity",
741
+ "operationId": "setActivity",
742
+ "summary": "Set your activity",
743
+ "description": "Set a short description of what the authenticated agent is doing in this chat. Omitting activity_id starts or replaces the activity. Supply the returned activity id to update or renew only that activity; a replaced or cleared id returns 409. Each accepted update increments version and renews the 90-second lease. Renew every 60 seconds while work continues, then clear explicitly. Activity does not create a message, unread count, notification, or change the chat's ordering date.",
744
+ "definitions": [
745
+ "export interface ChatSetActivityParams {\n /** 1–21 visible characters, at most 1024 UTF-8 bytes. */\n text: string;\n /** One Unicode emoji, or null. */\n emoji?: string | null;\n /** Omit to start/replace; supply the current ID to refresh/update. */\n activity_id?: UUID;\n}",
746
+ "export type UUID = string;",
747
+ "export interface RequestOptions {\n signal?: AbortSignal;\n timeout?: number;\n maxRetries?: number;\n headers?: HeadersInit;\n}",
748
+ "export interface ChatActivityResponse {\n chat_id: UUID;\n agent_id: UUID;\n version: string;\n activity: ChatActivity | null;\n}",
749
+ "export interface ChatActivity {\n id: UUID;\n text: string;\n emoji: string | null;\n updated_at: string;\n expires_at: string;\n}"
750
+ ],
751
+ "requestBody": {
752
+ "required": true,
753
+ "content": {
754
+ "application/json": {
755
+ "schema": {
756
+ "$ref": "#/components/schemas/SetActivityRequest"
757
+ }
758
+ }
759
+ }
760
+ },
761
+ "executable": true,
762
+ "optionsIndex": 2
763
+ },
793
764
  {
794
765
  "method": "client.chats.shareContactCard",
795
766
  "signature": "client.chats.shareContactCard(chatID: string, options?: RequestOptions): Promise<void>",
@@ -898,6 +869,8 @@ export const METHOD_DOCS = [
898
869
  "export type UUID = string;",
899
870
  "export type AgentImageRecipe = AgentMonogramImageRecipe | AgentEmojiImageRecipe | AgentPhotoImageRecipe;",
900
871
  "export interface AgentMonogramImageRecipe {\n recipe: { monogram: { initials: string }; emoji?: never; image?: never };\n background: AgentImageBackground;\n}",
872
+ "export interface AgentImageBackground {\n linearGradient: { colors: AgentImageGradient };\n}",
873
+ "export type AgentImageGradient =\n | readonly [\"EC8A3C\", \"C85F1C\"]\n | readonly [\"E0567A\", \"AD2A52\"]\n | readonly [\"D05FC6\", \"93217E\"]\n | readonly [\"8F6CF2\", \"5F38CF\"]\n | readonly [\"5B9BFA\", \"0B52C0\"]\n | readonly [\"2596A6\", \"116A79\"]\n | readonly [\"2FA46A\", \"137347\"];",
901
874
  "export interface AgentEmojiImageRecipe {\n recipe: { emoji: { emoji: string }; monogram?: never; image?: never };\n background: AgentImageBackground;\n}",
902
875
  "export interface AgentPhotoImageRecipe {\n recipe: { image: Record<string, never>; monogram?: never; emoji?: never };\n background?: never;\n}",
903
876
  "export interface RequestOptions {\n signal?: AbortSignal;\n timeout?: number;\n maxRetries?: number;\n headers?: HeadersInit;\n}",
@@ -955,6 +928,8 @@ export const METHOD_DOCS = [
955
928
  "export type UUID = string;",
956
929
  "export type AgentImageRecipe = AgentMonogramImageRecipe | AgentEmojiImageRecipe | AgentPhotoImageRecipe;",
957
930
  "export interface AgentMonogramImageRecipe {\n recipe: { monogram: { initials: string }; emoji?: never; image?: never };\n background: AgentImageBackground;\n}",
931
+ "export interface AgentImageBackground {\n linearGradient: { colors: AgentImageGradient };\n}",
932
+ "export type AgentImageGradient =\n | readonly [\"EC8A3C\", \"C85F1C\"]\n | readonly [\"E0567A\", \"AD2A52\"]\n | readonly [\"D05FC6\", \"93217E\"]\n | readonly [\"8F6CF2\", \"5F38CF\"]\n | readonly [\"5B9BFA\", \"0B52C0\"]\n | readonly [\"2596A6\", \"116A79\"]\n | readonly [\"2FA46A\", \"137347\"];",
958
933
  "export interface AgentEmojiImageRecipe {\n recipe: { emoji: { emoji: string }; monogram?: never; image?: never };\n background: AgentImageBackground;\n}",
959
934
  "export interface AgentPhotoImageRecipe {\n recipe: { image: Record<string, never>; monogram?: never; emoji?: never };\n background?: never;\n}",
960
935
  "export interface RequestOptions {\n signal?: AbortSignal;\n timeout?: number;\n maxRetries?: number;\n headers?: HeadersInit;\n}",
@@ -973,6 +948,72 @@ export const METHOD_DOCS = [
973
948
  "executable": true,
974
949
  "optionsIndex": 1
975
950
  },
951
+ {
952
+ "method": "client.contacts.lookup",
953
+ "signature": "client.contacts.lookup(body: ContactLookupParams, options?: RequestOptions): Promise<ContactLookupResponse>",
954
+ "parameters": [
955
+ "body: ContactLookupParams",
956
+ "options?: RequestOptions"
957
+ ],
958
+ "httpMethod": "POST",
959
+ "path": "/v1/contacts/lookup",
960
+ "operationId": "lookupContact",
961
+ "summary": "Look up a contact by handle or find agents by task",
962
+ "description": "Send a handle to look up one active contact: a person resolves agents; an agent resolves people and agents. Send a task instead to find the public agents whose name, subtitle, about or skills match it, verified agents first; no match is an empty list.",
963
+ "definitions": [
964
+ "export type ContactLookupParams =\n /** Relay Handle, trimmed and lowercased by the Server before validation. */\n | { handle: string }\n /** What you need done, in plain words; at most 200 characters. */\n | { task: string };",
965
+ "export interface RequestOptions {\n signal?: AbortSignal;\n timeout?: number;\n maxRetries?: number;\n headers?: HeadersInit;\n}",
966
+ "export type ContactLookupResponse =\n | { contact: ContactLookup }\n | { contacts: ContactLookup[] };",
967
+ "export interface ContactLookup {\n id: UUID;\n handle: string;\n display_name: string;\n kind: \"user\" | \"agent\";\n image_url: string | null;\n image_color: string | null;\n verified: boolean;\n /** The agent's name. Agents only. */\n name?: string;\n /** The one line under the agent's name. Agents only. */\n subtitle?: string | null;\n /** The agent's paragraph. Agents only. */\n about?: string | null;\n /** Where the directory files the agent. Agents only. */\n category?: AgentCategory | null;\n /** What the agent does, at most ten skills. Agents only. */\n skills?: AgentSkill[];\n /** Whether the agent is listed in the directory. Agents only. */\n visibility?: AgentVisibility;\n}",
968
+ "export type UUID = string;",
969
+ "export type AgentCategory =\n | \"productivity\"\n | \"business\"\n | \"finance\"\n | \"shopping\"\n | \"travel\"\n | \"health-fitness\"\n | \"lifestyle\"\n | \"social\"\n | \"education\"\n | \"entertainment\"\n | \"utilities\"\n | \"developer-tools\";",
970
+ "export interface AgentSkill {\n id: string;\n name: string;\n description: string;\n tags: string[];\n examples: string[];\n}",
971
+ "export type AgentVisibility = \"public\" | \"unlisted\";"
972
+ ],
973
+ "requestBody": {
974
+ "required": true,
975
+ "content": {
976
+ "application/json": {
977
+ "schema": {
978
+ "oneOf": [
979
+ {
980
+ "type": "object",
981
+ "additionalProperties": false,
982
+ "required": [
983
+ "handle"
984
+ ],
985
+ "properties": {
986
+ "handle": {
987
+ "type": "string",
988
+ "minLength": 1,
989
+ "maxLength": 255,
990
+ "description": "Relay Handle, trimmed and lowercased before validation."
991
+ }
992
+ }
993
+ },
994
+ {
995
+ "type": "object",
996
+ "additionalProperties": false,
997
+ "required": [
998
+ "task"
999
+ ],
1000
+ "properties": {
1001
+ "task": {
1002
+ "type": "string",
1003
+ "minLength": 1,
1004
+ "maxLength": 200,
1005
+ "description": "What you need done, in plain words."
1006
+ }
1007
+ }
1008
+ }
1009
+ ]
1010
+ }
1011
+ }
1012
+ }
1013
+ },
1014
+ "executable": true,
1015
+ "optionsIndex": 1
1016
+ },
976
1017
  {
977
1018
  "method": "client.messages.addReaction",
978
1019
  "signature": "client.messages.addReaction(messageID: string, body: MessageAddReactionParams, options?: RequestOptions): Promise<MessageAddReactionResponse>",
@@ -985,7 +1026,7 @@ export const METHOD_DOCS = [
985
1026
  "path": "/v1/messages/{messageId}/reactions",
986
1027
  "operationId": "sendReaction",
987
1028
  "summary": "Add or remove a reaction to a message",
988
- "description": "Add or remove a reaction on one Message part.",
1029
+ "description": "Add or remove a reaction on one Message part. Targeting a `buttons`, `selection`, or `selection_response` part returns 422. Only a person can react to an `invoice` part; an agent gets 403 (error code `2003`).",
989
1030
  "definitions": [
990
1031
  "export interface MessageAddReactionParams {\n operation: \"add\" | \"remove\";\n type: ReactionType;\n custom_emoji?: string;\n part_index?: number;\n}",
991
1032
  "export type ReactionType =\n | \"love\"\n | \"like\"\n | \"dislike\"\n | \"laugh\"\n | \"emphasize\"\n | \"question\"\n | \"custom\";",
@@ -1021,34 +1062,123 @@ export const METHOD_DOCS = [
1021
1062
  "definitions": [
1022
1063
  "export interface MessageCreateParams {\n to: string[];\n message: MessageContent;\n \"Idempotency-Key\"?: string;\n}",
1023
1064
  "export interface MessageContent {\n parts: MessagePart[];\n reply_to?: ReplyTo;\n idempotency_key?: string;\n /**\n * Send the Message with no banner and no sound on the recipient's device.\n * The Message still arrives, still counts as unread, and still moves the\n * Chat to the top of the list. Defaults to `false`.\n */\n silent?: boolean;\n}",
1024
- "export type MessagePart = TextPart | MediaPart | LinkPart;",
1065
+ "export type MessagePart =\n | TextPart\n | MediaPart\n | LinkPart\n | ButtonsPart\n | SelectionPart\n | SelectionResponsePart\n | InvoicePart;",
1066
+ "export interface TextPart {\n type: \"text\";\n value: string;\n mention?: string | null;\n mention_range?: [number, number] | null;\n}",
1067
+ "export interface MediaPart {\n type: \"media\";\n url?: string;\n attachment_id?: UUID;\n}",
1068
+ "export type UUID = string;",
1069
+ "export interface LinkPart {\n type: \"link\";\n value: string;\n}",
1070
+ "export interface ButtonsPart {\n type: \"buttons\";\n items: ButtonItem[];\n}",
1071
+ "export interface ButtonItem {\n /** Link button: the tap opens this HTTPS URL instead of sending the label. */\n url?: string;\n /** The button's visible text, 1 to 80 characters, and what a tap sends. */\n label: string;\n}",
1072
+ "export interface SelectionPart {\n type: \"selection\";\n /** The text is the prompt's title; the person checks any number of options and submits them once, and checking sends nothing. */\n options: SelectionOption[];\n}",
1073
+ "export interface SelectionOption {\n /** Unique case-sensitive ASCII token, 1–100 characters. Never derived from label. */\n value: string;\n /** Trimmed visible label, 1–80 characters. */\n label: string;\n}",
1074
+ "export interface SelectionResponsePart {\n type: \"selection_response\";\n /**\n * Unique known values, nonempty and in source-option order, authoritative with\n * reply_to. New preceding text is literal '• ' + each source label joined with\n * '\\n'. The server accepts exact legacy comma-joined labels for compatibility\n * only, never arbitrary label parsing. iOS may draw a checkmark in place of\n * each bullet and repeat the prompt's title, as presentation only; portable\n * text remains bullets.\n */\n selected_values: string[];\n}",
1075
+ "export interface InvoicePart {\n type: \"invoice\";\n /** Trimmed, 1–32 characters (Telegram sendInvoice). */\n title: string;\n /** Minor units, 1..99,999,999 (Stripe's max). */\n amount: number;\n /** 3-letter ISO code, sent in either case, always returned lowercase. */\n currency: string;\n goods: InvoiceGoods;\n /** The developer's own Stripe checkout link on checkout, buy, book, donate or invoice.stripe.com; at most 2048 characters. */\n url: string;\n /** Omit for a one-time charge. */\n recurring?: InvoiceRecurring;\n}",
1076
+ "export type InvoiceGoods = \"physical\" | \"digital\";",
1077
+ "export interface InvoiceRecurring {\n interval: \"day\" | \"week\" | \"month\" | \"year\";\n /** Defaults to 1. Total span is capped at 3 years (1095 days / 156 weeks / 36 months / 3 years). */\n interval_count?: number;\n}",
1025
1078
  "export interface ReplyTo {\n message_id: UUID;\n part_index?: number;\n}",
1026
1079
  "export interface Message {\n id: UUID;\n chat_id: UUID;\n from?: string | null;\n from_handle?: ChatHandle | null;\n parts?: MessagePartResponse[] | null;\n reply_to?: ReplyTo | null;\n is_system_message: boolean;\n system_event?: SystemEvent | null;\n is_from_me: boolean;\n delivery_status: DeliveryStatus;\n created_at: string;\n updated_at: string;\n sent_at?: string | null;\n delivered_at?: string | null;\n read_at?: string | null;\n /** When the Message was last edited, or null if it was never edited. */\n edited_at?: string | null;\n /**\n * When the sender unsent the Message, or null. An unsent Message keeps its\n * place in the transcript and carries no parts.\n */\n unsent_at?: string | null;\n /**\n * Whether the sender sent this Message silently, so the recipient's device\n * showed no banner and played no sound.\n */\n silent?: boolean;\n deliveries?: MessageDelivery[];\n}",
1080
+ "export type ChatHandle = UserChatHandle | AgentChatHandle;",
1081
+ "export interface UserChatHandle extends ChatHandleBase {\n kind: \"user\";\n}",
1082
+ "export interface AgentChatHandle extends ChatHandleBase {\n kind: \"agent\";\n}",
1083
+ "export type MessagePartResponse =\n | TextPartResponse\n | MediaPartResponse\n | LinkPartResponse\n | ButtonsPartResponse\n | SelectionPartResponse\n | SelectionResponsePartResponse\n | InvoicePartResponse\n | SystemPartResponse;",
1084
+ "export interface TextPartResponse extends TextPart {\n mentions?: Array<{\n id: string;\n handle: string;\n is_me: boolean;\n range: [number, number];\n }> | null;\n /** @deprecated Use mentions instead. */\n mention?: string | null;\n /** @deprecated Use mentions instead. */\n mention_range?: [number, number] | null;\n reactions: Reaction[] | null;\n}",
1085
+ "export interface MediaPartResponse {\n type: \"media\";\n id: UUID;\n url: string;\n filename: string;\n mime_type: string;\n size_bytes: number;\n duration_ms?: number | null;\n width?: number | null;\n height?: number | null;\n reactions: Reaction[] | null;\n}",
1086
+ "export interface LinkPartResponse extends LinkPart {\n reactions: Reaction[] | null;\n}",
1087
+ "export interface ButtonsPartResponse extends ButtonsPart {\n reactions: Reaction[] | null;\n}",
1088
+ "export interface SelectionPartResponse extends SelectionPart {\n /** Durable response state for this viewer across devices. Existing Chat rules allow at most one human user; only that user can respond, once; reopening an answered selection shows what they chose without letting them change it. */\n readonly has_responded: boolean;\n /** The values the authenticated viewer chose, in source-option order, identical on every one of that user's devices; null until the viewer answers, when the answer Message no longer exists, and always for an agent viewer. */\n readonly selected_values: string[] | null;\n reactions: null;\n}",
1089
+ "export interface SelectionResponsePartResponse extends SelectionResponsePart {}",
1090
+ "export interface InvoicePartResponse extends InvoicePart {\n recurring?: Required<InvoiceRecurring>;\n /** Defaults to \"requested\". Only the sending agent's own status PUT changes it. */\n status: InvoiceStatus;\n reactions: Reaction[] | null;\n}",
1091
+ "export interface SystemPartResponse {\n type: \"system\";\n value: string;\n reactions: null;\n}",
1092
+ "export interface SystemEvent {\n type: SystemEventType;\n actor: SystemEventParty;\n subject: SystemEventParty | null;\n value: string | null;\n icon_attachment_id: UUID | null;\n contact_card: ContactCardItem | null;\n call: CallMarker | null;\n}",
1093
+ "export type SystemEventType =\n | \"chat_created\"\n | \"participant_added\"\n | \"participant_removed\"\n | \"group_name_updated\"\n | \"group_icon_updated\"\n | \"contact_card_shared\"\n | \"call\";",
1094
+ "export interface SystemEventParty {\n id: UUID;\n handle: string;\n kind: \"user\" | \"agent\";\n}",
1095
+ "export interface ContactCardItem {\n handle: string;\n first_name: string;\n last_name: string | null;\n image_url: string | null;\n is_active: boolean;\n kind: \"user\" | \"agent\";\n}",
1096
+ "export interface CallMarker {\n id: UUID;\n status: Call[\"status\"];\n answered_at: string | null;\n ended_at: string | null;\n from: CallContact;\n to: [CallContact];\n duration_seconds: number | null;\n}",
1097
+ "export type DeliveryStatus =\n | \"sent\"\n | \"delivered\"\n | \"read\";",
1098
+ "export interface MessageDelivery {\n contact: ChatHandle;\n delivered_at: string | null;\n read_at: string | null;\n}",
1027
1099
  "export interface Chat {\n id: UUID;\n display_name: string | null;\n group_chat_icon?: string | null;\n handles: ChatHandle[];\n is_group: boolean;\n /**\n * The caller's side of a message request on this Chat: `pending` while a\n * sender with no Contact edge to the caller wrote to them and they have not\n * answered, `accepted` or `deleted` once they have. Absent when the caller\n * was never asked; an agent never is.\n */\n created_at: string;\n updated_at: string;\n}",
1028
1100
  "export interface RequestOptions {\n signal?: AbortSignal;\n timeout?: number;\n maxRetries?: number;\n headers?: HeadersInit;\n}",
1029
1101
  "export interface MessageCreateResponse {\n from: string;\n chat_id: UUID;\n created_new_chat: boolean;\n is_group: boolean;\n handles: ChatHandle[];\n message: SentMessage;\n}",
1102
+ "export interface SentMessage {\n id: UUID;\n parts: Array<\n | TextPartResponse\n | MediaPartResponse\n | LinkPartResponse\n | ButtonsPartResponse\n | SelectionPartResponse\n | SelectionResponsePartResponse\n | InvoicePartResponse\n >;\n created_at: string;\n sent_at: string | null;\n delivered_at?: string | null;\n delivery_status: DeliveryStatus;\n from_handle?: ChatHandle | null;\n reply_to?: ReplyTo | null;\n /**\n * Whether the sender sent this Message silently, so the recipient's device\n * showed no banner and played no sound.\n */\n silent?: boolean;\n is_system_message: false;\n}"
1103
+ ],
1104
+ "requestBody": {
1105
+ "required": true,
1106
+ "content": {
1107
+ "application/json": {
1108
+ "schema": {
1109
+ "$ref": "#/components/schemas/SendMessageRequest"
1110
+ }
1111
+ }
1112
+ }
1113
+ },
1114
+ "executable": true,
1115
+ "optionsIndex": 1
1116
+ },
1117
+ {
1118
+ "method": "client.messages.invoice.update",
1119
+ "signature": "client.messages.invoice.update(messageID: string, body: MessageInvoiceUpdateParams, options?: RequestOptions): Promise<MessageInvoiceUpdateResponse>",
1120
+ "parameters": [
1121
+ "messageID: string",
1122
+ "body: MessageInvoiceUpdateParams",
1123
+ "options?: RequestOptions"
1124
+ ],
1125
+ "httpMethod": "PUT",
1126
+ "path": "/v1/messages/{messageId}/invoice",
1127
+ "operationId": "updateInvoiceStatus",
1128
+ "summary": "Update an invoice's status",
1129
+ "description": "Move an `invoice` part's status. Only the agent that sent the Message may call this — the card turns itself into the new status in place. Any status to any status is allowed. Setting the current status is a no-op that still returns 200; a real change pushes `message.upserted` to every person in the chat and raises no webhook, since the agent authored the change itself.",
1130
+ "definitions": [
1131
+ "export interface MessageInvoiceUpdateParams {\n status: InvoiceStatus;\n}",
1132
+ "export type InvoiceStatus = \"requested\" | \"succeeded\" | \"canceled\" | \"expired\" | \"refunded\";",
1133
+ "export interface RequestOptions {\n signal?: AbortSignal;\n timeout?: number;\n maxRetries?: number;\n headers?: HeadersInit;\n}",
1134
+ "export interface MessageInvoiceUpdateResponse {\n message: Message;\n}",
1135
+ "export interface Message {\n id: UUID;\n chat_id: UUID;\n from?: string | null;\n from_handle?: ChatHandle | null;\n parts?: MessagePartResponse[] | null;\n reply_to?: ReplyTo | null;\n is_system_message: boolean;\n system_event?: SystemEvent | null;\n is_from_me: boolean;\n delivery_status: DeliveryStatus;\n created_at: string;\n updated_at: string;\n sent_at?: string | null;\n delivered_at?: string | null;\n read_at?: string | null;\n /** When the Message was last edited, or null if it was never edited. */\n edited_at?: string | null;\n /**\n * When the sender unsent the Message, or null. An unsent Message keeps its\n * place in the transcript and carries no parts.\n */\n unsent_at?: string | null;\n /**\n * Whether the sender sent this Message silently, so the recipient's device\n * showed no banner and played no sound.\n */\n silent?: boolean;\n deliveries?: MessageDelivery[];\n}",
1030
1136
  "export type UUID = string;",
1031
1137
  "export type ChatHandle = UserChatHandle | AgentChatHandle;",
1032
1138
  "export interface UserChatHandle extends ChatHandleBase {\n kind: \"user\";\n}",
1139
+ "interface ChatHandleBase {\n id: UUID;\n handle: string;\n status?: \"active\" | \"left\" | \"removed\" | null;\n joined_at: string;\n left_at?: string | null;\n is_me?: boolean | null;\n display_name: string | null;\n image_url: string | null;\n about: string | null;\n verified: boolean;\n /** True when the caller holds this Handle as a Contact. */\n is_contact: boolean;\n activity_version?: string;\n activity?: ChatActivity | null;\n}",
1033
1140
  "export interface AgentChatHandle extends ChatHandleBase {\n kind: \"agent\";\n}",
1034
- "export interface SentMessage {\n id: UUID;\n parts: Array<TextPartResponse | MediaPartResponse | LinkPartResponse>;\n created_at: string;\n sent_at: string | null;\n delivered_at?: string | null;\n delivery_status: DeliveryStatus;\n from_handle?: ChatHandle | null;\n reply_to?: ReplyTo | null;\n /**\n * Whether the sender sent this Message silently, so the recipient's device\n * showed no banner and played no sound.\n */\n silent?: boolean;\n is_system_message: false;\n}",
1141
+ "export type MessagePartResponse =\n | TextPartResponse\n | MediaPartResponse\n | LinkPartResponse\n | ButtonsPartResponse\n | SelectionPartResponse\n | SelectionResponsePartResponse\n | InvoicePartResponse\n | SystemPartResponse;",
1035
1142
  "export interface TextPartResponse extends TextPart {\n mentions?: Array<{\n id: string;\n handle: string;\n is_me: boolean;\n range: [number, number];\n }> | null;\n /** @deprecated Use mentions instead. */\n mention?: string | null;\n /** @deprecated Use mentions instead. */\n mention_range?: [number, number] | null;\n reactions: Reaction[] | null;\n}",
1143
+ "export interface TextPart {\n type: \"text\";\n value: string;\n mention?: string | null;\n mention_range?: [number, number] | null;\n}",
1144
+ "export interface Reaction {\n is_me: boolean;\n handle: ChatHandle;\n type: ReactionType;\n custom_emoji?: string | null;\n}",
1036
1145
  "export interface MediaPartResponse {\n type: \"media\";\n id: UUID;\n url: string;\n filename: string;\n mime_type: string;\n size_bytes: number;\n duration_ms?: number | null;\n width?: number | null;\n height?: number | null;\n reactions: Reaction[] | null;\n}",
1037
1146
  "export interface LinkPartResponse extends LinkPart {\n reactions: Reaction[] | null;\n}",
1038
- "export type DeliveryStatus =\n | \"sent\"\n | \"delivered\"\n | \"read\";"
1147
+ "export interface LinkPart {\n type: \"link\";\n value: string;\n}",
1148
+ "export interface ButtonsPartResponse extends ButtonsPart {\n reactions: Reaction[] | null;\n}",
1149
+ "export interface ButtonsPart {\n type: \"buttons\";\n items: ButtonItem[];\n}",
1150
+ "export interface SelectionPartResponse extends SelectionPart {\n /** Durable response state for this viewer across devices. Existing Chat rules allow at most one human user; only that user can respond, once; reopening an answered selection shows what they chose without letting them change it. */\n readonly has_responded: boolean;\n /** The values the authenticated viewer chose, in source-option order, identical on every one of that user's devices; null until the viewer answers, when the answer Message no longer exists, and always for an agent viewer. */\n readonly selected_values: string[] | null;\n reactions: null;\n}",
1151
+ "export interface SelectionPart {\n type: \"selection\";\n /** The text is the prompt's title; the person checks any number of options and submits them once, and checking sends nothing. */\n options: SelectionOption[];\n}",
1152
+ "export interface Chat {\n id: UUID;\n display_name: string | null;\n group_chat_icon?: string | null;\n handles: ChatHandle[];\n is_group: boolean;\n /**\n * The caller's side of a message request on this Chat: `pending` while a\n * sender with no Contact edge to the caller wrote to them and they have not\n * answered, `accepted` or `deleted` once they have. Absent when the caller\n * was never asked; an agent never is.\n */\n created_at: string;\n updated_at: string;\n}",
1153
+ "export interface SelectionResponsePartResponse extends SelectionResponsePart {}",
1154
+ "export interface SelectionResponsePart {\n type: \"selection_response\";\n /**\n * Unique known values, nonempty and in source-option order, authoritative with\n * reply_to. New preceding text is literal '• ' + each source label joined with\n * '\\n'. The server accepts exact legacy comma-joined labels for compatibility\n * only, never arbitrary label parsing. iOS may draw a checkmark in place of\n * each bullet and repeat the prompt's title, as presentation only; portable\n * text remains bullets.\n */\n selected_values: string[];\n}",
1155
+ "export interface InvoicePartResponse extends InvoicePart {\n recurring?: Required<InvoiceRecurring>;\n /** Defaults to \"requested\". Only the sending agent's own status PUT changes it. */\n status: InvoiceStatus;\n reactions: Reaction[] | null;\n}",
1156
+ "export interface InvoicePart {\n type: \"invoice\";\n /** Trimmed, 1–32 characters (Telegram sendInvoice). */\n title: string;\n /** Minor units, 1..99,999,999 (Stripe's max). */\n amount: number;\n /** 3-letter ISO code, sent in either case, always returned lowercase. */\n currency: string;\n goods: InvoiceGoods;\n /** The developer's own Stripe checkout link on checkout, buy, book, donate or invoice.stripe.com; at most 2048 characters. */\n url: string;\n /** Omit for a one-time charge. */\n recurring?: InvoiceRecurring;\n}",
1157
+ "export interface InvoiceRecurring {\n interval: \"day\" | \"week\" | \"month\" | \"year\";\n /** Defaults to 1. Total span is capped at 3 years (1095 days / 156 weeks / 36 months / 3 years). */\n interval_count?: number;\n}",
1158
+ "export interface SystemPartResponse {\n type: \"system\";\n value: string;\n reactions: null;\n}",
1159
+ "export interface ReplyTo {\n message_id: UUID;\n part_index?: number;\n}",
1160
+ "export interface SystemEvent {\n type: SystemEventType;\n actor: SystemEventParty;\n subject: SystemEventParty | null;\n value: string | null;\n icon_attachment_id: UUID | null;\n contact_card: ContactCardItem | null;\n call: CallMarker | null;\n}",
1161
+ "export type SystemEventType =\n | \"chat_created\"\n | \"participant_added\"\n | \"participant_removed\"\n | \"group_name_updated\"\n | \"group_icon_updated\"\n | \"contact_card_shared\"\n | \"call\";",
1162
+ "export interface SystemEventParty {\n id: UUID;\n handle: string;\n kind: \"user\" | \"agent\";\n}",
1163
+ "export interface ContactCardItem {\n handle: string;\n first_name: string;\n last_name: string | null;\n image_url: string | null;\n is_active: boolean;\n kind: \"user\" | \"agent\";\n}",
1164
+ "export interface CallMarker {\n id: UUID;\n status: Call[\"status\"];\n answered_at: string | null;\n ended_at: string | null;\n from: CallContact;\n to: [CallContact];\n duration_seconds: number | null;\n}",
1165
+ "export interface Call {\n id: UUID;\n chat_id: UUID;\n from: CallContact;\n to: [CallContact];\n /** `ringing` and `in-progress` are live. Terminal states set `ended_at`. */\n status: \"ringing\" | \"in-progress\" | CallTerminalStatus;\n revision: number;\n created_at: string;\n ringing_at: string;\n answered_at: string | null;\n ended_at: string | null;\n}",
1166
+ "export interface CallContact {\n id: UUID;\n handle: string;\n kind: \"user\" | \"agent\";\n}",
1167
+ "export type DeliveryStatus =\n | \"sent\"\n | \"delivered\"\n | \"read\";",
1168
+ "export interface MessageDelivery {\n contact: ChatHandle;\n delivered_at: string | null;\n read_at: string | null;\n}"
1039
1169
  ],
1040
1170
  "requestBody": {
1041
1171
  "required": true,
1042
1172
  "content": {
1043
1173
  "application/json": {
1044
1174
  "schema": {
1045
- "$ref": "#/components/schemas/SendMessageRequest"
1175
+ "$ref": "#/components/schemas/UpdateInvoiceStatusRequest"
1046
1176
  }
1047
1177
  }
1048
1178
  }
1049
1179
  },
1050
1180
  "executable": true,
1051
- "optionsIndex": 1
1181
+ "optionsIndex": 2
1052
1182
  },
1053
1183
  {
1054
1184
  "method": "client.messages.listMessagesThread",
@@ -1071,17 +1201,41 @@ export const METHOD_DOCS = [
1071
1201
  "export type UUID = string;",
1072
1202
  "export type ChatHandle = UserChatHandle | AgentChatHandle;",
1073
1203
  "export interface UserChatHandle extends ChatHandleBase {\n kind: \"user\";\n}",
1204
+ "interface ChatHandleBase {\n id: UUID;\n handle: string;\n status?: \"active\" | \"left\" | \"removed\" | null;\n joined_at: string;\n left_at?: string | null;\n is_me?: boolean | null;\n display_name: string | null;\n image_url: string | null;\n about: string | null;\n verified: boolean;\n /** True when the caller holds this Handle as a Contact. */\n is_contact: boolean;\n activity_version?: string;\n activity?: ChatActivity | null;\n}",
1205
+ "export interface ChatActivity {\n id: UUID;\n text: string;\n emoji: string | null;\n updated_at: string;\n expires_at: string;\n}",
1074
1206
  "export interface AgentChatHandle extends ChatHandleBase {\n kind: \"agent\";\n}",
1075
- "export type MessagePartResponse =\n | TextPartResponse\n | MediaPartResponse\n | LinkPartResponse\n | SystemPartResponse;",
1207
+ "export type MessagePartResponse =\n | TextPartResponse\n | MediaPartResponse\n | LinkPartResponse\n | ButtonsPartResponse\n | SelectionPartResponse\n | SelectionResponsePartResponse\n | InvoicePartResponse\n | SystemPartResponse;",
1076
1208
  "export interface TextPartResponse extends TextPart {\n mentions?: Array<{\n id: string;\n handle: string;\n is_me: boolean;\n range: [number, number];\n }> | null;\n /** @deprecated Use mentions instead. */\n mention?: string | null;\n /** @deprecated Use mentions instead. */\n mention_range?: [number, number] | null;\n reactions: Reaction[] | null;\n}",
1209
+ "export interface TextPart {\n type: \"text\";\n value: string;\n mention?: string | null;\n mention_range?: [number, number] | null;\n}",
1210
+ "export interface Reaction {\n is_me: boolean;\n handle: ChatHandle;\n type: ReactionType;\n custom_emoji?: string | null;\n}",
1211
+ "export type ReactionType =\n | \"love\"\n | \"like\"\n | \"dislike\"\n | \"laugh\"\n | \"emphasize\"\n | \"question\"\n | \"custom\";",
1077
1212
  "export interface MediaPartResponse {\n type: \"media\";\n id: UUID;\n url: string;\n filename: string;\n mime_type: string;\n size_bytes: number;\n duration_ms?: number | null;\n width?: number | null;\n height?: number | null;\n reactions: Reaction[] | null;\n}",
1078
1213
  "export interface LinkPartResponse extends LinkPart {\n reactions: Reaction[] | null;\n}",
1214
+ "export interface LinkPart {\n type: \"link\";\n value: string;\n}",
1215
+ "export interface ButtonsPartResponse extends ButtonsPart {\n reactions: Reaction[] | null;\n}",
1216
+ "export interface ButtonsPart {\n type: \"buttons\";\n items: ButtonItem[];\n}",
1217
+ "export interface ButtonItem {\n /** Link button: the tap opens this HTTPS URL instead of sending the label. */\n url?: string;\n /** The button's visible text, 1 to 80 characters, and what a tap sends. */\n label: string;\n}",
1218
+ "export interface SelectionPartResponse extends SelectionPart {\n /** Durable response state for this viewer across devices. Existing Chat rules allow at most one human user; only that user can respond, once; reopening an answered selection shows what they chose without letting them change it. */\n readonly has_responded: boolean;\n /** The values the authenticated viewer chose, in source-option order, identical on every one of that user's devices; null until the viewer answers, when the answer Message no longer exists, and always for an agent viewer. */\n readonly selected_values: string[] | null;\n reactions: null;\n}",
1219
+ "export interface SelectionPart {\n type: \"selection\";\n /** The text is the prompt's title; the person checks any number of options and submits them once, and checking sends nothing. */\n options: SelectionOption[];\n}",
1220
+ "export interface SelectionOption {\n /** Unique case-sensitive ASCII token, 1–100 characters. Never derived from label. */\n value: string;\n /** Trimmed visible label, 1–80 characters. */\n label: string;\n}",
1221
+ "export interface Chat {\n id: UUID;\n display_name: string | null;\n group_chat_icon?: string | null;\n handles: ChatHandle[];\n is_group: boolean;\n /**\n * The caller's side of a message request on this Chat: `pending` while a\n * sender with no Contact edge to the caller wrote to them and they have not\n * answered, `accepted` or `deleted` once they have. Absent when the caller\n * was never asked; an agent never is.\n */\n created_at: string;\n updated_at: string;\n}",
1222
+ "export interface SelectionResponsePartResponse extends SelectionResponsePart {}",
1223
+ "export interface SelectionResponsePart {\n type: \"selection_response\";\n /**\n * Unique known values, nonempty and in source-option order, authoritative with\n * reply_to. New preceding text is literal '• ' + each source label joined with\n * '\\n'. The server accepts exact legacy comma-joined labels for compatibility\n * only, never arbitrary label parsing. iOS may draw a checkmark in place of\n * each bullet and repeat the prompt's title, as presentation only; portable\n * text remains bullets.\n */\n selected_values: string[];\n}",
1224
+ "export interface InvoicePartResponse extends InvoicePart {\n recurring?: Required<InvoiceRecurring>;\n /** Defaults to \"requested\". Only the sending agent's own status PUT changes it. */\n status: InvoiceStatus;\n reactions: Reaction[] | null;\n}",
1225
+ "export interface InvoicePart {\n type: \"invoice\";\n /** Trimmed, 1–32 characters (Telegram sendInvoice). */\n title: string;\n /** Minor units, 1..99,999,999 (Stripe's max). */\n amount: number;\n /** 3-letter ISO code, sent in either case, always returned lowercase. */\n currency: string;\n goods: InvoiceGoods;\n /** The developer's own Stripe checkout link on checkout, buy, book, donate or invoice.stripe.com; at most 2048 characters. */\n url: string;\n /** Omit for a one-time charge. */\n recurring?: InvoiceRecurring;\n}",
1226
+ "export type InvoiceGoods = \"physical\" | \"digital\";",
1227
+ "export interface InvoiceRecurring {\n interval: \"day\" | \"week\" | \"month\" | \"year\";\n /** Defaults to 1. Total span is capped at 3 years (1095 days / 156 weeks / 36 months / 3 years). */\n interval_count?: number;\n}",
1228
+ "export type InvoiceStatus = \"requested\" | \"succeeded\" | \"canceled\" | \"expired\" | \"refunded\";",
1079
1229
  "export interface SystemPartResponse {\n type: \"system\";\n value: string;\n reactions: null;\n}",
1080
1230
  "export interface ReplyTo {\n message_id: UUID;\n part_index?: number;\n}",
1081
- "export interface SystemEvent {\n type: SystemEventType;\n actor: SystemEventParty;\n subject: SystemEventParty | null;\n value: string | null;\n icon_attachment_id: UUID | null;\n contact_card: ContactCardItem | null;\n}",
1082
- "export type SystemEventType =\n | \"chat_created\"\n | \"participant_added\"\n | \"participant_removed\"\n | \"group_name_updated\"\n | \"group_icon_updated\"\n | \"contact_card_shared\";",
1231
+ "export interface SystemEvent {\n type: SystemEventType;\n actor: SystemEventParty;\n subject: SystemEventParty | null;\n value: string | null;\n icon_attachment_id: UUID | null;\n contact_card: ContactCardItem | null;\n call: CallMarker | null;\n}",
1232
+ "export type SystemEventType =\n | \"chat_created\"\n | \"participant_added\"\n | \"participant_removed\"\n | \"group_name_updated\"\n | \"group_icon_updated\"\n | \"contact_card_shared\"\n | \"call\";",
1083
1233
  "export interface SystemEventParty {\n id: UUID;\n handle: string;\n kind: \"user\" | \"agent\";\n}",
1084
1234
  "export interface ContactCardItem {\n handle: string;\n first_name: string;\n last_name: string | null;\n image_url: string | null;\n is_active: boolean;\n kind: \"user\" | \"agent\";\n}",
1235
+ "export interface CallMarker {\n id: UUID;\n status: Call[\"status\"];\n answered_at: string | null;\n ended_at: string | null;\n from: CallContact;\n to: [CallContact];\n duration_seconds: number | null;\n}",
1236
+ "export interface Call {\n id: UUID;\n chat_id: UUID;\n from: CallContact;\n to: [CallContact];\n /** `ringing` and `in-progress` are live. Terminal states set `ended_at`. */\n status: \"ringing\" | \"in-progress\" | CallTerminalStatus;\n revision: number;\n created_at: string;\n ringing_at: string;\n answered_at: string | null;\n ended_at: string | null;\n}",
1237
+ "export interface CallContact {\n id: UUID;\n handle: string;\n kind: \"user\" | \"agent\";\n}",
1238
+ "export type CallTerminalStatus =\n | \"completed\"\n | \"no-answer\"\n | \"canceled\"\n | \"busy\"\n | \"failed\";",
1085
1239
  "export type DeliveryStatus =\n | \"sent\"\n | \"delivered\"\n | \"read\";",
1086
1240
  "export interface MessageDelivery {\n contact: ChatHandle;\n delivered_at: string | null;\n read_at: string | null;\n}"
1087
1241
  ],
@@ -1107,17 +1261,41 @@ export const METHOD_DOCS = [
1107
1261
  "export type UUID = string;",
1108
1262
  "export type ChatHandle = UserChatHandle | AgentChatHandle;",
1109
1263
  "export interface UserChatHandle extends ChatHandleBase {\n kind: \"user\";\n}",
1264
+ "interface ChatHandleBase {\n id: UUID;\n handle: string;\n status?: \"active\" | \"left\" | \"removed\" | null;\n joined_at: string;\n left_at?: string | null;\n is_me?: boolean | null;\n display_name: string | null;\n image_url: string | null;\n about: string | null;\n verified: boolean;\n /** True when the caller holds this Handle as a Contact. */\n is_contact: boolean;\n activity_version?: string;\n activity?: ChatActivity | null;\n}",
1265
+ "export interface ChatActivity {\n id: UUID;\n text: string;\n emoji: string | null;\n updated_at: string;\n expires_at: string;\n}",
1110
1266
  "export interface AgentChatHandle extends ChatHandleBase {\n kind: \"agent\";\n}",
1111
- "export type MessagePartResponse =\n | TextPartResponse\n | MediaPartResponse\n | LinkPartResponse\n | SystemPartResponse;",
1267
+ "export type MessagePartResponse =\n | TextPartResponse\n | MediaPartResponse\n | LinkPartResponse\n | ButtonsPartResponse\n | SelectionPartResponse\n | SelectionResponsePartResponse\n | InvoicePartResponse\n | SystemPartResponse;",
1112
1268
  "export interface TextPartResponse extends TextPart {\n mentions?: Array<{\n id: string;\n handle: string;\n is_me: boolean;\n range: [number, number];\n }> | null;\n /** @deprecated Use mentions instead. */\n mention?: string | null;\n /** @deprecated Use mentions instead. */\n mention_range?: [number, number] | null;\n reactions: Reaction[] | null;\n}",
1269
+ "export interface TextPart {\n type: \"text\";\n value: string;\n mention?: string | null;\n mention_range?: [number, number] | null;\n}",
1270
+ "export interface Reaction {\n is_me: boolean;\n handle: ChatHandle;\n type: ReactionType;\n custom_emoji?: string | null;\n}",
1271
+ "export type ReactionType =\n | \"love\"\n | \"like\"\n | \"dislike\"\n | \"laugh\"\n | \"emphasize\"\n | \"question\"\n | \"custom\";",
1113
1272
  "export interface MediaPartResponse {\n type: \"media\";\n id: UUID;\n url: string;\n filename: string;\n mime_type: string;\n size_bytes: number;\n duration_ms?: number | null;\n width?: number | null;\n height?: number | null;\n reactions: Reaction[] | null;\n}",
1114
1273
  "export interface LinkPartResponse extends LinkPart {\n reactions: Reaction[] | null;\n}",
1274
+ "export interface LinkPart {\n type: \"link\";\n value: string;\n}",
1275
+ "export interface ButtonsPartResponse extends ButtonsPart {\n reactions: Reaction[] | null;\n}",
1276
+ "export interface ButtonsPart {\n type: \"buttons\";\n items: ButtonItem[];\n}",
1277
+ "export interface ButtonItem {\n /** Link button: the tap opens this HTTPS URL instead of sending the label. */\n url?: string;\n /** The button's visible text, 1 to 80 characters, and what a tap sends. */\n label: string;\n}",
1278
+ "export interface SelectionPartResponse extends SelectionPart {\n /** Durable response state for this viewer across devices. Existing Chat rules allow at most one human user; only that user can respond, once; reopening an answered selection shows what they chose without letting them change it. */\n readonly has_responded: boolean;\n /** The values the authenticated viewer chose, in source-option order, identical on every one of that user's devices; null until the viewer answers, when the answer Message no longer exists, and always for an agent viewer. */\n readonly selected_values: string[] | null;\n reactions: null;\n}",
1279
+ "export interface SelectionPart {\n type: \"selection\";\n /** The text is the prompt's title; the person checks any number of options and submits them once, and checking sends nothing. */\n options: SelectionOption[];\n}",
1280
+ "export interface SelectionOption {\n /** Unique case-sensitive ASCII token, 1–100 characters. Never derived from label. */\n value: string;\n /** Trimmed visible label, 1–80 characters. */\n label: string;\n}",
1281
+ "export interface Chat {\n id: UUID;\n display_name: string | null;\n group_chat_icon?: string | null;\n handles: ChatHandle[];\n is_group: boolean;\n /**\n * The caller's side of a message request on this Chat: `pending` while a\n * sender with no Contact edge to the caller wrote to them and they have not\n * answered, `accepted` or `deleted` once they have. Absent when the caller\n * was never asked; an agent never is.\n */\n created_at: string;\n updated_at: string;\n}",
1282
+ "export interface SelectionResponsePartResponse extends SelectionResponsePart {}",
1283
+ "export interface SelectionResponsePart {\n type: \"selection_response\";\n /**\n * Unique known values, nonempty and in source-option order, authoritative with\n * reply_to. New preceding text is literal '• ' + each source label joined with\n * '\\n'. The server accepts exact legacy comma-joined labels for compatibility\n * only, never arbitrary label parsing. iOS may draw a checkmark in place of\n * each bullet and repeat the prompt's title, as presentation only; portable\n * text remains bullets.\n */\n selected_values: string[];\n}",
1284
+ "export interface InvoicePartResponse extends InvoicePart {\n recurring?: Required<InvoiceRecurring>;\n /** Defaults to \"requested\". Only the sending agent's own status PUT changes it. */\n status: InvoiceStatus;\n reactions: Reaction[] | null;\n}",
1285
+ "export interface InvoicePart {\n type: \"invoice\";\n /** Trimmed, 1–32 characters (Telegram sendInvoice). */\n title: string;\n /** Minor units, 1..99,999,999 (Stripe's max). */\n amount: number;\n /** 3-letter ISO code, sent in either case, always returned lowercase. */\n currency: string;\n goods: InvoiceGoods;\n /** The developer's own Stripe checkout link on checkout, buy, book, donate or invoice.stripe.com; at most 2048 characters. */\n url: string;\n /** Omit for a one-time charge. */\n recurring?: InvoiceRecurring;\n}",
1286
+ "export type InvoiceGoods = \"physical\" | \"digital\";",
1287
+ "export interface InvoiceRecurring {\n interval: \"day\" | \"week\" | \"month\" | \"year\";\n /** Defaults to 1. Total span is capped at 3 years (1095 days / 156 weeks / 36 months / 3 years). */\n interval_count?: number;\n}",
1288
+ "export type InvoiceStatus = \"requested\" | \"succeeded\" | \"canceled\" | \"expired\" | \"refunded\";",
1115
1289
  "export interface SystemPartResponse {\n type: \"system\";\n value: string;\n reactions: null;\n}",
1116
1290
  "export interface ReplyTo {\n message_id: UUID;\n part_index?: number;\n}",
1117
- "export interface SystemEvent {\n type: SystemEventType;\n actor: SystemEventParty;\n subject: SystemEventParty | null;\n value: string | null;\n icon_attachment_id: UUID | null;\n contact_card: ContactCardItem | null;\n}",
1118
- "export type SystemEventType =\n | \"chat_created\"\n | \"participant_added\"\n | \"participant_removed\"\n | \"group_name_updated\"\n | \"group_icon_updated\"\n | \"contact_card_shared\";",
1291
+ "export interface SystemEvent {\n type: SystemEventType;\n actor: SystemEventParty;\n subject: SystemEventParty | null;\n value: string | null;\n icon_attachment_id: UUID | null;\n contact_card: ContactCardItem | null;\n call: CallMarker | null;\n}",
1292
+ "export type SystemEventType =\n | \"chat_created\"\n | \"participant_added\"\n | \"participant_removed\"\n | \"group_name_updated\"\n | \"group_icon_updated\"\n | \"contact_card_shared\"\n | \"call\";",
1119
1293
  "export interface SystemEventParty {\n id: UUID;\n handle: string;\n kind: \"user\" | \"agent\";\n}",
1120
1294
  "export interface ContactCardItem {\n handle: string;\n first_name: string;\n last_name: string | null;\n image_url: string | null;\n is_active: boolean;\n kind: \"user\" | \"agent\";\n}",
1295
+ "export interface CallMarker {\n id: UUID;\n status: Call[\"status\"];\n answered_at: string | null;\n ended_at: string | null;\n from: CallContact;\n to: [CallContact];\n duration_seconds: number | null;\n}",
1296
+ "export interface Call {\n id: UUID;\n chat_id: UUID;\n from: CallContact;\n to: [CallContact];\n /** `ringing` and `in-progress` are live. Terminal states set `ended_at`. */\n status: \"ringing\" | \"in-progress\" | CallTerminalStatus;\n revision: number;\n created_at: string;\n ringing_at: string;\n answered_at: string | null;\n ended_at: string | null;\n}",
1297
+ "export interface CallContact {\n id: UUID;\n handle: string;\n kind: \"user\" | \"agent\";\n}",
1298
+ "export type CallTerminalStatus =\n | \"completed\"\n | \"no-answer\"\n | \"canceled\"\n | \"busy\"\n | \"failed\";",
1121
1299
  "export type DeliveryStatus =\n | \"sent\"\n | \"delivered\"\n | \"read\";",
1122
1300
  "export interface MessageDelivery {\n contact: ChatHandle;\n delivered_at: string | null;\n read_at: string | null;\n}"
1123
1301
  ],
@@ -1 +1 @@
1
- {"version":3,"file":"generated-docs.js","sourceRoot":"","sources":["../src/generated-docs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generated-docs.js","sourceRoot":"","sources":["../src/generated-docs.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,UAAU,EAAE,kEAAkE;IAC9E,QAAQ,EAAE,kEAAkE;IAC5E,OAAO,EAAE,kEAAkE;CAC5E,CAAC;AACF,MAAM,CAAC,MAAM,WAAW,GAAyB;IAC/C;QACE,QAAQ,EAAE,sBAAsB;QAChC,WAAW,EAAE,+EAA+E;QAC5F,YAAY,EAAE;YACZ,gBAAgB;YAChB,0BAA0B;SAC3B;QACD,YAAY,EAAE,QAAQ;QACtB,MAAM,EAAE,qBAAqB;QAC7B,aAAa,EAAE,aAAa;QAC5B,SAAS,EAAE,iBAAiB;QAC5B,aAAa,EAAE,wgBAAwgB;QACvhB,aAAa,EAAE;YACb,sIAAsI;SACvI;QACD,aAAa,EAAE,IAAI;QACnB,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,2BAA2B;QACrC,WAAW,EAAE,sHAAsH;QACnI,YAAY,EAAE;YACZ,8BAA8B;YAC9B,0BAA0B;SAC3B;QACD,YAAY,EAAE,MAAM;QACpB,MAAM,EAAE,iBAAiB;QACzB,aAAa,EAAE,eAAe;QAC9B,SAAS,EAAE,mBAAmB;QAC9B,aAAa,EAAE,yCAAyC;QACxD,aAAa,EAAE;YACb,sNAAsN;YACtN,s4CAAs4C;YACt4C,sIAAsI;YACtI,qNAAqN;YACrN,4BAA4B;SAC7B;QACD,aAAa,EAAE;YACb,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE;gBACT,kBAAkB,EAAE;oBAClB,QAAQ,EAAE;wBACR,MAAM,EAAE,2CAA2C;qBACpD;iBACF;aACF;SACF;QACD,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,2BAA2B;QACrC,WAAW,EAAE,0FAA0F;QACvG,YAAY,EAAE;YACZ,sBAAsB;YACtB,0BAA0B;SAC3B;QACD,YAAY,EAAE,QAAQ;QACtB,MAAM,EAAE,gCAAgC;QACxC,aAAa,EAAE,kBAAkB;QACjC,SAAS,EAAE,sBAAsB;QACjC,aAAa,EAAE,wDAAwD;QACvE,aAAa,EAAE;YACb,sIAAsI;SACvI;QACD,aAAa,EAAE,IAAI;QACnB,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,6BAA6B;QACvC,WAAW,EAAE,kGAAkG;QAC/G,YAAY,EAAE;YACZ,sBAAsB;YACtB,0BAA0B;SAC3B;QACD,YAAY,EAAE,KAAK;QACnB,MAAM,EAAE,gCAAgC;QACxC,aAAa,EAAE,eAAe;QAC9B,SAAS,EAAE,yBAAyB;QACpC,aAAa,EAAE,kDAAkD;QACjE,aAAa,EAAE;YACb,sIAAsI;YACtI,4TAA4T;YAC5T,4BAA4B;YAC5B,s4CAAs4C;SACv4C;QACD,aAAa,EAAE,IAAI;QACnB,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,6BAA6B;QACvC,WAAW,EAAE,8GAA8G;QAC3H,YAAY,EAAE;YACZ,yBAAyB;YACzB,0BAA0B;SAC3B;QACD,YAAY,EAAE,MAAM;QACpB,MAAM,EAAE,qBAAqB;QAC7B,aAAa,EAAE,aAAa;QAC5B,SAAS,EAAE,gBAAgB;QAC3B,aAAa,EAAE,koCAAkoC;QACjpC,aAAa,EAAE;YACb,gFAAgF;YAChF,sIAAsI;YACtI,6EAA6E;YAC7E,wKAAwK;SACzK;QACD,aAAa,EAAE;YACb,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE;gBACT,kBAAkB,EAAE;oBAClB,QAAQ,EAAE;wBACR,MAAM,EAAE,yCAAyC;qBAClD;iBACF;aACF;SACF;QACD,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,4BAA4B;QACtC,WAAW,EAAE,0FAA0F;QACvG,YAAY,EAAE;YACZ,0BAA0B;SAC3B;QACD,YAAY,EAAE,KAAK;QACnB,MAAM,EAAE,qBAAqB;QAC7B,aAAa,EAAE,oBAAoB;QACnC,SAAS,EAAE,sBAAsB;QACjC,aAAa,EAAE,4GAA4G;QAC3H,aAAa,EAAE;YACb,sIAAsI;YACtI,sFAAsF;YACtF,wKAAwK;SACzK;QACD,aAAa,EAAE,IAAI;QACnB,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,+BAA+B;QACzC,WAAW,EAAE,mGAAmG;QAChH,YAAY,EAAE;YACZ,2BAA2B;YAC3B,0BAA0B;SAC3B;QACD,YAAY,EAAE,QAAQ;QACtB,MAAM,EAAE,qBAAqB;QAC7B,aAAa,EAAE,eAAe;QAC9B,SAAS,EAAE,kBAAkB;QAC7B,aAAa,EAAE,sMAAsM;QACrN,aAAa,EAAE;YACb,8DAA8D;YAC9D,sIAAsI;SACvI;QACD,aAAa,EAAE;YACb,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE;gBACT,kBAAkB,EAAE;oBAClB,QAAQ,EAAE;wBACR,MAAM,EAAE,2CAA2C;qBACpD;iBACF;aACF;SACF;QACD,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,qBAAqB;QAC/B,WAAW,EAAE,gHAAgH;QAC7H,YAAY,EAAE;YACZ,gBAAgB;YAChB,wBAAwB;YACxB,4BAA4B;SAC7B;QACD,YAAY,EAAE,MAAM;QACpB,MAAM,EAAE,0BAA0B;QAClC,aAAa,EAAE,YAAY;QAC3B,SAAS,EAAE,0BAA0B;QACrC,aAAa,EAAE,23BAA23B;QAC14B,aAAa,EAAE;YACb,yDAAyD;YACzD,6JAA6J;YAC7J,sIAAsI;YACtI,mDAAmD;YACnD,oXAAoX;YACpX,4BAA4B;YAC5B,kGAAkG;YAClG,yHAAyH;SAC1H;QACD,aAAa,EAAE;YACb,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE;gBACT,kBAAkB,EAAE;oBAClB,QAAQ,EAAE;wBACR,MAAM,EAAE,wCAAwC;qBACjD;iBACF;aACF;SACF;QACD,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,kBAAkB;QAC5B,WAAW,EAAE,mFAAmF;QAChG,YAAY,EAAE;YACZ,gBAAgB;YAChB,0BAA0B;SAC3B;QACD,YAAY,EAAE,MAAM;QACpB,MAAM,EAAE,wBAAwB;QAChC,aAAa,EAAE,SAAS;QACxB,SAAS,EAAE,YAAY;QACvB,aAAa,EAAE,sUAAsU;QACrV,aAAa,EAAE;YACb,sIAAsI;YACtI,mDAAmD;YACnD,oXAAoX;YACpX,4BAA4B;YAC5B,kGAAkG;YAClG,yHAAyH;SAC1H;QACD,aAAa,EAAE;YACb,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE;gBACT,kBAAkB,EAAE;oBAClB,QAAQ,EAAE;wBACR,MAAM,EAAE,uCAAuC;qBAChD;iBACF;aACF;SACF;QACD,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,mBAAmB;QAC7B,WAAW,EAAE,oHAAoH;QACjI,YAAY,EAAE;YACZ,gBAAgB;YAChB,4BAA4B;YAC5B,0BAA0B;SAC3B;QACD,YAAY,EAAE,KAAK;QACnB,MAAM,EAAE,0BAA0B;QAClC,aAAa,EAAE,WAAW;QAC1B,SAAS,EAAE,sBAAsB;QACjC,aAAa,EAAE,sDAAsD;QACrE,aAAa,EAAE;YACb,6EAA6E;YAC7E,sIAAsI;YACtI,yFAAyF;YACzF,oXAAoX;YACpX,4BAA4B;YAC5B,kGAAkG;YAClG,yHAAyH;SAC1H;QACD,aAAa,EAAE,IAAI;QACnB,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,uBAAuB;QACjC,WAAW,EAAE,wFAAwF;QACrG,YAAY,EAAE;YACZ,gBAAgB;YAChB,0BAA0B;SAC3B;QACD,YAAY,EAAE,KAAK;QACnB,MAAM,EAAE,oBAAoB;QAC5B,aAAa,EAAE,SAAS;QACxB,SAAS,EAAE,iBAAiB;QAC5B,aAAa,EAAE,6CAA6C;QAC5D,aAAa,EAAE;YACb,sIAAsI;YACtI,mDAAmD;YACnD,oXAAoX;YACpX,4BAA4B;YAC5B,kGAAkG;YAClG,yHAAyH;SAC1H;QACD,aAAa,EAAE,IAAI;QACnB,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,4BAA4B;QACtC,WAAW,EAAE,0HAA0H;QACvI,YAAY,EAAE;YACZ,gBAAgB;YAChB,qCAAqC;YACrC,0BAA0B;SAC3B;QACD,YAAY,EAAE,QAAQ;QACtB,MAAM,EAAE,6BAA6B;QACrC,aAAa,EAAE,eAAe;QAC9B,SAAS,EAAE,qBAAqB;QAChC,aAAa,EAAE,4NAA4N;QAC3O,aAAa,EAAE;YACb,yJAAyJ;YACzJ,4BAA4B;YAC5B,sIAAsI;SACvI;QACD,aAAa,EAAE,IAAI;QACnB,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,qBAAqB;QAC/B,WAAW,EAAE,oGAAoG;QACjH,YAAY,EAAE;YACZ,wBAAwB;YACxB,0BAA0B;SAC3B;QACD,YAAY,EAAE,MAAM;QACpB,MAAM,EAAE,WAAW;QACnB,aAAa,EAAE,YAAY;QAC3B,SAAS,EAAE,mBAAmB;QAC9B,aAAa,EAAE,uDAAuD;QACtE,aAAa,EAAE;YACb,sGAAsG;YACtG,yWAAyW;YACzW,uJAAuJ;YACvJ,6IAA6I;YAC7I,+FAA+F;YAC/F,4BAA4B;YAC5B,qEAAqE;YACrE,iFAAiF;YACjF,sOAAsO;YACtO,iOAAiO;YACjO,sNAAsN;YACtN,+iBAA+iB;YAC/iB,iiBAAiiB;YACjiB,wDAAwD;YACxD,oOAAoO;YACpO,4EAA4E;YAC5E,o6BAAo6B;YACp6B,4DAA4D;YAC5D,gFAAgF;YAChF,kFAAkF;YAClF,+OAA+O;YAC/O,uXAAuX;YACvX,kRAAkR;YAClR,0FAA0F;YAC1F,gGAAgG;YAChG,ynBAAynB;YACznB,iFAAiF;YACjF,8PAA8P;YAC9P,qGAAqG;YACrG,gQAAgQ;YAChQ,iNAAiN;YACjN,uGAAuG;YACvG,iMAAiM;YACjM,uNAAuN;YACvN,8EAA8E;YAC9E,0HAA0H;YAC1H,+eAA+e;YAC/e,sIAAsI;YACtI,iKAAiK;YACjK,4nBAA4nB;SAC7nB;QACD,aAAa,EAAE;YACb,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE;gBACT,kBAAkB,EAAE;oBAClB,QAAQ,EAAE;wBACR,MAAM,EAAE,wCAAwC;qBACjD;iBACF;aACF;SACF;QACD,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,0BAA0B;QACpC,WAAW,EAAE,mGAAmG;QAChH,YAAY,EAAE;YACZ,gBAAgB;YAChB,0BAA0B;SAC3B;QACD,YAAY,EAAE,KAAK;QACnB,MAAM,EAAE,6BAA6B;QACrC,aAAa,EAAE,aAAa;QAC5B,SAAS,EAAE,mBAAmB;QAC9B,aAAa,EAAE,mJAAmJ;QAClK,aAAa,EAAE;YACb,sIAAsI;YACtI,uIAAuI;YACvI,4BAA4B;YAC5B,yIAAyI;SAC1I;QACD,aAAa,EAAE,IAAI;QACnB,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,wBAAwB;QAClC,WAAW,EAAE,6FAA6F;QAC1G,YAAY,EAAE;YACZ,gBAAgB;YAChB,0BAA0B;SAC3B;QACD,YAAY,EAAE,MAAM;QACpB,MAAM,EAAE,0BAA0B;QAClC,aAAa,EAAE,WAAW;QAC1B,SAAS,EAAE,oBAAoB;QAC/B,aAAa,EAAE,gHAAgH;QAC/H,aAAa,EAAE;YACb,sIAAsI;YACtI,uGAAuG;SACxG;QACD,aAAa,EAAE,IAAI;QACnB,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,wBAAwB;QAClC,WAAW,EAAE,6GAA6G;QAC1H,YAAY,EAAE;YACZ,iCAAiC;YACjC,0BAA0B;SAC3B;QACD,YAAY,EAAE,KAAK;QACnB,MAAM,EAAE,WAAW;QACnB,aAAa,EAAE,WAAW;QAC1B,SAAS,EAAE,gBAAgB;QAC3B,aAAa,EAAE,kDAAkD;QACjE,aAAa,EAAE;YACb,kFAAkF;YAClF,sIAAsI;YACtI,+eAA+e;YAC/e,4BAA4B;YAC5B,4DAA4D;YAC5D,gFAAgF;YAChF,wcAAwc;YACxc,yIAAyI;YACzI,kFAAkF;SACnF;QACD,aAAa,EAAE,IAAI;QACnB,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,yBAAyB;QACnC,WAAW,EAAE,kFAAkF;QAC/F,YAAY,EAAE;YACZ,gBAAgB;YAChB,0BAA0B;SAC3B;QACD,YAAY,EAAE,MAAM;QACpB,MAAM,EAAE,yBAAyB;QACjC,aAAa,EAAE,gBAAgB;QAC/B,SAAS,EAAE,mBAAmB;QAC9B,aAAa,EAAE,iIAAiI;QAChJ,aAAa,EAAE;YACb,sIAAsI;SACvI;QACD,aAAa,EAAE,IAAI;QACnB,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,4BAA4B;QACtC,WAAW,EAAE,qIAAqI;QAClJ,YAAY,EAAE;YACZ,gBAAgB;YAChB,+BAA+B;YAC/B,0BAA0B;SAC3B;QACD,YAAY,EAAE,KAAK;QACnB,MAAM,EAAE,6BAA6B;QACrC,aAAa,EAAE,aAAa;QAC5B,SAAS,EAAE,0BAA0B;QACrC,aAAa,EAAE,uTAAuT;QACtU,aAAa,EAAE;YACb,+SAA+S;YAC/S,sIAAsI;YACtI,o6BAAo6B;YACp6B,4BAA4B;YAC5B,4DAA4D;YAC5D,gFAAgF;YAChF,wcAAwc;YACxc,yIAAyI;YACzI,kFAAkF;YAClF,+OAA+O;YAC/O,uXAAuX;YACvX,6IAA6I;YAC7I,kIAAkI;YAClI,8IAA8I;YAC9I,kRAAkR;YAClR,0FAA0F;YAC1F,qEAAqE;YACrE,gGAAgG;YAChG,iFAAiF;YACjF,sOAAsO;YACtO,ynBAAynB;YACznB,iOAAiO;YACjO,sNAAsN;YACtN,+eAA+e;YAC/e,iFAAiF;YACjF,+iBAA+iB;YAC/iB,8PAA8P;YAC9P,iiBAAiiB;YACjiB,wDAAwD;YACxD,oOAAoO;YACpO,wGAAwG;YACxG,qGAAqG;YACrG,4EAA4E;YAC5E,gQAAgQ;YAChQ,iNAAiN;YACjN,uGAAuG;YACvG,iMAAiM;YACjM,uNAAuN;YACvN,oXAAoX;YACpX,kGAAkG;YAClG,yHAAyH;YACzH,8EAA8E;YAC9E,0HAA0H;SAC3H;QACD,aAAa,EAAE,IAAI;QACnB,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,4BAA4B;QACtC,WAAW,EAAE,6HAA6H;QAC1I,YAAY,EAAE;YACZ,gBAAgB;YAChB,yBAAyB;YACzB,0BAA0B;SAC3B;QACD,YAAY,EAAE,MAAM;QACpB,MAAM,EAAE,6BAA6B;QACrC,aAAa,EAAE,mBAAmB;QAClC,SAAS,EAAE,oCAAoC;QAC/C,aAAa,EAAE,y2BAAy2B;QACx3B,aAAa,EAAE;YACb,qEAAqE;YACrE,yWAAyW;YACzW,uJAAuJ;YACvJ,6IAA6I;YAC7I,+FAA+F;YAC/F,4BAA4B;YAC5B,qEAAqE;YACrE,iFAAiF;YACjF,sOAAsO;YACtO,iOAAiO;YACjO,sNAAsN;YACtN,+iBAA+iB;YAC/iB,iiBAAiiB;YACjiB,wDAAwD;YACxD,oOAAoO;YACpO,4EAA4E;YAC5E,o6BAAo6B;YACp6B,4DAA4D;YAC5D,gFAAgF;YAChF,kFAAkF;YAClF,+OAA+O;YAC/O,uXAAuX;YACvX,kRAAkR;YAClR,0FAA0F;YAC1F,gGAAgG;YAChG,ynBAAynB;YACznB,iFAAiF;YACjF,8PAA8P;YAC9P,qGAAqG;YACrG,gQAAgQ;YAChQ,iNAAiN;YACjN,uGAAuG;YACvG,iMAAiM;YACjM,uNAAuN;YACvN,8EAA8E;YAC9E,0HAA0H;YAC1H,+eAA+e;YAC/e,sIAAsI;YACtI,sFAAsF;YACtF,4nBAA4nB;SAC7nB;QACD,aAAa,EAAE;YACb,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE;gBACT,kBAAkB,EAAE;oBAClB,QAAQ,EAAE;wBACR,MAAM,EAAE,+CAA+C;qBACxD;iBACF;aACF;SACF;QACD,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,+BAA+B;QACzC,WAAW,EAAE,gIAAgI;QAC7I,YAAY,EAAE;YACZ,gBAAgB;YAChB,4BAA4B;YAC5B,0BAA0B;SAC3B;QACD,YAAY,EAAE,MAAM;QACpB,MAAM,EAAE,iCAAiC;QACzC,aAAa,EAAE,gBAAgB;QAC/B,SAAS,EAAE,6BAA6B;QACxC,aAAa,EAAE,4TAA4T;QAC3U,aAAa,EAAE;YACb,oLAAoL;YACpL,sIAAsI;YACtI,uGAAuG;SACxG;QACD,aAAa,EAAE;YACb,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE;gBACT,kBAAkB,EAAE;oBAClB,QAAQ,EAAE;wBACR,MAAM,EAAE,4CAA4C;qBACrD;iBACF;aACF;SACF;QACD,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,kCAAkC;QAC5C,WAAW,EAAE,sIAAsI;QACnJ,YAAY,EAAE;YACZ,gBAAgB;YAChB,+BAA+B;YAC/B,0BAA0B;SAC3B;QACD,YAAY,EAAE,QAAQ;QACtB,MAAM,EAAE,iCAAiC;QACzC,aAAa,EAAE,mBAAmB;QAClC,SAAS,EAAE,kCAAkC;QAC7C,aAAa,EAAE,8GAA8G;QAC7H,aAAa,EAAE;YACb,kEAAkE;YAClE,sIAAsI;YACtI,uGAAuG;SACxG;QACD,aAAa,EAAE;YACb,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE;gBACT,kBAAkB,EAAE;oBAClB,QAAQ,EAAE;wBACR,MAAM,EAAE,+CAA+C;qBACxD;iBACF;aACF;SACF;QACD,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,uBAAuB;QACjC,WAAW,EAAE,gFAAgF;QAC7F,YAAY,EAAE;YACZ,gBAAgB;YAChB,0BAA0B;SAC3B;QACD,YAAY,EAAE,KAAK;QACnB,MAAM,EAAE,oBAAoB;QAC5B,aAAa,EAAE,SAAS;QACxB,SAAS,EAAE,kBAAkB;QAC7B,aAAa,EAAE,4BAA4B;QAC3C,aAAa,EAAE;YACb,sIAAsI;YACtI,+eAA+e;YAC/e,4BAA4B;YAC5B,4DAA4D;YAC5D,gFAAgF;YAChF,wcAAwc;YACxc,yIAAyI;YACzI,kFAAkF;SACnF;QACD,aAAa,EAAE,IAAI;QACnB,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,4BAA4B;QACtC,WAAW,EAAE,yIAAyI;QACtJ,YAAY,EAAE;YACZ,gBAAgB;YAChB,+BAA+B;YAC/B,0BAA0B;SAC3B;QACD,YAAY,EAAE,MAAM;QACpB,MAAM,EAAE,8BAA8B;QACtC,aAAa,EAAE,qBAAqB;QACpC,SAAS,EAAE,6BAA6B;QACxC,aAAa,EAAE,oDAAoD;QACnE,aAAa,EAAE;YACb,oJAAoJ;YACpJ,4BAA4B;YAC5B,sIAAsI;YACtI,+SAA+S;YAC/S,oXAAoX;YACpX,4DAA4D;YAC5D,gFAAgF;YAChF,wcAAwc;YACxc,yIAAyI;YACzI,kFAAkF;SACnF;QACD,aAAa,EAAE;YACb,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE;gBACT,kBAAkB,EAAE;oBAClB,QAAQ,EAAE;wBACR,MAAM,EAAE,iDAAiD;qBAC1D;iBACF;aACF;SACF;QACD,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,0BAA0B;QACpC,WAAW,EAAE,gIAAgI;QAC7I,YAAY,EAAE;YACZ,gBAAgB;YAChB,6BAA6B;YAC7B,0BAA0B;SAC3B;QACD,YAAY,EAAE,KAAK;QACnB,MAAM,EAAE,6BAA6B;QACrC,aAAa,EAAE,aAAa;QAC5B,SAAS,EAAE,mBAAmB;QAC9B,aAAa,EAAE,meAAme;QAClf,aAAa,EAAE;YACb,4RAA4R;YAC5R,4BAA4B;YAC5B,sIAAsI;YACtI,uIAAuI;YACvI,yIAAyI;SAC1I;QACD,aAAa,EAAE;YACb,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE;gBACT,kBAAkB,EAAE;oBAClB,QAAQ,EAAE;wBACR,MAAM,EAAE,yCAAyC;qBAClD;iBACF;aACF;SACF;QACD,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,+BAA+B;QACzC,WAAW,EAAE,wFAAwF;QACrG,YAAY,EAAE;YACZ,gBAAgB;YAChB,0BAA0B;SAC3B;QACD,YAAY,EAAE,MAAM;QACpB,MAAM,EAAE,uCAAuC;QAC/C,aAAa,EAAE,sBAAsB;QACrC,SAAS,EAAE,qCAAqC;QAChD,aAAa,EAAE,2HAA2H;QAC1I,aAAa,EAAE;YACb,sIAAsI;SACvI;QACD,aAAa,EAAE,IAAI;QACnB,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,0BAA0B;QACpC,WAAW,EAAE,mFAAmF;QAChG,YAAY,EAAE;YACZ,gBAAgB;YAChB,0BAA0B;SAC3B;QACD,YAAY,EAAE,MAAM;QACpB,MAAM,EAAE,2BAA2B;QACnC,aAAa,EAAE,aAAa;QAC5B,SAAS,EAAE,wBAAwB;QACnC,aAAa,EAAE,gEAAgE;QAC/E,aAAa,EAAE;YACb,sIAAsI;SACvI;QACD,aAAa,EAAE,IAAI;QACnB,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,yBAAyB;QACnC,WAAW,EAAE,kFAAkF;QAC/F,YAAY,EAAE;YACZ,gBAAgB;YAChB,0BAA0B;SAC3B;QACD,YAAY,EAAE,QAAQ;QACtB,MAAM,EAAE,2BAA2B;QACnC,aAAa,EAAE,YAAY;QAC3B,SAAS,EAAE,uBAAuB;QAClC,aAAa,EAAE,oDAAoD;QACnE,aAAa,EAAE;YACb,sIAAsI;SACvI;QACD,aAAa,EAAE,IAAI;QACnB,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,qBAAqB;QAC/B,WAAW,EAAE,oHAAoH;QACjI,YAAY,EAAE;YACZ,gBAAgB;YAChB,wBAAwB;YACxB,0BAA0B;SAC3B;QACD,YAAY,EAAE,KAAK;QACnB,MAAM,EAAE,oBAAoB;QAC5B,aAAa,EAAE,YAAY;QAC3B,SAAS,EAAE,eAAe;QAC1B,aAAa,EAAE,oCAAoC;QACnD,aAAa,EAAE;YACb,4cAA4c;YAC5c,4TAA4T;YAC5T,4BAA4B;YAC5B,s4CAAs4C;YACt4C,sIAAsI;YACtI,iFAAiF;SAClF;QACD,aAAa,EAAE;YACb,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE;gBACT,kBAAkB,EAAE;oBAClB,QAAQ,EAAE;wBACR,MAAM,EAAE,wCAAwC;qBACjD;iBACF;aACF;SACF;QACD,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,2BAA2B;QACrC,WAAW,EAAE,8GAA8G;QAC3H,YAAY,EAAE;YACZ,+BAA+B;YAC/B,0BAA0B;SAC3B;QACD,YAAY,EAAE,MAAM;QACpB,MAAM,EAAE,kBAAkB;QAC1B,aAAa,EAAE,kBAAkB;QACjC,SAAS,EAAE,oBAAoB;QAC/B,aAAa,EAAE,kDAAkD;QACjE,aAAa,EAAE;YACb,+VAA+V;YAC/V,4BAA4B;YAC5B,0GAA0G;YAC1G,kKAAkK;YAClK,+FAA+F;YAC/F,oTAAoT;YACpT,4JAA4J;YAC5J,kJAAkJ;YAClJ,sIAAsI;YACtI,iMAAiM;SAClM;QACD,aAAa,EAAE;YACb,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE;gBACT,kBAAkB,EAAE;oBAClB,QAAQ,EAAE;wBACR,MAAM,EAAE,4CAA4C;qBACrD;iBACF;aACF;SACF;QACD,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,6BAA6B;QACvC,WAAW,EAAE,oIAAoI;QACjJ,YAAY,EAAE;YACZ,uCAAuC;YACvC,0BAA0B;SAC3B;QACD,YAAY,EAAE,KAAK;QACnB,MAAM,EAAE,kBAAkB;QAC1B,aAAa,EAAE,gBAAgB;QAC/B,SAAS,EAAE,mBAAmB;QAC9B,aAAa,EAAE,kDAAkD;QACjE,aAAa,EAAE;YACb,qEAAqE;YACrE,sIAAsI;YACtI,wFAAwF;YACxF,iMAAiM;SAClM;QACD,aAAa,EAAE,IAAI;QACnB,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,2BAA2B;QACrC,WAAW,EAAE,gHAAgH;QAC7H,YAAY,EAAE;YACZ,iCAAiC;YACjC,0BAA0B;SAC3B;QACD,YAAY,EAAE,OAAO;QACrB,MAAM,EAAE,kBAAkB;QAC1B,aAAa,EAAE,mBAAmB;QAClC,SAAS,EAAE,qBAAqB;QAChC,aAAa,EAAE,gDAAgD;QAC/D,aAAa,EAAE;YACb,keAAke;YACle,4BAA4B;YAC5B,0GAA0G;YAC1G,kKAAkK;YAClK,+FAA+F;YAC/F,oTAAoT;YACpT,4JAA4J;YAC5J,kJAAkJ;YAClJ,sIAAsI;YACtI,iMAAiM;SAClM;QACD,aAAa,EAAE;YACb,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE;gBACT,kBAAkB,EAAE;oBAClB,QAAQ,EAAE;wBACR,MAAM,EAAE,+CAA+C;qBACxD;iBACF;aACF;SACF;QACD,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,wBAAwB;QAClC,WAAW,EAAE,6GAA6G;QAC1H,YAAY,EAAE;YACZ,2BAA2B;YAC3B,0BAA0B;SAC3B;QACD,YAAY,EAAE,MAAM;QACpB,MAAM,EAAE,qBAAqB;QAC7B,aAAa,EAAE,eAAe;QAC9B,SAAS,EAAE,oDAAoD;QAC/D,aAAa,EAAE,6PAA6P;QAC5Q,aAAa,EAAE;YACb,wOAAwO;YACxO,sIAAsI;YACtI,yGAAyG;YACzG,2sBAA2sB;YAC3sB,4BAA4B;YAC5B,0QAA0Q;YAC1Q,oIAAoI;YACpI,0DAA0D;SAC3D;QACD,aAAa,EAAE;YACb,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE;gBACT,kBAAkB,EAAE;oBAClB,QAAQ,EAAE;wBACR,OAAO,EAAE;4BACP;gCACE,MAAM,EAAE,QAAQ;gCAChB,sBAAsB,EAAE,KAAK;gCAC7B,UAAU,EAAE;oCACV,QAAQ;iCACT;gCACD,YAAY,EAAE;oCACZ,QAAQ,EAAE;wCACR,MAAM,EAAE,QAAQ;wCAChB,WAAW,EAAE,CAAC;wCACd,WAAW,EAAE,GAAG;wCAChB,aAAa,EAAE,yDAAyD;qCACzE;iCACF;6BACF;4BACD;gCACE,MAAM,EAAE,QAAQ;gCAChB,sBAAsB,EAAE,KAAK;gCAC7B,UAAU,EAAE;oCACV,MAAM;iCACP;gCACD,YAAY,EAAE;oCACZ,MAAM,EAAE;wCACN,MAAM,EAAE,QAAQ;wCAChB,WAAW,EAAE,CAAC;wCACd,WAAW,EAAE,GAAG;wCAChB,aAAa,EAAE,qCAAqC;qCACrD;iCACF;6BACF;yBACF;qBACF;iBACF;aACF;SACF;QACD,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,6BAA6B;QACvC,WAAW,EAAE,+IAA+I;QAC5J,YAAY,EAAE;YACZ,mBAAmB;YACnB,gCAAgC;YAChC,0BAA0B;SAC3B;QACD,YAAY,EAAE,MAAM;QACpB,MAAM,EAAE,oCAAoC;QAC5C,aAAa,EAAE,cAAc;QAC7B,SAAS,EAAE,uCAAuC;QAClD,aAAa,EAAE,kNAAkN;QACjO,aAAa,EAAE;YACb,6JAA6J;YAC7J,8IAA8I;YAC9I,sIAAsI;YACtI,4DAA4D;YAC5D,uGAAuG;SACxG;QACD,aAAa,EAAE;YACb,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE;gBACT,kBAAkB,EAAE;oBAClB,QAAQ,EAAE;wBACR,MAAM,EAAE,0CAA0C;qBACnD;iBACF;aACF;SACF;QACD,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,wBAAwB;QAClC,WAAW,EAAE,+GAA+G;QAC5H,YAAY,EAAE;YACZ,6BAA6B;YAC7B,0BAA0B;SAC3B;QACD,YAAY,EAAE,MAAM;QACpB,MAAM,EAAE,cAAc;QACtB,aAAa,EAAE,aAAa;QAC5B,SAAS,EAAE,mCAAmC;QAC9C,aAAa,EAAE,o3BAAo3B;QACn4B,aAAa,EAAE;YACb,yHAAyH;YACzH,yWAAyW;YACzW,uJAAuJ;YACvJ,6IAA6I;YAC7I,+FAA+F;YAC/F,4BAA4B;YAC5B,qEAAqE;YACrE,iFAAiF;YACjF,sOAAsO;YACtO,iOAAiO;YACjO,sNAAsN;YACtN,+iBAA+iB;YAC/iB,iiBAAiiB;YACjiB,wDAAwD;YACxD,oOAAoO;YACpO,4EAA4E;YAC5E,o6BAAo6B;YACp6B,4DAA4D;YAC5D,gFAAgF;YAChF,kFAAkF;YAClF,+OAA+O;YAC/O,uXAAuX;YACvX,kRAAkR;YAClR,0FAA0F;YAC1F,gGAAgG;YAChG,ynBAAynB;YACznB,iFAAiF;YACjF,8PAA8P;YAC9P,qGAAqG;YACrG,gQAAgQ;YAChQ,iNAAiN;YACjN,uGAAuG;YACvG,iMAAiM;YACjM,uNAAuN;YACvN,8EAA8E;YAC9E,0HAA0H;YAC1H,+eAA+e;YAC/e,sIAAsI;YACtI,uLAAuL;YACvL,4nBAA4nB;SAC7nB;QACD,aAAa,EAAE;YACb,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE;gBACT,kBAAkB,EAAE;oBAClB,QAAQ,EAAE;wBACR,MAAM,EAAE,yCAAyC;qBAClD;iBACF;aACF;SACF;QACD,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,gCAAgC;QAC1C,WAAW,EAAE,sJAAsJ;QACnK,YAAY,EAAE;YACZ,mBAAmB;YACnB,kCAAkC;YAClC,0BAA0B;SAC3B;QACD,YAAY,EAAE,KAAK;QACnB,MAAM,EAAE,kCAAkC;QAC1C,aAAa,EAAE,qBAAqB;QACpC,SAAS,EAAE,4BAA4B;QACvC,aAAa,EAAE,qXAAqX;QACpY,aAAa,EAAE;YACb,4EAA4E;YAC5E,wGAAwG;YACxG,sIAAsI;YACtI,yEAAyE;YACzE,o6BAAo6B;YACp6B,4BAA4B;YAC5B,4DAA4D;YAC5D,gFAAgF;YAChF,wcAAwc;YACxc,kFAAkF;YAClF,+OAA+O;YAC/O,uXAAuX;YACvX,6IAA6I;YAC7I,kIAAkI;YAClI,kRAAkR;YAClR,0FAA0F;YAC1F,qEAAqE;YACrE,gGAAgG;YAChG,iFAAiF;YACjF,ynBAAynB;YACznB,iOAAiO;YACjO,+eAA+e;YAC/e,iFAAiF;YACjF,+iBAA+iB;YAC/iB,8PAA8P;YAC9P,iiBAAiiB;YACjiB,oOAAoO;YACpO,qGAAqG;YACrG,4EAA4E;YAC5E,gQAAgQ;YAChQ,iNAAiN;YACjN,uGAAuG;YACvG,iMAAiM;YACjM,uNAAuN;YACvN,oXAAoX;YACpX,kGAAkG;YAClG,8EAA8E;YAC9E,0HAA0H;SAC3H;QACD,aAAa,EAAE;YACb,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE;gBACT,kBAAkB,EAAE;oBAClB,QAAQ,EAAE;wBACR,MAAM,EAAE,iDAAiD;qBAC1D;iBACF;aACF;SACF;QACD,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,oCAAoC;QAC9C,WAAW,EAAE,kJAAkJ;QAC/J,YAAY,EAAE;YACZ,mBAAmB;YACnB,iCAAiC;YACjC,0BAA0B;SAC3B;QACD,YAAY,EAAE,KAAK;QACnB,MAAM,EAAE,iCAAiC;QACzC,aAAa,EAAE,kBAAkB;QACjC,SAAS,EAAE,8BAA8B;QACzC,aAAa,EAAE,iCAAiC;QAChD,aAAa,EAAE;YACb,sDAAsD;YACtD,+SAA+S;YAC/S,sIAAsI;YACtI,o6BAAo6B;YACp6B,4BAA4B;YAC5B,4DAA4D;YAC5D,gFAAgF;YAChF,wcAAwc;YACxc,yIAAyI;YACzI,kFAAkF;YAClF,+OAA+O;YAC/O,uXAAuX;YACvX,6IAA6I;YAC7I,kIAAkI;YAClI,8IAA8I;YAC9I,kRAAkR;YAClR,0FAA0F;YAC1F,qEAAqE;YACrE,gGAAgG;YAChG,iFAAiF;YACjF,sOAAsO;YACtO,ynBAAynB;YACznB,iOAAiO;YACjO,sNAAsN;YACtN,+eAA+e;YAC/e,iFAAiF;YACjF,+iBAA+iB;YAC/iB,8PAA8P;YAC9P,iiBAAiiB;YACjiB,wDAAwD;YACxD,oOAAoO;YACpO,wGAAwG;YACxG,qGAAqG;YACrG,4EAA4E;YAC5E,gQAAgQ;YAChQ,iNAAiN;YACjN,uGAAuG;YACvG,iMAAiM;YACjM,uNAAuN;YACvN,oXAAoX;YACpX,kGAAkG;YAClG,yHAAyH;YACzH,8EAA8E;YAC9E,0HAA0H;SAC3H;QACD,aAAa,EAAE,IAAI;QACnB,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,0BAA0B;QACpC,WAAW,EAAE,yFAAyF;QACtG,YAAY,EAAE;YACZ,mBAAmB;YACnB,0BAA0B;SAC3B;QACD,YAAY,EAAE,KAAK;QACnB,MAAM,EAAE,0BAA0B;QAClC,aAAa,EAAE,YAAY;QAC3B,SAAS,EAAE,qBAAqB;QAChC,aAAa,EAAE,+BAA+B;QAC9C,aAAa,EAAE;YACb,sIAAsI;YACtI,o6BAAo6B;YACp6B,4BAA4B;YAC5B,4DAA4D;YAC5D,gFAAgF;YAChF,wcAAwc;YACxc,yIAAyI;YACzI,kFAAkF;YAClF,+OAA+O;YAC/O,uXAAuX;YACvX,6IAA6I;YAC7I,kIAAkI;YAClI,8IAA8I;YAC9I,kRAAkR;YAClR,0FAA0F;YAC1F,qEAAqE;YACrE,gGAAgG;YAChG,iFAAiF;YACjF,sOAAsO;YACtO,ynBAAynB;YACznB,iOAAiO;YACjO,sNAAsN;YACtN,+eAA+e;YAC/e,iFAAiF;YACjF,+iBAA+iB;YAC/iB,8PAA8P;YAC9P,iiBAAiiB;YACjiB,wDAAwD;YACxD,oOAAoO;YACpO,wGAAwG;YACxG,qGAAqG;YACrG,4EAA4E;YAC5E,gQAAgQ;YAChQ,iNAAiN;YACjN,uGAAuG;YACvG,iMAAiM;YACjM,uNAAuN;YACvN,oXAAoX;YACpX,kGAAkG;YAClG,yHAAyH;YACzH,8EAA8E;YAC9E,0HAA0H;SAC3H;QACD,aAAa,EAAE,IAAI;QACnB,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,2BAA2B;QACrC,WAAW,EAAE,wFAAwF;QACrG,YAAY,EAAE;YACZ,0BAA0B;SAC3B;QACD,YAAY,EAAE,KAAK;QACnB,MAAM,EAAE,oBAAoB;QAC5B,aAAa,EAAE,mBAAmB;QAClC,SAAS,EAAE,oCAAoC;QAC/C,aAAa,EAAE,+CAA+C;QAC9D,aAAa,EAAE;YACb,sIAAsI;YACtI,mGAAmG;YACnG,4EAA4E;SAC7E;QACD,aAAa,EAAE,IAAI;QACnB,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,oCAAoC;QAC9C,WAAW,EAAE,iJAAiJ;QAC9J,YAAY,EAAE;YACZ,uCAAuC;YACvC,0BAA0B;SAC3B;QACD,YAAY,EAAE,MAAM;QACpB,MAAM,EAAE,2BAA2B;QACnC,aAAa,EAAE,2BAA2B;QAC1C,SAAS,EAAE,mCAAmC;QAC9C,aAAa,EAAE,uCAAuC;QACtD,aAAa,EAAE;YACb,wHAAwH;YACxH,4EAA4E;YAC5E,sIAAsI;YACtI,mHAAmH;YACnH,8LAA8L;YAC9L,4BAA4B;SAC7B;QACD,aAAa,EAAE;YACb,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE;gBACT,kBAAkB,EAAE;oBAClB,QAAQ,EAAE;wBACR,MAAM,EAAE,uDAAuD;qBAChE;iBACF;aACF;SACF;QACD,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,oCAAoC;QAC9C,WAAW,EAAE,qGAAqG;QAClH,YAAY,EAAE;YACZ,wBAAwB;YACxB,0BAA0B;SAC3B;QACD,YAAY,EAAE,QAAQ;QACtB,MAAM,EAAE,4CAA4C;QACpD,aAAa,EAAE,2BAA2B;QAC1C,SAAS,EAAE,+BAA+B;QAC1C,aAAa,EAAE,gCAAgC;QAC/C,aAAa,EAAE;YACb,sIAAsI;SACvI;QACD,aAAa,EAAE,IAAI;QACnB,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,kCAAkC;QAC5C,WAAW,EAAE,sGAAsG;QACnH,YAAY,EAAE;YACZ,0BAA0B;SAC3B;QACD,YAAY,EAAE,KAAK;QACnB,MAAM,EAAE,2BAA2B;QACnC,aAAa,EAAE,0BAA0B;QACzC,SAAS,EAAE,gCAAgC;QAC3C,aAAa,EAAE,yDAAyD;QACxE,aAAa,EAAE;YACb,sIAAsI;YACtI,gGAAgG;YAChG,8LAA8L;YAC9L,4BAA4B;YAC5B,4EAA4E;SAC7E;QACD,aAAa,EAAE,IAAI;QACnB,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,sCAAsC;QAChD,WAAW,EAAE,sHAAsH;QACnI,YAAY,EAAE;YACZ,wBAAwB;YACxB,0BAA0B;SAC3B;QACD,YAAY,EAAE,KAAK;QACnB,MAAM,EAAE,4CAA4C;QACpD,aAAa,EAAE,wBAAwB;QACvC,SAAS,EAAE,kCAAkC;QAC7C,aAAa,EAAE,oCAAoC;QACnD,aAAa,EAAE;YACb,sIAAsI;YACtI,8LAA8L;YAC9L,4BAA4B;YAC5B,4EAA4E;SAC7E;QACD,aAAa,EAAE,IAAI;QACnB,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;IACD;QACE,QAAQ,EAAE,oCAAoC;QAC9C,WAAW,EAAE,2JAA2J;QACxK,YAAY,EAAE;YACZ,wBAAwB;YACxB,uCAAuC;YACvC,0BAA0B;SAC3B;QACD,YAAY,EAAE,KAAK;QACnB,MAAM,EAAE,4CAA4C;QACpD,aAAa,EAAE,2BAA2B;QAC1C,SAAS,EAAE,+BAA+B;QAC1C,aAAa,EAAE,4CAA4C;QAC3D,aAAa,EAAE;YACb,kJAAkJ;YAClJ,4EAA4E;YAC5E,sIAAsI;YACtI,8LAA8L;YAC9L,4BAA4B;SAC7B;QACD,aAAa,EAAE;YACb,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE;gBACT,kBAAkB,EAAE;oBAClB,QAAQ,EAAE;wBACR,MAAM,EAAE,uDAAuD;qBAChE;iBACF;aACF;SACF;QACD,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,CAAC;KAClB;CACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAuB,MAAM,8BAA8B,CAAC;AAC9E,OAAO,KAAK,MAAM,qBAAqB,CAAC;AAExC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAG7C,OAAO,EAAe,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AAIjE,eAAO,MAAM,eAAe,EAAE,MAAoB,CAAC;AACnD,MAAM,WAAW,mBAAmB;IAAG,MAAM,EAAE,KAAK,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE;AAC1E,MAAM,WAAW,qBAAqB;IACpC,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACnD,cAAc,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACzC,eAAe,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;CAC5C;AAED,eAAO,MAAM,oBAAoB,GAAI,UAAS,qBAA0B,KAAG,SAoD1E,CAAC"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAuB,MAAM,8BAA8B,CAAC;AAC9E,OAAO,KAAiE,MAAM,qBAAqB,CAAC;AAEpG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAG7C,OAAO,EAAe,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AAIjE,eAAO,MAAM,eAAe,EAAE,MAAoB,CAAC;AACnD,MAAM,WAAW,mBAAmB;IAAG,MAAM,EAAE,KAAK,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE;AAC1E,MAAM,WAAW,qBAAqB;IACpC,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACnD,cAAc,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACzC,eAAe,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;CAC5C;AAED,eAAO,MAAM,oBAAoB,GAAI,UAAS,qBAA0B,KAAG,SA2D1E,CAAC"}
package/dist/server.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { McpServer } from "@modelcontextprotocol/server";
2
- import Relay from "@relaymessenger/sdk";
2
+ import Relay, { BUTTONS_GUIDANCE, INVOICE_GUIDANCE, SELECTION_GUIDANCE } from "@relaymessenger/sdk";
3
3
  import { z } from "zod";
4
4
  import { collectLocalTokens, resolveAgentAuth } from "./auth.js";
5
5
  import { searchDocs } from "./search-docs.js";
@@ -45,7 +45,14 @@ export const createRelayMcpServer = (options = {}) => {
45
45
  + "Returns the function result and console output. Each call has a fresh, bounded JavaScript runtime; "
46
46
  + "no shell, filesystem, environment variables, imports, or arbitrary network access are provided. "
47
47
  + "Only SDK calls reach the configured Relay API. SDK credentials stay outside submitted code. "
48
- + "HTTP results and arguments are JSON values; live WebSocket callbacks and raw uploads are not part of this runtime.",
48
+ + "HTTP results and arguments are JSON values; live WebSocket callbacks and raw uploads are not part of this runtime. "
49
+ + "A message's parts may include one buttons part ({ type: \"buttons\", items: [{ label }, { label, url }] }, 1 to 5 items) beside a text part; "
50
+ + "search_docs(\"buttons\") shows the shape. "
51
+ + "A link is its own message whose only part is { type: \"link\", value: \"https://...\" }, drawn as a card; send the words first, then the link. "
52
+ + BUTTONS_GUIDANCE + " " + SELECTION_GUIDANCE + " " + INVOICE_GUIDANCE
53
+ + ' A selection part is { type: "selection", options: [{ value: "research", label: "Research" }] }. Search selection with detail verbose for types. Incoming selection_response.selected_values and reply_to remain in Message parts and events.'
54
+ + ' An invoice part is { type: "invoice", title, amount, currency, goods: "physical" | "digital", url, recurring? } and must be the only part of its message; '
55
+ + "search_docs(\"invoice\") shows the shape. Update its status with client.messages.invoice.update(messageId, { status }).",
49
56
  inputSchema: z.object({ code: z.string().min(1).max(100_000), intent: z.string().max(2_000).optional() }).strict(),
50
57
  annotations: { readOnlyHint: false, destructiveHint: true, idempotentHint: false, openWorldHint: true },
51
58
  }, async ({ code }) => {
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@relaymessenger/mcp",
3
- "version": "0.1.7-staging.2",
3
+ "version": "0.1.7-staging.20",
4
4
  "description": "Local MCP v2 stdio server for current Relay messaging tools.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -45,16 +45,16 @@
45
45
  "license": "MIT",
46
46
  "dependencies": {
47
47
  "@modelcontextprotocol/server": "2.0.0",
48
- "@relaymessenger/sdk": "0.3.6-staging.2",
48
+ "@relaymessenger/sdk": "0.3.6-staging.19",
49
49
  "minisearch": "7.2.0",
50
50
  "quickjs-emscripten": "0.32.0",
51
51
  "typescript": "5.9.3",
52
- "zod": "^4.5.4"
52
+ "zod": "^4.6.5"
53
53
  },
54
54
  "devDependencies": {
55
55
  "@modelcontextprotocol/client": "2.0.0",
56
- "@modelcontextprotocol/inspector": "2.6.0",
57
- "@types/node": "^22.20.3",
56
+ "@modelcontextprotocol/inspector": "2.7.0",
57
+ "@types/node": "^26.6.2",
58
58
  "vitest": "^4.0.0",
59
59
  "yaml": "^2.9.1"
60
60
  },