@opengeni/contracts 1.0.1 → 2.2.0-canary.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (112) hide show
  1. package/dist/agent-authored-durable-text.d.ts +64 -0
  2. package/dist/atlassian.d.ts +1 -0
  3. package/dist/atlassian.js +14 -13
  4. package/dist/{chunk-Y3MLSLB4.js → chunk-3SIZGL3O.js} +42 -30
  5. package/dist/chunk-3SIZGL3O.js.map +1 -0
  6. package/dist/{chunk-JBCIY7QD.js → chunk-7RMTKFJW.js} +45 -22
  7. package/dist/chunk-7RMTKFJW.js.map +1 -0
  8. package/dist/{chunk-NX5JNF4L.js → chunk-7ZZ3R27P.js} +9322 -5798
  9. package/dist/chunk-7ZZ3R27P.js.map +1 -0
  10. package/dist/{chunk-5UDNP7AO.js → chunk-MRWYRAS5.js} +56 -8
  11. package/dist/chunk-MRWYRAS5.js.map +1 -0
  12. package/dist/{chunk-LW7OH6CS.js → chunk-N6GRVXAJ.js} +6 -5
  13. package/dist/chunk-N6GRVXAJ.js.map +1 -0
  14. package/dist/{chunk-TZ6YEYN4.js → chunk-NVJMJWLL.js} +3 -1
  15. package/dist/chunk-NVJMJWLL.js.map +1 -0
  16. package/dist/chunk-PX3VCKAU.js +29 -0
  17. package/dist/chunk-PX3VCKAU.js.map +1 -0
  18. package/dist/{chunk-LSB7GRLG.js → chunk-TXTQIYCV.js} +15 -11
  19. package/dist/chunk-TXTQIYCV.js.map +1 -0
  20. package/dist/{chunk-CADSX6UN.js → chunk-Y3KNXVTD.js} +2 -2
  21. package/dist/chunk-YBW5JSA3.js +251 -0
  22. package/dist/chunk-YBW5JSA3.js.map +1 -0
  23. package/dist/company-brain-governed-writes.d.ts +475 -0
  24. package/dist/company-brain.d.ts +398 -0
  25. package/dist/company-profile.d.ts +268 -0
  26. package/dist/connection-authority.d.ts +501 -0
  27. package/dist/connection-authority.js +364 -0
  28. package/dist/connection-authority.js.map +1 -0
  29. package/dist/connector-attachments.d.ts +95 -0
  30. package/dist/connector-attachments.js +51 -0
  31. package/dist/connector-attachments.js.map +1 -0
  32. package/dist/editable-artifact-codec-registry.d.ts +16 -7
  33. package/dist/editable-artifact-codec-registry.js +18 -8
  34. package/dist/editable-artifact-committed-transaction.d.ts +2 -2
  35. package/dist/editable-artifact-committed-transaction.js +2 -2
  36. package/dist/editable-artifact-live.d.ts +11 -12
  37. package/dist/editable-artifact-live.js +111 -46
  38. package/dist/editable-artifact-live.js.map +1 -1
  39. package/dist/editable-artifact-serialized-commit.d.ts +2 -1
  40. package/dist/editable-artifact-serialized-commit.js +9 -8
  41. package/dist/editable-artifact-versions.d.ts +20 -5
  42. package/dist/editable-artifact-versions.js +23 -5
  43. package/dist/editable-artifacts.d.ts +2 -0
  44. package/dist/editable-artifacts.js +51 -39
  45. package/dist/google-drive.d.ts +1 -0
  46. package/dist/google-drive.js +14 -13
  47. package/dist/google-drive.js.map +1 -1
  48. package/dist/governed-learning-activation.d.ts +154 -0
  49. package/dist/governed-learning-evaluator.d.ts +152 -0
  50. package/dist/index.d.ts +12224 -1328
  51. package/dist/index.js +831 -115
  52. package/dist/interaction.d.ts +68 -0
  53. package/dist/knowledge.d.ts +119 -0
  54. package/dist/organization-membership-lifecycle.d.ts +516 -0
  55. package/dist/permissions.d.ts +52 -0
  56. package/dist/personal-github.d.ts +319 -0
  57. package/dist/personal-github.js +209 -0
  58. package/dist/personal-github.js.map +1 -0
  59. package/dist/preference-registry.d.ts +17 -0
  60. package/dist/remember.d.ts +331 -0
  61. package/dist/sandbox-file-artifacts.d.ts +56 -0
  62. package/dist/sandbox-snapshots.d.ts +21 -0
  63. package/dist/slack-bot-scopes.d.ts +34 -14
  64. package/dist/slack-bot-scopes.js +5 -1
  65. package/dist/spreadsheet-artifact-commands.d.ts +2 -3
  66. package/dist/spreadsheet-artifact-commands.js +4 -2
  67. package/dist/spreadsheet-artifact-query.js +3 -2
  68. package/dist/task-notes.d.ts +42 -1
  69. package/dist/tool-result-spill.d.ts +16 -0
  70. package/dist/workspace-instruction-policies.d.ts +81 -0
  71. package/dist/workspace-learning-administration.d.ts +289 -0
  72. package/package.json +13 -1
  73. package/src/agent-authored-durable-text.ts +105 -0
  74. package/src/company-brain-governed-writes.ts +356 -0
  75. package/src/company-brain.ts +201 -0
  76. package/src/company-profile.ts +122 -1
  77. package/src/connection-authority.ts +413 -0
  78. package/src/connector-attachments.ts +327 -0
  79. package/src/editable-artifact-codec-registry.ts +55 -17
  80. package/src/editable-artifact-committed-transaction.ts +44 -31
  81. package/src/editable-artifact-live.ts +123 -57
  82. package/src/editable-artifact-serialized-commit.ts +2 -1
  83. package/src/editable-artifact-versions.ts +26 -5
  84. package/src/editable-artifacts.ts +2 -0
  85. package/src/governed-learning-activation.ts +191 -0
  86. package/src/governed-learning-evaluator.ts +176 -0
  87. package/src/index.ts +3033 -392
  88. package/src/interaction.ts +55 -1
  89. package/src/knowledge.ts +118 -6
  90. package/src/organization-membership-lifecycle.ts +330 -0
  91. package/src/permissions.ts +55 -0
  92. package/src/personal-github.ts +267 -0
  93. package/src/preference-registry.ts +17 -0
  94. package/src/remember.ts +242 -0
  95. package/src/sandbox-file-artifacts.ts +65 -0
  96. package/src/sandbox-snapshots.ts +78 -0
  97. package/src/slack-bot-scopes.ts +81 -9
  98. package/src/spreadsheet-artifact-commands.ts +12 -13
  99. package/src/task-notes.ts +14 -1
  100. package/src/tool-result-spill.ts +35 -0
  101. package/src/workspace-instruction-policies.ts +30 -0
  102. package/src/workspace-learning-administration.ts +88 -0
  103. package/dist/chunk-5UDNP7AO.js.map +0 -1
  104. package/dist/chunk-BVGIYW7D.js +0 -11
  105. package/dist/chunk-BVGIYW7D.js.map +0 -1
  106. package/dist/chunk-JBCIY7QD.js.map +0 -1
  107. package/dist/chunk-LSB7GRLG.js.map +0 -1
  108. package/dist/chunk-LW7OH6CS.js.map +0 -1
  109. package/dist/chunk-NX5JNF4L.js.map +0 -1
  110. package/dist/chunk-TZ6YEYN4.js.map +0 -1
  111. package/dist/chunk-Y3MLSLB4.js.map +0 -1
  112. /package/dist/{chunk-CADSX6UN.js.map → chunk-Y3KNXVTD.js.map} +0 -0
@@ -0,0 +1,413 @@
1
+ import { z } from "zod";
2
+ import {
3
+ ConnectionKind,
4
+ ManagedUserResourceGrantMode,
5
+ SessionTenancyVisibility,
6
+ UserResourceAuthorityGrant,
7
+ UserResourceDelegation,
8
+ } from "./index";
9
+
10
+ /** The only generic grant action that authorizes use of a connection. */
11
+ export const ConnectionUseAction = z.literal("connection.use");
12
+ export type ConnectionUseAction = z.infer<typeof ConnectionUseAction>;
13
+
14
+ /**
15
+ * Connection authority is either workspace-owned or user-owned. Omission is
16
+ * intentionally compatible with the historical workspace connection path.
17
+ */
18
+ export const ConnectionAuthorityEnvelope = z
19
+ .object({
20
+ scope: z.enum(["workspace", "user"]).default("workspace"),
21
+ userDelegation: UserResourceDelegation.optional(),
22
+ })
23
+ .strict()
24
+ .superRefine((value, context) => {
25
+ if (value.scope === "workspace" && value.userDelegation !== undefined) {
26
+ context.addIssue({
27
+ code: "custom",
28
+ path: ["userDelegation"],
29
+ message: "workspace connections cannot carry user delegation",
30
+ });
31
+ return;
32
+ }
33
+ if (value.scope === "user" && value.userDelegation === undefined) {
34
+ context.addIssue({
35
+ code: "custom",
36
+ path: ["userDelegation"],
37
+ message: "user connections require an immutable delegation",
38
+ });
39
+ return;
40
+ }
41
+ if (value.userDelegation && value.userDelegation.action !== ConnectionUseAction.value) {
42
+ context.addIssue({
43
+ code: "custom",
44
+ path: ["userDelegation", "action"],
45
+ message: "connection delegation must use connection.use",
46
+ });
47
+ }
48
+ });
49
+ export type ConnectionAuthorityEnvelope = z.infer<typeof ConnectionAuthorityEnvelope>;
50
+
51
+ export const ConnectionAuthorityGrant = UserResourceAuthorityGrant.extend({
52
+ action: ConnectionUseAction,
53
+ }).strict();
54
+ export type ConnectionAuthorityGrant = z.infer<typeof ConnectionAuthorityGrant>;
55
+
56
+ /** Owner-only opaque projection; connection identity and owner metadata stay server-side. */
57
+ export const ConnectionAuthoritySummary = z
58
+ .object({
59
+ authorityId: z.string().uuid(),
60
+ resourceId: z.string().uuid(),
61
+ originWorkspaceId: z.string().uuid().nullable(),
62
+ generation: z.number().int().positive(),
63
+ status: z.enum(["active", "retained", "revoked"]),
64
+ grants: z.array(ConnectionAuthorityGrant),
65
+ })
66
+ .strict();
67
+ export type ConnectionAuthoritySummary = z.infer<typeof ConnectionAuthoritySummary>;
68
+
69
+ export const ListConnectionAuthoritiesQuery = z
70
+ .object({
71
+ scope: z.literal("user"),
72
+ cursor: z.string().uuid().optional(),
73
+ limit: z.coerce.number().int().min(1).max(100).default(50),
74
+ })
75
+ .strict();
76
+ export const ListConnectionAuthoritiesResponse = z
77
+ .object({
78
+ scope: z.literal("user"),
79
+ authorities: z.array(ConnectionAuthoritySummary),
80
+ nextCursor: z.string().uuid().nullable(),
81
+ })
82
+ .strict();
83
+
84
+ export const IssueConnectionUseGrantRequest = z
85
+ .object({
86
+ scope: z.literal("user"),
87
+ mode: ManagedUserResourceGrantMode,
88
+ context: SessionTenancyVisibility,
89
+ sessionId: z.string().uuid().nullable().optional(),
90
+ expectedAuthorityEpoch: z.number().int().positive().nullable().optional(),
91
+ workspaceSharedAcknowledged: z.boolean().default(false),
92
+ })
93
+ .strict()
94
+ .superRefine((value, context) => {
95
+ if (value.context === "workspace_shared" && !value.workspaceSharedAcknowledged) {
96
+ context.addIssue({
97
+ code: "custom",
98
+ path: ["workspaceSharedAcknowledged"],
99
+ message: "workspace_shared requires durable shared-output acknowledgement",
100
+ });
101
+ }
102
+ if (value.mode === "always" && (value.sessionId || value.expectedAuthorityEpoch)) {
103
+ context.addIssue({ code: "custom", path: ["sessionId"], message: "always is unbound" });
104
+ }
105
+ if (value.mode === "session" && (!value.sessionId || !value.expectedAuthorityEpoch)) {
106
+ context.addIssue({
107
+ code: "custom",
108
+ path: ["sessionId"],
109
+ message: "session requires a target session and expectedAuthorityEpoch",
110
+ });
111
+ }
112
+ });
113
+ export type IssueConnectionUseGrantRequest = z.infer<typeof IssueConnectionUseGrantRequest>;
114
+
115
+ export const RevokeConnectionUseGrantQuery = z.object({ scope: z.literal("user") }).strict();
116
+
117
+ export const ConnectionUseGrantMutationResponse = z
118
+ .object({
119
+ scope: z.literal("user"),
120
+ grant: ConnectionAuthorityGrant,
121
+ })
122
+ .strict();
123
+ export type ConnectionUseGrantMutationResponse = z.infer<typeof ConnectionUseGrantMutationResponse>;
124
+
125
+ export const ConnectionUseGrantRevocationResponse = z
126
+ .object({
127
+ scope: z.literal("user"),
128
+ grant: z
129
+ .object({
130
+ grantId: z.string().uuid(),
131
+ generation: z.number().int().positive(),
132
+ status: z.literal("revoked"),
133
+ revokedAt: z.string().datetime(),
134
+ })
135
+ .strict(),
136
+ })
137
+ .strict();
138
+ export type ConnectionUseGrantRevocationResponse = z.infer<
139
+ typeof ConnectionUseGrantRevocationResponse
140
+ >;
141
+
142
+ export const ConnectionAuthoritySelectionSource = z.enum([
143
+ "explicit_workspace",
144
+ "legacy_workspace_omission",
145
+ "legacy_user_compatibility",
146
+ "user_delegation",
147
+ ]);
148
+ export type ConnectionAuthoritySelectionSource = z.infer<typeof ConnectionAuthoritySelectionSource>;
149
+
150
+ export const ConnectionUseSelectionSource = z
151
+ .string()
152
+ .min(1)
153
+ .max(128)
154
+ .regex(/^[a-z0-9](?:[a-z0-9._:-]*[a-z0-9])?$/u);
155
+ export type ConnectionUseSelectionSource = z.infer<typeof ConnectionUseSelectionSource>;
156
+
157
+ const AcceptedConnectionWork = z.discriminatedUnion("kind", [
158
+ z
159
+ .object({
160
+ kind: z.literal("turn"),
161
+ turnId: z.string().uuid(),
162
+ })
163
+ .strict(),
164
+ z
165
+ .object({
166
+ kind: z.literal("scheduled_task"),
167
+ taskId: z.string().uuid(),
168
+ taskAuthorityRevision: z.number().int().positive(),
169
+ runId: z.string().uuid(),
170
+ })
171
+ .strict(),
172
+ ]);
173
+
174
+ /**
175
+ * Internal, credential-free authority frozen when work is accepted. Personal
176
+ * owner identity is retained only for live authorization and usage/audit
177
+ * attribution; it is never part of the public delegation envelope.
178
+ */
179
+ export const ConnectionUseAuthoritySnapshot = z
180
+ .object({
181
+ organizationId: z.string().uuid(),
182
+ originWorkspaceId: z.string().uuid(),
183
+ targetWorkspaceId: z.string().uuid(),
184
+ targetSessionId: z.string().uuid(),
185
+ targetSessionVisibility: SessionTenancyVisibility,
186
+ targetSessionAuthorityEpoch: z.number().int().positive(),
187
+ acceptedWork: AcceptedConnectionWork,
188
+ connectionId: z.string().uuid(),
189
+ connectionGeneration: z.number().int().positive(),
190
+ connectionStatus: z.literal("active"),
191
+ providerDomain: z.string().min(1).max(2048),
192
+ connectionKind: ConnectionKind,
193
+ scope: z.enum(["workspace", "user", "legacy_user"]),
194
+ ownerSubjectId: z.string().min(1).max(512).nullable(),
195
+ ownerOrganizationMembershipId: z.string().uuid().nullable(),
196
+ ownerMembershipAuthorizationRevision: z.number().int().positive().nullable().default(null),
197
+ authoritySource: ConnectionAuthoritySelectionSource,
198
+ selectionSources: z.array(ConnectionUseSelectionSource).min(1).max(128),
199
+ userDelegation: UserResourceDelegation.nullable(),
200
+ })
201
+ .strict()
202
+ .superRefine((value, context) => {
203
+ const ownedBySubject = value.scope !== "workspace";
204
+ const delegated = value.scope === "user";
205
+ if (ownedBySubject !== (value.ownerSubjectId !== null)) {
206
+ context.addIssue({
207
+ code: "custom",
208
+ path: ["ownerSubjectId"],
209
+ message: "personal connections retain an owner subject",
210
+ });
211
+ }
212
+ if (delegated !== (value.ownerOrganizationMembershipId !== null)) {
213
+ context.addIssue({
214
+ code: "custom",
215
+ path: ["ownerOrganizationMembershipId"],
216
+ message: "only user connections retain an owner membership",
217
+ });
218
+ }
219
+ if (delegated !== (value.ownerMembershipAuthorizationRevision !== null)) {
220
+ context.addIssue({
221
+ code: "custom",
222
+ path: ["ownerMembershipAuthorizationRevision"],
223
+ message: "only user connections retain an owner membership revision",
224
+ });
225
+ }
226
+ if (delegated !== (value.userDelegation !== null)) {
227
+ context.addIssue({
228
+ code: "custom",
229
+ path: ["userDelegation"],
230
+ message: "only user connections retain a delegation",
231
+ });
232
+ }
233
+ if (delegated && value.authoritySource !== "user_delegation") {
234
+ context.addIssue({
235
+ code: "custom",
236
+ path: ["authoritySource"],
237
+ message: "user connections require user_delegation provenance",
238
+ });
239
+ }
240
+ if (!delegated && value.authoritySource === "user_delegation") {
241
+ context.addIssue({
242
+ code: "custom",
243
+ path: ["authoritySource"],
244
+ message: "non-delegated connections cannot claim user delegation provenance",
245
+ });
246
+ }
247
+ if (value.scope === "legacy_user" && value.authoritySource !== "legacy_user_compatibility") {
248
+ context.addIssue({
249
+ code: "custom",
250
+ path: ["authoritySource"],
251
+ message: "legacy user connections require explicit compatibility provenance",
252
+ });
253
+ }
254
+ if (value.scope === "workspace" && value.authoritySource === "legacy_user_compatibility") {
255
+ context.addIssue({
256
+ code: "custom",
257
+ path: ["authoritySource"],
258
+ message: "workspace connections cannot claim legacy user provenance",
259
+ });
260
+ }
261
+ if (!delegated && value.originWorkspaceId !== value.targetWorkspaceId) {
262
+ context.addIssue({
263
+ code: "custom",
264
+ path: ["originWorkspaceId"],
265
+ message: "workspace connections must be owned by the target workspace",
266
+ });
267
+ }
268
+ const delegation = value.userDelegation;
269
+ if (!delegation) return;
270
+ const exactFacts: Array<[boolean, (string | number)[], string]> = [
271
+ [
272
+ delegation.organizationId === value.organizationId,
273
+ ["userDelegation", "organizationId"],
274
+ "delegation organization mismatch",
275
+ ],
276
+ [
277
+ delegation.workspaceId === value.targetWorkspaceId,
278
+ ["userDelegation", "workspaceId"],
279
+ "delegation target workspace mismatch",
280
+ ],
281
+ [
282
+ delegation.action === ConnectionUseAction.value,
283
+ ["userDelegation", "action"],
284
+ "delegation action mismatch",
285
+ ],
286
+ [
287
+ delegation.context === value.targetSessionVisibility,
288
+ ["userDelegation", "context"],
289
+ "delegation visibility mismatch",
290
+ ],
291
+ ];
292
+ for (const [matches, path, message] of exactFacts) {
293
+ if (!matches) context.addIssue({ code: "custom", path, message });
294
+ }
295
+ if (delegation.sessionId !== null && delegation.sessionId !== value.targetSessionId) {
296
+ context.addIssue({
297
+ code: "custom",
298
+ path: ["userDelegation", "sessionId"],
299
+ message: "delegation session mismatch",
300
+ });
301
+ }
302
+ if (
303
+ delegation.authorityEpoch !== null &&
304
+ delegation.authorityEpoch !== value.targetSessionAuthorityEpoch
305
+ ) {
306
+ context.addIssue({
307
+ code: "custom",
308
+ path: ["userDelegation", "authorityEpoch"],
309
+ message: "delegation authority epoch mismatch",
310
+ });
311
+ }
312
+ });
313
+ export type ConnectionUseAuthoritySnapshot = z.infer<typeof ConnectionUseAuthoritySnapshot>;
314
+
315
+ export const ConnectionUseDenialReason = z.enum([
316
+ "tenant_mismatch",
317
+ "workspace_access_inactive",
318
+ "session_inactive",
319
+ "session_identity_changed",
320
+ "session_visibility_changed",
321
+ "session_authority_epoch_changed",
322
+ "accepted_attempt_authority_required",
323
+ "accepted_snapshot_digest_changed",
324
+ "connection_missing",
325
+ "connection_identity_changed",
326
+ "connection_generation_changed",
327
+ "connection_status_inactive",
328
+ "connection_owner_changed",
329
+ "owner_membership_inactive",
330
+ "authority_missing",
331
+ "authority_identity_changed",
332
+ "authority_generation_changed",
333
+ "authority_status_inactive",
334
+ "grant_missing",
335
+ "grant_identity_changed",
336
+ "grant_generation_changed",
337
+ "grant_status_inactive",
338
+ "grant_expired",
339
+ "grant_already_consumed",
340
+ ]);
341
+ export type ConnectionUseDenialReason = z.infer<typeof ConnectionUseDenialReason>;
342
+
343
+ const ConnectionUseAttributionFields = z
344
+ .object({
345
+ organizationId: z.string().uuid(),
346
+ workspaceId: z.string().uuid(),
347
+ sessionId: z.string().uuid(),
348
+ connectionId: z.string().uuid(),
349
+ connectionGeneration: z.number().int().positive(),
350
+ scope: z.enum(["workspace", "user", "legacy_user"]),
351
+ ownerSubjectId: z.string().min(1).max(512).nullable(),
352
+ authorityId: z.string().uuid().nullable(),
353
+ grantId: z.string().uuid().nullable(),
354
+ })
355
+ .strict();
356
+
357
+ function refineConnectionUseAttribution(
358
+ value: z.infer<typeof ConnectionUseAttributionFields>,
359
+ context: z.RefinementCtx,
360
+ ): void {
361
+ const personal = value.scope !== "workspace";
362
+ for (const field of ["ownerSubjectId"] as const) {
363
+ if (personal !== (value[field] !== null)) {
364
+ context.addIssue({
365
+ code: "custom",
366
+ path: [field],
367
+ message: personal
368
+ ? `personal attribution requires ${field}`
369
+ : `workspace attribution cannot carry ${field}`,
370
+ });
371
+ }
372
+ }
373
+ const delegated = value.scope === "user";
374
+ for (const field of ["authorityId", "grantId"] as const) {
375
+ if (delegated !== (value[field] !== null)) {
376
+ context.addIssue({
377
+ code: "custom",
378
+ path: [field],
379
+ message: delegated
380
+ ? `delegated personal attribution requires ${field}`
381
+ : `non-delegated attribution cannot carry ${field}`,
382
+ });
383
+ }
384
+ }
385
+ }
386
+
387
+ /** Metadata-only attribution emitted after pre-use authorization. */
388
+ export const ConnectionUseAttribution = ConnectionUseAttributionFields.superRefine(
389
+ refineConnectionUseAttribution,
390
+ );
391
+ export type ConnectionUseAttribution = z.infer<typeof ConnectionUseAttribution>;
392
+
393
+ export const ConnectionUseAuditFact = ConnectionUseAttributionFields.extend({
394
+ outcome: z.enum(["authorized", "denied"]),
395
+ denialReason: ConnectionUseDenialReason.nullable(),
396
+ occurredAt: z.string().datetime({ offset: true }),
397
+ }).superRefine((value, context) => {
398
+ refineConnectionUseAttribution(value, context);
399
+ if ((value.outcome === "denied") !== (value.denialReason !== null)) {
400
+ context.addIssue({
401
+ code: "custom",
402
+ path: ["denialReason"],
403
+ message: "only denied connection use carries a denial reason",
404
+ });
405
+ }
406
+ });
407
+ export type ConnectionUseAuditFact = z.infer<typeof ConnectionUseAuditFact>;
408
+
409
+ export const ConnectionUseAuthorizationResult = z.discriminatedUnion("status", [
410
+ z.object({ status: z.literal("authorized"), attribution: ConnectionUseAttribution }).strict(),
411
+ z.object({ status: z.literal("denied"), reason: ConnectionUseDenialReason }).strict(),
412
+ ]);
413
+ export type ConnectionUseAuthorizationResult = z.infer<typeof ConnectionUseAuthorizationResult>;