@workwae/sdk 0.1.0-alpha.1 → 0.1.0-alpha.3

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 (64) hide show
  1. package/README.md +7 -7
  2. package/client.d.ts +1 -1
  3. package/contract/accounts/models.d.ts +85 -45
  4. package/contract/accounts/routes.d.ts +191 -29
  5. package/contract/ai/models.d.ts +0 -1
  6. package/contract/ai/routes.d.ts +9 -0
  7. package/contract/audit-log/models.d.ts +22 -5
  8. package/contract/audit-log/routes.d.ts +11 -1
  9. package/contract/calendar/models.d.ts +249 -74
  10. package/contract/calendar/routes.d.ts +574 -30
  11. package/contract/connect/models.d.ts +30 -16
  12. package/contract/connect/routes.d.ts +51 -7
  13. package/contract/connect-domain/models.d.ts +41 -0
  14. package/contract/connect-domain/routes.d.ts +197 -0
  15. package/contract/contacts/models.d.ts +0 -10
  16. package/contract/contacts/routes.d.ts +14 -0
  17. package/contract/custom-domain.d.ts +12 -0
  18. package/contract/email-validation/models.d.ts +119 -0
  19. package/contract/email-validation/routes.d.ts +106 -0
  20. package/contract/errors.d.ts +28 -20
  21. package/contract/events/models.d.ts +139 -79
  22. package/contract/events/routes.d.ts +54 -44
  23. package/contract/exports/routes.d.ts +10 -0
  24. package/contract/identities/models.d.ts +7 -9
  25. package/contract/identities/routes.d.ts +79 -10
  26. package/contract/limits.d.ts +27 -73
  27. package/contract/mail/models.d.ts +230 -50
  28. package/contract/mail/routes.d.ts +649 -59
  29. package/contract/mcp-keys/models.d.ts +125 -0
  30. package/contract/mcp-keys/routes.d.ts +151 -0
  31. package/contract/meetings/models.d.ts +39 -33
  32. package/contract/meetings/routes.d.ts +121 -23
  33. package/contract/oauth-apps/models.d.ts +6 -6
  34. package/contract/oauth-apps/routes.d.ts +34 -4
  35. package/contract/org-connections/models.d.ts +93 -39
  36. package/contract/org-connections/routes.d.ts +352 -43
  37. package/contract/plans/credit-packs.d.ts +30 -0
  38. package/contract/plans/models.d.ts +208 -0
  39. package/contract/primitives.d.ts +7 -62
  40. package/contract/public.d.ts +7 -0
  41. package/contract/reasons.d.ts +559 -21
  42. package/contract/router.d.ts +6447 -2719
  43. package/contract/scheduling/models.d.ts +405 -0
  44. package/contract/scheduling/routes.d.ts +756 -0
  45. package/contract/send/models.d.ts +140 -45
  46. package/contract/send/routes.d.ts +310 -31
  47. package/contract/settings/models.d.ts +73 -13
  48. package/contract/settings/routes.d.ts +56 -4
  49. package/contract/suppressions/models.d.ts +21 -28
  50. package/contract/suppressions/routes.d.ts +62 -14
  51. package/contract/templates/models.d.ts +0 -14
  52. package/contract/templates/routes.d.ts +30 -6
  53. package/contract/threads/models.d.ts +0 -5
  54. package/contract/threads/routes.d.ts +40 -0
  55. package/contract/tracking-domain/models.d.ts +41 -0
  56. package/contract/tracking-domain/routes.d.ts +193 -0
  57. package/contract/usage/models.d.ts +98 -126
  58. package/contract/usage/routes.d.ts +48 -20
  59. package/contract/webhooks/models.d.ts +45 -30
  60. package/contract/webhooks/routes.d.ts +52 -9
  61. package/contract/webhooks/signing.d.ts +0 -16
  62. package/index.js +1 -4334
  63. package/package.json +6 -7
  64. package/index.js.map +0 -59
@@ -1,11 +1,11 @@
1
1
  import * as z from "zod";
2
- /** How an OAuth-connected mailbox is read: the provider's API, or IMAP and SMTP with XOAUTH2. */
3
2
  export declare const MailAccess: z.ZodEnum<{
4
3
  imap: "imap";
5
4
  api: "api";
6
5
  }>;
7
6
  export type MailAccess = z.infer<typeof MailAccess>;
8
7
  export declare const ConnectOptions: z.ZodObject<{
8
+ mailEnabled: z.ZodOptional<z.ZodBoolean>;
9
9
  calendarEnabled: z.ZodOptional<z.ZodBoolean>;
10
10
  contactsEnabled: z.ZodOptional<z.ZodBoolean>;
11
11
  bodyStorage: z.ZodOptional<z.ZodEnum<{
@@ -20,26 +20,18 @@ export declare const ConnectOptions: z.ZodObject<{
20
20
  sharedMailboxesEnabled: z.ZodOptional<z.ZodBoolean>;
21
21
  }, z.core.$strip>;
22
22
  export type ConnectOptions = z.infer<typeof ConnectOptions>;
23
- /** What a hosted connect page offers: an OAuth sign-in, or the IMAP/SMTP form. */
24
23
  export declare const ConnectProvider: z.ZodEnum<{
25
24
  google: "google";
26
25
  microsoft: "microsoft";
27
26
  imap: "imap";
28
27
  }>;
29
28
  export type ConnectProvider = z.infer<typeof ConnectProvider>;
30
- /** Where a hosted session (account or meeting connect) stands. */
31
29
  export declare const ConnectSessionStatus: z.ZodEnum<{
32
30
  pending: "pending";
33
31
  completed: "completed";
34
32
  failed: "failed";
35
33
  }>;
36
34
  export type ConnectSessionStatus = z.infer<typeof ConnectSessionStatus>;
37
- /**
38
- * Why a connect flow failed: the `error` a connect redirect carries (status=error, OAuth and
39
- * meeting sign-ins, administrator consent, the hosted IMAP form's plan and billing failures) and
40
- * a failed session's `error`. Not an API reason: these travel in redirect URLs. Every code an
41
- * OAuth failure carries is one (the API checks this where they flow into a redirect).
42
- */
43
35
  export declare const ConnectErrorCode: z.ZodEnum<{
44
36
  session_used: "session_used";
45
37
  session_expired: "session_expired";
@@ -52,6 +44,7 @@ export declare const ConnectErrorCode: z.ZodEnum<{
52
44
  unsupported_provider: "unsupported_provider";
53
45
  token_exchange_failed: "token_exchange_failed";
54
46
  invalid_client: "invalid_client";
47
+ interaction_required: "interaction_required";
55
48
  invalid_grant: "invalid_grant";
56
49
  missing_refresh_token: "missing_refresh_token";
57
50
  scope_denied: "scope_denied";
@@ -70,6 +63,7 @@ export declare const ConnectErrorCode: z.ZodEnum<{
70
63
  unknown_meeting_app: "unknown_meeting_app";
71
64
  meeting_app_mismatch: "meeting_app_mismatch";
72
65
  meeting_app_secret_unreadable: "meeting_app_secret_unreadable";
66
+ connect_domain_inactive: "connect_domain_inactive";
73
67
  consent_failed: "consent_failed";
74
68
  consent_required: "consent_required";
75
69
  consent_revoked: "consent_revoked";
@@ -82,7 +76,10 @@ export declare const ConnectErrorCode: z.ZodEnum<{
82
76
  org_connection_not_found: "org_connection_not_found";
83
77
  org_connection_secret_unreadable: "org_connection_secret_unreadable";
84
78
  plan_limit_accounts: "plan_limit_accounts";
79
+ plan_required: "plan_required";
80
+ spend_cap_reached: "spend_cap_reached";
85
81
  plan_module_unavailable: "plan_module_unavailable";
82
+ connect_grants_nothing: "connect_grants_nothing";
86
83
  billing_past_due: "billing_past_due";
87
84
  internal_error: "internal_error";
88
85
  }>;
@@ -106,11 +103,15 @@ export declare const ConnectSessionPublic: z.ZodObject<{
106
103
  failed: "failed";
107
104
  }>;
108
105
  reauthEmail: z.ZodNullable<z.ZodString>;
106
+ modules: z.ZodObject<{
107
+ mail: z.ZodBoolean;
108
+ calendar: z.ZodBoolean;
109
+ contacts: z.ZodBoolean;
110
+ }, z.core.$strip>;
109
111
  loginHint: z.ZodNullable<z.ZodString>;
110
112
  expiresAt: z.ZodPreprocess<z.ZodDate, Date>;
111
113
  }, z.core.$strip>;
112
114
  export type ConnectSessionPublic = z.infer<typeof ConnectSessionPublic>;
113
- /** A hosted connect session as its creator sees it: where it stands, and what it connected. */
114
115
  export declare const ConnectSession: z.ZodObject<{
115
116
  id: z.ZodUUID;
116
117
  status: z.ZodEnum<{
@@ -130,6 +131,7 @@ export declare const ConnectSession: z.ZodObject<{
130
131
  unsupported_provider: "unsupported_provider";
131
132
  token_exchange_failed: "token_exchange_failed";
132
133
  invalid_client: "invalid_client";
134
+ interaction_required: "interaction_required";
133
135
  invalid_grant: "invalid_grant";
134
136
  missing_refresh_token: "missing_refresh_token";
135
137
  scope_denied: "scope_denied";
@@ -148,6 +150,7 @@ export declare const ConnectSession: z.ZodObject<{
148
150
  unknown_meeting_app: "unknown_meeting_app";
149
151
  meeting_app_mismatch: "meeting_app_mismatch";
150
152
  meeting_app_secret_unreadable: "meeting_app_secret_unreadable";
153
+ connect_domain_inactive: "connect_domain_inactive";
151
154
  consent_failed: "consent_failed";
152
155
  consent_required: "consent_required";
153
156
  consent_revoked: "consent_revoked";
@@ -160,19 +163,24 @@ export declare const ConnectSession: z.ZodObject<{
160
163
  org_connection_not_found: "org_connection_not_found";
161
164
  org_connection_secret_unreadable: "org_connection_secret_unreadable";
162
165
  plan_limit_accounts: "plan_limit_accounts";
166
+ plan_required: "plan_required";
167
+ spend_cap_reached: "spend_cap_reached";
163
168
  plan_module_unavailable: "plan_module_unavailable";
169
+ connect_grants_nothing: "connect_grants_nothing";
164
170
  billing_past_due: "billing_past_due";
165
171
  internal_error: "internal_error";
166
172
  }>>;
167
173
  accountId: z.ZodNullable<z.ZodUUID>;
168
174
  email: z.ZodNullable<z.ZodString>;
175
+ mcpKeyId: z.ZodNullable<z.ZodUUID>;
176
+ mcpKeySkipped: z.ZodNullable<z.ZodEnum<{
177
+ mcp_key_limit: "mcp_key_limit";
178
+ }>>;
169
179
  expiresAt: z.ZodPreprocess<z.ZodDate, Date>;
170
180
  createdAt: z.ZodPreprocess<z.ZodDate, Date>;
171
181
  }, z.core.$strip>;
172
182
  export type ConnectSession = z.infer<typeof ConnectSession>;
173
- /** The `state` a redirect flow echoes back. */
174
183
  export declare const RedirectState: z.ZodString;
175
- /** How long a hosted session stays usable. */
176
184
  export declare const SessionTtlSeconds: z.ZodDefault<z.ZodNumber>;
177
185
  export declare const CreateConnectSession: z.ZodObject<{
178
186
  redirectUri: z.ZodOptional<z.ZodURL>;
@@ -196,6 +204,7 @@ export declare const CreateConnectSession: z.ZodObject<{
196
204
  state: z.ZodOptional<z.ZodString>;
197
205
  accountId: z.ZodOptional<z.ZodUUID>;
198
206
  options: z.ZodOptional<z.ZodObject<{
207
+ mailEnabled: z.ZodOptional<z.ZodBoolean>;
199
208
  calendarEnabled: z.ZodOptional<z.ZodBoolean>;
200
209
  contactsEnabled: z.ZodOptional<z.ZodBoolean>;
201
210
  bodyStorage: z.ZodOptional<z.ZodEnum<{
@@ -209,10 +218,17 @@ export declare const CreateConnectSession: z.ZodObject<{
209
218
  }>>;
210
219
  sharedMailboxesEnabled: z.ZodOptional<z.ZodBoolean>;
211
220
  }, z.core.$strip>>;
221
+ mcp: z.ZodOptional<z.ZodObject<{
222
+ scopes: z.ZodArray<z.ZodEnum<{
223
+ read: "read";
224
+ write: "write";
225
+ send: "send";
226
+ }>>;
227
+ name: z.ZodDefault<z.ZodString>;
228
+ }, z.core.$strip>>;
212
229
  ttlSeconds: z.ZodDefault<z.ZodNumber>;
213
230
  }, z.core.$strip>;
214
231
  export type CreateConnectSession = z.infer<typeof CreateConnectSession>;
215
- /** A hosted session's page, to send its owner to. */
216
232
  export declare const SessionLink: z.ZodObject<{
217
233
  id: z.ZodUUID;
218
234
  url: z.ZodURL;
@@ -240,6 +256,7 @@ export declare const StartOAuthRequest: z.ZodObject<{
240
256
  state: z.ZodOptional<z.ZodString>;
241
257
  accountId: z.ZodOptional<z.ZodUUID>;
242
258
  options: z.ZodOptional<z.ZodObject<{
259
+ mailEnabled: z.ZodOptional<z.ZodBoolean>;
243
260
  calendarEnabled: z.ZodOptional<z.ZodBoolean>;
244
261
  contactsEnabled: z.ZodOptional<z.ZodBoolean>;
245
262
  bodyStorage: z.ZodOptional<z.ZodEnum<{
@@ -255,17 +272,14 @@ export declare const StartOAuthRequest: z.ZodObject<{
255
272
  }, z.core.$strip>>;
256
273
  }, z.core.$strip>;
257
274
  export type StartOAuthRequest = z.infer<typeof StartOAuthRequest>;
258
- /** Where to send the user to start the headless OAuth flow. */
259
275
  export declare const OAuthAuthorization: z.ZodObject<{
260
276
  authorizeUrl: z.ZodURL;
261
277
  }, z.core.$strip>;
262
278
  export type OAuthAuthorization = z.infer<typeof OAuthAuthorization>;
263
- /** A hosted page's session, by the token in its URL. */
264
279
  export declare const SessionTokenInput: z.ZodObject<{
265
280
  token: z.ZodString;
266
281
  }, z.core.$strip>;
267
282
  export type SessionTokenInput = z.infer<typeof SessionTokenInput>;
268
- /** Where the hosted page sends the browser next (the tenant's redirectUri). */
269
283
  export declare const HostedImapResult: z.ZodObject<{
270
284
  redirectUrl: z.ZodURL;
271
285
  }, z.core.$strip>;
@@ -1,5 +1,4 @@
1
1
  export declare const connectSessions: {
2
- /** Hosted flow: returns a link to the hosted connect page. */
3
2
  create: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodObject<{
4
3
  redirectUri: import("zod").ZodOptional<import("zod").ZodURL>;
5
4
  providers: import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodEnum<{
@@ -22,6 +21,7 @@ export declare const connectSessions: {
22
21
  state: import("zod").ZodOptional<import("zod").ZodString>;
23
22
  accountId: import("zod").ZodOptional<import("zod").ZodUUID>;
24
23
  options: import("zod").ZodOptional<import("zod").ZodObject<{
24
+ mailEnabled: import("zod").ZodOptional<import("zod").ZodBoolean>;
25
25
  calendarEnabled: import("zod").ZodOptional<import("zod").ZodBoolean>;
26
26
  contactsEnabled: import("zod").ZodOptional<import("zod").ZodBoolean>;
27
27
  bodyStorage: import("zod").ZodOptional<import("zod").ZodEnum<{
@@ -35,6 +35,14 @@ export declare const connectSessions: {
35
35
  }>>;
36
36
  sharedMailboxesEnabled: import("zod").ZodOptional<import("zod").ZodBoolean>;
37
37
  }, import("zod/v4/core").$strip>>;
38
+ mcp: import("zod").ZodOptional<import("zod").ZodObject<{
39
+ scopes: import("zod").ZodArray<import("zod").ZodEnum<{
40
+ read: "read";
41
+ write: "write";
42
+ send: "send";
43
+ }>>;
44
+ name: import("zod").ZodDefault<import("zod").ZodString>;
45
+ }, import("zod/v4/core").$strip>>;
38
46
  ttlSeconds: import("zod").ZodDefault<import("zod").ZodNumber>;
39
47
  }, import("zod/v4/core").$strip>, import("zod").ZodObject<{
40
48
  id: import("zod").ZodUUID;
@@ -47,6 +55,8 @@ export declare const connectSessions: {
47
55
  readonly missing_scope: "The API key lacks the scope the operation needs.";
48
56
  readonly role_forbidden: "The member's role does not allow the operation.";
49
57
  readonly account_token_forbidden: "An account token called an operation account tokens cannot call.";
58
+ readonly account_scope_forbidden: "A credential limited to specific accounts called an operation that reaches beyond them.";
59
+ readonly mcp_only_key: "An MCP-only key (minted for an end user's MCP client) was used outside the MCP server.";
50
60
  readonly rate_limited: "The tenant used up its plan's request rate; Retry-After says when the window ends.";
51
61
  readonly too_many_requests: "The credential has too many requests in flight at once; retry after Retry-After.";
52
62
  readonly overloaded: "The API is shedding load; retry after Retry-After.";
@@ -72,10 +82,15 @@ export declare const connectSessions: {
72
82
  status: 400;
73
83
  message: string;
74
84
  };
75
- plan_limit_storage: {
85
+ mcp_key_limit: {
86
+ status: 409;
87
+ message: string;
88
+ };
89
+ plan_module_unavailable: {
76
90
  status: 403;
77
91
  message: string;
78
92
  };
93
+ plan_limit_storage: import("../errors.js").DeclaredError<"plan_limit_storage">;
79
94
  storage_unavailable: {
80
95
  status: 400;
81
96
  message: string;
@@ -119,6 +134,7 @@ export declare const connectSessions: {
119
134
  unsupported_provider: "unsupported_provider";
120
135
  token_exchange_failed: "token_exchange_failed";
121
136
  invalid_client: "invalid_client";
137
+ interaction_required: "interaction_required";
122
138
  invalid_grant: "invalid_grant";
123
139
  missing_refresh_token: "missing_refresh_token";
124
140
  scope_denied: "scope_denied";
@@ -137,6 +153,7 @@ export declare const connectSessions: {
137
153
  unknown_meeting_app: "unknown_meeting_app";
138
154
  meeting_app_mismatch: "meeting_app_mismatch";
139
155
  meeting_app_secret_unreadable: "meeting_app_secret_unreadable";
156
+ connect_domain_inactive: "connect_domain_inactive";
140
157
  consent_failed: "consent_failed";
141
158
  consent_required: "consent_required";
142
159
  consent_revoked: "consent_revoked";
@@ -149,12 +166,19 @@ export declare const connectSessions: {
149
166
  org_connection_not_found: "org_connection_not_found";
150
167
  org_connection_secret_unreadable: "org_connection_secret_unreadable";
151
168
  plan_limit_accounts: "plan_limit_accounts";
169
+ plan_required: "plan_required";
170
+ spend_cap_reached: "spend_cap_reached";
152
171
  plan_module_unavailable: "plan_module_unavailable";
172
+ connect_grants_nothing: "connect_grants_nothing";
153
173
  billing_past_due: "billing_past_due";
154
174
  internal_error: "internal_error";
155
175
  }>>;
156
176
  accountId: import("zod").ZodNullable<import("zod").ZodUUID>;
157
177
  email: import("zod").ZodNullable<import("zod").ZodString>;
178
+ mcpKeyId: import("zod").ZodNullable<import("zod").ZodUUID>;
179
+ mcpKeySkipped: import("zod").ZodNullable<import("zod").ZodEnum<{
180
+ mcp_key_limit: "mcp_key_limit";
181
+ }>>;
158
182
  expiresAt: import("zod").ZodPreprocess<import("zod").ZodDate, Date>;
159
183
  createdAt: import("zod").ZodPreprocess<import("zod").ZodDate, Date>;
160
184
  }, import("zod/v4/core").$strip>, import("@orpc/contract").MergedErrorMap<import("@orpc/contract").MergedErrorMap<Record<never, never>, import("../errors.js").DeclaredErrors<{
@@ -164,6 +188,8 @@ export declare const connectSessions: {
164
188
  readonly missing_scope: "The API key lacks the scope the operation needs.";
165
189
  readonly role_forbidden: "The member's role does not allow the operation.";
166
190
  readonly account_token_forbidden: "An account token called an operation account tokens cannot call.";
191
+ readonly account_scope_forbidden: "A credential limited to specific accounts called an operation that reaches beyond them.";
192
+ readonly mcp_only_key: "An MCP-only key (minted for an end user's MCP client) was used outside the MCP server.";
167
193
  readonly rate_limited: "The tenant used up its plan's request rate; Retry-After says when the window ends.";
168
194
  readonly too_many_requests: "The credential has too many requests in flight at once; retry after Retry-After.";
169
195
  readonly overloaded: "The API is shedding load; retry after Retry-After.";
@@ -176,7 +202,6 @@ export declare const connectSessions: {
176
202
  readonly connect_session_not_found: "No session has this id (or token).";
177
203
  }>>, Record<never, never>>;
178
204
  };
179
- /** Headless flow: the URL to send the user to (see the description). */
180
205
  export declare const oauthAuthorizations: {
181
206
  create: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodObject<{
182
207
  provider: import("zod").ZodEnum<{
@@ -195,6 +220,7 @@ export declare const oauthAuthorizations: {
195
220
  state: import("zod").ZodOptional<import("zod").ZodString>;
196
221
  accountId: import("zod").ZodOptional<import("zod").ZodUUID>;
197
222
  options: import("zod").ZodOptional<import("zod").ZodObject<{
223
+ mailEnabled: import("zod").ZodOptional<import("zod").ZodBoolean>;
198
224
  calendarEnabled: import("zod").ZodOptional<import("zod").ZodBoolean>;
199
225
  contactsEnabled: import("zod").ZodOptional<import("zod").ZodBoolean>;
200
226
  bodyStorage: import("zod").ZodOptional<import("zod").ZodEnum<{
@@ -217,6 +243,8 @@ export declare const oauthAuthorizations: {
217
243
  readonly missing_scope: "The API key lacks the scope the operation needs.";
218
244
  readonly role_forbidden: "The member's role does not allow the operation.";
219
245
  readonly account_token_forbidden: "An account token called an operation account tokens cannot call.";
246
+ readonly account_scope_forbidden: "A credential limited to specific accounts called an operation that reaches beyond them.";
247
+ readonly mcp_only_key: "An MCP-only key (minted for an end user's MCP client) was used outside the MCP server.";
220
248
  readonly rate_limited: "The tenant used up its plan's request rate; Retry-After says when the window ends.";
221
249
  readonly too_many_requests: "The credential has too many requests in flight at once; retry after Retry-After.";
222
250
  readonly overloaded: "The API is shedding load; retry after Retry-After.";
@@ -234,6 +262,14 @@ export declare const oauthAuthorizations: {
234
262
  status: 400;
235
263
  message: string;
236
264
  };
265
+ connect_domain_inactive: {
266
+ status: 409;
267
+ message: string;
268
+ };
269
+ connect_grants_nothing: {
270
+ status: 400;
271
+ message: string;
272
+ };
237
273
  provider_not_configured: {
238
274
  status: 400;
239
275
  message: string;
@@ -254,10 +290,7 @@ export declare const oauthAuthorizations: {
254
290
  status: 403;
255
291
  message: string;
256
292
  };
257
- plan_limit_storage: {
258
- status: 403;
259
- message: string;
260
- };
293
+ plan_limit_storage: import("../errors.js").DeclaredError<"plan_limit_storage">;
261
294
  storage_unavailable: {
262
295
  status: 400;
263
296
  message: string;
@@ -303,6 +336,11 @@ export declare const hostedConnectSessions: {
303
336
  failed: "failed";
304
337
  }>;
305
338
  reauthEmail: import("zod").ZodNullable<import("zod").ZodString>;
339
+ modules: import("zod").ZodObject<{
340
+ mail: import("zod").ZodBoolean;
341
+ calendar: import("zod").ZodBoolean;
342
+ contacts: import("zod").ZodBoolean;
343
+ }, import("zod/v4/core").$strip>;
306
344
  loginHint: import("zod").ZodNullable<import("zod").ZodString>;
307
345
  expiresAt: import("zod").ZodPreprocess<import("zod").ZodDate, Date>;
308
346
  }, import("zod/v4/core").$strip>, import("@orpc/contract").MergedErrorMap<import("@orpc/contract").MergedErrorMap<Record<never, never>, import("../errors.js").DeclaredErrors<{
@@ -312,6 +350,8 @@ export declare const hostedConnectSessions: {
312
350
  readonly missing_scope: "The API key lacks the scope the operation needs.";
313
351
  readonly role_forbidden: "The member's role does not allow the operation.";
314
352
  readonly account_token_forbidden: "An account token called an operation account tokens cannot call.";
353
+ readonly account_scope_forbidden: "A credential limited to specific accounts called an operation that reaches beyond them.";
354
+ readonly mcp_only_key: "An MCP-only key (minted for an end user's MCP client) was used outside the MCP server.";
315
355
  readonly rate_limited: "The tenant used up its plan's request rate; Retry-After says when the window ends.";
316
356
  readonly too_many_requests: "The credential has too many requests in flight at once; retry after Retry-After.";
317
357
  readonly overloaded: "The API is shedding load; retry after Retry-After.";
@@ -365,6 +405,8 @@ export declare const hostedConnectSessions: {
365
405
  readonly missing_scope: "The API key lacks the scope the operation needs.";
366
406
  readonly role_forbidden: "The member's role does not allow the operation.";
367
407
  readonly account_token_forbidden: "An account token called an operation account tokens cannot call.";
408
+ readonly account_scope_forbidden: "A credential limited to specific accounts called an operation that reaches beyond them.";
409
+ readonly mcp_only_key: "An MCP-only key (minted for an end user's MCP client) was used outside the MCP server.";
368
410
  readonly rate_limited: "The tenant used up its plan's request rate; Retry-After says when the window ends.";
369
411
  readonly too_many_requests: "The credential has too many requests in flight at once; retry after Retry-After.";
370
412
  readonly overloaded: "The API is shedding load; retry after Retry-After.";
@@ -494,6 +536,8 @@ export declare const hostedConnectSessions: {
494
536
  readonly missing_scope: "The API key lacks the scope the operation needs.";
495
537
  readonly role_forbidden: "The member's role does not allow the operation.";
496
538
  readonly account_token_forbidden: "An account token called an operation account tokens cannot call.";
539
+ readonly account_scope_forbidden: "A credential limited to specific accounts called an operation that reaches beyond them.";
540
+ readonly mcp_only_key: "An MCP-only key (minted for an end user's MCP client) was used outside the MCP server.";
497
541
  readonly rate_limited: "The tenant used up its plan's request rate; Retry-After says when the window ends.";
498
542
  readonly too_many_requests: "The credential has too many requests in flight at once; retry after Retry-After.";
499
543
  readonly overloaded: "The API is shedding load; retry after Retry-After.";
@@ -0,0 +1,41 @@
1
+ import * as z from "zod";
2
+ export declare const ConnectDomainHostname: z.ZodString;
3
+ export type ConnectDomainHostname = z.infer<typeof ConnectDomainHostname>;
4
+ export declare const ConnectDomainStatus: z.ZodEnum<{
5
+ active: "active";
6
+ pending: "pending";
7
+ failed: "failed";
8
+ }>;
9
+ export type ConnectDomainStatus = z.infer<typeof ConnectDomainStatus>;
10
+ export declare const ConnectDomainRecord: z.ZodObject<{
11
+ type: z.ZodString;
12
+ name: z.ZodString;
13
+ value: z.ZodString;
14
+ }, z.core.$strip>;
15
+ export type ConnectDomainRecord = z.infer<typeof ConnectDomainRecord>;
16
+ export declare const ConnectDomain: z.ZodObject<{
17
+ hostname: z.ZodString;
18
+ status: z.ZodEnum<{
19
+ active: "active";
20
+ pending: "pending";
21
+ failed: "failed";
22
+ }>;
23
+ records: z.ZodArray<z.ZodObject<{
24
+ type: z.ZodString;
25
+ name: z.ZodString;
26
+ value: z.ZodString;
27
+ }, z.core.$strip>>;
28
+ ownership: z.ZodObject<{
29
+ type: z.ZodString;
30
+ name: z.ZodString;
31
+ value: z.ZodString;
32
+ }, z.core.$strip>;
33
+ error: z.ZodNullable<z.ZodString>;
34
+ activatedAt: z.ZodNullable<z.ZodPreprocess<z.ZodDate, Date>>;
35
+ createdAt: z.ZodPreprocess<z.ZodDate, Date>;
36
+ }, z.core.$strip>;
37
+ export type ConnectDomain = z.infer<typeof ConnectDomain>;
38
+ export declare const SetConnectDomain: z.ZodObject<{
39
+ hostname: z.ZodString;
40
+ }, z.core.$strip>;
41
+ export type SetConnectDomain = z.infer<typeof SetConnectDomain>;
@@ -0,0 +1,197 @@
1
+ import * as z from "zod";
2
+ export declare const connectDomain: {
3
+ get: import("@orpc/contract").ContractProcedureBuilderWithOutput<import("@orpc/contract").Schema<unknown, unknown>, z.ZodObject<{
4
+ hostname: z.ZodString;
5
+ status: z.ZodEnum<{
6
+ active: "active";
7
+ pending: "pending";
8
+ failed: "failed";
9
+ }>;
10
+ records: z.ZodArray<z.ZodObject<{
11
+ type: z.ZodString;
12
+ name: z.ZodString;
13
+ value: z.ZodString;
14
+ }, z.core.$strip>>;
15
+ ownership: z.ZodObject<{
16
+ type: z.ZodString;
17
+ name: z.ZodString;
18
+ value: z.ZodString;
19
+ }, z.core.$strip>;
20
+ error: z.ZodNullable<z.ZodString>;
21
+ activatedAt: z.ZodNullable<z.ZodPreprocess<z.ZodDate, Date>>;
22
+ createdAt: z.ZodPreprocess<z.ZodDate, Date>;
23
+ }, z.core.$strip>, import("@orpc/contract").MergedErrorMap<import("@orpc/contract").MergedErrorMap<Record<never, never>, import("../errors.js").DeclaredErrors<{
24
+ readonly invalid_input: "The request does not match the operation's input schema (a malformed body included); data.issues names each problem.";
25
+ readonly unauthenticated: "No usable credential: none was sent, or it is malformed, unknown, revoked or an expired account token.";
26
+ readonly api_key_expired: "The API key is past its expiry (or the grace of the rotation that replaced it).";
27
+ readonly missing_scope: "The API key lacks the scope the operation needs.";
28
+ readonly role_forbidden: "The member's role does not allow the operation.";
29
+ readonly account_token_forbidden: "An account token called an operation account tokens cannot call.";
30
+ readonly account_scope_forbidden: "A credential limited to specific accounts called an operation that reaches beyond them.";
31
+ readonly mcp_only_key: "An MCP-only key (minted for an end user's MCP client) was used outside the MCP server.";
32
+ readonly rate_limited: "The tenant used up its plan's request rate; Retry-After says when the window ends.";
33
+ readonly too_many_requests: "The credential has too many requests in flight at once; retry after Retry-After.";
34
+ readonly overloaded: "The API is shedding load; retry after Retry-After.";
35
+ readonly payload_too_large: "The request body is larger than the API accepts.";
36
+ readonly internal_error: "An unexpected failure on our side.";
37
+ readonly invalid_idempotency_key: "POST only: the Idempotency-Key header is not 1 to 255 printable ASCII characters.";
38
+ readonly idempotency_key_reused: "POST only: the Idempotency-Key was used in the last 24 hours with another method, path or body.";
39
+ readonly idempotency_key_in_progress: "POST only: the request first sent with this Idempotency-Key has not been answered yet.";
40
+ }>>, {
41
+ connect_domain_not_found: {
42
+ status: 404;
43
+ message: string;
44
+ };
45
+ connect_domain_unavailable: {
46
+ status: 400;
47
+ message: string;
48
+ };
49
+ }>, Record<never, never>>;
50
+ set: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{
51
+ hostname: z.ZodString;
52
+ }, z.core.$strip>, z.ZodObject<{
53
+ hostname: z.ZodString;
54
+ status: z.ZodEnum<{
55
+ active: "active";
56
+ pending: "pending";
57
+ failed: "failed";
58
+ }>;
59
+ records: z.ZodArray<z.ZodObject<{
60
+ type: z.ZodString;
61
+ name: z.ZodString;
62
+ value: z.ZodString;
63
+ }, z.core.$strip>>;
64
+ ownership: z.ZodObject<{
65
+ type: z.ZodString;
66
+ name: z.ZodString;
67
+ value: z.ZodString;
68
+ }, z.core.$strip>;
69
+ error: z.ZodNullable<z.ZodString>;
70
+ activatedAt: z.ZodNullable<z.ZodPreprocess<z.ZodDate, Date>>;
71
+ createdAt: z.ZodPreprocess<z.ZodDate, Date>;
72
+ }, z.core.$strip>, import("@orpc/contract").MergedErrorMap<import("@orpc/contract").MergedErrorMap<Record<never, never>, import("../errors.js").DeclaredErrors<{
73
+ readonly invalid_input: "The request does not match the operation's input schema (a malformed body included); data.issues names each problem.";
74
+ readonly unauthenticated: "No usable credential: none was sent, or it is malformed, unknown, revoked or an expired account token.";
75
+ readonly api_key_expired: "The API key is past its expiry (or the grace of the rotation that replaced it).";
76
+ readonly missing_scope: "The API key lacks the scope the operation needs.";
77
+ readonly role_forbidden: "The member's role does not allow the operation.";
78
+ readonly account_token_forbidden: "An account token called an operation account tokens cannot call.";
79
+ readonly account_scope_forbidden: "A credential limited to specific accounts called an operation that reaches beyond them.";
80
+ readonly mcp_only_key: "An MCP-only key (minted for an end user's MCP client) was used outside the MCP server.";
81
+ readonly rate_limited: "The tenant used up its plan's request rate; Retry-After says when the window ends.";
82
+ readonly too_many_requests: "The credential has too many requests in flight at once; retry after Retry-After.";
83
+ readonly overloaded: "The API is shedding load; retry after Retry-After.";
84
+ readonly payload_too_large: "The request body is larger than the API accepts.";
85
+ readonly internal_error: "An unexpected failure on our side.";
86
+ readonly invalid_idempotency_key: "POST only: the Idempotency-Key header is not 1 to 255 printable ASCII characters.";
87
+ readonly idempotency_key_reused: "POST only: the Idempotency-Key was used in the last 24 hours with another method, path or body.";
88
+ readonly idempotency_key_in_progress: "POST only: the request first sent with this Idempotency-Key has not been answered yet.";
89
+ }>>, {
90
+ connect_domain_not_allowed: {
91
+ status: 400;
92
+ message: string;
93
+ };
94
+ connect_domain_taken: {
95
+ status: 409;
96
+ message: string;
97
+ };
98
+ connect_domain_in_use: {
99
+ status: 409;
100
+ message: string;
101
+ };
102
+ connect_domain_edge_unavailable: {
103
+ status: 502;
104
+ message: string;
105
+ };
106
+ connect_domain_unavailable: {
107
+ status: 400;
108
+ message: string;
109
+ };
110
+ }>, Record<never, never>>;
111
+ delete: import("@orpc/contract").ContractProcedureBuilderWithOutput<import("@orpc/contract").Schema<unknown, unknown>, z.ZodVoid, import("@orpc/contract").MergedErrorMap<import("@orpc/contract").MergedErrorMap<Record<never, never>, import("../errors.js").DeclaredErrors<{
112
+ readonly invalid_input: "The request does not match the operation's input schema (a malformed body included); data.issues names each problem.";
113
+ readonly unauthenticated: "No usable credential: none was sent, or it is malformed, unknown, revoked or an expired account token.";
114
+ readonly api_key_expired: "The API key is past its expiry (or the grace of the rotation that replaced it).";
115
+ readonly missing_scope: "The API key lacks the scope the operation needs.";
116
+ readonly role_forbidden: "The member's role does not allow the operation.";
117
+ readonly account_token_forbidden: "An account token called an operation account tokens cannot call.";
118
+ readonly account_scope_forbidden: "A credential limited to specific accounts called an operation that reaches beyond them.";
119
+ readonly mcp_only_key: "An MCP-only key (minted for an end user's MCP client) was used outside the MCP server.";
120
+ readonly rate_limited: "The tenant used up its plan's request rate; Retry-After says when the window ends.";
121
+ readonly too_many_requests: "The credential has too many requests in flight at once; retry after Retry-After.";
122
+ readonly overloaded: "The API is shedding load; retry after Retry-After.";
123
+ readonly payload_too_large: "The request body is larger than the API accepts.";
124
+ readonly internal_error: "An unexpected failure on our side.";
125
+ readonly invalid_idempotency_key: "POST only: the Idempotency-Key header is not 1 to 255 printable ASCII characters.";
126
+ readonly idempotency_key_reused: "POST only: the Idempotency-Key was used in the last 24 hours with another method, path or body.";
127
+ readonly idempotency_key_in_progress: "POST only: the request first sent with this Idempotency-Key has not been answered yet.";
128
+ }>>, {
129
+ connect_domain_in_use: {
130
+ status: 409;
131
+ message: string;
132
+ };
133
+ connect_domain_edge_unavailable: {
134
+ status: 502;
135
+ message: string;
136
+ };
137
+ connect_domain_not_found: {
138
+ status: 404;
139
+ message: string;
140
+ };
141
+ connect_domain_unavailable: {
142
+ status: 400;
143
+ message: string;
144
+ };
145
+ }>, Record<never, never>>;
146
+ refresh: import("@orpc/contract").ContractProcedureBuilderWithOutput<import("@orpc/contract").Schema<unknown, unknown>, z.ZodObject<{
147
+ hostname: z.ZodString;
148
+ status: z.ZodEnum<{
149
+ active: "active";
150
+ pending: "pending";
151
+ failed: "failed";
152
+ }>;
153
+ records: z.ZodArray<z.ZodObject<{
154
+ type: z.ZodString;
155
+ name: z.ZodString;
156
+ value: z.ZodString;
157
+ }, z.core.$strip>>;
158
+ ownership: z.ZodObject<{
159
+ type: z.ZodString;
160
+ name: z.ZodString;
161
+ value: z.ZodString;
162
+ }, z.core.$strip>;
163
+ error: z.ZodNullable<z.ZodString>;
164
+ activatedAt: z.ZodNullable<z.ZodPreprocess<z.ZodDate, Date>>;
165
+ createdAt: z.ZodPreprocess<z.ZodDate, Date>;
166
+ }, z.core.$strip>, import("@orpc/contract").MergedErrorMap<import("@orpc/contract").MergedErrorMap<Record<never, never>, import("../errors.js").DeclaredErrors<{
167
+ readonly invalid_input: "The request does not match the operation's input schema (a malformed body included); data.issues names each problem.";
168
+ readonly unauthenticated: "No usable credential: none was sent, or it is malformed, unknown, revoked or an expired account token.";
169
+ readonly api_key_expired: "The API key is past its expiry (or the grace of the rotation that replaced it).";
170
+ readonly missing_scope: "The API key lacks the scope the operation needs.";
171
+ readonly role_forbidden: "The member's role does not allow the operation.";
172
+ readonly account_token_forbidden: "An account token called an operation account tokens cannot call.";
173
+ readonly account_scope_forbidden: "A credential limited to specific accounts called an operation that reaches beyond them.";
174
+ readonly mcp_only_key: "An MCP-only key (minted for an end user's MCP client) was used outside the MCP server.";
175
+ readonly rate_limited: "The tenant used up its plan's request rate; Retry-After says when the window ends.";
176
+ readonly too_many_requests: "The credential has too many requests in flight at once; retry after Retry-After.";
177
+ readonly overloaded: "The API is shedding load; retry after Retry-After.";
178
+ readonly payload_too_large: "The request body is larger than the API accepts.";
179
+ readonly internal_error: "An unexpected failure on our side.";
180
+ readonly invalid_idempotency_key: "POST only: the Idempotency-Key header is not 1 to 255 printable ASCII characters.";
181
+ readonly idempotency_key_reused: "POST only: the Idempotency-Key was used in the last 24 hours with another method, path or body.";
182
+ readonly idempotency_key_in_progress: "POST only: the request first sent with this Idempotency-Key has not been answered yet.";
183
+ }>>, {
184
+ connect_domain_edge_unavailable: {
185
+ status: 502;
186
+ message: string;
187
+ };
188
+ connect_domain_not_found: {
189
+ status: 404;
190
+ message: string;
191
+ };
192
+ connect_domain_unavailable: {
193
+ status: 400;
194
+ message: string;
195
+ };
196
+ }>, Record<never, never>>;
197
+ };
@@ -5,7 +5,6 @@ export declare const ContactEmailType: z.ZodEnum<{
5
5
  other: "other";
6
6
  }>;
7
7
  export type ContactEmailType = z.infer<typeof ContactEmailType>;
8
- /** Microsoft 365 contacts have mobile, home and work numbers only. */
9
8
  export declare const ContactPhoneType: z.ZodEnum<{
10
9
  home: "home";
11
10
  work: "work";
@@ -13,7 +12,6 @@ export declare const ContactPhoneType: z.ZodEnum<{
13
12
  mobile: "mobile";
14
13
  }>;
15
14
  export type ContactPhoneType = z.infer<typeof ContactPhoneType>;
16
- /** type is null where the provider keeps none (Microsoft 365 addresses). */
17
15
  export declare const ContactEmail: z.ZodObject<{
18
16
  address: z.ZodString;
19
17
  type: z.ZodNullable<z.ZodEnum<{
@@ -33,7 +31,6 @@ export declare const ContactPhone: z.ZodObject<{
33
31
  }>>;
34
32
  }, z.core.$strip>;
35
33
  export type ContactPhone = z.infer<typeof ContactPhone>;
36
- /** A Microsoft 365 contact folder. Google accounts have none (their contacts carry folderId null). */
37
34
  export declare const ContactFolder: z.ZodObject<{
38
35
  id: z.ZodUUID;
39
36
  name: z.ZodString;
@@ -119,8 +116,6 @@ export declare const ContactPage: z.ZodObject<{
119
116
  nextCursor: z.ZodNullable<z.ZodString>;
120
117
  }, z.core.$strip>;
121
118
  export type ContactPage = z.infer<typeof ContactPage>;
122
- /** A contact field a contact.updated event names as changed; `photo` is the photo itself (GET
123
- * .../photo), which can change while hasPhoto stays true. */
124
119
  export declare const ContactChangedField: z.ZodEnum<{
125
120
  displayName: "displayName";
126
121
  folderId: "folderId";
@@ -158,8 +153,6 @@ export declare const ContactPhoneInput: z.ZodObject<{
158
153
  }>>;
159
154
  }, z.core.$strip>;
160
155
  export type ContactPhoneInput = z.infer<typeof ContactPhoneInput>;
161
- /** A new contact needs at least a name, an organization, an address or a number, so it can be
162
- * found again (400 otherwise). */
163
156
  export declare const CreateContact: z.ZodObject<{
164
157
  folderId: z.ZodOptional<z.ZodUUID>;
165
158
  displayName: z.ZodOptional<z.ZodString>;
@@ -191,8 +184,6 @@ export declare const CreateContact: z.ZodObject<{
191
184
  notes: z.ZodOptional<z.ZodString>;
192
185
  }, z.core.$strip>;
193
186
  export type CreateContact = z.infer<typeof CreateContact>;
194
- /** create's input: the account, and a contact with a name, an organization, an email address or
195
- * a phone number (contact_unidentifiable). */
196
187
  export declare const CreateContactInput: z.ZodObject<{
197
188
  accountId: z.ZodUUID;
198
189
  folderId: z.ZodOptional<z.ZodUUID>;
@@ -224,7 +215,6 @@ export declare const CreateContactInput: z.ZodObject<{
224
215
  birthday: z.ZodOptional<z.ZodString>;
225
216
  notes: z.ZodOptional<z.ZodString>;
226
217
  }, z.core.$strip>;
227
- /** Fields present change (null clears); absent fields stay. emails and phones replace the list. */
228
218
  export declare const UpdateContact: z.ZodObject<{
229
219
  displayName: z.ZodOptional<z.ZodNullable<z.ZodString>>;
230
220
  givenName: z.ZodOptional<z.ZodNullable<z.ZodString>>;