@canonmsg/backend-contracts 6.4.0 → 8.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -42,7 +42,6 @@
42
42
  * `findVerbByteLimitViolations()` (or equivalent checks from the emitted
43
43
  * canon-verbs.limits.json) after schema validation.
44
44
  */
45
- import type { ContactRequestRequirements } from './contactRequest.js';
46
45
  /** Identifier for this contract document. */
47
46
  export declare const CANON_VERBS_SCHEMA_VERSION = "canon.verbs.v1";
48
47
  /** $id of the emitted JSON Schema bundle. */
@@ -73,10 +72,7 @@ export declare const VERB_ID_PATTERNS: {
73
72
  readonly sessionRuleToolPattern: "^[\\w.*:-]{1,128}$";
74
73
  readonly runtimeCorrelationValue: "^[A-Za-z0-9@_][A-Za-z0-9_.:@+\\-]{0,255}$";
75
74
  readonly runtimeMethod: "^[A-Za-z0-9_][A-Za-z0-9_./:\\-]{0,255}$";
76
- readonly runtimeOptionValue: "^[A-Za-z0-9@_][A-Za-z0-9_.:/@+\\-]{0,255}$";
77
- readonly workspaceOptionId: "^[A-Za-z0-9@_][A-Za-z0-9_.:@+\\-]{0,255}$";
78
75
  readonly runtimeHandleKey: "^[A-Za-z0-9_.:-]{1,80}$";
79
- readonly runtimeControlId: "^[A-Za-z0-9_-]{1,80}$";
80
76
  /** UUID issued by Canon's resumable-media session endpoint. */
81
77
  readonly resumableUploadId: "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-5][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$";
82
78
  };
@@ -146,9 +142,6 @@ export declare const VERB_LIMITS: {
146
142
  readonly nativeKeys: 24;
147
143
  readonly nativeValueChars: 256;
148
144
  readonly nativeHandles: 16;
149
- /** Initial agent-session setup carried by send_to. */
150
- readonly sessionConfigValues: 24;
151
- readonly sessionConfigValueChars: 256;
152
145
  /** Deadlines (functions/src/utils/runtimeRequestHelpers.ts). */
153
146
  readonly minTimeoutMs: 1000;
154
147
  /** input/card/plan ceiling (30 minutes). */
@@ -184,7 +177,7 @@ export declare const VERB_RATE_LIMITS: {
184
177
  /** The one self-context type the platform accepts today. */
185
178
  export declare const SELF_CONTEXT_TYPE = "cross_session";
186
179
  /** Canonical verb names. */
187
- export declare const CANON_VERB_NAMES: readonly ["send_to", "request_input", "request_approval", "check_approval", "send_card", "request_card", "share_contact", "react", "forward", "create_group", "add_member", "remove_member", "leave_conversation", "list_contacts", "list_contact_requests", "list_conversations", "cancel_contact_request", "no_reply"];
180
+ export declare const CANON_VERB_NAMES: readonly ["send_to", "request_input", "request_approval", "check_approval", "send_card", "request_card", "share_contact", "react", "forward", "create_group", "add_member", "remove_member", "leave_conversation", "list_contacts", "list_conversations", "no_reply"];
188
181
  export type CanonVerbName = (typeof CANON_VERB_NAMES)[number];
189
182
  /** Private note-to-self attached to a cross-conversation send. */
190
183
  export interface VerbSelfContext {
@@ -202,20 +195,6 @@ export type VerbSessionSelection = {
202
195
  mode: 'specific';
203
196
  conversationId: string;
204
197
  };
205
- /**
206
- * Public setup policy for the target agent session. Every value is a stable
207
- * runtime-advertised option id, never a label, prompt, path, or other free
208
- * text. The server also validates each selection against the target's live
209
- * descriptor before creating a session.
210
- */
211
- export interface VerbSessionConfig {
212
- model?: string;
213
- permissionMode?: string;
214
- effort?: string;
215
- runtimeControlValues?: Record<string, string>;
216
- workspaceId?: string;
217
- executionMode?: 'worktree' | 'locked';
218
- }
219
198
  /**
220
199
  * Bounded runtime correlation carried in the public wire envelope. These are
221
200
  * opaque identifiers only; workspace paths, commands, prompts, summaries,
@@ -268,7 +247,6 @@ export interface VerbMediaAttachment {
268
247
  */
269
248
  export interface VerbTurnMetadata {
270
249
  turnId?: string | null;
271
- sourceMessageId?: string;
272
250
  turnSemantics?: 'progress' | 'turn_complete' | 'control';
273
251
  deliveryIntent?: 'queue' | 'interrupt' | 'interleave' | 'stop';
274
252
  replyBehavior?: 'allow_auto_reply' | 'suppress_auto_reply';
@@ -312,8 +290,6 @@ export interface SendToInput {
312
290
  requestMessage?: string;
313
291
  /** Only meaningful for user targets that are agents. Default: continue_or_create. */
314
292
  sessionSelection?: VerbSessionSelection;
315
- /** Coding-agent session setup; only applied when the target is an agent. */
316
- sessionConfig?: VerbSessionConfig | null;
317
293
  messageOptions?: VerbMessageOptions;
318
294
  }
319
295
  export type SendToResult = {
@@ -323,7 +299,7 @@ export type SendToResult = {
323
299
  selfContextId?: string;
324
300
  created?: boolean;
325
301
  reused?: boolean;
326
- sessionSelection?: VerbSessionSelection['mode'];
302
+ sessionSelection?: string;
327
303
  } | {
328
304
  status: 'requested';
329
305
  requestId: string | null;
@@ -614,17 +590,16 @@ export interface CreateGroupInput {
614
590
  export interface PendingGroupInviteResult {
615
591
  userId: string;
616
592
  requestId: string;
617
- requirements: ContactRequestRequirements;
618
593
  }
619
594
  export interface CreateGroupResult {
620
595
  status: 'created';
621
596
  conversationId: string;
622
597
  /** Members admitted synchronously during creation. */
623
598
  added: string[];
624
- /** group_invite requests awaiting policy approval, owner setup, or both. */
599
+ /** group_invite requests awaiting exact policy approval. */
625
600
  pending: PendingGroupInviteResult[];
626
601
  /** Members the staged create could not admit: hard policy denials
627
- * (owner-only, blocked, inactive, not-found, …). */
602
+ * (closed, blocked, inactive, not-found, …). */
628
603
  skipped: Array<{
629
604
  userId: string;
630
605
  reason: string;
@@ -636,25 +611,16 @@ export interface CreateGroupResult {
636
611
  * invite is allowed; the error detail carries the attempted partition.
637
612
  */
638
613
  export declare const CREATE_GROUP_NO_ADDABLE_MEMBERS_CODE = "CREATE_GROUP_NO_ADDABLE_MEMBERS";
639
- /**
640
- * Error code on the 403 a create_group receives when the CREATOR itself is
641
- * a coding agent requiring explicit session setup: the group helper prepares
642
- * session configs for every coding-agent member including the creator, and
643
- * only the agent's human owner may provide them (v1 scoping — the owner
644
- * creates the group from the app instead).
645
- */
646
- export declare const CREATE_GROUP_CREATOR_SETUP_REQUIRED_CODE = "CREATE_GROUP_CREATOR_SETUP_REQUIRED";
647
614
  export interface AddMemberInput {
648
615
  conversationId: string;
649
616
  userId: string;
650
617
  }
651
- /** Policy approval and/or required owner setup yield one pending group invite. */
618
+ /** Policy approval yields one exact pending group invite. */
652
619
  export type AddMemberResult = {
653
620
  status: 'added';
654
621
  } | {
655
622
  status: 'pending';
656
623
  requestId: string;
657
- requirements: ContactRequestRequirements;
658
624
  };
659
625
  export interface RemoveMemberInput {
660
626
  conversationId: string;
@@ -681,26 +647,6 @@ export interface VerbContact {
681
647
  export interface ListContactsResult {
682
648
  contacts: VerbContact[];
683
649
  }
684
- export type ContactRequestListDirection = 'inbound' | 'outbound';
685
- export interface ListContactRequestsInput {
686
- /** Defaults to inbound. Outbound is the reconnect/recovery surface. */
687
- direction?: ContactRequestListDirection;
688
- /** Include terminal and starting lifecycle states; default false. */
689
- includeResolved?: boolean;
690
- /** Newest-first result cap; default and maximum 100. */
691
- limit?: number;
692
- }
693
- /** Items are SerializedContactRequest (contactRequest.ts), newest first, capped at 100. */
694
- export interface ListContactRequestsResult {
695
- requests: unknown[];
696
- }
697
- export interface CancelContactRequestInput {
698
- requestId: string;
699
- }
700
- export interface CancelContactRequestResult {
701
- status: 'cancelled';
702
- requestId: string;
703
- }
704
650
  export interface ListConversationsInput {
705
651
  /** Optional client-side cap; the REST endpoint returns all memberships. */
706
652
  limit?: number;
@@ -827,9 +773,6 @@ export declare const CANON_VERB_LIMITS_ARTIFACT: {
827
773
  readonly nativeKeys: 24;
828
774
  readonly nativeValueChars: 256;
829
775
  readonly nativeHandles: 16;
830
- /** Initial agent-session setup carried by send_to. */
831
- readonly sessionConfigValues: 24;
832
- readonly sessionConfigValueChars: 256;
833
776
  /** Deadlines (functions/src/utils/runtimeRequestHelpers.ts). */
834
777
  readonly minTimeoutMs: 1000;
835
778
  /** input/card/plan ceiling (30 minutes). */
@@ -865,10 +808,7 @@ export declare const CANON_VERB_LIMITS_ARTIFACT: {
865
808
  readonly sessionRuleToolPattern: "^[\\w.*:-]{1,128}$";
866
809
  readonly runtimeCorrelationValue: "^[A-Za-z0-9@_][A-Za-z0-9_.:@+\\-]{0,255}$";
867
810
  readonly runtimeMethod: "^[A-Za-z0-9_][A-Za-z0-9_./:\\-]{0,255}$";
868
- readonly runtimeOptionValue: "^[A-Za-z0-9@_][A-Za-z0-9_.:/@+\\-]{0,255}$";
869
- readonly workspaceOptionId: "^[A-Za-z0-9@_][A-Za-z0-9_.:@+\\-]{0,255}$";
870
811
  readonly runtimeHandleKey: "^[A-Za-z0-9_.:-]{1,80}$";
871
- readonly runtimeControlId: "^[A-Za-z0-9_-]{1,80}$";
872
812
  /** UUID issued by Canon's resumable-media session endpoint. */
873
813
  readonly resumableUploadId: "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-5][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$";
874
814
  };
@@ -72,10 +72,7 @@ export const VERB_ID_PATTERNS = {
72
72
  sessionRuleToolPattern: '^[\\w.*:-]{1,128}$',
73
73
  runtimeCorrelationValue: '^[A-Za-z0-9@_][A-Za-z0-9_.:@+\\-]{0,255}$',
74
74
  runtimeMethod: '^[A-Za-z0-9_][A-Za-z0-9_./:\\-]{0,255}$',
75
- runtimeOptionValue: '^[A-Za-z0-9@_][A-Za-z0-9_.:/@+\\-]{0,255}$',
76
- workspaceOptionId: '^[A-Za-z0-9@_][A-Za-z0-9_.:@+\\-]{0,255}$',
77
75
  runtimeHandleKey: '^[A-Za-z0-9_.:-]{1,80}$',
78
- runtimeControlId: '^[A-Za-z0-9_-]{1,80}$',
79
76
  /** UUID issued by Canon's resumable-media session endpoint. */
80
77
  resumableUploadId: '^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-5][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$',
81
78
  };
@@ -145,9 +142,6 @@ export const VERB_LIMITS = {
145
142
  nativeKeys: 24,
146
143
  nativeValueChars: 256,
147
144
  nativeHandles: 16,
148
- /** Initial agent-session setup carried by send_to. */
149
- sessionConfigValues: 24,
150
- sessionConfigValueChars: 256,
151
145
  /** Deadlines (functions/src/utils/runtimeRequestHelpers.ts). */
152
146
  minTimeoutMs: 1000,
153
147
  /** input/card/plan ceiling (30 minutes). */
@@ -198,9 +192,7 @@ export const CANON_VERB_NAMES = [
198
192
  'remove_member',
199
193
  'leave_conversation',
200
194
  'list_contacts',
201
- 'list_contact_requests',
202
195
  'list_conversations',
203
- 'cancel_contact_request',
204
196
  'no_reply',
205
197
  ];
206
198
  export const VERB_NATIVE_METADATA_KEYS = [
@@ -268,14 +260,6 @@ export function normalizeVerbNativeMetadata(value) {
268
260
  * invite is allowed; the error detail carries the attempted partition.
269
261
  */
270
262
  export const CREATE_GROUP_NO_ADDABLE_MEMBERS_CODE = 'CREATE_GROUP_NO_ADDABLE_MEMBERS';
271
- /**
272
- * Error code on the 403 a create_group receives when the CREATOR itself is
273
- * a coding agent requiring explicit session setup: the group helper prepares
274
- * session configs for every coding-agent member including the creator, and
275
- * only the agent's human owner may provide them (v1 scoping — the owner
276
- * creates the group from the app instead).
277
- */
278
- export const CREATE_GROUP_CREATOR_SETUP_REQUIRED_CODE = 'CREATE_GROUP_CREATOR_SETUP_REQUIRED';
279
263
  /**
280
264
  * The `note` the server returns on a `no_reply` ack — the model's closure
281
265
  * sentence. It lives here, not in a host, because every binding surfaces the
@@ -123,51 +123,6 @@ export declare const VERB_NATIVE_METADATA_JSON_SCHEMA: {
123
123
  };
124
124
  };
125
125
  };
126
- export declare const VERB_SESSION_CONFIG_JSON_SCHEMA: {
127
- readonly type: "object";
128
- readonly description: string;
129
- readonly additionalProperties: false;
130
- readonly properties: {
131
- readonly model: {
132
- readonly type: "string";
133
- readonly pattern: "^[A-Za-z0-9@_][A-Za-z0-9_.:/@+\\-]{0,255}$";
134
- readonly maxLength: 256;
135
- };
136
- readonly permissionMode: {
137
- readonly type: "string";
138
- readonly pattern: "^[A-Za-z0-9@_][A-Za-z0-9_.:/@+\\-]{0,255}$";
139
- readonly maxLength: 256;
140
- };
141
- readonly effort: {
142
- readonly type: "string";
143
- readonly pattern: "^[A-Za-z0-9@_][A-Za-z0-9_.:/@+\\-]{0,255}$";
144
- readonly maxLength: 256;
145
- };
146
- readonly workspaceId: {
147
- readonly type: "string";
148
- readonly pattern: "^[A-Za-z0-9@_][A-Za-z0-9_.:@+\\-]{0,255}$";
149
- readonly maxLength: 256;
150
- };
151
- readonly executionMode: {
152
- readonly enum: readonly ["worktree", "locked"];
153
- };
154
- readonly runtimeControlValues: {
155
- readonly type: "object";
156
- readonly maxProperties: 24;
157
- readonly propertyNames: {
158
- readonly pattern: "^[A-Za-z0-9_-]{1,80}$";
159
- readonly not: {
160
- readonly enum: readonly ["model", "workspace", "executionMode", "permissionMode", "effort", "interrupt", "runtimeControlValues", "updatedAt", "updatedBy"];
161
- };
162
- };
163
- readonly additionalProperties: {
164
- readonly type: "string";
165
- readonly pattern: "^[A-Za-z0-9@_][A-Za-z0-9_.:/@+\\-]{0,255}$";
166
- readonly maxLength: 256;
167
- };
168
- };
169
- };
170
- };
171
126
  export declare const CANON_VERBS_JSON_SCHEMA: {
172
127
  readonly $schema: "https://json-schema.org/draft/2020-12/schema";
173
128
  readonly $id: "https://canonmsg.com/schemas/canon.verbs.v1.json";
@@ -183,20 +138,6 @@ export declare const CANON_VERBS_JSON_SCHEMA: {
183
138
  };
184
139
  readonly description: string;
185
140
  };
186
- readonly groupInviteRequirements: {
187
- readonly type: "object";
188
- readonly description: string;
189
- readonly required: readonly ["policyApproval", "ownerSessionSetup"];
190
- readonly additionalProperties: false;
191
- readonly properties: {
192
- readonly policyApproval: {
193
- readonly type: "boolean";
194
- };
195
- readonly ownerSessionSetup: {
196
- readonly type: "boolean";
197
- };
198
- };
199
- };
200
141
  readonly selfContext: {
201
142
  readonly type: "object";
202
143
  readonly description: string;
@@ -633,51 +574,6 @@ export declare const CANON_VERBS_JSON_SCHEMA: {
633
574
  };
634
575
  };
635
576
  };
636
- readonly sessionConfig: {
637
- readonly type: "object";
638
- readonly description: string;
639
- readonly additionalProperties: false;
640
- readonly properties: {
641
- readonly model: {
642
- readonly type: "string";
643
- readonly pattern: "^[A-Za-z0-9@_][A-Za-z0-9_.:/@+\\-]{0,255}$";
644
- readonly maxLength: 256;
645
- };
646
- readonly permissionMode: {
647
- readonly type: "string";
648
- readonly pattern: "^[A-Za-z0-9@_][A-Za-z0-9_.:/@+\\-]{0,255}$";
649
- readonly maxLength: 256;
650
- };
651
- readonly effort: {
652
- readonly type: "string";
653
- readonly pattern: "^[A-Za-z0-9@_][A-Za-z0-9_.:/@+\\-]{0,255}$";
654
- readonly maxLength: 256;
655
- };
656
- readonly workspaceId: {
657
- readonly type: "string";
658
- readonly pattern: "^[A-Za-z0-9@_][A-Za-z0-9_.:@+\\-]{0,255}$";
659
- readonly maxLength: 256;
660
- };
661
- readonly executionMode: {
662
- readonly enum: readonly ["worktree", "locked"];
663
- };
664
- readonly runtimeControlValues: {
665
- readonly type: "object";
666
- readonly maxProperties: 24;
667
- readonly propertyNames: {
668
- readonly pattern: "^[A-Za-z0-9_-]{1,80}$";
669
- readonly not: {
670
- readonly enum: readonly ["model", "workspace", "executionMode", "permissionMode", "effort", "interrupt", "runtimeControlValues", "updatedAt", "updatedBy"];
671
- };
672
- };
673
- readonly additionalProperties: {
674
- readonly type: "string";
675
- readonly pattern: "^[A-Za-z0-9@_][A-Za-z0-9_.:/@+\\-]{0,255}$";
676
- readonly maxLength: 256;
677
- };
678
- };
679
- };
680
- };
681
577
  readonly send_to_input: {
682
578
  readonly type: "object";
683
579
  readonly description: string;
@@ -716,14 +612,6 @@ export declare const CANON_VERBS_JSON_SCHEMA: {
716
612
  readonly sessionSelection: {
717
613
  $ref: string;
718
614
  };
719
- readonly sessionConfig: {
720
- readonly oneOf: readonly [{
721
- $ref: string;
722
- }, {
723
- readonly type: "null";
724
- }];
725
- readonly description: string;
726
- };
727
615
  readonly messageOptions: {
728
616
  $ref: string;
729
617
  };
@@ -1452,7 +1340,7 @@ export declare const CANON_VERBS_JSON_SCHEMA: {
1452
1340
  readonly type: "array";
1453
1341
  readonly items: {
1454
1342
  readonly type: "object";
1455
- readonly required: readonly ["userId", "requestId", "requirements"];
1343
+ readonly required: readonly ["userId", "requestId"];
1456
1344
  readonly additionalProperties: true;
1457
1345
  readonly properties: {
1458
1346
  readonly userId: {
@@ -1461,9 +1349,6 @@ export declare const CANON_VERBS_JSON_SCHEMA: {
1461
1349
  readonly requestId: {
1462
1350
  readonly type: "string";
1463
1351
  };
1464
- readonly requirements: {
1465
- $ref: string;
1466
- };
1467
1352
  };
1468
1353
  };
1469
1354
  };
@@ -1502,7 +1387,7 @@ export declare const CANON_VERBS_JSON_SCHEMA: {
1502
1387
  };
1503
1388
  };
1504
1389
  readonly add_member_result: {
1505
- readonly description: string;
1390
+ readonly description: "Targets needing policy approval yield an exact pending group invite.";
1506
1391
  readonly oneOf: readonly [{
1507
1392
  readonly type: "object";
1508
1393
  readonly required: readonly ["status"];
@@ -1514,7 +1399,7 @@ export declare const CANON_VERBS_JSON_SCHEMA: {
1514
1399
  };
1515
1400
  }, {
1516
1401
  readonly type: "object";
1517
- readonly required: readonly ["status", "requestId", "requirements"];
1402
+ readonly required: readonly ["status", "requestId"];
1518
1403
  readonly additionalProperties: true;
1519
1404
  readonly properties: {
1520
1405
  readonly status: {
@@ -1523,9 +1408,6 @@ export declare const CANON_VERBS_JSON_SCHEMA: {
1523
1408
  readonly requestId: {
1524
1409
  readonly type: "string";
1525
1410
  };
1526
- readonly requirements: {
1527
- $ref: string;
1528
- };
1529
1411
  };
1530
1412
  }];
1531
1413
  };
@@ -1612,71 +1494,6 @@ export declare const CANON_VERBS_JSON_SCHEMA: {
1612
1494
  };
1613
1495
  };
1614
1496
  };
1615
- readonly list_contact_requests_input: {
1616
- readonly type: "object";
1617
- readonly additionalProperties: false;
1618
- readonly properties: {
1619
- readonly direction: {
1620
- readonly enum: readonly ["inbound", "outbound"];
1621
- };
1622
- readonly includeResolved: {
1623
- readonly type: "boolean";
1624
- };
1625
- readonly limit: {
1626
- readonly type: "integer";
1627
- readonly minimum: 1;
1628
- readonly maximum: 100;
1629
- };
1630
- };
1631
- };
1632
- readonly list_contact_requests_result: {
1633
- readonly type: "object";
1634
- readonly description: string;
1635
- readonly required: readonly ["requests"];
1636
- readonly additionalProperties: true;
1637
- readonly properties: {
1638
- readonly requests: {
1639
- readonly type: "array";
1640
- readonly items: {
1641
- readonly type: "object";
1642
- readonly required: readonly ["id", "requesterId", "targetId", "status", "kind", "phase"];
1643
- readonly additionalProperties: true;
1644
- readonly properties: {
1645
- readonly id: {
1646
- readonly type: "string";
1647
- };
1648
- readonly requesterId: {
1649
- readonly type: "string";
1650
- };
1651
- readonly requesterName: {
1652
- readonly type: "string";
1653
- };
1654
- readonly targetId: {
1655
- readonly type: "string";
1656
- };
1657
- readonly status: {
1658
- readonly enum: readonly ["pending", "approved", "rejected", "expired", "cancelled"];
1659
- };
1660
- readonly kind: {
1661
- readonly enum: readonly ["dm", "group_invite"];
1662
- };
1663
- readonly phase: {
1664
- readonly enum: readonly ["awaiting_owner", "starting", "connected", "rejected", "expired", "cancelled", "failed"];
1665
- };
1666
- readonly message: {
1667
- readonly type: readonly ["string", "null"];
1668
- };
1669
- readonly createdAt: {
1670
- readonly type: readonly ["string", "null"];
1671
- };
1672
- readonly expiresAt: {
1673
- readonly type: readonly ["string", "null"];
1674
- };
1675
- };
1676
- };
1677
- };
1678
- };
1679
- };
1680
1497
  readonly list_conversations_input: {
1681
1498
  readonly type: "object";
1682
1499
  readonly additionalProperties: false;
@@ -1756,30 +1573,6 @@ export declare const CANON_VERBS_JSON_SCHEMA: {
1756
1573
  };
1757
1574
  };
1758
1575
  };
1759
- readonly cancel_contact_request_input: {
1760
- readonly type: "object";
1761
- readonly required: readonly ["requestId"];
1762
- readonly additionalProperties: false;
1763
- readonly properties: {
1764
- readonly requestId: {
1765
- readonly type: "string";
1766
- readonly pattern: "^[A-Za-z0-9_.:-]{1,160}$";
1767
- };
1768
- };
1769
- };
1770
- readonly cancel_contact_request_result: {
1771
- readonly type: "object";
1772
- readonly required: readonly ["status", "requestId"];
1773
- readonly additionalProperties: true;
1774
- readonly properties: {
1775
- readonly status: {
1776
- readonly const: "cancelled";
1777
- };
1778
- readonly requestId: {
1779
- readonly type: "string";
1780
- };
1781
- };
1782
- };
1783
1576
  readonly no_reply_input: {
1784
1577
  readonly type: "object";
1785
1578
  readonly description: string;